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.
| Layer | Score | Winner | Confidence | Source or usage | Synced or matches |
|---|---|---|---|---|---|
| Shipped prediction | KC 4 - 5 LAD | LAD | 0.580 | simulation_total_with_model_margin_cap | True |
| Simulation draw | KC 3 - 5 LAD | LAD | - | same_winner_margin_capped | False |
The shipped score is reconciled to the final simulation score. The original model target remains visible as the pre-simulation audit layer.
This table distinguishes newly generated artifacts from older files. Missing trace data is shown as legacy/unavailable, never inferred.
| Priority | Change | Runtime status | Evidence |
|---|---|---|---|
| P1 | Empirical confidence blend | applied | raw=0.6730; empirical=0.5466; weight=0.5000; final=0.6098 |
| P1 | H2H margin as base feature | available | home net=2; abs=2; home delta=0.0150; away delta=-0.0150 |
| P2 | Wider score distribution | implemented_above_requested_1.4x | variance multiplier=1.6500; floor=2.7500 |
| P2 | Simulation flip control | diagnostic_only_unless_independently_supported | candidate=False; trusted=False; published flip=False |
| P3 | Season edge + recent form | implemented | window=10; season edge=2.3755; recent edge=-0.0080; blended=- |
| P3 | Continuous calibration audit | trace emitted | Checked by CONFIDENCE_CALIBRATION_APPLIED and bucket_calibration_error in learning reports. |
| Process Layer | What It Does | Stored Field | Observed Value |
|---|---|---|---|
| 1. Historical model | Starts from trained game model output. | score_evolution.steps[historical_ml] | - |
| 2. Variance layer | Applies bounded game variance before enhanced corrections. | score_evolution.steps[variance_applied] | - |
| 3. Recent/team form | Uses latest team form, recent scoring, prevention, and streak state. | enhanced_prediction_analysis.recent_form | True |
| 4. Season quality | Uses season run differential and record quality guardrails. | season_run_differential_adjustment, season_quality_guardrail | True |
| 5. Savant hitters | Applies lineup-level Statcast xwOBA, xBA, xSLG, barrel, hard-hit, sweet-spot, EV, launch-angle, whiff, K and BB quality. | savant_batter_quality_adjustment | True |
| 6. Savant pitchers | Applies starter run prevention, strikeout, walk, HR and regression factors from xwOBA, wOBA, contact quality and whiff/command. | savant_pitcher_quality_adjustment | True |
| 7. Low-score analysis | Controls unrealistic totals and preserves the pre-sync low-score expected total. | low_score_analysis | 6.6000 |
| 8. Probability/governors | Applies win probability calibration, matchup guardrails, margin governor and confidence governor. | win_probability_calibration, margin_governor, confidence_governor | 0.5800 |
| 9. Simulation reconciliation | Reconciles final shipped score with the simulation box score while retaining the pre-simulation target. | simulation_reconciliation | same_winner_margin_capped |
| 10. Score evolution rendered | 7 stored score steps are rendered below. | game.score_evolution.steps | true |
| Step | Layer | Away Runs | Home Runs | Confidence | Description |
|---|---|---|---|---|---|
| 1 | historical_ml | 4.389 | 4.542 | - | Base ML historical model prediction |
| 2 | variance_applied | 4 | 5 | - | Deterministic baseline target (variance factor 1.0) |
| 3 | enhanced_prediction | 3 | 5 | 0.5800 | Enhanced ML with recent form, H2H, low-score analysis (confidence capped by matchup guardrail) |
| 4 | embedded_savant_run_environment | 4 | 5 | - | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| 5 | fundamental_edge_target_review | 4 | 5 | - | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| 6 | capped_target | 4 | 5 | - | Capped at max 12 realistic runs |
| 7 | simulation_result | 3 | 5 | - | Final inning-by-inning simulation result |
{
"low_score_probability": 0.6422624898461541,
"base_low_score_probability": 0.4296180010465725,
"low_score_signal_threshold": 0.5096180010465725,
"low_score_signal_strength": 0.2126444887995816,
"confidence": 0.8474808880000002,
"factors": {
"environmental": 0.9996,
"pitcher_form": 1.4520000000000002,
"team_form": 1.0,
"situational": 1.03,
"combined": 1.4949617760000005
},
"prediction": "low_scoring",
"expected_total_runs": 9,
"pre_simulation_expected_total_runs": 6.6,
"low_score_model_expected_total_runs": 6.6,
"final_simulation_total_runs": 8,
"score_source": "simulation_total_with_model_margin_cap"
}{
"method": "historical_slate_bin_shrinkage",
"sample_size": 236,
"near_bucket_sample_size": 236,
"medium_bucket_sample_size": 294,
"wide_bucket_sample_size": 479,
"global_sample_size": 488,
"bucket_scope": "near_0.05",
"sparse_bucket": false,
"empirical_hit_rate": 0.5466,
"bayesian_hit_rate": 0.5433,
"sample_weight": 0.6,
"prior_strength": 18.0,
"reliability": 0.9291,
"confidence_cap": 0.78,
"raw_pick_probability": 0.6279,
"calibrated_pick_probability": 0.5694,
"predicted_side": "home"
}{
"method": "empirical_hit_rate_weighted_v1",
"applied": true,
"reason": "raw confidence blended with verified historical bucket hit rate",
"raw_confidence": 0.673038,
"sample_size": 236,
"empirical_hit_rate": 0.5466,
"empirical_weight": 0.5,
"blended_confidence": 0.609819,
"published_confidence": 0.58,
"published_after_governors": true
}{
"method": "h2h_net_margin_monotonic_v1",
"available": true,
"sample_size": 2,
"sample_weight": 0.03,
"home_net_margin": 2.0,
"absolute_net_margin": 2.0,
"home_average_margin": 1.0,
"home_run_delta": 0.015,
"away_run_delta": -0.015,
"evidence": [
{
"game_id": null,
"home_margin": 1.0
},
{
"game_id": null,
"home_margin": 1.0
}
]
}{
"applied": true,
"home": {
"team": "LAD",
"games": 119,
"wins": 71,
"losses": 48,
"win_pct": 0.5966386554621849,
"runs_scored": 597,
"runs_allowed": 458,
"run_differential": 139,
"run_differential_per_game": 1.1680672268907564,
"available": true
},
"away": {
"team": "KC",
"games": 120,
"wins": 49,
"losses": 71,
"win_pct": 0.4083333333333333,
"runs_scored": 497,
"runs_allowed": 608,
"run_differential": -111,
"run_differential_per_game": -0.925,
"available": true
},
"run_differential_edge_per_game": 2.0931,
"win_pct_edge": 0.1883,
"quality_edge": 1.5413,
"season_quality_edge": 2.3755,
"recent_quality_blend": {
"method": "season_recent10_quality_blend_v1",
"recent_window": 10,
"season_quality_edge": 2.3755,
"recent_quality_edge": -0.008,
"season_weight": 0.65,
"recent_weight": 0.35,
"recent_reliability": 1.0,
"alignment": "conflict",
"blended_quality_edge": 1.5413
},
"margin_adjustment": 0.6473,
"reason": "season-to-date run differential and record moved the score toward the stronger team",
"margin_adjustment_policy": {
"adjustment": 0.6473,
"cap": 1.4,
"scale": 0.42,
"quality_edge": 1.5413,
"season_quality_edge": 2.3755,
"recent_alignment": "conflict",
"large_edge_supported_by_recent_form": false,
"method": "standard_bounded_season_recent_adjustment"
},
"adjusted_score": {
"away_runs": 2.792,
"home_runs": 4.94,
"home_win_probability": 0.6826
}
}{
"most_likely": [
{
"home_runs": 5,
"away_runs": 3,
"probability": 0.025951058611837816
},
{
"home_runs": 5,
"away_runs": 4,
"probability": 0.025073741840545113
},
{
"home_runs": 4,
"away_runs": 3,
"probability": 0.02493875323911879
},
{
"home_runs": 4,
"away_runs": 4,
"probability": 0.024095659059452885
},
{
"home_runs": 6,
"away_runs": 3,
"probability": 0.023811384910048708
}
],
"home_distribution": {
"0": 0.03389994214368121,
"1": 0.058355574919962676,
"2": 0.08857577961484926,
"3": 0.11854871513822154,
"4": 0.13990329899332274,
"5": 0.1455822060290564,
"6": 0.1335789031061181,
"7": 0.10807287032836592,
"8": 0.07709828822317288,
"9": 0.04849779815422098,
"10": 0.02689976859322363,
"11": 0.013156013263025767,
"12": 0.005673476987769148,
"13": 0.002157364505009872
},
"away_distribution": {
"0": 0.06592271314156996,
"1": 0.11028308137466614,
"2": 0.15364300590544608,
"3": 0.17825707769985508,
"4": 0.1722308139467313,
"5": 0.13858142082556885,
"6": 0.0928601219148528,
"7": 0.051818349216861063,
"8": 0.02408063758882396,
"9": 0.009319282437007003,
"10": 0.00300349594861771
},
"model": "overdispersed_score_distribution",
"variance_multiplier": 1.65,
"variance_floor": 2.75,
"roadmap_status": "implemented_above_requested_1.4x"
}{
"applied": true,
"confidence_cap": 0.58,
"winner_flipped": false,
"reasons": [
"local prediction memory shows 2 straight prior same-side picks"
],
"signals": {
"predicted_team": "LAD",
"opponent_team": "KC",
"h2h_net_margin": 2,
"opponent_breakout": false,
"opponent_blowout_win": false,
"split_recent_h2h": false,
"recent_h2h": [
{
"date": "2026-08-11",
"predicted_team_runs": 5,
"opponent_runs": 4,
"margin_for_predicted_team": 1,
"winner": "LAD"
},
{
"date": "2026-08-10",
"predicted_team_runs": 6,
"opponent_runs": 5,
"margin_for_predicted_team": 1,
"winner": "LAD"
}
],
"prediction_memory": {
"available": true,
"reason": "verified_prior_matchup_predictions_available",
"verification_policy": "pregame_artifact_matched_to_one_official_final",
"verified_outcome_count": 2,
"consecutive_same_pick_count": 2,
"same_pick_actual_loss_count": 0,
"same_pick_blowout_loss_count": 0,
"prior_predictions": [
{
"date": "20260811",
"away": "KC",
"home": "LAD",
"game_number": 1,
"predicted_team": "LAD",
"actual_winner": "LAD",
"actual_margin": 1,
"raw_pick_probability": 0.53,
"artifact": "20260811_KC@LAD.json",
"verification": "pregame_official_final"
},
{
"date": "20260810",
"away": "KC",
"home": "LAD",
"game_number": 1,
"predicted_team": "LAD",
"actual_winner": "LAD",
"actual_margin": 1,
"raw_pick_probability": 0.66,
"artifact": "20260810_KC@LAD.json",
"verification": "pregame_official_final"
}
]
},
"guardrail_predicted_team": "LAD",
"guardrail_opponent_team": "KC",
"output_pre_simulation_winner": "LAD",
"output_opponent_team": "KC",
"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,
"final_prediction_sync": {
"pre_simulation_score": {
"away_runs": 4,
"home_runs": 5,
"score_text": "KC 4 - 5 LAD",
"winner": "LAD"
},
"final_simulation_score": {
"away_runs": 3,
"home_runs": 5,
"score_text": "KC 3 - 5 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.1791,
"recent_form_edge_home_minus_away": 0.342,
"winner_direction": "home",
"thresholds": {
"pitcher_matchup": 0.35,
"recent_form": 0.75
}
},
"margin_widening_capped": true,
"simulation_winner_agrees": true,
"away_run_delta": -1,
"home_run_delta": 0,
"total_run_delta": -1,
"score_source": "simulation_total_with_model_margin_cap",
"simulation_usage": "same_winner_margin_capped",
"final_prediction_source": "stable_final_prediction_policy",
"final_decision_policy": {
"policy_version": "model_winner_simulation_score_v1",
"away_runs": 4,
"home_runs": 5,
"winner": "LAD",
"model_winner": "LAD",
"simulation_winner": "LAD",
"simulation_winner_agrees": true,
"simulation_score_enabled": true,
"independent_margin_support": false,
"margin_widening_capped": true,
"model_margin": 1,
"simulation_margin": 2,
"simulation_usage": "same_winner_margin_capped",
"score_source": "simulation_total_with_model_margin_cap",
"model_score": {
"away_runs": 4,
"home_runs": 5
},
"simulation_score": {
"away_runs": 3,
"home_runs": 5
}
},
"final_margin_quality_review": {
"review_required": false,
"pre_margin": 1,
"final_margin": 2,
"winner_quality_edge": 1.5413,
"winner": "LAD",
"reason": "final margin is directionally supported or within review threshold"
}
}
}{
"applied": false,
"confidence_cap": null,
"winner_flipped": false,
"hard_flip_suppressed": false,
"policy": "recency_uncertainty_shrinkage_v2",
"reasons": [],
"signals": {
"home": {
"team": "LAD",
"games": 119,
"wins": 71,
"losses": 48,
"win_pct": 0.5966386554621849,
"runs_scored": 597,
"runs_allowed": 458,
"run_differential": 139,
"run_differential_per_game": 1.1680672268907564,
"available": true
},
"away": {
"team": "KC",
"games": 120,
"wins": 49,
"losses": 71,
"win_pct": 0.4083333333333333,
"runs_scored": 497,
"runs_allowed": 608,
"run_differential": -111,
"run_differential_per_game": -0.925,
"available": true
}
}
}{
"applied": false,
"raw_margin": 0.8,
"final_margin": 0.8,
"margin_cap": 4.25,
"season_quality_edge": 1.5413,
"reason": "raw target margin within supported range"
}{
"applied": false,
"raw_confidence": 0.58,
"final_confidence": 0.58,
"confidence_cap": 0.66,
"score_gap": 1.5041,
"calibration_sample_size": 236,
"calibration_empirical_hit_rate": 0.5466,
"calibration_bayesian_hit_rate": 0.5433,
"calibration_sparse_bucket": false,
"season_quality_edge": 1.5413,
"reasons": [
"unvalidated probabilities are capped for production display",
"projected score gap is moderate",
"local calibration sample has at least 30 games",
"local calibration sample has at least 60 games",
"season run-differential edge supports the pick",
"win-probability calibration cap enforced"
]
}{
"pre_simulation_score": {
"away_runs": 4,
"home_runs": 5,
"score_text": "KC 4 - 5 LAD",
"winner": "LAD"
},
"final_simulation_score": {
"away_runs": 3,
"home_runs": 5,
"score_text": "KC 3 - 5 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.1791,
"recent_form_edge_home_minus_away": 0.342,
"winner_direction": "home",
"thresholds": {
"pitcher_matchup": 0.35,
"recent_form": 0.75
}
},
"margin_widening_capped": true,
"simulation_winner_agrees": true,
"away_run_delta": -1,
"home_run_delta": 0,
"total_run_delta": -1,
"score_source": "simulation_total_with_model_margin_cap",
"simulation_usage": "same_winner_margin_capped",
"final_prediction_source": "stable_final_prediction_policy",
"final_decision_policy": {
"policy_version": "model_winner_simulation_score_v1",
"away_runs": 4,
"home_runs": 5,
"winner": "LAD",
"model_winner": "LAD",
"simulation_winner": "LAD",
"simulation_winner_agrees": true,
"simulation_score_enabled": true,
"independent_margin_support": false,
"margin_widening_capped": true,
"model_margin": 1,
"simulation_margin": 2,
"simulation_usage": "same_winner_margin_capped",
"score_source": "simulation_total_with_model_margin_cap",
"model_score": {
"away_runs": 4,
"home_runs": 5
},
"simulation_score": {
"away_runs": 3,
"home_runs": 5
}
},
"final_margin_quality_review": {
"review_required": false,
"pre_margin": 1,
"final_margin": 2,
"winner_quality_edge": 1.5413,
"winner": "LAD",
"reason": "final margin is directionally supported or within review threshold"
}
}{
"away_runs": 4,
"home_runs": 5,
"confidence": 0.58,
"home_win_probability": 0.58,
"away_win_probability": 0.42000000000000004,
"predicted_score_text": "KC 4 - 5 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": "KC",
"original_runs": 3,
"run_delta": 0.6016,
"adjusted_runs": 4,
"lineup": {
"players_used": 9,
"total_weight": 32.0,
"quality": 0.21285779982964295,
"contact": 0.07769905301238775,
"power": 0.17142854042272804,
"discipline": -0.09732994581050518,
"xwoba": 0.31128124999999995,
"recent_xwoba": 0.31128124999999995,
"barrel": 8.5375,
"ab_hard_contact": 0.05240414178789951,
"ab_bat_speed": 70.44969855339859,
"ab_strikeout_rate": 0.2363115881469269,
"available_players": 9,
"top_players": [
{
"player_id": "677951",
"player_name": "Bobby Witt Jr.",
"position": "SS",
"weight": 5.0,
"quality": 1.3335928252278206,
"contact": 1.608946066810767,
"power": 1.3909476660159423,
"discipline": 0.3429373229782437,
"xwoba": 0.382,
"recent_xwoba": 0.382,
"barrel": 11.9,
"ab_hard_contact": 1.3183818917474217,
"ab_bat_speed": 72.76030472164712,
"ab_strikeout_rate": 0.1756469979296066,
"available": 1.0
},
{
"player_id": "695506",
"player_name": "Jac Caglianone",
"position": "1B",
"weight": 4.0,
"quality": 1.0295697547551994,
"contact": 1.10815895518484,
"power": 1.5936125923534823,
"discipline": -0.6091207482165735,
"xwoba": 0.36,
"recent_xwoba": 0.36,
"barrel": 14.6,
"ab_hard_contact": 0.5316804184982209,
"ab_bat_speed": 75.98561900494965,
"ab_strikeout_rate": 0.2988479262672811,
"available": 1.0
},
{
"player_id": "668942",
"player_name": "Josh Rojas",
"position": "3B",
"weight": 3.0,
"quality": -0.2767162982025965,
"contact": -1.4482145277910323,
"power": -1.3332476842563719,
"discipline": -0.34305728310217476,
"xwoba": 0.213,
"recent_xwoba": 0.213,
"barrel": 1.7,
"ab_hard_contact": -0.5449536851274444,
"ab_bat_speed": 66.81673245614036,
"ab_strikeout_rate": 0.27807017543859647,
"available": 1.0
},
{
"player_id": "679845",
"player_name": "Nick Loftin",
"position": "2B",
"weight": 3.0,
"quality": -0.3419850990629111,
"contact": -0.2798568045742606,
"power": -0.7203208237446035,
"discipline": 0.7431001939237234,
"xwoba": 0.305,
"recent_xwoba": 0.305,
"barrel": 4.2,
"ab_hard_contact": -0.5203212367968265,
"ab_bat_speed": 66.89885141093475,
"ab_strikeout_rate": 0.13412698412698412,
"available": 1.0
},
{
"player_id": "686475",
"player_name": "Tyler Tolbert",
"position": "CF",
"weight": 3.0,
"quality": -0.13793394538033357,
"contact": -0.15043825841968736,
"power": -0.8013801373201892,
"discipline": 0.054782733606263095,
"xwoba": 0.313,
"recent_xwoba": 0.313,
"barrel": 3.9,
"ab_hard_contact": -0.6215075083085417,
"ab_bat_speed": 63.26933449074074,
"ab_strikeout_rate": 0.19444444444444445,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "641778",
"player_name": "Eric Lauer",
"quality": -0.6294606115833473,
"contact": -0.5052545192607941,
"command": -0.8435943562610229,
"movement": -1.121425520456699,
"xwoba": 0.341,
"whiff": 18.1,
"faced_est_woba": 0.2673184860119048,
"faced_launch_speed": 83.86666666666667,
"faced_strikeout_rate": 0.23333333333333334,
"faced_run_exp": 0.006702420300892518
}
},
"home": {
"team": "LAD",
"original_runs": 5,
"run_delta": 0.2915,
"adjusted_runs": 5,
"lineup": {
"players_used": 9,
"total_weight": 35.0,
"quality": 0.500524930544339,
"contact": 0.6069375986189909,
"power": 0.5319912446228168,
"discipline": 0.2677342101256211,
"xwoba": 0.3425428571428572,
"recent_xwoba": 0.3425428571428572,
"barrel": 9.214285714285714,
"ab_hard_contact": 0.26340584483729784,
"ab_bat_speed": 69.90612545113562,
"ab_strikeout_rate": 0.203933784251617,
"available_players": 9,
"top_players": [
{
"player_id": "660271",
"player_name": "Shohei Ohtani",
"position": "DH",
"weight": 4.0,
"quality": 1.520688874500064,
"contact": 1.5747755891044668,
"power": 1.98133253715718,
"discipline": 0.41238176742268806,
"xwoba": 0.405,
"recent_xwoba": 0.405,
"barrel": 16.4,
"ab_hard_contact": 1.1820793145721809,
"ab_bat_speed": 73.76063103864735,
"ab_strikeout_rate": 0.22584541062801933,
"available": 1.0
},
{
"player_id": "518692",
"player_name": "Freddie Freeman",
"position": "1B",
"weight": 4.0,
"quality": 0.885475255430231,
"contact": 1.203995405438542,
"power": 0.7682381860430941,
"discipline": 0.5336027854365191,
"xwoba": 0.37699999999999995,
"recent_xwoba": 0.377,
"barrel": 9.0,
"ab_hard_contact": 0.46114467324284647,
"ab_bat_speed": 69.51761088840298,
"ab_strikeout_rate": 0.1609815354713314,
"available": 1.0
},
{
"player_id": "571970",
"player_name": "Max Muncy",
"position": "3B",
"weight": 3.0,
"quality": 0.5491974108208983,
"contact": 0.3787748993307314,
"power": 0.9965049776237859,
"discipline": 0.1013803871604382,
"xwoba": 0.345,
"recent_xwoba": 0.345,
"barrel": 13.2,
"ab_hard_contact": 0.6424805048566682,
"ab_bat_speed": 70.49534299516908,
"ab_strikeout_rate": 0.25463250517598346,
"available": 1.0
},
{
"player_id": "605141",
"player_name": "Mookie Betts",
"position": "SS",
"weight": 5.0,
"quality": 0.5374503027399421,
"contact": 0.6894424924778938,
"power": 0.34305091116922426,
"discipline": 0.5984546912782206,
"xwoba": 0.329,
"recent_xwoba": 0.329,
"barrel": 7.4,
"ab_hard_contact": 0.2855896519559259,
"ab_bat_speed": 67.58734662383472,
"ab_strikeout_rate": 0.12248677248677249,
"available": 1.0
},
{
"player_id": "681624",
"player_name": "Andy Pages",
"position": "CF",
"weight": 5.0,
"quality": 0.37593204897763105,
"contact": 0.5299063462881046,
"power": 0.37181084410310894,
"discipline": 0.1055443978679273,
"xwoba": 0.338,
"recent_xwoba": 0.338,
"barrel": 7.8,
"ab_hard_contact": 0.2663121201574309,
"ab_bat_speed": 71.60227932805775,
"ab_strikeout_rate": 0.20875420875420878,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "663738",
"player_name": "Daniel Lynch IV",
"quality": 0.23694218085238508,
"contact": 0.8445212812459525,
"command": -0.11102292768959435,
"movement": 0.1213061666329669,
"xwoba": 0.285,
"whiff": 28.8,
"faced_est_woba": 0.2673184860119048,
"faced_launch_speed": 83.86666666666667,
"faced_strikeout_rate": 0.23333333333333334,
"faced_run_exp": 0.006702420300892518
}
}
},
"fundamental_edge_target_review": {
"applied": false,
"method": "post_score_adjustment_fundamental_edge_review_v1",
"previous_score": {
"away_runs": 4,
"home_runs": 5,
"winner_side": "home"
},
"adjusted_score": {
"away_runs": 4,
"home_runs": 5,
"winner_side": "home"
},
"signals": {
"season_quality_edge_home_minus_away": 1.5413,
"recent_form_edge_home_minus_away": 0.342,
"pitcher_matchup_edge_home_minus_away": 0.1791,
"composite_home_edge": 1.5072,
"existing_home_win_probability": 0.5694,
"refreshed_home_win_probability": 0.7,
"winner_support_before_review": 1.5072
},
"reasons": [
"target direction already matched refreshed fundamentals or margin was not fragile"
]
},
"confidence_note": "Calibrated to pre-simulation winner probability with starter-quality caps. Matchup recency guardrail cap enforced after calibration. Production confidence governor cap enforced.",
"pre_simulation_target": {
"away_runs": 4,
"home_runs": 5,
"predicted_score_text": "KC 4 - 5 LAD",
"confidence": 0.58,
"source": "enhanced_prediction_before_inning_simulation"
},
"score_source": "simulation_total_with_model_margin_cap",
"final_prediction_synced": true,
"final_prediction_source": "stable_final_prediction_policy",
"simulation_usage": "same_winner_margin_capped",
"simulation_score_matches_prediction": false,
"simulation_reconciliation": {
"pre_simulation_score": {
"away_runs": 4,
"home_runs": 5,
"score_text": "KC 4 - 5 LAD",
"winner": "LAD"
},
"final_simulation_score": {
"away_runs": 3,
"home_runs": 5,
"score_text": "KC 3 - 5 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.1791,
"recent_form_edge_home_minus_away": 0.342,
"winner_direction": "home",
"thresholds": {
"pitcher_matchup": 0.35,
"recent_form": 0.75
}
},
"margin_widening_capped": true,
"simulation_winner_agrees": true,
"away_run_delta": -1,
"home_run_delta": 0,
"total_run_delta": -1,
"score_source": "simulation_total_with_model_margin_cap",
"simulation_usage": "same_winner_margin_capped",
"final_prediction_source": "stable_final_prediction_policy",
"final_decision_policy": {
"policy_version": "model_winner_simulation_score_v1",
"away_runs": 4,
"home_runs": 5,
"winner": "LAD",
"model_winner": "LAD",
"simulation_winner": "LAD",
"simulation_winner_agrees": true,
"simulation_score_enabled": true,
"independent_margin_support": false,
"margin_widening_capped": true,
"model_margin": 1,
"simulation_margin": 2,
"simulation_usage": "same_winner_margin_capped",
"score_source": "simulation_total_with_model_margin_cap",
"model_score": {
"away_runs": 4,
"home_runs": 5
},
"simulation_score": {
"away_runs": 3,
"home_runs": 5
}
},
"final_margin_quality_review": {
"review_required": false,
"pre_margin": 1,
"final_margin": 2,
"winner_quality_edge": 1.5413,
"winner": "LAD",
"reason": "final 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.6024,
"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": "moneyline_preferred_over_margin",
"totals_fit": "neutral_totals",
"winner_accuracy_and_margin_accuracy_decoupled": true,
"signals": {
"final_margin": 1,
"winner_quality_edge": 1.5413,
"winner_recent_form_edge": -0.008,
"winner_pitcher_matchup_edge": 0.1791,
"winner_simulation_draw_rate": 0.3,
"blowout_draw_rate_margin_4_plus": 0.2,
"high_total_draw_rate_11_plus": 0.3,
"low_total_draw_rate_6_or_less": 0.3,
"total_runs_spread": {
"min": 6,
"median": 8,
"max": 13,
"range": 7
}
},
"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."
}
}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.
| Team | Applied | Offense Factor | Raw Avg Factor | Coverage Weight | Covered | Missing |
|---|---|---|---|---|---|---|
| Away KC | True | 1.0163 | 1.0163 | 1 | 9 | 0 |
| Home LAD | True | 1.0553 | 1.0553 | 1 | 9 | 0 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2B | Nick Loftin | 180 | 0.9836 | -0.2182 | neutral | 0.3050 | 0.2380 | 0.3450 | 4.20 | 28.50 | 86.70 | 13.80 | 15.80 | 14.70 | 9.90 | -0.4857 |
| C | Salvador Perez | 600 | 1.0172 | 0.2296 | neutral | 0.2970 | 0.2300 | 0.4100 | 9.50 | 42.10 | 88.90 | 15.90 | 25.20 | 20 | 3.80 | 0.7143 |
| 1B | Jac Caglianone | 49 | 1.1034 | 1.3793 | neutral | 0.3600 | 0.2780 | 0.5100 | 14.60 | 55.20 | 93.20 | 7.30 | 28.90 | 26.40 | 6.40 | 0.3143 |
| DH | Carter Jensen | 127 | 0.9863 | -0.1830 | neutral | 0.2840 | 0.2010 | 0.3570 | 10.20 | 43.80 | 90.70 | 21 | 29.80 | 29.50 | 10.10 | -0.7714 |
| CF | Tyler Tolbert | 205 | 0.9898 | -0.1359 | negative_batter_regression | 0.3130 | 0.2670 | 0.3490 | 3.90 | 28.60 | 85.20 | 8.90 | 26 | 15.80 | 7.90 | -1.6000 |
| 3B | Josh Rojas | 256 | 0.9466 | -0.7125 | negative_batter_regression | 0.2130 | 0.1820 | 0.2610 | 1.70 | 30.50 | 85.90 | 16.60 | 23.10 | 13.90 | 4.20 | -1.4000 |
| SS | Bobby Witt Jr. | 6 | 1.1275 | 1.6995 | positive_batter_regression | 0.3820 | 0.3030 | 0.5090 | 11.90 | 52.20 | 92.70 | 16.30 | 24.60 | 17.40 | 10 | 0.9714 |
| RF | Starling Marte | 561 | 0.9987 | -0.0180 | neutral | 0.2940 | 0.2350 | 0.3740 | 9.90 | 35.10 | 87.60 | 7.10 | 28 | 23.50 | 5.60 | 0.4000 |
| LF | Isaac Collins | 164 | 0.9933 | -0.0893 | neutral | 0.3040 | 0.2330 | 0.3300 | 5.80 | 40.50 | 88.50 | 17.30 | 21.60 | 22 | 11.40 | -0.2571 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| DH | Shohei Ohtani | 32 | 1.1405 | 1.8735 | neutral | 0.4050 | 0.2940 | 0.5660 | 16.40 | 52.10 | 93.30 | 12.70 | 30.40 | 23 | 13.70 | 0.4286 |
| 1B | Freddie Freeman | 39 | 1.0968 | 1.2907 | neutral | 0.3770 | 0.3000 | 0.4890 | 9 | 42.90 | 89.80 | 12.10 | 21.90 | 16.10 | 10.40 | 0.2000 |
| RF | Kyle Tucker | 241 | 1.0384 | 0.5122 | neutral | 0.3360 | 0.2620 | 0.3950 | 6.30 | 38.10 | 88.80 | 17.20 | 21.90 | 18.30 | 12.50 | 0.4000 |
| SS | Mookie Betts | 105 | 1.0559 | 0.7453 | neutral | 0.3290 | 0.2760 | 0.4310 | 7.40 | 38.50 | 90.50 | 18.60 | 12.40 | 11.70 | 7.10 | 0.7429 |
| CF | Andy Pages | 7 | 1.0478 | 0.6378 | neutral | 0.3380 | 0.2680 | 0.4370 | 7.80 | 42.70 | 89.10 | 15.90 | 22.70 | 20.10 | 8.40 | -0.1714 |
| LF | Teoscar Hernández | 324 | 1.0229 | 0.3053 | neutral | 0.3150 | 0.2430 | 0.4100 | 9 | 42.20 | 89.40 | 15.30 | 31.40 | 26.80 | 8.20 | 0 |
| 3B | Max Muncy | 26 | 1.0608 | 0.8107 | neutral | 0.3450 | 0.2380 | 0.4650 | 13.20 | 45.10 | 90.40 | 16.40 | 29.10 | 25.50 | 11.60 | -0.4000 |
| C | Hunter Feduccia | 286 | 1.0167 | 0.2227 | neutral | 0.3100 | 0.2430 | 0.3830 | 8.80 | 40.20 | 90.60 | 16.10 | 22.80 | 25.40 | 8.70 | 0.6000 |
| 2B | Miguel Rojas | 217 | 1.0180 | 0.2395 | neutral | 0.3190 | 0.2890 | 0.4040 | 5.90 | 36.60 | 87 | 14.70 | 16.30 | 10.30 | 5.90 | -0.0286 |
{
"home": {
"applied": true,
"offense_factor": 1.0553,
"raw_average_factor": 1.0553,
"team_espn_average_rank": 141.89,
"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.8735,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "660271",
"espn_id": 39832,
"player_name": "Shohei Ohtani",
"team": "LAD",
"role": "batter",
"espn_rank": 32,
"espn_total_ranked": 633,
"metrics": {
"espn_rank": 32,
"gp_value": 110.0,
"gp_rank": 99,
"ab_value": 424.0,
"ab_rank": 64,
"r_value": 76.0,
"r_rank": 9,
"h_value": 123.0,
"h_rank": 24,
"avg_value": 0.2900943,
"avg_rank": 14.0,
"2b_value": 23.0,
"2b_rank": 36,
"3b_value": 2.0,
"3b_rank": 56,
"hr_value": 26.0,
"hr_rank": 10,
"rbi_value": 72.0,
"rbi_rank": 17,
"tb_value": 228.0,
"tb_rank": 202,
"bb_value": 69.0,
"bb_rank": 11,
"so_value": 116.0,
"so_rank": 38,
"sb_value": 7.0,
"sb_rank": 106,
"obp_value": 0.39165,
"obp_rank": "4",
"slg_value": 0.5377358,
"slg_rank": "9",
"ops_value": 0.9293858,
"ops_rank": 5.0,
"war_value": 3.3,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 414.0,
"k_percent": 23.0,
"bb_percent": 13.7,
"woba": 0.39,
"xwoba": 0.405,
"xba": 0.294,
"xslg": 0.566,
"sweet_spot_percent": 39.3,
"barrel_batted_rate": 16.4,
"hard_hit_percent": 52.1,
"exit_velocity_avg": 93.3,
"launch_angle_avg": 12.7,
"whiff_percent": 30.4,
"swing_percent": 46.4
},
"components": {
"expected_quality": 2.1087,
"regression_edge": 0.4286,
"xwoba_edge": 2.5,
"xba_edge": 1.6286,
"xslg_edge": 2.5,
"barrel_edge": 2.1333,
"hard_hit_edge": 2.0571,
"exit_velocity_edge": 1.88,
"sweet_spot_edge": 1.0,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "1B",
"player_id": "518692",
"player_name": "Freddie Freeman",
"offense_factor": 1.0968,
"quality_score": 1.2907,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "518692",
"espn_id": 30193,
"player_name": "Freddie Freeman",
"team": "LAD",
"role": "batter",
"espn_rank": 39,
"espn_total_ranked": 633,
"metrics": {
"espn_rank": 39,
"gp_value": 117.0,
"gp_rank": 30,
"ab_value": 443.0,
"ab_rank": 32,
"r_value": 58.0,
"r_rank": 66,
"h_value": 135.0,
"h_rank": 4,
"avg_value": 0.3047404,
"avg_rank": 5.0,
"2b_value": 27.0,
"2b_rank": 8,
"3b_value": 1.0,
"3b_rank": 114,
"hr_value": 15.0,
"hr_rank": 87,
"rbi_value": 57.0,
"rbi_rank": 61,
"tb_value": 209.0,
"tb_rank": 501,
"bb_value": 52.0,
"bb_rank": 39,
"so_value": 81.0,
"so_rank": 129,
"sb_value": 5.0,
"sb_rank": 157,
"obp_value": 0.378486,
"obp_rank": "10",
"slg_value": 0.4717832,
"slg_rank": "33",
"ops_value": 0.8502692,
"ops_rank": 23.0,
"war_value": 3.05,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 426.0,
"k_percent": 16.1,
"bb_percent": 10.4,
"woba": 0.37,
"xwoba": 0.377,
"xba": 0.3,
"xslg": 0.489,
"sweet_spot_percent": 37.7,
"barrel_batted_rate": 9.0,
"hard_hit_percent": 42.9,
"exit_velocity_avg": 89.8,
"launch_angle_avg": 12.1,
"whiff_percent": 21.9,
"swing_percent": 50.9
},
"components": {
"expected_quality": 1.4682,
"regression_edge": 0.2,
"xwoba_edge": 2.1429,
"xba_edge": 1.8,
"xslg_edge": 1.7429,
"barrel_edge": 0.4889,
"hard_hit_edge": 0.7429,
"exit_velocity_edge": 0.48,
"sweet_spot_edge": 0.7333,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "RF",
"player_id": "663656",
"player_name": "Kyle Tucker",
"offense_factor": 1.0384,
"quality_score": 0.5122,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "663656",
"espn_id": 34967,
"player_name": "Kyle Tucker",
"team": "LAD",
"role": "batter",
"espn_rank": 241,
"espn_total_ranked": 633,
"metrics": {
"espn_rank": 241,
"gp_value": 113.0,
"gp_rank": 75,
"ab_value": 399.0,
"ab_rank": 86,
"r_value": 66.0,
"r_rank": 35,
"h_value": 96.0,
"h_rank": 100,
"avg_value": 0.2406015,
"avg_rank": 104.0,
"2b_value": 18.0,
"2b_rank": 97,
"3b_value": 3.0,
"3b_rank": 25,
"hr_value": 11.0,
"hr_rank": 140,
"rbi_value": 54.0,
"rbi_rank": 75,
"tb_value": 153.0,
"tb_rank": 667,
"bb_value": 58.0,
"bb_rank": 25,
"so_value": 85.0,
"so_rank": 110,
"sb_value": 7.0,
"sb_rank": 106,
"obp_value": 0.338362,
"obp_rank": "65",
"slg_value": 0.3834586,
"slg_rank": "119",
"ops_value": 0.7218206,
"ops_rank": 184.0,
"war_value": 0.64,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 391.0,
"k_percent": 18.3,
"bb_percent": 12.5,
"woba": 0.322,
"xwoba": 0.336,
"xba": 0.262,
"xslg": 0.395,
"sweet_spot_percent": 34.3,
"barrel_batted_rate": 6.3,
"hard_hit_percent": 38.1,
"exit_velocity_avg": 88.8,
"launch_angle_avg": 17.2,
"whiff_percent": 21.9,
"swing_percent": 48.6
},
"components": {
"expected_quality": 0.5305,
"regression_edge": 0.4,
"xwoba_edge": 0.9714,
"xba_edge": 0.7143,
"xslg_edge": 0.4,
"barrel_edge": -0.1111,
"hard_hit_edge": 0.0571,
"exit_velocity_edge": 0.08,
"sweet_spot_edge": 0.1667,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "SS",
"player_id": "605141",
"player_name": "Mookie Betts",
"offense_factor": 1.0559,
"quality_score": 0.7453,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "605141",
"espn_id": 33039,
"player_name": "Mookie Betts",
"team": "LAD",
"role": "batter",
"espn_rank": 105,
"espn_total_ranked": 633,
"metrics": {
"espn_rank": 105,
"gp_value": 83.0,
"gp_rank": 215,
"ab_value": 323.0,
"ab_rank": 145,
"r_value": 46.0,
"r_rank": 129,
"h_value": 76.0,
"h_rank": 157,
"avg_value": 0.2352941,
"avg_rank": null,
"2b_value": 13.0,
"2b_rank": 183,
"3b_value": 0.0,
"3b_rank": 265,
"hr_value": 14.0,
"hr_rank": 97,
"rbi_value": 38.0,
"rbi_rank": 169,
"tb_value": 131.0,
"tb_rank": 1161,
"bb_value": 25.0,
"bb_rank": 192,
"so_value": 41.0,
"so_rank": 311,
"sb_value": 1.0,
"sb_rank": 305,
"obp_value": 0.2914285,
"obp_rank": "-",
"slg_value": 0.4055727,
"slg_rank": "-",
"ops_value": 0.6970012,
"ops_rank": null,
"war_value": 1.74,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 276.0,
"k_percent": 11.7,
"bb_percent": 7.1,
"woba": 0.303,
"xwoba": 0.329,
"xba": 0.276,
"xslg": 0.431,
"sweet_spot_percent": 39.9,
"barrel_batted_rate": 7.4,
"hard_hit_percent": 38.5,
"exit_velocity_avg": 90.5,
"launch_angle_avg": 18.6,
"whiff_percent": 12.4,
"swing_percent": 41.8
},
"components": {
"expected_quality": 0.7457,
"regression_edge": 0.7429,
"xwoba_edge": 0.7714,
"xba_edge": 1.1143,
"xslg_edge": 0.9143,
"barrel_edge": 0.1333,
"hard_hit_edge": 0.1143,
"exit_velocity_edge": 0.76,
"sweet_spot_edge": 1.1,
"launch_angle_hr_bonus": 0.45
}
},
{
"position": "CF",
"player_id": "681624",
"player_name": "Andy Pages",
"offense_factor": 1.0478,
"quality_score": 0.6378,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "681624",
"espn_id": 42468,
"player_name": "Andy Pages",
"team": "LAD",
"role": "batter",
"espn_rank": 7,
"espn_total_ranked": 633,
"metrics": {
"espn_rank": 7,
"gp_value": 119.0,
"gp_rank": 11,
"ab_value": 459.0,
"ab_rank": 12,
"r_value": 66.0,
"r_rank": 35,
"h_value": 124.0,
"h_rank": 19,
"avg_value": 0.2701525,
"avg_rank": 45.0,
"2b_value": 24.0,
"2b_rank": 27,
"3b_value": 2.0,
"3b_rank": 56,
"hr_value": 19.0,
"hr_rank": 48,
"rbi_value": 76.0,
"rbi_rank": 9,
"tb_value": 209.0,
"tb_rank": 302,
"bb_value": 43.0,
"bb_rank": 76,
"so_value": 103.0,
"so_rank": 62,
"sb_value": 11.0,
"sb_rank": 62,
"obp_value": 0.3372319,
"obp_rank": "69",
"slg_value": 0.4553376,
"slg_rank": "45",
"ops_value": 0.7925695,
"ops_rank": 24.0,
"war_value": 5.18,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 432.0,
"k_percent": 20.1,
"bb_percent": 8.4,
"woba": 0.344,
"xwoba": 0.338,
"xba": 0.268,
"xslg": 0.437,
"sweet_spot_percent": 36.3,
"barrel_batted_rate": 7.8,
"hard_hit_percent": 42.7,
"exit_velocity_avg": 89.1,
"launch_angle_avg": 15.9,
"whiff_percent": 22.7,
"swing_percent": 48.3
},
"components": {
"expected_quality": 0.7695,
"regression_edge": -0.1714,
"xwoba_edge": 1.0286,
"xba_edge": 0.8857,
"xslg_edge": 1.0,
"barrel_edge": 0.2222,
"hard_hit_edge": 0.7143,
"exit_velocity_edge": 0.2,
"sweet_spot_edge": 0.5,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "LF",
"player_id": "606192",
"player_name": "Teoscar Hernández",
"offense_factor": 1.0229,
"quality_score": 0.3053,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "606192",
"espn_id": 33377,
"player_name": "Teoscar Hernandez",
"team": "LAD",
"role": "batter",
"espn_rank": 324,
"espn_total_ranked": 633,
"metrics": {
"espn_rank": 324,
"gp_value": 85.0,
"gp_rank": 208,
"ab_value": 296.0,
"ab_rank": 178,
"r_value": 47.0,
"r_rank": 126,
"h_value": 74.0,
"h_rank": 164,
"avg_value": 0.25,
"avg_rank": null,
"2b_value": 13.0,
"2b_rank": 183,
"3b_value": 0.0,
"3b_rank": 265,
"hr_value": 11.0,
"hr_rank": 140,
"rbi_value": 42.0,
"rbi_rank": 143,
"tb_value": 120.0,
"tb_rank": 1297,
"bb_value": 27.0,
"bb_rank": 181,
"so_value": 88.0,
"so_rank": 101,
"sb_value": 2.0,
"sb_rank": 248,
"obp_value": 0.3140243,
"obp_rank": "-",
"slg_value": 0.4054054,
"slg_rank": "-",
"ops_value": 0.7194297,
"ops_rank": null,
"war_value": 0.24,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 263.0,
"k_percent": 26.8,
"bb_percent": 8.2,
"woba": 0.315,
"xwoba": 0.315,
"xba": 0.243,
"xslg": 0.41,
"sweet_spot_percent": 30.3,
"barrel_batted_rate": 9.0,
"hard_hit_percent": 42.2,
"exit_velocity_avg": 89.4,
"launch_angle_avg": 15.3,
"whiff_percent": 31.4,
"swing_percent": 47.0
},
"components": {
"expected_quality": 0.355,
"regression_edge": 0.0,
"xwoba_edge": 0.3714,
"xba_edge": 0.1714,
"xslg_edge": 0.6143,
"barrel_edge": 0.4889,
"hard_hit_edge": 0.6429,
"exit_velocity_edge": 0.32,
"sweet_spot_edge": -0.5,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "3B",
"player_id": "571970",
"player_name": "Max Muncy",
"offense_factor": 1.0608,
"quality_score": 0.8107,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "571970",
"espn_id": 33303,
"player_name": "Max Muncy",
"team": "LAD",
"role": "batter",
"espn_rank": 26,
"espn_total_ranked": 633,
"metrics": {
"espn_rank": 26,
"gp_value": 110.0,
"gp_rank": 99,
"ab_value": 363.0,
"ab_rank": 117,
"r_value": 62.0,
"r_rank": 48,
"h_value": 91.0,
"h_rank": 113,
"avg_value": 0.2506887,
"avg_rank": 83.0,
"2b_value": 17.0,
"2b_rank": 110,
"3b_value": 1.0,
"3b_rank": 114,
"hr_value": 22.0,
"hr_rank": 27,
"rbi_value": 56.0,
"rbi_rank": 65,
"tb_value": 176.0,
"tb_rank": 532,
"bb_value": 48.0,
"bb_rank": 49,
"so_value": 106.0,
"so_rank": 57,
"sb_value": 2.0,
"sb_rank": 248,
"obp_value": 0.3445783,
"obp_rank": "54",
"slg_value": 0.4848484,
"slg_rank": "24",
"ops_value": 0.8294267,
"ops_rank": 78.0,
"war_value": 3.59,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 352.0,
"k_percent": 25.5,
"bb_percent": 11.6,
"woba": 0.359,
"xwoba": 0.345,
"xba": 0.238,
"xslg": 0.465,
"sweet_spot_percent": 34.2,
"barrel_batted_rate": 13.2,
"hard_hit_percent": 45.1,
"exit_velocity_avg": 90.4,
"launch_angle_avg": 16.4,
"whiff_percent": 29.1,
"swing_percent": 45.2
},
"components": {
"expected_quality": 1.0078,
"regression_edge": -0.4,
"xwoba_edge": 1.2286,
"xba_edge": 0.0286,
"xslg_edge": 1.4,
"barrel_edge": 1.4222,
"hard_hit_edge": 1.0571,
"exit_velocity_edge": 0.72,
"sweet_spot_edge": 0.15,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "C",
"player_id": "676439",
"player_name": "Hunter Feduccia",
"offense_factor": 1.0167,
"quality_score": 0.2227,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "676439",
"espn_id": 41801,
"player_name": "Hunter Feduccia",
"team": "LAD",
"role": "batter",
"espn_rank": 286,
"espn_total_ranked": 633,
"metrics": {
"espn_rank": 286,
"gp_value": 67.0,
"gp_rank": 287,
"ab_value": 153.0,
"ab_rank": 333,
"r_value": 17.0,
"r_rank": 347,
"h_value": 36.0,
"h_rank": 322,
"avg_value": 0.2352941,
"avg_rank": null,
"2b_value": 8.0,
"2b_rank": 275,
"3b_value": 1.0,
"3b_rank": 114,
"hr_value": 2.0,
"hr_rank": 383,
"rbi_value": 12.0,
"rbi_rank": 370,
"tb_value": 52.0,
"tb_rank": 1974,
"bb_value": 15.0,
"bb_rank": 302,
"so_value": 44.0,
"so_rank": 288,
"sb_value": 0.0,
"sb_rank": 408,
"obp_value": 0.3058823,
"obp_rank": "-",
"slg_value": 0.3398692,
"slg_rank": "-",
"ops_value": 0.6457515,
"ops_rank": null,
"war_value": 0.42,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 142.0,
"k_percent": 25.4,
"bb_percent": 8.7,
"woba": 0.289,
"xwoba": 0.31,
"xba": 0.243,
"xslg": 0.383,
"sweet_spot_percent": 35.4,
"barrel_batted_rate": 8.8,
"hard_hit_percent": 40.2,
"exit_velocity_avg": 90.6,
"launch_angle_avg": 16.1,
"whiff_percent": 22.8,
"swing_percent": 44.3
},
"components": {
"expected_quality": 0.3036,
"regression_edge": 0.6,
"xwoba_edge": 0.2286,
"xba_edge": 0.1714,
"xslg_edge": 0.2286,
"barrel_edge": 0.4444,
"hard_hit_edge": 0.3571,
"exit_velocity_edge": 0.8,
"sweet_spot_edge": 0.35,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "2B",
"player_id": "500743",
"player_name": "Miguel Rojas",
"offense_factor": 1.018,
"quality_score": 0.2395,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "500743",
"espn_id": 30791,
"player_name": "Miguel Rojas",
"team": "LAD",
"role": "batter",
"espn_rank": 217,
"espn_total_ranked": 633,
"metrics": {
"espn_rank": 217,
"gp_value": 74.0,
"gp_rank": 257,
"ab_value": 164.0,
"ab_rank": 320,
"r_value": 18.0,
"r_rank": 336,
"h_value": 47.0,
"h_rank": 267,
"avg_value": 0.2865853,
"avg_rank": null,
"2b_value": 11.0,
"2b_rank": 214,
"3b_value": 0.0,
"3b_rank": 265,
"hr_value": 3.0,
"hr_rank": 336,
"rbi_value": 18.0,
"rbi_rank": 325,
"tb_value": 67.0,
"tb_rank": 2019,
"bb_value": 11.0,
"bb_rank": 349,
"so_value": 19.0,
"so_rank": 443,
"sb_value": 0.0,
"sb_rank": 408,
"obp_value": 0.3278688,
"obp_rank": "-",
"slg_value": 0.4085365,
"slg_rank": "-",
"ops_value": 0.7364053,
"ops_rank": null,
"war_value": 0.77,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 157.0,
"k_percent": 10.3,
"bb_percent": 5.9,
"woba": 0.32,
"xwoba": 0.319,
"xba": 0.289,
"xslg": 0.404,
"sweet_spot_percent": 35.9,
"barrel_batted_rate": 5.9,
"hard_hit_percent": 36.6,
"exit_velocity_avg": 87.0,
"launch_angle_avg": 14.7,
"whiff_percent": 16.3,
"swing_percent": 48.3
},
"components": {
"expected_quality": 0.3949,
"regression_edge": -0.0286,
"xwoba_edge": 0.4857,
"xba_edge": 1.4857,
"xslg_edge": 0.5286,
"barrel_edge": -0.2,
"hard_hit_edge": -0.1571,
"exit_velocity_edge": -0.64,
"sweet_spot_edge": 0.4333,
"launch_angle_hr_bonus": 0.0
}
}
],
"source": "all_players_stats.csv embedded Savant batter features"
},
"away": {
"applied": true,
"offense_factor": 1.0163,
"raw_average_factor": 1.0163,
"team_espn_average_rank": 238.67,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "2B",
"player_id": "679845",
"player_name": "Nick Loftin",
"offense_factor": 0.9836,
"quality_score": -0.2182,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "679845",
"espn_id": 4314013,
"player_name": "Nick Loftin",
"team": "KC",
"role": "batter",
"espn_rank": 180,
"espn_total_ranked": 633,
"metrics": {
"espn_rank": 180,
"gp_value": 83.0,
"gp_rank": 215,
"ab_value": 249.0,
"ab_rank": 223,
"r_value": 33.0,
"r_rank": 209,
"h_value": 61.0,
"h_rank": 219,
"avg_value": 0.2449799,
"avg_rank": null,
"2b_value": 20.0,
"2b_rank": 71,
"3b_value": 1.0,
"3b_rank": 114,
"hr_value": 5.0,
"hr_rank": 263,
"rbi_value": 35.0,
"rbi_rank": 189,
"tb_value": 98.0,
"tb_rank": 1307,
"bb_value": 29.0,
"bb_rank": 169,
"so_value": 43.0,
"so_rank": 297,
"sb_value": 2.0,
"sb_rank": 248,
"obp_value": 0.3333333,
"obp_rank": "-",
"slg_value": 0.3935742,
"slg_rank": "-",
"ops_value": 0.7269075,
"ops_rank": null,
"war_value": 1.06,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 221.0,
"k_percent": 14.7,
"bb_percent": 9.9,
"woba": 0.322,
"xwoba": 0.305,
"xba": 0.238,
"xslg": 0.345,
"sweet_spot_percent": 36.0,
"barrel_batted_rate": 4.2,
"hard_hit_percent": 28.5,
"exit_velocity_avg": 86.7,
"launch_angle_avg": 13.8,
"whiff_percent": 15.8,
"swing_percent": 41.2
},
"components": {
"expected_quality": -0.1746,
"regression_edge": -0.4857,
"xwoba_edge": 0.0857,
"xba_edge": 0.0286,
"xslg_edge": -0.3143,
"barrel_edge": -0.5778,
"hard_hit_edge": -1.3143,
"exit_velocity_edge": -0.76,
"sweet_spot_edge": 0.45,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "C",
"player_id": "521692",
"player_name": "Salvador Perez",
"offense_factor": 1.0172,
"quality_score": 0.2296,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "521692",
"espn_id": 31127,
"player_name": "Salvador Perez",
"team": "KC",
"role": "batter",
"espn_rank": 600,
"espn_total_ranked": 633,
"metrics": {
"espn_rank": 600,
"gp_value": 112.0,
"gp_rank": 79,
"ab_value": 434.0,
"ab_rank": 47,
"r_value": 41.0,
"r_rank": 158,
"h_value": 93.0,
"h_rank": 108,
"avg_value": 0.2142857,
"avg_rank": 141.0,
"2b_value": 17.0,
"2b_rank": 110,
"3b_value": 1.0,
"3b_rank": 114,
"hr_value": 16.0,
"hr_rank": 72,
"rbi_value": 51.0,
"rbi_rank": 92,
"tb_value": 160.0,
"tb_rank": 662,
"bb_value": 18.0,
"bb_rank": 258,
"so_value": 94.0,
"so_rank": 81,
"sb_value": 0.0,
"sb_rank": 408,
"obp_value": 0.2595744,
"obp_rank": "150",
"slg_value": 0.3686635,
"slg_rank": "127",
"ops_value": 0.6282379,
"ops_rank": 277.0,
"war_value": -0.67,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 398.0,
"k_percent": 20.0,
"bb_percent": 3.8,
"woba": 0.272,
"xwoba": 0.297,
"xba": 0.23,
"xslg": 0.41,
"sweet_spot_percent": 34.0,
"barrel_batted_rate": 9.5,
"hard_hit_percent": 42.1,
"exit_velocity_avg": 88.9,
"launch_angle_avg": 15.9,
"whiff_percent": 25.2,
"swing_percent": 56.7
},
"components": {
"expected_quality": 0.1507,
"regression_edge": 0.7143,
"xwoba_edge": -0.1429,
"xba_edge": -0.2,
"xslg_edge": 0.6143,
"barrel_edge": 0.6,
"hard_hit_edge": 0.6286,
"exit_velocity_edge": 0.12,
"sweet_spot_edge": 0.1167,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "1B",
"player_id": "695506",
"player_name": "Jac Caglianone",
"offense_factor": 1.1034,
"quality_score": 1.3793,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "695506",
"espn_id": 4926296,
"player_name": "Jac Caglianone",
"team": "KC",
"role": "batter",
"espn_rank": 49,
"espn_total_ranked": 633,
"metrics": {
"espn_rank": 49,
"gp_value": 112.0,
"gp_rank": 79,
"ab_value": 402.0,
"ab_rank": 84,
"r_value": 53.0,
"r_rank": 99,
"h_value": 108.0,
"h_rank": 58,
"avg_value": 0.2686567,
"avg_rank": 48.0,
"2b_value": 21.0,
"2b_rank": 59,
"3b_value": 2.0,
"3b_rank": 56,
"hr_value": 21.0,
"hr_rank": 30,
"rbi_value": 53.0,
"rbi_rank": 80,
"tb_value": 196.0,
"tb_rank": 319,
"bb_value": 28.0,
"bb_rank": 175,
"so_value": 115.0,
"so_rank": 40,
"sb_value": 5.0,
"sb_rank": 157,
"obp_value": 0.321839,
"obp_rank": "92",
"slg_value": 0.4875621,
"slg_rank": "22",
"ops_value": 0.8094011,
"ops_rank": 114.0,
"war_value": 2.85,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 362.0,
"k_percent": 26.4,
"bb_percent": 6.4,
"woba": 0.349,
"xwoba": 0.36,
"xba": 0.278,
"xslg": 0.51,
"sweet_spot_percent": 34.0,
"barrel_batted_rate": 14.6,
"hard_hit_percent": 55.2,
"exit_velocity_avg": 93.2,
"launch_angle_avg": 7.3,
"whiff_percent": 28.9,
"swing_percent": 53.1
},
"components": {
"expected_quality": 1.5526,
"regression_edge": 0.3143,
"xwoba_edge": 1.6571,
"xba_edge": 1.1714,
"xslg_edge": 2.0429,
"barrel_edge": 1.7333,
"hard_hit_edge": 2.5,
"exit_velocity_edge": 1.84,
"sweet_spot_edge": 0.1167,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "DH",
"player_id": "695600",
"player_name": "Carter Jensen",
"offense_factor": 0.9863,
"quality_score": -0.183,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "695600",
"espn_id": 4917812,
"player_name": "Carter Jensen",
"team": "KC",
"role": "batter",
"espn_rank": 127,
"espn_total_ranked": 633,
"metrics": {
"espn_rank": 127,
"gp_value": 112.0,
"gp_rank": 79,
"ab_value": 393.0,
"ab_rank": 91,
"r_value": 53.0,
"r_rank": 99,
"h_value": 88.0,
"h_rank": 121,
"avg_value": 0.2239185,
"avg_rank": 130.0,
"2b_value": 24.0,
"2b_rank": 27,
"3b_value": 1.0,
"3b_rank": 114,
"hr_value": 16.0,
"hr_rank": 72,
"rbi_value": 55.0,
"rbi_rank": 70,
"tb_value": 162.0,
"tb_rank": 592,
"bb_value": 45.0,
"bb_rank": 63,
"so_value": 131.0,
"so_rank": 19,
"sb_value": 1.0,
"sb_rank": 305,
"obp_value": 0.3018018,
"obp_rank": "125",
"slg_value": 0.4122137,
"slg_rank": "89",
"ops_value": 0.7140155,
"ops_rank": 36.0,
"war_value": 1.52,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 375.0,
"k_percent": 29.5,
"bb_percent": 10.1,
"woba": 0.311,
"xwoba": 0.284,
"xba": 0.201,
"xslg": 0.357,
"sweet_spot_percent": 31.1,
"barrel_batted_rate": 10.2,
"hard_hit_percent": 43.8,
"exit_velocity_avg": 90.7,
"launch_angle_avg": 21.0,
"whiff_percent": 29.8,
"swing_percent": 45.0
},
"components": {
"expected_quality": -0.0872,
"regression_edge": -0.7714,
"xwoba_edge": -0.5143,
"xba_edge": -1.0286,
"xslg_edge": -0.1429,
"barrel_edge": 0.7556,
"hard_hit_edge": 0.8714,
"exit_velocity_edge": 0.84,
"sweet_spot_edge": -0.3667,
"launch_angle_hr_bonus": 0.45
}
},
{
"position": "CF",
"player_id": "686475",
"player_name": "Tyler Tolbert",
"offense_factor": 0.9898,
"quality_score": -0.1359,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "686475",
"espn_id": 4151063,
"player_name": "Tyler Tolbert",
"team": "KC",
"role": "batter",
"espn_rank": 205,
"espn_total_ranked": 633,
"metrics": {
"espn_rank": 205,
"gp_value": 52.0,
"gp_rank": 354,
"ab_value": 88.0,
"ab_rank": 420,
"r_value": 23.0,
"r_rank": 284,
"h_value": 28.0,
"h_rank": 371,
"avg_value": 0.3181818,
"avg_rank": null,
"2b_value": 5.0,
"2b_rank": 351,
"3b_value": 0.0,
"3b_rank": 265,
"hr_value": 3.0,
"hr_rank": 336,
"rbi_value": 6.0,
"rbi_rank": 452,
"tb_value": 42.0,
"tb_rank": 2260,
"bb_value": 8.0,
"bb_rank": 395,
"so_value": 16.0,
"so_rank": 467,
"sb_value": 16.0,
"sb_rank": 33,
"obp_value": 0.371134,
"obp_rank": "-",
"slg_value": 0.4772727,
"slg_rank": "-",
"ops_value": 0.8484067,
"ops_rank": null,
"war_value": 0.83,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 66.0,
"k_percent": 15.8,
"bb_percent": 7.9,
"woba": 0.369,
"xwoba": 0.313,
"xba": 0.267,
"xslg": 0.349,
"sweet_spot_percent": 33.8,
"barrel_batted_rate": 3.9,
"hard_hit_percent": 28.6,
"exit_velocity_avg": 85.2,
"launch_angle_avg": 8.9,
"whiff_percent": 26.0,
"swing_percent": 51.8
},
"components": {
"expected_quality": -0.0906,
"regression_edge": -1.6,
"xwoba_edge": 0.3143,
"xba_edge": 0.8571,
"xslg_edge": -0.2571,
"barrel_edge": -0.6444,
"hard_hit_edge": -1.3,
"exit_velocity_edge": -1.36,
"sweet_spot_edge": 0.0833,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "3B",
"player_id": "668942",
"player_name": "Josh Rojas",
"offense_factor": 0.9466,
"quality_score": -0.7125,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "668942",
"espn_id": 40718,
"player_name": "Josh Rojas",
"team": "KC",
"role": "batter",
"espn_rank": 256,
"espn_total_ranked": 633,
"metrics": {
"espn_rank": 256,
"gp_value": 27.0,
"gp_rank": 452,
"ab_value": 68.0,
"ab_rank": 448,
"r_value": 6.0,
"r_rank": 463,
"h_value": 16.0,
"h_rank": 431,
"avg_value": 0.2352941,
"avg_rank": null,
"2b_value": 3.0,
"2b_rank": 421,
"3b_value": 0.0,
"3b_rank": 265,
"hr_value": 1.0,
"hr_rank": 433,
"rbi_value": 8.0,
"rbi_rank": 423,
"tb_value": 22.0,
"tb_rank": 2681,
"bb_value": 3.0,
"bb_rank": 478,
"so_value": 10.0,
"so_rank": 509,
"sb_value": 1.0,
"sb_rank": 305,
"obp_value": 0.2676056,
"obp_rank": "-",
"slg_value": 0.3235294,
"slg_rank": "-",
"ops_value": 0.591135,
"ops_rank": null,
"war_value": 0.55,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 49.0,
"k_percent": 13.9,
"bb_percent": 4.2,
"woba": 0.262,
"xwoba": 0.213,
"xba": 0.182,
"xslg": 0.261,
"sweet_spot_percent": 28.8,
"barrel_batted_rate": 1.7,
"hard_hit_percent": 30.5,
"exit_velocity_avg": 85.9,
"launch_angle_avg": 16.6,
"whiff_percent": 23.1,
"swing_percent": 51.4
},
"components": {
"expected_quality": -1.6132,
"regression_edge": -1.4,
"xwoba_edge": -2.5,
"xba_edge": -1.5714,
"xslg_edge": -1.5143,
"barrel_edge": -1.1333,
"hard_hit_edge": -1.0286,
"exit_velocity_edge": -1.08,
"sweet_spot_edge": -0.75,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "SS",
"player_id": "677951",
"player_name": "Bobby Witt Jr.",
"offense_factor": 1.1275,
"quality_score": 1.6995,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "677951",
"espn_id": 42403,
"player_name": "Bobby Witt Jr.",
"team": "KC",
"role": "batter",
"espn_rank": 6,
"espn_total_ranked": 633,
"metrics": {
"espn_rank": 6,
"gp_value": 102.0,
"gp_rank": 133,
"ab_value": 399.0,
"ab_rank": 86,
"r_value": 60.0,
"r_rank": 59,
"h_value": 113.0,
"h_rank": 45,
"avg_value": 0.283208,
"avg_rank": 23.0,
"2b_value": 24.0,
"2b_rank": 27,
"3b_value": 1.0,
"3b_rank": 114,
"hr_value": 13.0,
"hr_rank": 104,
"rbi_value": 42.0,
"rbi_rank": 143,
"tb_value": 178.0,
"tb_rank": 612,
"bb_value": 45.0,
"bb_rank": 63,
"so_value": 78.0,
"so_rank": 143,
"sb_value": 32.0,
"sb_rank": 3,
"obp_value": 0.3549107,
"obp_rank": "38",
"slg_value": 0.4461152,
"slg_rank": "56",
"ops_value": 0.8010259,
"ops_rank": 18.0,
"war_value": 5.22,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 401.0,
"k_percent": 17.4,
"bb_percent": 10.0,
"woba": 0.348,
"xwoba": 0.382,
"xba": 0.303,
"xslg": 0.509,
"sweet_spot_percent": 37.0,
"barrel_batted_rate": 11.9,
"hard_hit_percent": 52.2,
"exit_velocity_avg": 92.7,
"launch_angle_avg": 16.3,
"whiff_percent": 24.6,
"swing_percent": 47.7
},
"components": {
"expected_quality": 1.8181,
"regression_edge": 0.9714,
"xwoba_edge": 2.2857,
"xba_edge": 1.8857,
"xslg_edge": 2.0286,
"barrel_edge": 1.1333,
"hard_hit_edge": 2.0714,
"exit_velocity_edge": 1.64,
"sweet_spot_edge": 0.6167,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "RF",
"player_id": "516782",
"player_name": "Starling Marte",
"offense_factor": 0.9987,
"quality_score": -0.018,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "516782",
"espn_id": 30830,
"player_name": "Starling Marte",
"team": "KC",
"role": "batter",
"espn_rank": 561,
"espn_total_ranked": 633,
"metrics": {
"espn_rank": 561,
"gp_value": 57.0,
"gp_rank": 330,
"ab_value": 147.0,
"ab_rank": 339,
"r_value": 15.0,
"r_rank": 365,
"h_value": 36.0,
"h_rank": 322,
"avg_value": 0.2448979,
"avg_rank": null,
"2b_value": 5.0,
"2b_rank": 351,
"3b_value": 0.0,
"3b_rank": 265,
"hr_value": 2.0,
"hr_rank": 383,
"rbi_value": 14.0,
"rbi_rank": 356,
"tb_value": 47.0,
"tb_rank": 2352,
"bb_value": 9.0,
"bb_rank": 381,
"so_value": 38.0,
"so_rank": 328,
"sb_value": 2.0,
"sb_rank": 248,
"obp_value": 0.3024691,
"obp_rank": "-",
"slg_value": 0.3197278,
"slg_rank": "-",
"ops_value": 0.6221969,
"ops_rank": null,
"war_value": -0.44,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 128.0,
"k_percent": 23.5,
"bb_percent": 5.6,
"woba": 0.28,
"xwoba": 0.294,
"xba": 0.235,
"xslg": 0.374,
"sweet_spot_percent": 27.9,
"barrel_batted_rate": 9.9,
"hard_hit_percent": 35.1,
"exit_velocity_avg": 87.6,
"launch_angle_avg": 7.1,
"whiff_percent": 28.0,
"swing_percent": 52.9
},
"components": {
"expected_quality": -0.1011,
"regression_edge": 0.4,
"xwoba_edge": -0.2286,
"xba_edge": -0.0571,
"xslg_edge": 0.1,
"barrel_edge": 0.6889,
"hard_hit_edge": -0.3714,
"exit_velocity_edge": -0.4,
"sweet_spot_edge": -0.9,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "LF",
"player_id": "686555",
"player_name": "Isaac Collins",
"offense_factor": 0.9933,
"quality_score": -0.0893,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "686555",
"espn_id": 42959,
"player_name": "Isaac Collins",
"team": "KC",
"role": "batter",
"espn_rank": 164,
"espn_total_ranked": 633,
"metrics": {
"espn_rank": 164,
"gp_value": 108.0,
"gp_rank": 113,
"ab_value": 340.0,
"ab_rank": 132,
"r_value": 40.0,
"r_rank": 165,
"h_value": 80.0,
"h_rank": 144,
"avg_value": 0.2352941,
"avg_rank": 113.0,
"2b_value": 19.0,
"2b_rank": 85,
"3b_value": 3.0,
"3b_rank": 25,
"hr_value": 6.0,
"hr_rank": 241,
"rbi_value": 35.0,
"rbi_rank": 189,
"tb_value": 123.0,
"tb_rank": 1002,
"bb_value": 45.0,
"bb_rank": 63,
"so_value": 87.0,
"so_rank": 104,
"sb_value": 6.0,
"sb_rank": 134,
"obp_value": 0.3333333,
"obp_rank": "76",
"slg_value": 0.3617647,
"slg_rank": "132",
"ops_value": 0.695098,
"ops_rank": 56.0,
"war_value": 1.25,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 334.0,
"k_percent": 22.0,
"bb_percent": 11.4,
"woba": 0.313,
"xwoba": 0.304,
"xba": 0.233,
"xslg": 0.33,
"sweet_spot_percent": 31.9,
"barrel_batted_rate": 5.8,
"hard_hit_percent": 40.5,
"exit_velocity_avg": 88.5,
"launch_angle_avg": 17.3,
"whiff_percent": 21.6,
"swing_percent": 40.3
},
"components": {
"expected_quality": -0.062,
"regression_edge": -0.2571,
"xwoba_edge": 0.0571,
"xba_edge": -0.1143,
"xslg_edge": -0.5286,
"barrel_edge": -0.2222,
"hard_hit_edge": 0.4,
"exit_velocity_edge": -0.04,
"sweet_spot_edge": -0.2333,
"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"
}Source: data/all_players_stats.csv embedded Savant pitcher and movement features. Starter quality modifies opposing run scoring and pitcher strikeout/walk/homer expectations.
| Team | Pitcher | Available | ESPN Rank | Quality | Sample Wt | Run Prev | K Factor | BB Factor | HR Factor | Regression | xwOBA | wOBA | K% | BB% | Whiff% | Barrel% | HardHit% |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Away KC | True | 145 | 0.2174 | 0.6480 | 0.9815 | 1.0022 | 0.9793 | 0.9482 | negative_pitcher_regression | 0.2850 | 0.2500 | 19.20 | 7.30 | 28.80 | 5 | 34.30 | |
| Home LAD | True | 332 | -0.5612 | 1 | 1.0477 | 0.9166 | 0.9720 | 1.0887 | neutral | 0.3410 | 0.3380 | 14.70 | 7.50 | 18.10 | 11.40 | 35.50 |
| Team | Pitcher | Movement Available | Primary Pitch | Pitches | Velo | Spin | Axis | HB | IVB | Drop | Rel X | Rel Z | Extension | Arm Angle | Movement Score |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Away KC | True | None | 11 | 89.86 | 2106 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | -0.0029 | |
| Home LAD | True | None | 92 | 86.45 | 2111 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | -0.1940 |
| Run Factor | Value |
|---|---|
| away_runs_vs_home_pitcher | 1.0477 |
| home_runs_vs_away_pitcher | 0.9880 |
| home_pitcher_quality_edge | -0.7786 |
{
"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": 344.0,
"k_percent": 14.7,
"bb_percent": 7.5,
"woba": 0.338,
"xwoba": 0.341,
"sweet_spot_percent": 35.8,
"barrel_batted_rate": 11.4,
"hard_hit_percent": 35.5,
"avg_best_speed": 77.9493,
"avg_hyper_speed": 93.5572,
"whiff_percent": 18.1,
"swing_percent": 51.6
},
"league_medians": {
"pa": 108.0,
"k_percent": 22.0,
"bb_percent": 8.9,
"woba": 0.3145,
"xwoba": 0.312,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 37.7,
"avg_best_speed": 77.5616,
"avg_hyper_speed": 93.8924,
"whiff_percent": 25.4,
"swing_percent": 47.6
},
"components": {
"contact_quality": -0.6042,
"command_and_miss": -0.7643,
"regression_edge": -0.0857,
"xwoba_edge": -0.8286,
"barrel_edge": -0.9556,
"hard_hit_edge": 0.3143,
"whiff_edge": -1.0429,
"bb_edge": 0.35,
"pitch_design_score": -0.194
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "641778",
"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": 86.45377664343971,
"release_spin_rate": 2110.7088109420706,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 86.45377664343971,
"release_spin_rate": 2110.7088109420706,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.4538,
"release_spin_rate": 2110.7088,
"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.194,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.3855,
"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.5612,
"sample_weight": 1.0,
"run_prevention_factor": 1.0477,
"strikeout_factor": 0.9166,
"walk_factor": 0.972,
"homer_factor": 1.0887,
"woba_minus_xwoba": -0.003,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "641778",
"espn_id": 39915,
"player_name": "Eric Lauer",
"team": "LAD",
"role": "pitcher",
"espn_rank": 332,
"espn_total_ranked": 804,
"metrics": {
"espn_rank": 332,
"gp_value": 18.0,
"gp_rank": 370,
"gs_value": 15.0,
"gs_rank": 112,
"qs_value": 5.0,
"qs_rank": 92,
"era_value": 4.8913,
"era_rank": null,
"w_value": 6.0,
"w_rank": 78,
"l_value": 6.0,
"l_rank": 82,
"sv_value": 0.0,
"sv_rank": 234,
"hld_value": 0.0,
"hld_rank": 317,
"ip_value": 92.0,
"ip_rank": 109,
"h_value": 87.0,
"h_rank": 102,
"er_value": 50.0,
"er_rank": 72,
"hr_value": 22.0,
"hr_rank": 11,
"bb_value": 29.0,
"bb_rank": 128,
"k_value": 57.0,
"k_rank": 187,
"k_per_9_value": 5.576087,
"k_per_9_rank": 46,
"whip_value": 1.2608,
"whip_rank": null,
"war_value": 0.17,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"away_pitcher": {
"available": true,
"pitcher_id": "663738",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 162.0,
"k_percent": 19.2,
"bb_percent": 7.3,
"woba": 0.25,
"xwoba": 0.285,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 5.0,
"hard_hit_percent": 34.3,
"avg_best_speed": 76.4833,
"avg_hyper_speed": 93.4869,
"whiff_percent": 28.8,
"swing_percent": 46.9
},
"league_medians": {
"pa": 108.0,
"k_percent": 22.0,
"bb_percent": 8.9,
"woba": 0.3145,
"xwoba": 0.312,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 37.7,
"avg_best_speed": 77.5616,
"avg_hyper_speed": 93.8924,
"whiff_percent": 25.4,
"swing_percent": 47.6
},
"components": {
"contact_quality": 0.7456,
"command_and_miss": 0.07,
"regression_edge": -1.0,
"xwoba_edge": 0.7714,
"barrel_edge": 0.4667,
"hard_hit_edge": 0.4857,
"whiff_edge": 0.4857,
"bb_edge": 0.4,
"pitch_design_score": -0.0029
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "663738",
"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": 89.86478605807753,
"release_spin_rate": 2106.4023249364554,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 89.86478605807753,
"release_spin_rate": 2106.4023249364554,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.8648,
"release_spin_rate": 2106.4023,
"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.0029,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.0211,
"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.2174,
"sample_weight": 0.648,
"run_prevention_factor": 0.9815,
"strikeout_factor": 1.0022,
"walk_factor": 0.9793,
"homer_factor": 0.9482,
"woba_minus_xwoba": -0.035,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "663738",
"espn_id": 41227,
"player_name": "Daniel Lynch IV",
"team": "KC",
"role": "pitcher",
"espn_rank": 145,
"espn_total_ranked": 804,
"metrics": {
"espn_rank": 145,
"gp_value": 47.0,
"gp_rank": 67,
"gs_value": 1.0,
"gs_rank": 281,
"qs_value": 0.0,
"qs_rank": 202,
"era_value": 2.4545,
"era_rank": null,
"w_value": 4.0,
"w_rank": 148,
"l_value": 3.0,
"l_rank": 196,
"sv_value": 1.0,
"sv_rank": 116,
"hld_value": 13.0,
"hld_rank": 32,
"ip_value": 47.2,
"ip_rank": 249,
"h_value": 34.0,
"h_rank": 317,
"er_value": 13.0,
"er_rank": 392,
"hr_value": 2.0,
"hr_rank": 465,
"bb_value": 14.0,
"bb_rank": 342,
"k_value": 37.0,
"k_rank": 316,
"k_per_9_value": 6.9860144,
"k_per_9_rank": 34,
"whip_value": 1.0069,
"whip_rank": null,
"war_value": 1.08,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"run_factors": {
"away_runs_vs_home_pitcher": 1.0477,
"home_runs_vs_away_pitcher": 0.988,
"home_pitcher_quality_edge": -0.7786
},
"score_before": {
"away_runs": 3.0,
"home_runs": 4.0
},
"score_after": {
"away_runs": 3.1431,
"home_runs": 3.952,
"home_win_probability": 0.5547
},
"reason": "Baseball Savant xwOBA, barrel, hard-hit, sweet-spot, whiff, K%, and BB% adjusted starter run prevention"
}| Team | Last-10 W-L | Win % | R/G | RA/G | Run Diff | Streak | Offense | Defense |
|---|---|---|---|---|---|---|---|---|
| Away KC | 3-7 | 0.300 | 4.10 | 5.70 | -16 | 3L | average | weak |
| Home LAD | 3-7 | 0.300 | 3.60 | 5.10 | -15 | 2W | average | weak |
| Team | Record | Win % | Run Diff | RD/Game | Available |
|---|---|---|---|---|---|
| Away KC | 49-71 | 0.408 | -111 | -0.925 | True |
| Home LAD | 71-48 | 0.597 | 139 | 1.168 | True |
| Signal | - | - | 2.093 | 1.541 | applied=True |
| Date | Matchup | Score | Winner | Margin | Type |
|---|---|---|---|---|---|
| 2026-08-11 | KC @ LAD | 4 - 5 | LAD | 1 | close |
| 2026-08-10 | KC @ LAD | 5 - 6 | LAD | 1 | close |
| Layer | AB | H | R | HR | RBI | BB | SO |
|---|---|---|---|---|---|---|---|
| Game target KC | - | - | 4 | - | - | - | - |
| Game target LAD | - | - | 5 | - | - | - | - |
| Player finalized KC | 32 | 9 | 1 | 0 | 1 | 1 | 9 |
| Player finalized LAD | 35 | 9 | 6 | 0 | 4 | 1 | 7 |
| Player model fractional KC | 30.35 | 6.63 | 3.53 | 0.88 | 3.18 | 2.56 | 6.68 |
| Player model fractional LAD | 32.23 | 7.88 | 4.65 | 1.19 | 4.14 | 3.22 | 6.65 |
| Simulation box KC | 41 | 8 | 3 | 0 | 3 | 5 | 12 |
| Simulation box LAD | 39 | 6 | 5 | 3 | 5 | 6 | 12 |
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.
| Team | Role | Pitcher | Pre IP | Pre ER | Pre SO | Pre H | Pre BB | Weighted ERA | Weighted WHIP | Box Sync |
|---|---|---|---|---|---|---|---|---|---|---|
| Away KC | Starter | Daniel Lynch IV | 5.20 | 2 | 8 | 3 | 4 | 3.89 | 1.35 | True |
| Away KC | Middle Reliever | Steven Cruz | 1.20 | 0 | 2 | 0 | 0 | 3.91 | 1.15 | True |
| Away KC | Middle Reliever | John Schreiber | 1 | 0 | 1 | 0 | 0 | 4.32 | 1.79 | True |
| Away KC | Middle Reliever | Nate Pearson | 1 | 0 | 0 | 0 | 0 | 2.45 | 1.14 | True |
| Away KC | Middle Reliever | Alex Lange | 1 | 0 | 0 | 1 | 0 | 6.61 | 1.66 | True |
| Away KC | Reliever | Craig Kimbrel | 0.10 | 2 | 1 | 1 | 1 | 4.81 | 1.39 | - |
| Away KC | Reliever | Jose Cuas | 0.10 | 1 | 0 | 1 | 1 | 3.47 | 1.41 | - |
| Home LAD | Starter | Eric Lauer | 5.10 | 1 | 6 | 6 | 3 | 4.50 | 1.26 | True |
| Home LAD | Middle Reliever | Alex Vesia | 1.10 | 0 | 2 | 0 | 1 | 4.21 | 1.19 | True |
| Home LAD | Middle Reliever | Edwin Díaz | 2.10 | 1 | 1 | 1 | 0 | 5.77 | 1.59 | True |
| Home LAD | Middle Reliever | Tanner Scott | 1 | 0 | 1 | 0 | 0 | 2.07 | 1.53 | True |
| Home LAD | Middle Reliever | Evan Phillips | 0.20 | 0 | 1 | 0 | 0 | 4.95 | 1.46 | True |
| Home LAD | Middle Reliever | Jack Dreyer | 0.10 | 1 | 1 | 1 | 1 | 4.54 | 1.16 | True |
| Side | Team | Role | Pos | Player | Dominant | Changed | Boosted | Deboosted | Better | Worse | Largest Metric | Largest Delta | Direction | Effect |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| home | LAD | batter | DH | Shohei Ohtani | worse | 10 | 2 | 8 | 1 | 9 | predicted_SO | 2.9450 | boost | worse |
| home | LAD | batter | 2B | Miguel Rojas | better | 11 | 5 | 6 | 6 | 5 | predicted_AB | 2.5000 | boost | better |
| home | LAD | batter | CF | Andy Pages | worse | 11 | 4 | 7 | 3 | 8 | predicted_SO | 2.1370 | boost | worse |
| away | KC | pitcher | Reliever | Craig Kimbrel | worse | 5 | 5 | 0 | 1 | 4 | predicted_ER | 2.0000 | boost | worse |
| home | LAD | batter | 1B | Freddie Freeman | better | 10 | 8 | 2 | 9 | 1 | predicted_HR | 1.9300 | boost | better |
| away | KC | batter | RF | Starling Marte | worse | 10 | 2 | 8 | 1 | 9 | predicted_AB | 1.9100 | boost | better |
| away | KC | batter | LF | Isaac Collins | better | 10 | 7 | 3 | 6 | 4 | predicted_H | 1.7200 | boost | better |
| away | KC | batter | 2B | Nick Loftin | better | 11 | 7 | 4 | 6 | 5 | predicted_BB | 1.6540 | boost | better |
| home | LAD | batter | 3B | Max Muncy | better | 11 | 9 | 2 | 10 | 1 | predicted_AB | 1.5600 | boost | better |
| away | KC | batter | CF | Tyler Tolbert | worse | 11 | 2 | 9 | 1 | 10 | predicted_SO | 1.5290 | boost | worse |
| home | LAD | batter | SS | Mookie Betts | worse | 10 | 3 | 7 | 2 | 8 | predicted_SO | 1.5190 | boost | worse |
| home | LAD | batter | RF | Kyle Tucker | worse | 11 | 5 | 6 | 4 | 7 | predicted_BB | 1.5180 | boost | better |
| home | LAD | batter | C | Hunter Feduccia | worse | 9 | 2 | 7 | 3 | 6 | predicted_AB | 1.4920 | boost | better |
| home | LAD | batter | LF | Teoscar Hernández | worse | 11 | 4 | 7 | 3 | 8 | predicted_AB | 1.4820 | boost | better |
| away | KC | batter | DH | Carter Jensen | worse | 11 | 4 | 7 | 3 | 8 | predicted_AB | 1.4360 | boost | better |
| away | KC | batter | 1B | Jac Caglianone | worse | 11 | 6 | 5 | 5 | 6 | predicted_AB | 1.4050 | boost | better |
| away | KC | batter | 3B | Josh Rojas | worse | 10 | 3 | 7 | 4 | 6 | predicted_AB | 1.3850 | boost | better |
| away | KC | batter | SS | Bobby Witt Jr. | worse | 11 | 3 | 8 | 2 | 9 | predicted_H | -1.3300 | deboost | worse |
| away | KC | batter | C | Salvador Perez | deboosted | 12 | 5 | 7 | 6 | 6 | predicted_AB | 1.1260 | boost | better |
| home | LAD | pitcher | Middle Reliever | Edwin Díaz | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 1.1000 | boost | better |
| away | KC | pitcher | Starter | Daniel Lynch IV | neutral | 2 | 1 | 1 | 1 | 1 | predicted_SO | 1.0000 | boost | better |
| away | KC | pitcher | Reliever | Jose Cuas | worse | 3 | 3 | 0 | 0 | 3 | predicted_BB | 1.0000 | boost | worse |
| away | KC | pitcher | Middle Reliever | Alex Lange | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.9000 | boost | better |
| home | LAD | pitcher | Middle Reliever | Evan Phillips | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -0.4667 | deboost | worse |
| away | KC | pitcher | Middle Reliever | John Schreiber | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.3333 | boost | better |
| away | KC | pitcher | Middle Reliever | Nate Pearson | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.3333 | boost | better |
| home | LAD | pitcher | Starter | Eric Lauer | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -0.2333 | deboost | worse |
| away | KC | pitcher | Middle Reliever | Steven Cruz | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.2000 | boost | better |
| home | LAD | pitcher | Middle Reliever | Alex Vesia | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.1000 | boost | better |
This table ranks players whose JSON evolution changed materially. Boost/deboost is numeric movement; better/worse is role-aware.
| Field | Value |
|---|---|
| Pitcher | Daniel Lynch IV |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | 0.2174 |
| ESPN Rank | 145 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.0029 |
| Avg Velo | 89.8648 |
| Avg Spin | 2106.4023 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 5.2000 |
| Pre ER | 2 |
| Pre H | 3 |
| Pre BB | 4 |
| Pre SO | 8 |
| Season ERA | 2.4545 |
| Season WHIP | 1.0070 |
| Role Avg IP | 1.6670 |
| Recent Avg IP | 1.6670 |
| Last Start IP | 1.2000 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "KC",
"games": 129,
"wins": 50,
"losses": 79,
"win_pct": 0.3876,
"runs_scored": 523.0,
"runs_allowed": 652.0,
"run_differential": -129.0,
"run_differential_per_game": -1.0,
"avg_runs_scored": 4.0543,
"avg_runs_allowed": 5.0543,
"offense_index": 0.9003,
"defense_index": 0.891,
"current_streak": "L3",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 4.1,
"avg_runs_allowed": 5.7,
"run_differential": -16.0
},
"available": true,
"quality_score": -0.2877
},
"opponent": {
"team": "LAD",
"games": 127,
"wins": 75,
"losses": 52,
"win_pct": 0.5906,
"runs_scored": 636.0,
"runs_allowed": 486.0,
"run_differential": 150.0,
"run_differential_per_game": 1.1811,
"avg_runs_scored": 5.0079,
"avg_runs_allowed": 3.8268,
"offense_index": 1.1121,
"defense_index": 1.1767,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 3.6,
"avg_runs_allowed": 5.1,
"run_differential": -15.0
},
"available": true,
"quality_score": 0.1513
},
"edges": {
"quality_edge": -0.439,
"offense_edge": -0.0997,
"opponent_offense_edge": 0.1121,
"defense_strength": -0.109,
"opponent_defense_weakness": -0.1767,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 0.9747,
"run_prevention": 1.0508,
"strikeout": 0.9779
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "663738",
"profile": {
"available": true,
"pitcher_id": "663738",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 162.0,
"k_percent": 19.2,
"bb_percent": 7.3,
"woba": 0.25,
"xwoba": 0.285,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 5.0,
"hard_hit_percent": 34.3,
"avg_best_speed": 76.4833,
"avg_hyper_speed": 93.4869,
"whiff_percent": 28.8,
"swing_percent": 46.9
},
"league_medians": {
"pa": 108.0,
"k_percent": 22.0,
"bb_percent": 8.9,
"woba": 0.3145,
"xwoba": 0.312,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 37.7,
"avg_best_speed": 77.5616,
"avg_hyper_speed": 93.8924,
"whiff_percent": 25.4,
"swing_percent": 47.6
},
"components": {
"contact_quality": 0.7456,
"command_and_miss": 0.07,
"regression_edge": -1.0,
"xwoba_edge": 0.7714,
"barrel_edge": 0.4667,
"hard_hit_edge": 0.4857,
"whiff_edge": 0.4857,
"bb_edge": 0.4,
"pitch_design_score": -0.0029
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "663738",
"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": 89.86478605807753,
"release_spin_rate": 2106.4023249364554,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 89.86478605807753,
"release_spin_rate": 2106.4023249364554,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.8648,
"release_spin_rate": 2106.4023,
"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.0029,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.0211,
"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.2174,
"sample_weight": 0.648,
"run_prevention_factor": 0.9815,
"strikeout_factor": 1.0022,
"walk_factor": 0.9793,
"homer_factor": 0.9482,
"woba_minus_xwoba": -0.035,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "663738",
"espn_id": 41227,
"player_name": "Daniel Lynch IV",
"team": "KC",
"role": "pitcher",
"espn_rank": 145,
"espn_total_ranked": 804,
"metrics": {
"espn_rank": 145,
"gp_value": 47.0,
"gp_rank": 67,
"gs_value": 1.0,
"gs_rank": 281,
"qs_value": 0.0,
"qs_rank": 202,
"era_value": 2.4545,
"era_rank": null,
"w_value": 4.0,
"w_rank": 148,
"l_value": 3.0,
"l_rank": 196,
"sv_value": 1.0,
"sv_rank": 116,
"hld_value": 13.0,
"hld_rank": 32,
"ip_value": 47.2,
"ip_rank": 249,
"h_value": 34.0,
"h_rank": 317,
"er_value": 13.0,
"er_rank": 392,
"hr_value": 2.0,
"hr_rank": 465,
"bb_value": 14.0,
"bb_rank": 342,
"k_value": 37.0,
"k_rank": 316,
"k_per_9_value": 6.9860144,
"k_per_9_rank": 34,
"whip_value": 1.0069,
"whip_rank": null,
"war_value": 1.08,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 8.0,
"factor": 0.988,
"adjusted": 8
},
"predicted_H": {
"original": 8.0,
"factor": 0.988,
"adjusted": 8
},
"predicted_BB": {
"original": 6.0,
"factor": 0.9866,
"adjusted": 6
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9664,
"adjusted": 0
},
"predicted_SO": {
"original": 6.0,
"factor": 1.0014,
"adjusted": 6
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 11.2,
"ER": 3,
"H": 10,
"BB": 3,
"SO": 5,
"HR": 0,
"ERA": 2.314285714285714,
"WHIP": 1.114285714285714,
"K9": 3.8571428571428568,
"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-07T00:00:00"
}{
"available": true,
"pitcher_id": "663738",
"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": 89.86478605807753,
"release_spin_rate": 2106.4023249364554,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 89.86478605807753,
"release_spin_rate": 2106.4023249364554,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.8648,
"release_spin_rate": 2106.4023,
"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.0029,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.0211,
"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."
}{
"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.537,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6561,
"prior_weight": 0.3439
},
"role": "pitcher",
"player_id": "663738",
"report_date": "20260812",
"season_year": 2026,
"rows_used": 47,
"reference_playing_time": 5.667,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.1,
"ER": 3.0,
"R": 4.0,
"H": 7.0,
"BB": 2.0,
"SO": 3.0,
"HR": 0.0,
"BF": 25.0,
"Pitches": 78.0
},
"per_game": {
"IP": 1.0,
"ER": 0.6,
"R": 0.8,
"H": 1.4,
"BB": 0.4,
"SO": 0.6,
"HR": 0.0,
"BF": 5.0,
"Pitches": 15.6
},
"rates": {
"ERA": 5.0625,
"WHIP": 1.6875,
"ER_per_IP": 0.5625,
"H_per_IP": 1.3125,
"BB_per_IP": 0.375,
"SO_per_IP": 0.5625,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 11.2,
"ER": 3.0,
"R": 4.0,
"H": 10.0,
"BB": 3.0,
"SO": 5.0,
"HR": 0.0,
"BF": 47.0,
"Pitches": 159.0
},
"per_game": {
"IP": 1.1,
"ER": 0.3,
"R": 0.4,
"H": 1.0,
"BB": 0.3,
"SO": 0.5,
"HR": 0.0,
"BF": 4.7,
"Pitches": 15.9
},
"rates": {
"ERA": 2.3143,
"WHIP": 1.1143,
"ER_per_IP": 0.25714,
"H_per_IP": 0.85714,
"BB_per_IP": 0.25714,
"SO_per_IP": 0.42857,
"HR_per_IP": 0.0
}
},
"season": {
"games": 47,
"totals": {
"IP": 47.2,
"ER": 13.0,
"R": 17.0,
"H": 34.0,
"BB": 14.0,
"SO": 37.0,
"HR": 2.0,
"BF": 193.0,
"Pitches": 710.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2766,
"R": 0.3617,
"H": 0.7234,
"BB": 0.2979,
"SO": 0.7872,
"HR": 0.0426,
"BF": 4.1064,
"Pitches": 15.1064
},
"rates": {
"ERA": 2.4545,
"WHIP": 1.007,
"ER_per_IP": 0.27273,
"H_per_IP": 0.71329,
"BB_per_IP": 0.29371,
"SO_per_IP": 0.77622,
"HR_per_IP": 0.04196
}
}
},
"blend_segments": {},
"weighted_prediction": {
"predicted_IP": 2.2,
"predicted_ER": 1.16,
"predicted_H": 2.716,
"predicted_BB": 0.892,
"predicted_SO": 1.864,
"predicted_HR": 0.152,
"predicted_ERA": 3.8918,
"predicted_WHIP": 1.3453
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.4953,
"form_weight": 0.5047,
"form_reliability": 0.6561,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 9.537,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6561,
"prior_weight": 0.3439
},
"applied_metrics": {
"predicted_IP": {
"model": 5.2,
"form": 2.2,
"final": 4.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 2.0,
"form": 1.16,
"final": 1.5761,
"source": "model_form_blend"
},
"predicted_H": {
"model": 3.0,
"form": 2.716,
"final": 2.8567,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 4.0,
"form": 0.892,
"final": 2.4314,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 7.0,
"form": 1.864,
"final": 4.4078,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 2.0,
"form": 0.152,
"final": 1.0673,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.8918,
"final": 3.8918,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.3453,
"final": 1.3453,
"source": "form_only"
}
}
}{
"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."
}| Field | Value |
|---|---|
| Pitcher | Steven Cruz |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.0689 |
| ESPN Rank | 313 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1.2000 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 2 |
| Season ERA | 4.2632 |
| Season WHIP | 1.2180 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "KC",
"games": 129,
"wins": 50,
"losses": 79,
"win_pct": 0.3876,
"runs_scored": 523.0,
"runs_allowed": 652.0,
"run_differential": -129.0,
"run_differential_per_game": -1.0,
"avg_runs_scored": 4.0543,
"avg_runs_allowed": 5.0543,
"offense_index": 0.9003,
"defense_index": 0.891,
"current_streak": "L3",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 4.1,
"avg_runs_allowed": 5.7,
"run_differential": -16.0
},
"available": true,
"quality_score": -0.2877
},
"opponent": {
"team": "LAD",
"games": 127,
"wins": 75,
"losses": 52,
"win_pct": 0.5906,
"runs_scored": 636.0,
"runs_allowed": 486.0,
"run_differential": 150.0,
"run_differential_per_game": 1.1811,
"avg_runs_scored": 5.0079,
"avg_runs_allowed": 3.8268,
"offense_index": 1.1121,
"defense_index": 1.1767,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 3.6,
"avg_runs_allowed": 5.1,
"run_differential": -15.0
},
"available": true,
"quality_score": 0.1513
},
"edges": {
"quality_edge": -0.439,
"offense_edge": -0.0997,
"opponent_offense_edge": 0.1121,
"defense_strength": -0.109,
"opponent_defense_weakness": -0.1767,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 0.9747,
"run_prevention": 1.0508,
"strikeout": 0.9779
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "674444",
"profile": {
"available": true,
"pitcher_id": "674444",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 145.0,
"k_percent": 27.0,
"bb_percent": 9.7,
"woba": 0.325,
"xwoba": 0.306,
"sweet_spot_percent": 33.9,
"barrel_batted_rate": 11.3,
"hard_hit_percent": 34.8,
"avg_best_speed": 78.2158,
"avg_hyper_speed": 94.2,
"whiff_percent": 29.2,
"swing_percent": 52.6
},
"league_medians": {
"pa": 108.0,
"k_percent": 22.0,
"bb_percent": 8.9,
"woba": 0.3145,
"xwoba": 0.312,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 37.7,
"avg_best_speed": 77.5616,
"avg_hyper_speed": 93.8924,
"whiff_percent": 25.4,
"swing_percent": 47.6
},
"components": {
"contact_quality": -0.1038,
"command_and_miss": 0.4714,
"regression_edge": 0.5429,
"xwoba_edge": 0.1714,
"barrel_edge": -0.9333,
"hard_hit_edge": 0.4143,
"whiff_edge": 0.5429,
"bb_edge": -0.2,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "674444",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.0689,
"sample_weight": 0.58,
"run_prevention_factor": 0.9941,
"strikeout_factor": 1.0292,
"walk_factor": 1.0093,
"homer_factor": 1.0307,
"woba_minus_xwoba": 0.019,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "674444",
"espn_id": 5002931,
"player_name": "Steven Cruz",
"team": "KC",
"role": "pitcher",
"espn_rank": 313,
"espn_total_ranked": 804,
"metrics": {
"espn_rank": 313,
"gp_value": 42.0,
"gp_rank": 105,
"gs_value": 2.0,
"gs_rank": 254,
"qs_value": 0.0,
"qs_rank": 202,
"era_value": 4.2631,
"era_rank": null,
"w_value": 2.0,
"w_rank": 282,
"l_value": 3.0,
"l_rank": 196,
"sv_value": 3.0,
"sv_rank": 57,
"hld_value": 4.0,
"hld_rank": 168,
"ip_value": 44.1,
"ip_rank": 282,
"h_value": 36.0,
"h_rank": 293,
"er_value": 21.0,
"er_rank": 245,
"hr_value": 11.0,
"hr_rank": 119,
"bb_value": 18.0,
"bb_rank": 267,
"k_value": 50.0,
"k_rank": 231,
"k_per_9_value": 10.150376,
"k_per_9_rank": 22,
"whip_value": 1.218,
"whip_rank": null,
"war_value": 0.22,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9966,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9966,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0054,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0178,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0169,
"adjusted": 2
}
}
}
}{
"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": 4,
"H": 9,
"BB": 2,
"SO": 9,
"HR": 2,
"ERA": 3.483870967741936,
"WHIP": 1.0645161290322582,
"K9": 7.838709677419356,
"HR9": 1.741935483870968,
"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-11T00:00:00"
}{
"available": false,
"pitcher_id": "674444",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"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": 8.87,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6395,
"prior_weight": 0.3605
},
"role": "pitcher",
"player_id": "674444",
"report_date": "20260812",
"season_year": 2026,
"rows_used": 42,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.1,
"ER": 2.0,
"R": 2.0,
"H": 4.0,
"BB": 1.0,
"SO": 4.0,
"HR": 1.0,
"BF": 22.0,
"Pitches": 89.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 0.8,
"BB": 0.2,
"SO": 0.8,
"HR": 0.2,
"BF": 4.4,
"Pitches": 17.8
},
"rates": {
"ERA": 3.375,
"WHIP": 0.9375,
"ER_per_IP": 0.375,
"H_per_IP": 0.75,
"BB_per_IP": 0.1875,
"SO_per_IP": 0.75,
"HR_per_IP": 0.1875
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.1,
"ER": 4.0,
"R": 4.0,
"H": 9.0,
"BB": 2.0,
"SO": 9.0,
"HR": 2.0,
"BF": 43.0,
"Pitches": 171.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 0.9,
"BB": 0.2,
"SO": 0.9,
"HR": 0.2,
"BF": 4.3,
"Pitches": 17.1
},
"rates": {
"ERA": 3.4839,
"WHIP": 1.0645,
"ER_per_IP": 0.3871,
"H_per_IP": 0.87097,
"BB_per_IP": 0.19355,
"SO_per_IP": 0.87097,
"HR_per_IP": 0.19355
}
},
"season": {
"games": 42,
"totals": {
"IP": 44.1,
"ER": 21.0,
"R": 22.0,
"H": 36.0,
"BB": 18.0,
"SO": 50.0,
"HR": 11.0,
"BF": 185.0,
"Pitches": 709.0
},
"per_game": {
"IP": 1.0,
"ER": 0.5,
"R": 0.5238,
"H": 0.8571,
"BB": 0.4286,
"SO": 1.1905,
"HR": 0.2619,
"BF": 4.4048,
"Pitches": 16.881
},
"rates": {
"ERA": 4.2632,
"WHIP": 1.218,
"ER_per_IP": 0.47368,
"H_per_IP": 0.81203,
"BB_per_IP": 0.40602,
"SO_per_IP": 1.12782,
"HR_per_IP": 0.24812
}
}
},
"blend_segments": {},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.435,
"predicted_H": 0.866,
"predicted_BB": 0.279,
"predicted_SO": 0.9,
"predicted_HR": 0.183,
"predicted_ERA": 3.9144,
"predicted_WHIP": 1.1451
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5023,
"form_weight": 0.4977,
"form_reliability": 0.6395,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 8.87,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6395,
"prior_weight": 0.3605
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.435,
"final": 0.2165,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.866,
"final": 0.431,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.279,
"final": 0.1389,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 2.0,
"form": 0.9,
"final": 1.4525,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.183,
"final": 0.0911,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.9144,
"final": 3.9144,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1451,
"final": 1.1451,
"source": "form_only"
}
}
}{
"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."
}| Field | Value |
|---|---|
| Pitcher | John Schreiber |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.3305 |
| ESPN Rank | 320 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.0276 |
| Avg Velo | 89.4250 |
| Avg Spin | 2311.4256 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 1 |
| Season ERA | 3.7674 |
| Season WHIP | 1.4186 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "KC",
"games": 129,
"wins": 50,
"losses": 79,
"win_pct": 0.3876,
"runs_scored": 523.0,
"runs_allowed": 652.0,
"run_differential": -129.0,
"run_differential_per_game": -1.0,
"avg_runs_scored": 4.0543,
"avg_runs_allowed": 5.0543,
"offense_index": 0.9003,
"defense_index": 0.891,
"current_streak": "L3",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 4.1,
"avg_runs_allowed": 5.7,
"run_differential": -16.0
},
"available": true,
"quality_score": -0.2877
},
"opponent": {
"team": "LAD",
"games": 127,
"wins": 75,
"losses": 52,
"win_pct": 0.5906,
"runs_scored": 636.0,
"runs_allowed": 486.0,
"run_differential": 150.0,
"run_differential_per_game": 1.1811,
"avg_runs_scored": 5.0079,
"avg_runs_allowed": 3.8268,
"offense_index": 1.1121,
"defense_index": 1.1767,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 3.6,
"avg_runs_allowed": 5.1,
"run_differential": -15.0
},
"available": true,
"quality_score": 0.1513
},
"edges": {
"quality_edge": -0.439,
"offense_edge": -0.0997,
"opponent_offense_edge": 0.1121,
"defense_strength": -0.109,
"opponent_defense_weakness": -0.1767,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 0.9747,
"run_prevention": 1.0508,
"strikeout": 0.9779
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "670167",
"profile": {
"available": true,
"pitcher_id": "670167",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 159.0,
"k_percent": 18.1,
"bb_percent": 11.5,
"woba": 0.337,
"xwoba": 0.344,
"sweet_spot_percent": 40.2,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 42.5,
"avg_best_speed": 78.9621,
"avg_hyper_speed": 94.5841,
"whiff_percent": 22.2,
"swing_percent": 42.5
},
"league_medians": {
"pa": 108.0,
"k_percent": 22.0,
"bb_percent": 8.9,
"woba": 0.3145,
"xwoba": 0.312,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 37.7,
"avg_best_speed": 77.5616,
"avg_hyper_speed": 93.8924,
"whiff_percent": 25.4,
"swing_percent": 47.6
},
"components": {
"contact_quality": -0.6372,
"command_and_miss": -0.5407,
"regression_edge": -0.2,
"xwoba_edge": -0.9143,
"barrel_edge": 0.0,
"hard_hit_edge": -0.6857,
"whiff_edge": -0.4571,
"bb_edge": -0.65,
"pitch_design_score": -0.0276
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "670167",
"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.42496509236226,
"release_spin_rate": 2311.4255820869707,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.42496509236226,
"release_spin_rate": 2311.4255820869707,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.425,
"release_spin_rate": 2311.4256,
"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.0276,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.197,
"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.3305,
"sample_weight": 0.636,
"run_prevention_factor": 1.0281,
"strikeout_factor": 0.9742,
"walk_factor": 1.0331,
"homer_factor": 1.0349,
"woba_minus_xwoba": -0.007,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "670167",
"espn_id": 39949,
"player_name": "John Schreiber",
"team": "KC",
"role": "pitcher",
"espn_rank": 320,
"espn_total_ranked": 804,
"metrics": {
"espn_rank": 320,
"gp_value": 48.0,
"gp_rank": 57,
"gs_value": 0.0,
"gs_rank": 337,
"qs_value": 0.0,
"qs_rank": 202,
"era_value": 3.7674,
"era_rank": null,
"w_value": 0.0,
"w_rank": 480,
"l_value": 3.0,
"l_rank": 196,
"sv_value": 1.0,
"sv_rank": 116,
"hld_value": 10.0,
"hld_rank": 62,
"ip_value": 43.0,
"ip_rank": 294,
"h_value": 40.0,
"h_rank": 261,
"er_value": 18.0,
"er_rank": 299,
"hr_value": 7.0,
"hr_rank": 197,
"bb_value": 21.0,
"bb_rank": 215,
"k_value": 33.0,
"k_rank": 346,
"k_per_9_value": 6.9069767,
"k_per_9_rank": 31,
"whip_value": 1.4186,
"whip_rank": null,
"war_value": 0.2,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 1.0179,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 1.0179,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0211,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0222,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.9836,
"adjusted": 2
}
}
}
}{
"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": 6,
"H": 9,
"BB": 9,
"SO": 6,
"HR": 1,
"ERA": 6.75,
"WHIP": 2.25,
"K9": 6.75,
"HR9": 1.125,
"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-10T00:00:00"
}{
"available": true,
"pitcher_id": "670167",
"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.42496509236226,
"release_spin_rate": 2311.4255820869707,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.42496509236226,
"release_spin_rate": 2311.4255820869707,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.425,
"release_spin_rate": 2311.4256,
"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.0276,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.197,
"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."
}{
"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": 8.604,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6325,
"prior_weight": 0.3675
},
"role": "pitcher",
"player_id": "670167",
"report_date": "20260812",
"season_year": 2026,
"rows_used": 48,
"reference_playing_time": 0.667,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 3.2,
"ER": 1.0,
"R": 1.0,
"H": 2.0,
"BB": 6.0,
"SO": 4.0,
"HR": 0.0,
"BF": 18.0,
"Pitches": 75.0
},
"per_game": {
"IP": 0.2,
"ER": 0.2,
"R": 0.2,
"H": 0.4,
"BB": 1.2,
"SO": 0.8,
"HR": 0.0,
"BF": 3.6,
"Pitches": 15.0
},
"rates": {
"ERA": 2.4545,
"WHIP": 2.1818,
"ER_per_IP": 0.27273,
"H_per_IP": 0.54545,
"BB_per_IP": 1.63636,
"SO_per_IP": 1.09091,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 8.0,
"ER": 6.0,
"R": 6.0,
"H": 9.0,
"BB": 9.0,
"SO": 6.0,
"HR": 1.0,
"BF": 39.0,
"Pitches": 162.0
},
"per_game": {
"IP": 0.2,
"ER": 0.6,
"R": 0.6,
"H": 0.9,
"BB": 0.9,
"SO": 0.6,
"HR": 0.1,
"BF": 3.9,
"Pitches": 16.2
},
"rates": {
"ERA": 6.75,
"WHIP": 2.25,
"ER_per_IP": 0.75,
"H_per_IP": 1.125,
"BB_per_IP": 1.125,
"SO_per_IP": 0.75,
"HR_per_IP": 0.125
}
},
"season": {
"games": 48,
"totals": {
"IP": 43.0,
"ER": 18.0,
"R": 21.0,
"H": 40.0,
"BB": 21.0,
"SO": 33.0,
"HR": 7.0,
"BF": 182.0,
"Pitches": 731.0
},
"per_game": {
"IP": 1.0,
"ER": 0.375,
"R": 0.4375,
"H": 0.8333,
"BB": 0.4375,
"SO": 0.6875,
"HR": 0.1458,
"BF": 3.7917,
"Pitches": 15.2292
},
"rates": {
"ERA": 3.7674,
"WHIP": 1.4186,
"ER_per_IP": 0.4186,
"H_per_IP": 0.93023,
"BB_per_IP": 0.48837,
"SO_per_IP": 0.76744,
"HR_per_IP": 0.16279
}
}
},
"blend_segments": {},
"weighted_prediction": {
"predicted_IP": 0.2,
"predicted_ER": 0.34,
"predicted_H": 0.624,
"predicted_BB": 0.645,
"predicted_SO": 0.656,
"predicted_HR": 0.073,
"predicted_ERA": 4.319,
"predicted_WHIP": 1.7891
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5053,
"form_weight": 0.4947,
"form_reliability": 0.6325,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 8.604,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6325,
"prior_weight": 0.3675
},
"applied_metrics": {
"predicted_IP": {
"model": 0.2,
"form": 0.2,
"final": 0.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.34,
"final": 0.1682,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.624,
"final": 0.3087,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.645,
"final": 0.3191,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.656,
"final": 0.8298,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.073,
"final": 0.0361,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.319,
"final": 4.319,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.7891,
"final": 1.7891,
"source": "form_only"
}
}
}{
"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."
}| Field | Value |
|---|---|
| Pitcher | Nate Pearson |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.0750 |
| ESPN Rank | 233 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 2.7000 |
| Season WHIP | 1.2375 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "KC",
"games": 129,
"wins": 50,
"losses": 79,
"win_pct": 0.3876,
"runs_scored": 523.0,
"runs_allowed": 652.0,
"run_differential": -129.0,
"run_differential_per_game": -1.0,
"avg_runs_scored": 4.0543,
"avg_runs_allowed": 5.0543,
"offense_index": 0.9003,
"defense_index": 0.891,
"current_streak": "L3",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 4.1,
"avg_runs_allowed": 5.7,
"run_differential": -16.0
},
"available": true,
"quality_score": -0.2877
},
"opponent": {
"team": "LAD",
"games": 127,
"wins": 75,
"losses": 52,
"win_pct": 0.5906,
"runs_scored": 636.0,
"runs_allowed": 486.0,
"run_differential": 150.0,
"run_differential_per_game": 1.1811,
"avg_runs_scored": 5.0079,
"avg_runs_allowed": 3.8268,
"offense_index": 1.1121,
"defense_index": 1.1767,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 3.6,
"avg_runs_allowed": 5.1,
"run_differential": -15.0
},
"available": true,
"quality_score": 0.1513
},
"edges": {
"quality_edge": -0.439,
"offense_edge": -0.0997,
"opponent_offense_edge": 0.1121,
"defense_strength": -0.109,
"opponent_defense_weakness": -0.1767,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 0.9747,
"run_prevention": 1.0508,
"strikeout": 0.9779
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "663878",
"profile": {
"available": true,
"pitcher_id": "663878",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 80.0,
"k_percent": 20.2,
"bb_percent": 12.8,
"woba": 0.279,
"xwoba": 0.323,
"sweet_spot_percent": 35.2,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 36.6,
"avg_best_speed": 73.0729,
"avg_hyper_speed": 93.5931,
"whiff_percent": 22.7,
"swing_percent": 45.3
},
"league_medians": {
"pa": 108.0,
"k_percent": 22.0,
"bb_percent": 8.9,
"woba": 0.3145,
"xwoba": 0.312,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 37.7,
"avg_best_speed": 77.5616,
"avg_hyper_speed": 93.8924,
"whiff_percent": 25.4,
"swing_percent": 47.6
},
"components": {
"contact_quality": 0.1338,
"command_and_miss": -0.4457,
"regression_edge": -1.2571,
"xwoba_edge": -0.3143,
"barrel_edge": 0.0,
"hard_hit_edge": 0.1571,
"whiff_edge": -0.3857,
"bb_edge": -0.975,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "663878",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": -0.075,
"sample_weight": 0.45,
"run_prevention_factor": 1.0064,
"strikeout_factor": 0.9884,
"walk_factor": 1.0351,
"homer_factor": 1.0014,
"woba_minus_xwoba": -0.044,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "663878",
"espn_id": 39646,
"player_name": "Nate Pearson",
"team": "KC",
"role": "pitcher",
"espn_rank": 233,
"espn_total_ranked": 804,
"metrics": {
"espn_rank": 233,
"gp_value": 23.0,
"gp_rank": 264,
"gs_value": 0.0,
"gs_rank": 337,
"qs_value": 0.0,
"qs_rank": 202,
"era_value": 2.7,
"era_rank": null,
"w_value": 2.0,
"w_rank": 282,
"l_value": 0.0,
"l_rank": 533,
"sv_value": 2.0,
"sv_rank": 76,
"hld_value": 0.0,
"hld_rank": 317,
"ip_value": 26.2,
"ip_rank": 420,
"h_value": 19.0,
"h_rank": 476,
"er_value": 8.0,
"er_rank": 527,
"hr_value": 1.0,
"hr_rank": 565,
"bb_value": 14.0,
"bb_rank": 342,
"k_value": 22.0,
"k_rank": 426,
"k_per_9_value": 7.425,
"k_per_9_rank": 27,
"whip_value": 1.2375,
"whip_rank": null,
"war_value": 0.53,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 1.0029,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 1.0029,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0158,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0006,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.9948,
"adjusted": 2
}
}
}
}{
"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": 0,
"H": 4,
"BB": 5,
"SO": 8,
"HR": 0,
"ERA": 0.0,
"WHIP": 0.9310344827586208,
"K9": 7.448275862068966,
"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-11T00:00:00"
}{
"available": false,
"pitcher_id": "663878",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"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": 5.336,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5162,
"prior_weight": 0.4838
},
"role": "pitcher",
"player_id": "663878",
"report_date": "20260812",
"season_year": 2026,
"rows_used": 23,
"reference_playing_time": 0.667,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.2,
"ER": 0.0,
"R": 0.0,
"H": 3.0,
"BB": 1.0,
"SO": 6.0,
"HR": 0.0,
"BF": 19.0,
"Pitches": 68.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.6,
"BB": 0.2,
"SO": 1.2,
"HR": 0.0,
"BF": 3.8,
"Pitches": 13.6
},
"rates": {
"ERA": 0.0,
"WHIP": 0.8571,
"ER_per_IP": 0.0,
"H_per_IP": 0.64286,
"BB_per_IP": 0.21429,
"SO_per_IP": 1.28571,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.2,
"ER": 0.0,
"R": 0.0,
"H": 4.0,
"BB": 5.0,
"SO": 8.0,
"HR": 0.0,
"BF": 37.0,
"Pitches": 140.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.4,
"BB": 0.5,
"SO": 0.8,
"HR": 0.0,
"BF": 3.7,
"Pitches": 14.0
},
"rates": {
"ERA": 0.0,
"WHIP": 0.931,
"ER_per_IP": 0.0,
"H_per_IP": 0.41379,
"BB_per_IP": 0.51724,
"SO_per_IP": 0.82759,
"HR_per_IP": 0.0
}
},
"season": {
"games": 23,
"totals": {
"IP": 26.2,
"ER": 8.0,
"R": 10.0,
"H": 19.0,
"BB": 14.0,
"SO": 22.0,
"HR": 1.0,
"BF": 109.0,
"Pitches": 437.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3478,
"R": 0.4348,
"H": 0.8261,
"BB": 0.6087,
"SO": 0.9565,
"HR": 0.0435,
"BF": 4.7391,
"Pitches": 19.0
},
"rates": {
"ERA": 2.7,
"WHIP": 1.2375,
"ER_per_IP": 0.3,
"H_per_IP": 0.7125,
"BB_per_IP": 0.525,
"SO_per_IP": 0.825,
"HR_per_IP": 0.0375
}
}
},
"blend_segments": {},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.228,
"predicted_H": 0.645,
"predicted_BB": 0.312,
"predicted_SO": 0.835,
"predicted_HR": 0.064,
"predicted_ERA": 2.4503,
"predicted_WHIP": 1.1409
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5544,
"form_weight": 0.4456,
"form_reliability": 0.5162,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.336,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5162,
"prior_weight": 0.4838
},
"applied_metrics": {
"predicted_IP": {
"model": 0.2,
"form": 1.0,
"final": 0.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.228,
"final": 0.1016,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.645,
"final": 0.2874,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.312,
"final": 0.139,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.835,
"final": 0.3721,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.064,
"final": 0.0285,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.4503,
"final": 2.4503,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1409,
"final": 1.1409,
"source": "form_only"
}
}
}{
"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."
}| Field | Value |
|---|---|
| Pitcher | Alex Lange |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.3051 |
| ESPN Rank | 787 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.1069 |
| Avg Velo | 91.8265 |
| Avg Spin | 2154.0700 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 1 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 6.1714 |
| Season WHIP | 1.5643 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "KC",
"games": 129,
"wins": 50,
"losses": 79,
"win_pct": 0.3876,
"runs_scored": 523.0,
"runs_allowed": 652.0,
"run_differential": -129.0,
"run_differential_per_game": -1.0,
"avg_runs_scored": 4.0543,
"avg_runs_allowed": 5.0543,
"offense_index": 0.9003,
"defense_index": 0.891,
"current_streak": "L3",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 4.1,
"avg_runs_allowed": 5.7,
"run_differential": -16.0
},
"available": true,
"quality_score": -0.2877
},
"opponent": {
"team": "LAD",
"games": 127,
"wins": 75,
"losses": 52,
"win_pct": 0.5906,
"runs_scored": 636.0,
"runs_allowed": 486.0,
"run_differential": 150.0,
"run_differential_per_game": 1.1811,
"avg_runs_scored": 5.0079,
"avg_runs_allowed": 3.8268,
"offense_index": 1.1121,
"defense_index": 1.1767,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 3.6,
"avg_runs_allowed": 5.1,
"run_differential": -15.0
},
"available": true,
"quality_score": 0.1513
},
"edges": {
"quality_edge": -0.439,
"offense_edge": -0.0997,
"opponent_offense_edge": 0.1121,
"defense_strength": -0.109,
"opponent_defense_weakness": -0.1767,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 0.9747,
"run_prevention": 1.0508,
"strikeout": 0.9779
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "656638",
"profile": {
"available": true,
"pitcher_id": "656638",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 180.0,
"k_percent": 23.2,
"bb_percent": 12.3,
"woba": 0.351,
"xwoba": 0.34,
"sweet_spot_percent": 36.6,
"barrel_batted_rate": 12.2,
"hard_hit_percent": 42.7,
"avg_best_speed": 80.0244,
"avg_hyper_speed": 94.8678,
"whiff_percent": 26.8,
"swing_percent": 46.4
},
"league_medians": {
"pa": 108.0,
"k_percent": 22.0,
"bb_percent": 8.9,
"woba": 0.3145,
"xwoba": 0.312,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 37.7,
"avg_best_speed": 77.5616,
"avg_hyper_speed": 93.8924,
"whiff_percent": 25.4,
"swing_percent": 47.6
},
"components": {
"contact_quality": -0.8176,
"command_and_miss": -0.0229,
"regression_edge": 0.3143,
"xwoba_edge": -0.8,
"barrel_edge": -1.1333,
"hard_hit_edge": -0.7143,
"whiff_edge": 0.2,
"bb_edge": -0.85,
"pitch_design_score": 0.1069
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "656638",
"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": 91.82652459981787,
"release_spin_rate": 2154.070035323872,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 91.82652459981787,
"release_spin_rate": 2154.070035323872,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.8265,
"release_spin_rate": 2154.07,
"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.1069,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.7636,
"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.3051,
"sample_weight": 0.72,
"run_prevention_factor": 1.0259,
"strikeout_factor": 1.0107,
"walk_factor": 1.049,
"homer_factor": 1.1031,
"woba_minus_xwoba": 0.011,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "656638",
"espn_id": 40976,
"player_name": "Alex Lange",
"team": "KC",
"role": "pitcher",
"espn_rank": 787,
"espn_total_ranked": 804,
"metrics": {
"espn_rank": 787,
"gp_value": 45.0,
"gp_rank": 82,
"gs_value": 0.0,
"gs_rank": 337,
"qs_value": 0.0,
"qs_rank": 202,
"era_value": 6.1714,
"era_rank": null,
"w_value": 1.0,
"w_rank": 368,
"l_value": 7.0,
"l_rank": 50,
"sv_value": 10.0,
"sv_rank": 27,
"hld_value": 2.0,
"hld_rank": 207,
"ip_value": 46.2,
"ip_rank": 262,
"h_value": 47.0,
"h_rank": 207,
"er_value": 32.0,
"er_rank": 150,
"hr_value": 5.0,
"hr_rank": 274,
"bb_value": 26.0,
"bb_rank": 161,
"k_value": 49.0,
"k_rank": 237,
"k_per_9_value": 9.450001,
"k_per_9_rank": 24,
"whip_value": 1.5642,
"whip_rank": null,
"war_value": -1.02,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 1.0186,
"adjusted": 1
},
"predicted_H": {
"original": 0.0,
"factor": 1.0186,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0353,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0742,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0077,
"adjusted": 2
}
}
}
}{
"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": 12,
"H": 14,
"BB": 5,
"SO": 12,
"HR": 3,
"ERA": 10.451612903225808,
"WHIP": 1.838709677419355,
"K9": 10.451612903225808,
"HR9": 2.612903225806452,
"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-10T00:00:00"
}{
"available": true,
"pitcher_id": "656638",
"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": 91.82652459981787,
"release_spin_rate": 2154.070035323872,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 91.82652459981787,
"release_spin_rate": 2154.070035323872,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.8265,
"release_spin_rate": 2154.07,
"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.1069,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.7636,
"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."
}{
"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.337,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6513,
"prior_weight": 0.3487
},
"role": "pitcher",
"player_id": "656638",
"report_date": "20260812",
"season_year": 2026,
"rows_used": 45,
"reference_playing_time": 0.1,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.2,
"ER": 4.0,
"R": 4.0,
"H": 8.0,
"BB": 3.0,
"SO": 8.0,
"HR": 1.0,
"BF": 27.0,
"Pitches": 104.0
},
"per_game": {
"IP": 1.0,
"ER": 0.8,
"R": 0.8,
"H": 1.6,
"BB": 0.6,
"SO": 1.6,
"HR": 0.2,
"BF": 5.4,
"Pitches": 20.8
},
"rates": {
"ERA": 6.3529,
"WHIP": 1.9412,
"ER_per_IP": 0.70588,
"H_per_IP": 1.41176,
"BB_per_IP": 0.52941,
"SO_per_IP": 1.41176,
"HR_per_IP": 0.17647
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.1,
"ER": 12.0,
"R": 12.0,
"H": 14.0,
"BB": 5.0,
"SO": 12.0,
"HR": 3.0,
"BF": 50.0,
"Pitches": 199.0
},
"per_game": {
"IP": 1.0,
"ER": 1.2,
"R": 1.2,
"H": 1.4,
"BB": 0.5,
"SO": 1.2,
"HR": 0.3,
"BF": 5.0,
"Pitches": 19.9
},
"rates": {
"ERA": 10.4516,
"WHIP": 1.8387,
"ER_per_IP": 1.16129,
"H_per_IP": 1.35484,
"BB_per_IP": 0.48387,
"SO_per_IP": 1.16129,
"HR_per_IP": 0.29032
}
},
"season": {
"games": 45,
"totals": {
"IP": 46.2,
"ER": 32.0,
"R": 34.0,
"H": 47.0,
"BB": 26.0,
"SO": 49.0,
"HR": 5.0,
"BF": 211.0,
"Pitches": 883.0
},
"per_game": {
"IP": 1.0,
"ER": 0.7111,
"R": 0.7556,
"H": 1.0444,
"BB": 0.5778,
"SO": 1.0889,
"HR": 0.1111,
"BF": 4.6889,
"Pitches": 19.6222
},
"rates": {
"ERA": 6.1714,
"WHIP": 1.5643,
"ER_per_IP": 0.68571,
"H_per_IP": 1.00714,
"BB_per_IP": 0.55714,
"SO_per_IP": 1.05,
"HR_per_IP": 0.10714
}
}
},
"blend_segments": {},
"weighted_prediction": {
"predicted_IP": 0.2,
"predicted_ER": 0.564,
"predicted_H": 0.916,
"predicted_BB": 0.356,
"predicted_SO": 0.882,
"predicted_HR": 0.141,
"predicted_ERA": 6.6135,
"predicted_WHIP": 1.6573
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.4973,
"form_weight": 0.5027,
"form_reliability": 0.6513,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 9.337,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6513,
"prior_weight": 0.3487
},
"applied_metrics": {
"predicted_IP": {
"model": 0.1,
"form": 0.2,
"final": 0.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.564,
"final": 0.2835,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.916,
"final": 0.9578,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.356,
"final": 0.179,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.882,
"final": 0.4434,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.141,
"final": 0.0709,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 6.6135,
"final": 6.6135,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.6573,
"final": 1.6573,
"source": "form_only"
}
}
}{
"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."
}| Field | Value |
|---|---|
| Pitcher | Craig Kimbrel |
| Role | Reliever |
| Projection Source | - |
| Savant Quality Score | -0.0573 |
| ESPN Rank | 554 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.0770 |
| Avg Velo | 91.2932 |
| Avg Spin | 2347.2819 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 0.1000 |
| Pre ER | 2 |
| Pre H | 1 |
| Pre BB | 1 |
| Pre SO | 1 |
| Season ERA | - |
| Season WHIP | - |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"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."
}{
"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."
}{
"available": true,
"pitcher_id": "518886",
"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": 91.2932256550595,
"release_spin_rate": 2347.2818836896813,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 91.2932256550595,
"release_spin_rate": 2347.2818836896813,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.2932,
"release_spin_rate": 2347.2819,
"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.077,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.5503,
"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."
}{
"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.736,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.574,
"prior_weight": 0.426
},
"role": "pitcher",
"player_id": "518886",
"report_date": "20260812",
"season_year": 2026,
"rows_used": 33,
"reference_playing_time": 0.1,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.2,
"ER": 3.0,
"R": 3.0,
"H": 3.0,
"BB": 4.0,
"SO": 5.0,
"HR": 0.0,
"BF": 22.0,
"Pitches": 92.0
},
"per_game": {
"IP": 1.0,
"ER": 0.6,
"R": 0.6,
"H": 0.6,
"BB": 0.8,
"SO": 1.0,
"HR": 0.0,
"BF": 4.4,
"Pitches": 18.4
},
"rates": {
"ERA": 5.7857,
"WHIP": 1.5,
"ER_per_IP": 0.64286,
"H_per_IP": 0.64286,
"BB_per_IP": 0.85714,
"SO_per_IP": 1.07143,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.2,
"ER": 5.0,
"R": 5.0,
"H": 9.0,
"BB": 6.0,
"SO": 10.0,
"HR": 0.0,
"BF": 47.0,
"Pitches": 203.0
},
"per_game": {
"IP": 1.0,
"ER": 0.5,
"R": 0.5,
"H": 0.9,
"BB": 0.6,
"SO": 1.0,
"HR": 0.0,
"BF": 4.7,
"Pitches": 20.3
},
"rates": {
"ERA": 4.2188,
"WHIP": 1.4062,
"ER_per_IP": 0.46875,
"H_per_IP": 0.84375,
"BB_per_IP": 0.5625,
"SO_per_IP": 0.9375,
"HR_per_IP": 0.0
}
},
"season": {
"games": 33,
"totals": {
"IP": 33.2,
"ER": 18.0,
"R": 20.0,
"H": 29.0,
"BB": 16.0,
"SO": 32.0,
"HR": 4.0,
"BF": 144.0,
"Pitches": 588.0
},
"per_game": {
"IP": 1.0,
"ER": 0.5455,
"R": 0.6061,
"H": 0.8788,
"BB": 0.4848,
"SO": 0.9697,
"HR": 0.1212,
"BF": 4.3636,
"Pitches": 17.8182
},
"rates": {
"ERA": 4.8119,
"WHIP": 1.3366,
"ER_per_IP": 0.53465,
"H_per_IP": 0.86139,
"BB_per_IP": 0.47525,
"SO_per_IP": 0.9505,
"HR_per_IP": 0.11881
}
}
},
"blend_segments": {},
"weighted_prediction": {
"predicted_IP": 0.2,
"predicted_ER": 0.382,
"predicted_H": 0.608,
"predicted_BB": 0.389,
"predicted_SO": 0.703,
"predicted_HR": 0.055,
"predicted_ERA": 4.8066,
"predicted_WHIP": 1.3921
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.53,
"form_weight": 0.47,
"form_reliability": 0.574,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.736,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.574,
"prior_weight": 0.426
},
"applied_metrics": {
"predicted_IP": {
"model": 0.1,
"form": 0.2,
"final": 0.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.382,
"final": 0.1795,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.608,
"final": 0.2858,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.389,
"final": 0.1828,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.703,
"final": 0.3304,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.055,
"final": 0.0259,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.8066,
"final": 4.8066,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.3921,
"final": 1.3921,
"source": "form_only"
}
}
}{
"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."
}| Field | Value |
|---|---|
| Pitcher | Jose Cuas |
| Role | Reliever |
| Projection Source | - |
| Savant Quality Score | 0.0747 |
| ESPN Rank | 312 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.0039 |
| Avg Velo | 89.9862 |
| Avg Spin | 2491.3277 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 0.1000 |
| Pre ER | 1 |
| Pre H | 1 |
| Pre BB | 1 |
| Pre SO | 0 |
| Season ERA | - |
| Season WHIP | - |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"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."
}{
"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."
}{
"available": true,
"pitcher_id": "621016",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 24,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 24,
"pitch_usage": 0.0,
"release_speed": 89.98619047619047,
"release_spin_rate": 2491.327684407096,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 24,
"pitch_usage": 0.0,
"release_speed": 89.98619047619047,
"release_spin_rate": 2491.327684407096,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.9862,
"release_spin_rate": 2491.3277,
"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.0039,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.0275,
"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."
}{
"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.6818181818181818,
"last_10": 0.3181818181818182
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 1.801,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.2648,
"prior_weight": 0.7352
},
"role": "pitcher",
"player_id": "621016",
"report_date": "20260812",
"season_year": 2026,
"rows_used": 8,
"reference_playing_time": 0.1,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.0,
"ER": 0.0,
"R": 0.0,
"H": 5.0,
"BB": 2.0,
"SO": 5.0,
"HR": 0.0,
"BF": 19.0,
"Pitches": 85.0
},
"per_game": {
"IP": 0.2,
"ER": 0.0,
"R": 0.0,
"H": 1.0,
"BB": 0.4,
"SO": 1.0,
"HR": 0.0,
"BF": 3.8,
"Pitches": 17.0
},
"rates": {
"ERA": 0.0,
"WHIP": 1.75,
"ER_per_IP": 0.0,
"H_per_IP": 1.25,
"BB_per_IP": 0.5,
"SO_per_IP": 1.25,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 8,
"totals": {
"IP": 9.0,
"ER": 2.0,
"R": 2.0,
"H": 10.0,
"BB": 2.0,
"SO": 11.0,
"HR": 0.0,
"BF": 39.0,
"Pitches": 180.0
},
"per_game": {
"IP": 1.0,
"ER": 0.25,
"R": 0.25,
"H": 1.25,
"BB": 0.25,
"SO": 1.375,
"HR": 0.0,
"BF": 4.875,
"Pitches": 22.5
},
"rates": {
"ERA": 2.0,
"WHIP": 1.3333,
"ER_per_IP": 0.22222,
"H_per_IP": 1.11111,
"BB_per_IP": 0.22222,
"SO_per_IP": 1.22222,
"HR_per_IP": 0.0
}
},
"season": {
"games": 8,
"totals": {
"IP": 9.0,
"ER": 2.0,
"R": 2.0,
"H": 10.0,
"BB": 2.0,
"SO": 11.0,
"HR": 0.0,
"BF": 39.0,
"Pitches": 180.0
},
"per_game": {
"IP": 1.0,
"ER": 0.25,
"R": 0.25,
"H": 1.25,
"BB": 0.25,
"SO": 1.375,
"HR": 0.0,
"BF": 4.875,
"Pitches": 22.5
},
"rates": {
"ERA": 2.0,
"WHIP": 1.3333,
"ER_per_IP": 0.22222,
"H_per_IP": 1.11111,
"BB_per_IP": 0.22222,
"SO_per_IP": 1.22222,
"HR_per_IP": 0.0
}
}
},
"blend_segments": {},
"weighted_prediction": {
"predicted_IP": 0.1,
"predicted_ER": 0.173,
"predicted_H": 0.466,
"predicted_BB": 0.168,
"predicted_SO": 0.464,
"predicted_HR": 0.049,
"predicted_ERA": 3.4685,
"predicted_WHIP": 1.4097
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.6606,
"form_weight": 0.3394,
"form_reliability": 0.2648,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 1.801,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.2648,
"prior_weight": 0.7352
},
"applied_metrics": {
"predicted_IP": {
"model": 0.1,
"form": 0.1,
"final": 0.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.173,
"final": 0.0587,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.466,
"final": 0.1582,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.168,
"final": 0.057,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.464,
"final": 0.1575,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.049,
"final": 0.0166,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.4685,
"final": 3.4685,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.4097,
"final": 1.4097,
"source": "form_only"
}
}
}{
"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."
}| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.247 | 1.000 | 0.000 | Hitting_2B | 0.252 | 0.000 | 0.748 | 1.000 |
| predicted_3B | 0.012 | 0.000 | 0.000 | Hitting_3B | 0.020 | 0.000 | -0.020 | 0.000 |
| predicted_AB | 3.074 | 4.000 | 3.000 | Hitting_AB | 3.337 | 4.000 | 0.663 | 0.000 |
| predicted_AVG | 0.245 | 0.250 | 0.333 | Hitting_AVG | 0.263 | 0.000 | -0.013 | 0.250 |
| predicted_BB | 0.346 | 2.000 | 0.000 | Hitting_BB | 0.370 | 1.000 | 1.630 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.753 | 1.000 | 1.000 | Hitting_H | 0.878 | 0.000 | 0.122 | 1.000 |
| predicted_HR | 0.062 | 0.000 | 0.000 | Hitting_HR | 0.081 | 0.000 | -0.081 | 0.000 |
| predicted_OBP | 0.321 | 0.500 | 0.333 | Hitting_OBP | 0.347 | 0.200 | 0.153 | 0.300 |
| predicted_R | 0.407 | 1.000 | 0.000 | Hitting_R | 0.516 | 1.000 | 0.484 | 0.000 |
| predicted_RBI | 0.432 | 1.000 | 0.000 | Hitting_RBI | 0.553 | 0.000 | 0.447 | 1.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.016 | 0.000 | -0.016 | 0.000 |
| predicted_SLG | 0.394 | 0.500 | 0.333 | Hitting_SLG | 0.424 | 0.000 | 0.076 | 0.500 |
| predicted_SO | 0.531 | 2.000 | 1.000 | Hitting_SO | 0.492 | 2.000 | 1.508 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 11 |
| Boosted Metrics | 7 |
| Deboosted Metrics | 4 |
| Better Metrics | 6 |
| Worse Metrics | 5 |
| Biggest Boost | predicted_BB: 0.3460 -> 2.0000 (boost 1.6540, better) |
| Biggest Deboost | predicted_HR: 0.0620 -> 0.0000 (deboost -0.0620, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 4 | 1 | 3 | 0 | 4 | predicted_SO: 0.5310 -> 0.5994 (boost 0.0684, worse) | predicted_RBI: 0.4320 -> 0.3674 (deboost -0.0646, 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. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_OBP: 0.3253 -> 0.3092 (deboost -0.0161, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 2 | 6 | 1 | 7 | predicted_SO: 0.6097 -> 1.0000 (boost 0.3903, worse) | predicted_BB: 0.3686 -> 0.0000 (deboost -0.3686, worse) | AB rounded to 3 (raw=3.11), rates preserved: AVG=0.227 HR/AB=0.017 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3728 -> 0.0000 (deboost -0.3728, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2273 -> 0.3330 (boost 0.1057, better) | predicted_SLG: 0.3681 -> 0.3330 (deboost -0.0351, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 6 | 6 | 0 | 5 | 1 | predicted_BB: 0.0000 -> 2.0000 (boost 2.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.3681 (boost 0.0351, better) | predicted_AVG: 0.3330 -> 0.2273 (deboost -0.1057, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "679845",
"player_name": "Nick Loftin",
"position": "2B",
"team": "KC",
"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.247,
"predicted_3B": 0.012,
"predicted_AB": 3.074,
"predicted_AVG": 0.245,
"predicted_BB": 0.346,
"predicted_H": 0.753,
"predicted_HR": 0.062,
"predicted_OBP": 0.321,
"predicted_R": 0.407,
"predicted_RBI": 0.432,
"predicted_SLG": 0.394,
"predicted_SO": 0.531
},
"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.2609,
"predicted_3B": 0.0103,
"predicted_AB": 3.1074,
"predicted_AVG": 0.2373,
"predicted_BB": 0.3751,
"predicted_H": 0.737,
"predicted_HBP": 0.092,
"predicted_HR": 0.0548,
"predicted_OBP": 0.3253,
"predicted_R": 0.4019,
"predicted_RBI": 0.3674,
"predicted_SLG": 0.3811,
"predicted_SO": 0.5994
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.247,
"after": 0.2609,
"delta": 0.0139,
"percent_delta": 0.0563,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.012,
"after": 0.0103,
"delta": -0.0017,
"percent_delta": -0.1417,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.074,
"after": 3.1074,
"delta": 0.0334,
"percent_delta": 0.0109,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.245,
"after": 0.2373,
"delta": -0.0077,
"percent_delta": -0.0314,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.346,
"after": 0.3751,
"delta": 0.0291,
"percent_delta": 0.0841,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.753,
"after": 0.737,
"delta": -0.016,
"percent_delta": -0.0212,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.062,
"after": 0.0548,
"delta": -0.0072,
"percent_delta": -0.1161,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.321,
"after": 0.3253,
"delta": 0.0043,
"percent_delta": 0.0134,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.407,
"after": 0.4019,
"delta": -0.0051,
"percent_delta": -0.0125,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.432,
"after": 0.3674,
"delta": -0.0646,
"percent_delta": -0.1495,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.394,
"after": 0.3811,
"delta": -0.0129,
"percent_delta": -0.0327,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.531,
"after": 0.5994,
"delta": 0.0684,
"percent_delta": 0.1288,
"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.531,
"after": 0.5994,
"delta": 0.0684,
"percent_delta": 0.1288,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.432,
"after": 0.3674,
"delta": -0.0646,
"percent_delta": -0.1495,
"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": 81
}
},
{
"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.2609,
"predicted_3B": 0.0103,
"predicted_AB": 3.1074,
"predicted_AVG": 0.2273,
"predicted_BB": 0.3686,
"predicted_H": 0.7063,
"predicted_HBP": 0.092,
"predicted_HR": 0.052,
"predicted_OBP": 0.3092,
"predicted_R": 0.3728,
"predicted_RBI": 0.3408,
"predicted_SLG": 0.3681,
"predicted_SO": 0.6097
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2609,
"after": 0.2609,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0103,
"after": 0.0103,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.1074,
"after": 3.1074,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2373,
"after": 0.2273,
"delta": -0.01,
"percent_delta": -0.0421,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3751,
"after": 0.3686,
"delta": -0.0065,
"percent_delta": -0.0173,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.737,
"after": 0.7063,
"delta": -0.0307,
"percent_delta": -0.0417,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.092,
"after": 0.092,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0548,
"after": 0.052,
"delta": -0.0028,
"percent_delta": -0.0511,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3253,
"after": 0.3092,
"delta": -0.0161,
"percent_delta": -0.0495,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4019,
"after": 0.3728,
"delta": -0.0291,
"percent_delta": -0.0724,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3674,
"after": 0.3408,
"delta": -0.0266,
"percent_delta": -0.0724,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3811,
"after": 0.3681,
"delta": -0.013,
"percent_delta": -0.0341,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5994,
"after": 0.6097,
"delta": 0.0103,
"percent_delta": 0.0172,
"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.3253,
"after": 0.3092,
"delta": -0.0161,
"percent_delta": -0.0495,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.11), rates preserved: AVG=0.227 HR/AB=0.017",
"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.2609,
"after": 0.0,
"delta": -0.2609,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0103,
"after": 0.0,
"delta": -0.0103,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.1074,
"after": 3.0,
"delta": -0.1074,
"percent_delta": -0.0346,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3686,
"after": 0.0,
"delta": -0.3686,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.7063,
"after": 1.0,
"delta": 0.2937,
"percent_delta": 0.4158,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.092,
"after": 0.0,
"delta": -0.092,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.052,
"after": 0.0,
"delta": -0.052,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3408,
"after": 0.0,
"delta": -0.3408,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6097,
"after": 1.0,
"delta": 0.3903,
"percent_delta": 0.6402,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 2,
"deboosted_metrics": 6,
"better_metrics": 1,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.6097,
"after": 1.0,
"delta": 0.3903,
"percent_delta": 0.6402,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.3686,
"after": 0.0,
"delta": -0.3686,
"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.3728,
"after": 0.0,
"delta": -0.3728,
"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.3728,
"after": 0.0,
"delta": -0.3728,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2273,
"after": 0.333,
"delta": 0.1057,
"percent_delta": 0.465,
"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.3092,
"after": 0.333,
"delta": 0.0238,
"percent_delta": 0.077,
"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.3681,
"after": 0.333,
"delta": -0.0351,
"percent_delta": -0.0954,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2273,
"after": 0.333,
"delta": 0.1057,
"percent_delta": 0.465,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3681,
"after": 0.333,
"delta": -0.0351,
"percent_delta": -0.0954,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 2.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": 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": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"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": 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": 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_BB",
"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": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2273,
"predicted_BB": 2.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 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.3681,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2273,
"delta": -0.1057,
"percent_delta": -0.3175,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"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.3092,
"delta": -0.0238,
"percent_delta": -0.0714,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3681,
"delta": 0.0351,
"percent_delta": 0.1053,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3681,
"delta": 0.0351,
"percent_delta": 0.1053,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2273,
"delta": -0.1057,
"percent_delta": -0.3175,
"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.247,
"after": 1.0,
"delta": 0.753,
"percent_delta": 3.0486,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.012,
"after": 0.0,
"delta": -0.012,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.074,
"after": 4.0,
"delta": 0.926,
"percent_delta": 0.3012,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.245,
"after": 0.2273,
"delta": -0.0177,
"percent_delta": -0.0722,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.346,
"after": 2.0,
"delta": 1.654,
"percent_delta": 4.7803,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.753,
"after": 1.0,
"delta": 0.247,
"percent_delta": 0.328,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.062,
"after": 0.0,
"delta": -0.062,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.321,
"after": 0.3092,
"delta": -0.0118,
"percent_delta": -0.0368,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.407,
"after": 1.0,
"delta": 0.593,
"percent_delta": 1.457,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.432,
"after": 1.0,
"delta": 0.568,
"percent_delta": 1.3148,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.394,
"after": 0.3681,
"delta": -0.0259,
"percent_delta": -0.0657,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.531,
"after": 2.0,
"delta": 1.469,
"percent_delta": 2.7665,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 7,
"deboosted_metrics": 4,
"better_metrics": 6,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.346,
"after": 2.0,
"delta": 1.654,
"percent_delta": 4.7803,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.062,
"after": 0.0,
"delta": -0.062,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.247 | - |
| predicted_3B | 0.012 | - |
| predicted_AB | 3.074 | - |
| predicted_AVG | 0.245 | - |
| predicted_BB | 0.346 | - |
| predicted_H | 0.753 | - |
| predicted_HR | 0.062 | - |
| predicted_OBP | 0.321 | - |
| predicted_R | 0.407 | - |
| predicted_RBI | 0.432 | - |
| predicted_SLG | 0.394 | - |
| predicted_SO | 0.531 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.261 | 0.014 |
| predicted_3B | 0.010 | -0.002 |
| predicted_AB | 3.107 | 0.033 |
| predicted_AVG | 0.237 | -0.008 |
| predicted_BB | 0.375 | 0.029 |
| predicted_H | 0.737 | -0.016 |
| predicted_HBP | 0.092 | - |
| predicted_HR | 0.055 | -0.007 |
| predicted_OBP | 0.325 | 0.004 |
| predicted_R | 0.402 | -0.005 |
| predicted_RBI | 0.367 | -0.065 |
| predicted_SLG | 0.381 | -0.013 |
| predicted_SO | 0.599 | 0.068 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.261 | 0.000 |
| predicted_3B | 0.010 | 0.000 |
| predicted_AB | 3.107 | 0.000 |
| predicted_AVG | 0.227 | -0.010 |
| predicted_BB | 0.369 | -0.007 |
| predicted_H | 0.706 | -0.031 |
| predicted_HBP | 0.092 | 0.000 |
| predicted_HR | 0.052 | -0.003 |
| predicted_OBP | 0.309 | -0.016 |
| predicted_R | 0.373 | -0.029 |
| predicted_RBI | 0.341 | -0.027 |
| predicted_SLG | 0.368 | -0.013 |
| predicted_SO | 0.610 | 0.010 |
AB rounded to 3 (raw=3.11), rates preserved: AVG=0.227 HR/AB=0.017
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.261 |
| predicted_3B | 0.000 | -0.010 |
| predicted_AB | 3.000 | -0.107 |
| predicted_AVG | 0.333 | 0.106 |
| predicted_BB | 0.000 | -0.369 |
| predicted_H | 1.000 | 0.294 |
| predicted_HR | 0.000 | -0.052 |
| predicted_OBP | 0.333 | 0.024 |
| predicted_R | 0.000 | -0.373 |
| predicted_RBI | 0.000 | -0.341 |
| predicted_SLG | 0.333 | -0.035 |
| predicted_SO | 1.000 | 0.390 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 1.000 | 1.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 2.000 | 2.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 6.000 | - |
| R | 1.000 | 1.000 |
| RBI | 1.000 | 1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 16.000 | 3.000 | 2.000 | 0.000 | 0.000 | 0.000 | 2.000 | 3.000 | 5.000 | 0.1875 | 0.3500 | 0.3125 | 0.1875 | 0.0000 | 0.0000 | 0.1875 | 0.3125 |
| last_10 | 0.20 | 10 | - | 30.000 | 6.000 | 3.000 | 0.000 | 0.000 | 0.000 | 3.000 | 5.000 | 8.000 | 0.2000 | 0.3333 | 0.3000 | 0.2000 | 0.0000 | 0.0000 | 0.1667 | 0.2667 |
| season | 0.60 | 81 | - | 249.000 | 61.000 | 20.000 | 1.000 | 5.000 | 35.000 | 33.000 | 28.000 | 43.000 | 0.2450 | 0.3287 | 0.3936 | 0.2450 | 0.0201 | 0.1406 | 0.1124 | 0.1727 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2800 |
| predicted_3B | 0.0080 |
| predicted_AB | 3.1530 |
| predicted_AVG | 0.2267 |
| predicted_BB | 0.4150 |
| predicted_H | 0.7150 |
| predicted_HBP | 0.0920 |
| predicted_HR | 0.0450 |
| predicted_OBP | 0.3312 |
| predicted_R | 0.3950 |
| predicted_RBI | 0.2790 |
| predicted_SLG | 0.3634 |
| predicted_SO | 0.6930 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2470 | 0.2800 | 0.2609 | model_form_blend |
| predicted_3B | 0.0120 | 0.0080 | 0.0103 | model_form_blend |
| predicted_AB | 3.0740 | 3.1530 | 3.1074 | model_form_blend |
| predicted_AVG | 0.2450 | 0.2267 | 0.2373 | model_form_blend |
| predicted_BB | 0.3460 | 0.4150 | 0.3751 | model_form_blend |
| predicted_H | 0.7530 | 0.7150 | 0.7370 | model_form_blend |
| predicted_HBP | - | 0.0920 | 0.0920 | form_only |
| predicted_HR | 0.0620 | 0.0450 | 0.0548 | model_form_blend |
| predicted_OBP | 0.3210 | 0.3312 | 0.3253 | model_form_blend |
| predicted_R | 0.4070 | 0.3950 | 0.4019 | model_form_blend |
| predicted_RBI | 0.4320 | 0.2790 | 0.3674 | model_form_blend |
| predicted_SLG | 0.3940 | 0.3634 | 0.3811 | model_form_blend |
| predicted_SO | 0.5310 | 0.6930 | 0.5994 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 246 |
| Season rows before report date | 246 |
| Report year | 2026 |
| Profile rows used | 81 |
| Hitter metrics | Hitting_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 Field | Value |
|---|---|
| PA | 6 |
| AB | 4 |
| H | 1 |
| 2B | 1 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| BB | 2 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.245 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 1 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 3B |
| gameID | 20260811_KC@LAD |
| game_type | full |
| mlbID | 679845 |
| playerID | 679845 |
| playerName | Nick Loftin |
| pos | 3B |
| started | True |
| startingPosition | 3B |
| team | KC |
| teamID | 12 |
| game_date | 2026-08-11 |
| sl_k_percent | 14.7 |
| sl_bb_percent | 9.9 |
| sl_woba | 0.322 |
| sl_xwoba | 0.305 |
| sl_xba | 0.238 |
| sl_xslg | 0.345 |
| sl_sweet_spot_percent | 36.0 |
| sl_barrel_batted_rate | 4.2 |
| sl_hard_hit_percent | 28.5 |
| sl_exit_velocity_avg | 86.7 |
| sl_launch_angle_avg | 13.8 |
| sl_whiff_percent | 15.8 |
| sl_swing_percent | 41.2 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.153 | 0.000 | 0.000 | Hitting_2B | 0.155 | 0.000 | -0.155 | 0.000 |
| predicted_3B | 0.009 | 1.000 | 0.000 | Hitting_3B | 0.002 | 0.000 | 0.998 | 1.000 |
| predicted_AB | 3.874 | 5.000 | 4.000 | Hitting_AB | 3.933 | 4.000 | 1.067 | 1.000 |
| predicted_AVG | 0.216 | 0.200 | 0.250 | Hitting_AVG | 0.220 | 0.250 | -0.020 | -0.050 |
| predicted_BB | 0.162 | 0.000 | 0.000 | Hitting_BB | 0.191 | 0.000 | -0.191 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.838 | 1.000 | 1.000 | Hitting_H | 0.866 | 1.000 | 0.134 | 0.000 |
| predicted_HR | 0.144 | 0.000 | 0.000 | Hitting_HR | 0.158 | 0.000 | -0.158 | 0.000 |
| predicted_OBP | 0.248 | 0.200 | 0.250 | Hitting_OBP | 0.272 | 0.200 | -0.072 | 0.000 |
| predicted_R | 0.369 | 1.000 | 0.000 | Hitting_R | 0.418 | 0.000 | 0.582 | 1.000 |
| predicted_RBI | 0.459 | 1.000 | 0.000 | Hitting_RBI | 0.473 | 2.000 | 0.527 | -1.000 |
| predicted_SLG | 0.372 | 0.600 | 0.250 | Hitting_SLG | 0.381 | 0.250 | 0.219 | 0.350 |
| predicted_SO | 0.838 | 0.000 | 1.000 | Hitting_SO | 0.852 | 0.000 | -0.852 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | deboosted |
| Changed Metrics | 12 |
| Boosted Metrics | 5 |
| Deboosted Metrics | 7 |
| Better Metrics | 6 |
| Worse Metrics | 6 |
| Biggest Boost | predicted_AB: 3.8740 -> 5.0000 (boost 1.1260, better) |
| Biggest Deboost | predicted_SO: 0.8380 -> 0.0000 (deboost -0.8380, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 2 | 0 | 2 | 1 | 1 | - | predicted_SO: 0.8380 -> 0.7412 (deboost -0.0968, 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. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3604 -> 0.3462 (deboost -0.0142, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 3 | 5 | 2 | 6 | predicted_SO: 0.7539 -> 1.0000 (boost 0.2461, worse) | predicted_RBI: 0.4635 -> 0.0000 (deboost -0.4635, worse) | AB rounded to 4 (raw=3.87), rates preserved: AVG=0.208 HR/AB=0.031 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3199 -> 0.0000 (deboost -0.3199, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2097 -> 0.2500 (boost 0.0403, better) | predicted_SLG: 0.3462 -> 0.2500 (deboost -0.0962, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 5 | 4 | 1 | 5 | 0 | predicted_3B: 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 |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2500 -> 0.3462 (boost 0.0962, better) | predicted_AVG: 0.2500 -> 0.2097 (deboost -0.0403, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "521692",
"player_name": "Salvador Perez",
"position": "C",
"team": "KC",
"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.009,
"predicted_AB": 3.874,
"predicted_AVG": 0.216,
"predicted_BB": 0.162,
"predicted_H": 0.838,
"predicted_HR": 0.144,
"predicted_OBP": 0.248,
"predicted_R": 0.369,
"predicted_RBI": 0.459,
"predicted_SLG": 0.372,
"predicted_SO": 0.838
},
"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.0077,
"predicted_AB": 3.852,
"predicted_AVG": 0.2187,
"predicted_BB": 0.1629,
"predicted_H": 0.8428,
"predicted_HBP": 0.057,
"predicted_HR": 0.1284,
"predicted_OBP": 0.2522,
"predicted_R": 0.3448,
"predicted_RBI": 0.4996,
"predicted_SLG": 0.3604,
"predicted_SO": 0.7412
},
"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.009,
"after": 0.0077,
"delta": -0.0013,
"percent_delta": -0.1444,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.874,
"after": 3.852,
"delta": -0.022,
"percent_delta": -0.0057,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.216,
"after": 0.2187,
"delta": 0.0027,
"percent_delta": 0.0125,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.162,
"after": 0.1629,
"delta": 0.0009,
"percent_delta": 0.0056,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.838,
"after": 0.8428,
"delta": 0.0048,
"percent_delta": 0.0057,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.144,
"after": 0.1284,
"delta": -0.0156,
"percent_delta": -0.1083,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.248,
"after": 0.2522,
"delta": 0.0042,
"percent_delta": 0.0169,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.369,
"after": 0.3448,
"delta": -0.0242,
"percent_delta": -0.0656,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.459,
"after": 0.4996,
"delta": 0.0406,
"percent_delta": 0.0885,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.372,
"after": 0.3604,
"delta": -0.0116,
"percent_delta": -0.0312,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.838,
"after": 0.7412,
"delta": -0.0968,
"percent_delta": -0.1155,
"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_SO",
"before": 0.838,
"after": 0.7412,
"delta": -0.0968,
"percent_delta": -0.1155,
"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": 111
}
},
{
"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.0077,
"predicted_AB": 3.852,
"predicted_AVG": 0.2097,
"predicted_BB": 0.1601,
"predicted_H": 0.8077,
"predicted_HBP": 0.057,
"predicted_HR": 0.1218,
"predicted_OBP": 0.2412,
"predicted_R": 0.3199,
"predicted_RBI": 0.4635,
"predicted_SLG": 0.3462,
"predicted_SO": 0.7539
},
"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.0077,
"after": 0.0077,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.852,
"after": 3.852,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2187,
"after": 0.2097,
"delta": -0.009,
"percent_delta": -0.0412,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1629,
"after": 0.1601,
"delta": -0.0028,
"percent_delta": -0.0172,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8428,
"after": 0.8077,
"delta": -0.0351,
"percent_delta": -0.0416,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.057,
"after": 0.057,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1284,
"after": 0.1218,
"delta": -0.0066,
"percent_delta": -0.0514,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2522,
"after": 0.2412,
"delta": -0.011,
"percent_delta": -0.0436,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3448,
"after": 0.3199,
"delta": -0.0249,
"percent_delta": -0.0722,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4996,
"after": 0.4635,
"delta": -0.0361,
"percent_delta": -0.0723,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3604,
"after": 0.3462,
"delta": -0.0142,
"percent_delta": -0.0394,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7412,
"after": 0.7539,
"delta": 0.0127,
"percent_delta": 0.0171,
"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.3604,
"after": 0.3462,
"delta": -0.0142,
"percent_delta": -0.0394,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.87), rates preserved: AVG=0.208 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.1452,
"after": 0.0,
"delta": -0.1452,
"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": 3.852,
"after": 4.0,
"delta": 0.148,
"percent_delta": 0.0384,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1601,
"after": 0.0,
"delta": -0.1601,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8077,
"after": 1.0,
"delta": 0.1923,
"percent_delta": 0.2381,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.057,
"after": 0.0,
"delta": -0.057,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1218,
"after": 0.0,
"delta": -0.1218,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4635,
"after": 0.0,
"delta": -0.4635,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7539,
"after": 1.0,
"delta": 0.2461,
"percent_delta": 0.3264,
"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_SO",
"before": 0.7539,
"after": 1.0,
"delta": 0.2461,
"percent_delta": 0.3264,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4635,
"after": 0.0,
"delta": -0.4635,
"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.3199,
"after": 0.0,
"delta": -0.3199,
"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.3199,
"after": 0.0,
"delta": -0.3199,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 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.2097,
"after": 0.25,
"delta": 0.0403,
"percent_delta": 0.1922,
"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.2412,
"after": 0.25,
"delta": 0.0088,
"percent_delta": 0.0365,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3462,
"after": 0.25,
"delta": -0.0962,
"percent_delta": -0.2779,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2097,
"after": 0.25,
"delta": 0.0403,
"percent_delta": 0.1922,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3462,
"after": 0.25,
"delta": -0.0962,
"percent_delta": -0.2779,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 1.0,
"predicted_AB": 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": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"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": 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_3B",
"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": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 1.0,
"predicted_AB": 5.0,
"predicted_AVG": 0.2097,
"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.2412,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3462,
"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": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2097,
"delta": -0.0403,
"percent_delta": -0.1613,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.2412,
"delta": -0.0088,
"percent_delta": -0.0352,
"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.25,
"after": 0.3462,
"delta": 0.0962,
"percent_delta": 0.3848,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3462,
"delta": 0.0962,
"percent_delta": 0.3848,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2097,
"delta": -0.0403,
"percent_delta": -0.1613,
"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.009,
"after": 1.0,
"delta": 0.991,
"percent_delta": 110.1111,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AB",
"before": 3.874,
"after": 5.0,
"delta": 1.126,
"percent_delta": 0.2907,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.216,
"after": 0.2097,
"delta": -0.0063,
"percent_delta": -0.0292,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.162,
"after": 0.0,
"delta": -0.162,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.838,
"after": 1.0,
"delta": 0.162,
"percent_delta": 0.1933,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.144,
"after": 0.0,
"delta": -0.144,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.248,
"after": 0.2412,
"delta": -0.0068,
"percent_delta": -0.0274,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.369,
"after": 1.0,
"delta": 0.631,
"percent_delta": 1.71,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.459,
"after": 1.0,
"delta": 0.541,
"percent_delta": 1.1786,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.372,
"after": 0.3462,
"delta": -0.0258,
"percent_delta": -0.0694,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.838,
"after": 0.0,
"delta": -0.838,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 12,
"boosted_metrics": 5,
"deboosted_metrics": 7,
"better_metrics": 6,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.874,
"after": 5.0,
"delta": 1.126,
"percent_delta": 0.2907,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.838,
"after": 0.0,
"delta": -0.838,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "deboosted"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.153 | - |
| predicted_3B | 0.009 | - |
| predicted_AB | 3.874 | - |
| predicted_AVG | 0.216 | - |
| predicted_BB | 0.162 | - |
| predicted_H | 0.838 | - |
| predicted_HR | 0.144 | - |
| predicted_OBP | 0.248 | - |
| predicted_R | 0.369 | - |
| predicted_RBI | 0.459 | - |
| predicted_SLG | 0.372 | - |
| predicted_SO | 0.838 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.145 | -0.008 |
| predicted_3B | 0.008 | -0.001 |
| predicted_AB | 3.852 | -0.022 |
| predicted_AVG | 0.219 | 0.003 |
| predicted_BB | 0.163 | 0.001 |
| predicted_H | 0.843 | 0.005 |
| predicted_HBP | 0.057 | - |
| predicted_HR | 0.128 | -0.016 |
| predicted_OBP | 0.252 | 0.004 |
| predicted_R | 0.345 | -0.024 |
| predicted_RBI | 0.500 | 0.041 |
| predicted_SLG | 0.360 | -0.012 |
| predicted_SO | 0.741 | -0.097 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.145 | 0.000 |
| predicted_3B | 0.008 | 0.000 |
| predicted_AB | 3.852 | 0.000 |
| predicted_AVG | 0.210 | -0.009 |
| predicted_BB | 0.160 | -0.003 |
| predicted_H | 0.808 | -0.035 |
| predicted_HBP | 0.057 | 0.000 |
| predicted_HR | 0.122 | -0.007 |
| predicted_OBP | 0.241 | -0.011 |
| predicted_R | 0.320 | -0.025 |
| predicted_RBI | 0.464 | -0.036 |
| predicted_SLG | 0.346 | -0.014 |
| predicted_SO | 0.754 | 0.013 |
AB rounded to 4 (raw=3.87), rates preserved: AVG=0.208 HR/AB=0.031
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.145 |
| predicted_3B | 0.000 | -0.008 |
| predicted_AB | 4.000 | 0.148 |
| predicted_AVG | 0.250 | 0.040 |
| predicted_BB | 0.000 | -0.160 |
| predicted_H | 1.000 | 0.192 |
| predicted_HR | 0.000 | -0.122 |
| predicted_OBP | 0.250 | 0.009 |
| predicted_R | 0.000 | -0.320 |
| predicted_RBI | 0.000 | -0.464 |
| predicted_SLG | 0.250 | -0.096 |
| predicted_SO | 1.000 | 0.246 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 1.000 | 1.000 |
| AB | 5.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 1.000 | 1.000 |
| RBI | 1.000 | 1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 19.000 | 4.000 | 0.000 | 0.000 | 0.000 | 4.000 | 1.000 | 1.000 | 1.000 | 0.2105 | 0.2381 | 0.2105 | 0.2105 | 0.0000 | 0.2105 | 0.0526 | 0.0526 |
| last_10 | 0.20 | 10 | - | 37.000 | 9.000 | 2.000 | 0.000 | 1.000 | 6.000 | 2.000 | 1.000 | 3.000 | 0.2432 | 0.2500 | 0.3784 | 0.2432 | 0.0270 | 0.1622 | 0.0270 | 0.0811 |
| season | 0.60 | 111 | - | 430.000 | 93.000 | 17.000 | 1.000 | 16.000 | 51.000 | 41.000 | 18.000 | 93.000 | 0.2163 | 0.2618 | 0.3721 | 0.2163 | 0.0372 | 0.1186 | 0.0419 | 0.2163 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1350 |
| predicted_3B | 0.0060 |
| predicted_AB | 3.8230 |
| predicted_AVG | 0.2222 |
| predicted_BB | 0.1640 |
| predicted_H | 0.8490 |
| predicted_HBP | 0.0570 |
| predicted_HR | 0.1080 |
| predicted_OBP | 0.2578 |
| predicted_R | 0.3130 |
| predicted_RBI | 0.5530 |
| predicted_SLG | 0.3451 |
| predicted_SO | 0.6140 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1530 | 0.1350 | 0.1452 | model_form_blend |
| predicted_3B | 0.0090 | 0.0060 | 0.0077 | model_form_blend |
| predicted_AB | 3.8740 | 3.8230 | 3.8520 | model_form_blend |
| predicted_AVG | 0.2160 | 0.2222 | 0.2187 | model_form_blend |
| predicted_BB | 0.1620 | 0.1640 | 0.1629 | model_form_blend |
| predicted_H | 0.8380 | 0.8490 | 0.8428 | model_form_blend |
| predicted_HBP | - | 0.0570 | 0.0570 | form_only |
| predicted_HR | 0.1440 | 0.1080 | 0.1284 | model_form_blend |
| predicted_OBP | 0.2480 | 0.2578 | 0.2522 | model_form_blend |
| predicted_R | 0.3690 | 0.3130 | 0.3448 | model_form_blend |
| predicted_RBI | 0.4590 | 0.5530 | 0.4996 | model_form_blend |
| predicted_SLG | 0.3720 | 0.3451 | 0.3604 | model_form_blend |
| predicted_SO | 0.8380 | 0.6140 | 0.7412 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 419 |
| Season rows before report date | 419 |
| Report year | 2026 |
| Profile rows used | 111 |
| Hitter metrics | Hitting_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 Field | Value |
|---|---|
| PA | 5 |
| AB | 5 |
| H | 1 |
| 2B | 0 |
| 3B | 1 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.216 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 2 |
| Hitting_SAC | 0 |
| Hitting_SF | 1 |
| Hitting_SO | 0 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 4 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | DH |
| gameID | 20260811_KC@LAD |
| game_type | full |
| mlbID | 521692 |
| playerID | 521692 |
| playerName | Salvador Perez |
| pos | DH |
| started | True |
| startingPosition | DH |
| team | KC |
| teamID | 12 |
| game_date | 2026-08-11 |
| sl_k_percent | 20.0 |
| sl_bb_percent | 3.8 |
| sl_woba | 0.272 |
| sl_xwoba | 0.297 |
| sl_xba | 0.23 |
| sl_xslg | 0.41 |
| sl_sweet_spot_percent | 34.0 |
| sl_barrel_batted_rate | 9.5 |
| sl_hard_hit_percent | 42.1 |
| sl_exit_velocity_avg | 88.9 |
| sl_launch_angle_avg | 15.9 |
| sl_whiff_percent | 25.2 |
| sl_swing_percent | 56.7 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.189 | 0.000 | 0.000 | Hitting_2B | 0.197 | 0.000 | -0.197 | 0.000 |
| predicted_3B | 0.018 | 0.000 | 0.000 | Hitting_3B | 0.021 | 0.000 | -0.021 | 0.000 |
| predicted_AB | 3.595 | 5.000 | 4.000 | Hitting_AB | 3.764 | 4.000 | 1.236 | 1.000 |
| predicted_AVG | 0.266 | 0.400 | 0.250 | Hitting_AVG | 0.258 | 0.500 | 0.142 | -0.100 |
| predicted_BB | 0.243 | 0.000 | 0.000 | Hitting_BB | 0.283 | 1.000 | -0.283 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.003 | 0.000 | -0.003 | 0.000 |
| predicted_H | 0.955 | 2.000 | 1.000 | Hitting_H | 0.971 | 2.000 | 1.029 | 0.000 |
| predicted_HR | 0.189 | 0.000 | 0.000 | Hitting_HR | 0.192 | 0.000 | -0.192 | 0.000 |
| predicted_OBP | 0.312 | 0.400 | 0.250 | Hitting_OBP | 0.318 | 0.600 | 0.082 | -0.200 |
| predicted_R | 0.477 | 0.000 | 0.000 | Hitting_R | 0.549 | 1.000 | -0.549 | -1.000 |
| predicted_RBI | 0.477 | 0.000 | 1.000 | Hitting_RBI | 0.462 | 1.000 | -0.462 | -1.000 |
| predicted_SLG | 0.486 | 0.400 | 0.250 | Hitting_SLG | 0.474 | 0.500 | -0.074 | -0.100 |
| predicted_SO | 1.036 | 2.000 | 1.000 | Hitting_SO | 1.139 | 1.000 | 0.861 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 6 |
| Deboosted Metrics | 5 |
| Better Metrics | 5 |
| Worse Metrics | 6 |
| Biggest Boost | predicted_AB: 3.5950 -> 5.0000 (boost 1.4050, better) |
| Biggest Deboost | predicted_R: 0.4770 -> 0.0000 (deboost -0.4770, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 7 | 6 | 1 | 7 | 0 | predicted_H: 0.9550 -> 1.1063 (boost 0.1513, better) | predicted_SO: 1.0360 -> 0.9584 (deboost -0.0776, 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. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.5647 -> 0.5441 (deboost -0.0206, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 2 | 4 | 2 | 4 | predicted_RBI: 0.5800 -> 1.0000 (boost 0.4200, better) | predicted_2B: 0.2360 -> 0.0000 (deboost -0.2360, worse) | AB rounded to 4 (raw=3.67), rates preserved: AVG=0.289 HR/AB=0.061 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4749 -> 0.0000 (deboost -0.4749, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.5441 -> 0.2500 (deboost -0.2941, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 4 | 3 | 1 | 2 | 2 | predicted_AB: 4.0000 -> 5.0000 (boost 1.0000, better) | predicted_RBI: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2500 -> 0.5441 (boost 0.2941, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "695506",
"player_name": "Jac Caglianone",
"position": "1B",
"team": "KC",
"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.189,
"predicted_3B": 0.018,
"predicted_AB": 3.595,
"predicted_AVG": 0.266,
"predicted_BB": 0.243,
"predicted_H": 0.955,
"predicted_HR": 0.189,
"predicted_OBP": 0.312,
"predicted_R": 0.477,
"predicted_RBI": 0.477,
"predicted_SLG": 0.486,
"predicted_SO": 1.036
},
"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.236,
"predicted_3B": 0.0154,
"predicted_AB": 3.6661,
"predicted_AVG": 0.3011,
"predicted_BB": 0.2296,
"predicted_H": 1.1063,
"predicted_HBP": 0.023,
"predicted_HR": 0.2347,
"predicted_OBP": 0.3444,
"predicted_R": 0.5119,
"predicted_RBI": 0.6252,
"predicted_SLG": 0.5647,
"predicted_SO": 0.9584
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.189,
"after": 0.236,
"delta": 0.047,
"percent_delta": 0.2487,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.018,
"after": 0.0154,
"delta": -0.0026,
"percent_delta": -0.1444,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.595,
"after": 3.6661,
"delta": 0.0711,
"percent_delta": 0.0198,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.266,
"after": 0.3011,
"delta": 0.0351,
"percent_delta": 0.132,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.243,
"after": 0.2296,
"delta": -0.0134,
"percent_delta": -0.0551,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.955,
"after": 1.1063,
"delta": 0.1513,
"percent_delta": 0.1584,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.189,
"after": 0.2347,
"delta": 0.0457,
"percent_delta": 0.2418,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.312,
"after": 0.3444,
"delta": 0.0324,
"percent_delta": 0.1038,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.477,
"after": 0.5119,
"delta": 0.0349,
"percent_delta": 0.0732,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.477,
"after": 0.6252,
"delta": 0.1482,
"percent_delta": 0.3107,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.486,
"after": 0.5647,
"delta": 0.0787,
"percent_delta": 0.1619,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.036,
"after": 0.9584,
"delta": -0.0776,
"percent_delta": -0.0749,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 6,
"deboosted_metrics": 1,
"better_metrics": 7,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.955,
"after": 1.1063,
"delta": 0.1513,
"percent_delta": 0.1584,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.036,
"after": 0.9584,
"delta": -0.0776,
"percent_delta": -0.0749,
"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": 111
}
},
{
"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.236,
"predicted_3B": 0.0154,
"predicted_AB": 3.6661,
"predicted_AVG": 0.2892,
"predicted_BB": 0.2257,
"predicted_H": 1.0602,
"predicted_HBP": 0.023,
"predicted_HR": 0.2226,
"predicted_OBP": 0.3304,
"predicted_R": 0.4749,
"predicted_RBI": 0.58,
"predicted_SLG": 0.5441,
"predicted_SO": 0.9749
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.236,
"after": 0.236,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0154,
"after": 0.0154,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.6661,
"after": 3.6661,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.3011,
"after": 0.2892,
"delta": -0.0119,
"percent_delta": -0.0395,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2296,
"after": 0.2257,
"delta": -0.0039,
"percent_delta": -0.017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.1063,
"after": 1.0602,
"delta": -0.0461,
"percent_delta": -0.0417,
"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.2347,
"after": 0.2226,
"delta": -0.0121,
"percent_delta": -0.0516,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3444,
"after": 0.3304,
"delta": -0.014,
"percent_delta": -0.0407,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5119,
"after": 0.4749,
"delta": -0.037,
"percent_delta": -0.0723,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6252,
"after": 0.58,
"delta": -0.0452,
"percent_delta": -0.0723,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5647,
"after": 0.5441,
"delta": -0.0206,
"percent_delta": -0.0365,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9584,
"after": 0.9749,
"delta": 0.0165,
"percent_delta": 0.0172,
"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.5647,
"after": 0.5441,
"delta": -0.0206,
"percent_delta": -0.0365,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.67), rates preserved: AVG=0.289 HR/AB=0.061",
"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.236,
"after": 0.0,
"delta": -0.236,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0154,
"after": 0.0,
"delta": -0.0154,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.6661,
"after": 4.0,
"delta": 0.3339,
"percent_delta": 0.0911,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2257,
"after": 0.0,
"delta": -0.2257,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0602,
"after": 1.0,
"delta": -0.0602,
"percent_delta": -0.0568,
"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.2226,
"after": 0.0,
"delta": -0.2226,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.58,
"after": 1.0,
"delta": 0.42,
"percent_delta": 0.7241,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9749,
"after": 1.0,
"delta": 0.0251,
"percent_delta": 0.0257,
"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_RBI",
"before": 0.58,
"after": 1.0,
"delta": 0.42,
"percent_delta": 0.7241,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.236,
"after": 0.0,
"delta": -0.236,
"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.4749,
"after": 0.0,
"delta": -0.4749,
"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.4749,
"after": 0.0,
"delta": -0.4749,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 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.2892,
"after": 0.25,
"delta": -0.0392,
"percent_delta": -0.1355,
"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.3304,
"after": 0.25,
"delta": -0.0804,
"percent_delta": -0.2433,
"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.5441,
"after": 0.25,
"delta": -0.2941,
"percent_delta": -0.5405,
"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.5441,
"after": 0.25,
"delta": -0.2941,
"percent_delta": -0.5405,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 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": 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": 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": 4,
"boosted_metrics": 3,
"deboosted_metrics": 1,
"better_metrics": 2,
"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_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": "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.2892,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_FB": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3304,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.5441,
"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.25,
"after": 0.2892,
"delta": 0.0392,
"percent_delta": 0.1567,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.3304,
"delta": 0.0804,
"percent_delta": 0.3216,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.5441,
"delta": 0.2941,
"percent_delta": 1.1764,
"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.25,
"after": 0.5441,
"delta": 0.2941,
"percent_delta": 1.1764,
"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.189,
"after": 0.0,
"delta": -0.189,
"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": 3.595,
"after": 5.0,
"delta": 1.405,
"percent_delta": 0.3908,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.266,
"after": 0.2892,
"delta": 0.0232,
"percent_delta": 0.0872,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.243,
"after": 0.0,
"delta": -0.243,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.955,
"after": 2.0,
"delta": 1.045,
"percent_delta": 1.0942,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.189,
"after": 0.0,
"delta": -0.189,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.312,
"after": 0.3304,
"delta": 0.0184,
"percent_delta": 0.059,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.477,
"after": 0.0,
"delta": -0.477,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.477,
"after": 0.0,
"delta": -0.477,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.486,
"after": 0.5441,
"delta": 0.0581,
"percent_delta": 0.1195,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.036,
"after": 2.0,
"delta": 0.964,
"percent_delta": 0.9305,
"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_AB",
"before": 3.595,
"after": 5.0,
"delta": 1.405,
"percent_delta": 0.3908,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.477,
"after": 0.0,
"delta": -0.477,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.189 | - |
| predicted_3B | 0.018 | - |
| predicted_AB | 3.595 | - |
| predicted_AVG | 0.266 | - |
| predicted_BB | 0.243 | - |
| predicted_H | 0.955 | - |
| predicted_HR | 0.189 | - |
| predicted_OBP | 0.312 | - |
| predicted_R | 0.477 | - |
| predicted_RBI | 0.477 | - |
| predicted_SLG | 0.486 | - |
| predicted_SO | 1.036 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.236 | 0.047 |
| predicted_3B | 0.015 | -0.003 |
| predicted_AB | 3.666 | 0.071 |
| predicted_AVG | 0.301 | 0.035 |
| predicted_BB | 0.230 | -0.013 |
| predicted_H | 1.106 | 0.151 |
| predicted_HBP | 0.023 | - |
| predicted_HR | 0.235 | 0.046 |
| predicted_OBP | 0.344 | 0.032 |
| predicted_R | 0.512 | 0.035 |
| predicted_RBI | 0.625 | 0.148 |
| predicted_SLG | 0.565 | 0.079 |
| predicted_SO | 0.958 | -0.078 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.236 | 0.000 |
| predicted_3B | 0.015 | 0.000 |
| predicted_AB | 3.666 | 0.000 |
| predicted_AVG | 0.289 | -0.012 |
| predicted_BB | 0.226 | -0.004 |
| predicted_H | 1.060 | -0.046 |
| predicted_HBP | 0.023 | 0.000 |
| predicted_HR | 0.223 | -0.012 |
| predicted_OBP | 0.330 | -0.014 |
| predicted_R | 0.475 | -0.037 |
| predicted_RBI | 0.580 | -0.045 |
| predicted_SLG | 0.544 | -0.021 |
| predicted_SO | 0.975 | 0.016 |
AB rounded to 4 (raw=3.67), rates preserved: AVG=0.289 HR/AB=0.061
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.236 |
| predicted_3B | 0.000 | -0.015 |
| predicted_AB | 4.000 | 0.334 |
| predicted_AVG | 0.250 | -0.039 |
| predicted_BB | 0.000 | -0.226 |
| predicted_H | 1.000 | -0.060 |
| predicted_HR | 0.000 | -0.223 |
| predicted_OBP | 0.250 | -0.080 |
| predicted_R | 0.000 | -0.475 |
| predicted_RBI | 1.000 | 0.420 |
| predicted_SLG | 0.250 | -0.294 |
| predicted_SO | 1.000 | 0.025 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 5.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 2.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 20.000 | 11.000 | 3.000 | 0.000 | 3.000 | 8.000 | 4.000 | 1.000 | 3.000 | 0.5500 | 0.5714 | 1.1500 | 0.5500 | 0.1500 | 0.4000 | 0.0500 | 0.1500 |
| last_10 | 0.20 | 10 | - | 40.000 | 17.000 | 4.000 | 0.000 | 4.000 | 13.000 | 6.000 | 1.000 | 5.000 | 0.4250 | 0.4390 | 0.8250 | 0.4250 | 0.1000 | 0.3250 | 0.0250 | 0.1250 |
| season | 0.60 | 111 | - | 399.000 | 106.000 | 21.000 | 2.000 | 21.000 | 53.000 | 53.000 | 27.000 | 115.000 | 0.2657 | 0.3179 | 0.4862 | 0.2657 | 0.0526 | 0.1328 | 0.0677 | 0.2882 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2980 |
| predicted_3B | 0.0120 |
| predicted_AB | 3.7600 |
| predicted_AVG | 0.3475 |
| predicted_BB | 0.2120 |
| predicted_H | 1.3060 |
| predicted_HBP | 0.0230 |
| predicted_HR | 0.2950 |
| predicted_OBP | 0.3871 |
| predicted_R | 0.5580 |
| predicted_RBI | 0.8210 |
| predicted_SLG | 0.6686 |
| predicted_SO | 0.8560 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1890 | 0.2980 | 0.2360 | model_form_blend |
| predicted_3B | 0.0180 | 0.0120 | 0.0154 | model_form_blend |
| predicted_AB | 3.5950 | 3.7600 | 3.6661 | model_form_blend |
| predicted_AVG | 0.2660 | 0.3475 | 0.3011 | model_form_blend |
| predicted_BB | 0.2430 | 0.2120 | 0.2296 | model_form_blend |
| predicted_H | 0.9550 | 1.3060 | 1.1063 | model_form_blend |
| predicted_HBP | - | 0.0230 | 0.0230 | form_only |
| predicted_HR | 0.1890 | 0.2950 | 0.2347 | model_form_blend |
| predicted_OBP | 0.3120 | 0.3871 | 0.3444 | model_form_blend |
| predicted_R | 0.4770 | 0.5580 | 0.5119 | model_form_blend |
| predicted_RBI | 0.4770 | 0.8210 | 0.6252 | model_form_blend |
| predicted_SLG | 0.4860 | 0.6686 | 0.5647 | model_form_blend |
| predicted_SO | 1.0360 | 0.8560 | 0.9584 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 381 |
| Season rows before report date | 381 |
| Report year | 2026 |
| Profile rows used | 111 |
| Hitter metrics | Hitting_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 Field | Value |
|---|---|
| PA | 5 |
| AB | 5 |
| H | 2 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.266 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 1 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.5 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 1 |
| Hitting_R | 1 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 2 |
| Hitting_battingOrder | 3 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 1B |
| gameID | 20260811_KC@LAD |
| game_type | full |
| mlbID | 695506 |
| playerID | 695506 |
| playerName | Jac Caglianone |
| pos | RF |
| started | True |
| startingPosition | 1B |
| team | KC |
| teamID | 12 |
| game_date | 2026-08-11 |
| sl_k_percent | 26.4 |
| sl_bb_percent | 6.4 |
| sl_woba | 0.349 |
| sl_xwoba | 0.36 |
| sl_xba | 0.278 |
| sl_xslg | 0.51 |
| sl_sweet_spot_percent | 34.0 |
| sl_barrel_batted_rate | 14.6 |
| sl_hard_hit_percent | 55.2 |
| sl_exit_velocity_avg | 93.2 |
| sl_launch_angle_avg | 7.3 |
| sl_whiff_percent | 28.9 |
| sl_swing_percent | 53.1 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.218 | 1.000 | 0.000 | Hitting_2B | 0.268 | 0.000 | 0.732 | 1.000 |
| predicted_3B | 0.009 | 0.000 | 0.000 | Hitting_3B | 0.003 | 0.000 | -0.003 | 0.000 |
| predicted_AB | 3.564 | 5.000 | 4.000 | Hitting_AB | 3.773 | 3.000 | 1.227 | 2.000 |
| predicted_AVG | 0.224 | 0.200 | 0.250 | Hitting_AVG | 0.247 | 0.000 | -0.047 | 0.200 |
| predicted_BB | 0.409 | 0.000 | 1.000 | Hitting_BB | 0.432 | 1.000 | -0.432 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.800 | 1.000 | 1.000 | Hitting_H | 0.932 | 0.000 | 0.068 | 1.000 |
| predicted_HR | 0.145 | 0.000 | 0.000 | Hitting_HR | 0.154 | 0.000 | -0.154 | 0.000 |
| predicted_OBP | 0.304 | 0.200 | 0.400 | Hitting_OBP | 0.322 | 0.250 | -0.122 | -0.050 |
| predicted_R | 0.482 | 0.000 | 0.000 | Hitting_R | 0.508 | 0.000 | -0.508 | 0.000 |
| predicted_RBI | 0.500 | 0.000 | 0.000 | Hitting_RBI | 0.614 | 0.000 | -0.614 | 0.000 |
| predicted_SLG | 0.413 | 0.400 | 0.250 | Hitting_SLG | 0.442 | 0.000 | -0.042 | 0.400 |
| predicted_SO | 1.182 | 2.000 | 1.000 | Hitting_SO | 1.174 | 1.000 | 0.826 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 4 |
| Deboosted Metrics | 7 |
| Better Metrics | 3 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_AB: 3.5640 -> 5.0000 (boost 1.4360, better) |
| Biggest Deboost | predicted_RBI: 0.5000 -> 0.0000 (deboost -0.5000, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 5 | 1 | 4 | 1 | 4 | predicted_BB: 0.4090 -> 0.4638 (boost 0.0548, better) | predicted_H: 0.8000 -> 0.7366 (deboost -0.0634, 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. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3992 -> 0.3837 (deboost -0.0155, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 3 | 4 | 4 | 3 | predicted_BB: 0.4558 -> 1.0000 (boost 0.5442, better) | predicted_RBI: 0.4166 -> 0.0000 (deboost -0.4166, worse) | AB rounded to 4 (raw=3.56), rates preserved: AVG=0.198 HR/AB=0.041 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4904 -> 0.0000 (deboost -0.4904, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.2910 -> 0.4000 (boost 0.1090, better) | predicted_SLG: 0.3837 -> 0.2500 (deboost -0.1337, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 4 | 3 | 1 | 2 | 2 | predicted_2B: 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 |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2500 -> 0.3837 (boost 0.1337, better) | predicted_OBP: 0.4000 -> 0.2910 (deboost -0.1090, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "695600",
"player_name": "Carter Jensen",
"position": "DH",
"team": "KC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.218,
"predicted_3B": 0.009,
"predicted_AB": 3.564,
"predicted_AVG": 0.224,
"predicted_BB": 0.409,
"predicted_H": 0.8,
"predicted_HR": 0.145,
"predicted_OBP": 0.304,
"predicted_R": 0.482,
"predicted_RBI": 0.5,
"predicted_SLG": 0.413,
"predicted_SO": 1.182
},
"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.1805,
"predicted_3B": 0.0159,
"predicted_AB": 3.536,
"predicted_AVG": 0.2079,
"predicted_BB": 0.4638,
"predicted_H": 0.7366,
"predicted_HBP": 0.007,
"predicted_HR": 0.1541,
"predicted_OBP": 0.2999,
"predicted_R": 0.5286,
"predicted_RBI": 0.4491,
"predicted_SLG": 0.3992,
"predicted_SO": 1.16
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.218,
"after": 0.1805,
"delta": -0.0375,
"percent_delta": -0.172,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.009,
"after": 0.0159,
"delta": 0.0069,
"percent_delta": 0.7667,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.564,
"after": 3.536,
"delta": -0.028,
"percent_delta": -0.0079,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.224,
"after": 0.2079,
"delta": -0.0161,
"percent_delta": -0.0719,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.409,
"after": 0.4638,
"delta": 0.0548,
"percent_delta": 0.134,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8,
"after": 0.7366,
"delta": -0.0634,
"percent_delta": -0.0793,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.145,
"after": 0.1541,
"delta": 0.0091,
"percent_delta": 0.0628,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.304,
"after": 0.2999,
"delta": -0.0041,
"percent_delta": -0.0135,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.482,
"after": 0.5286,
"delta": 0.0466,
"percent_delta": 0.0967,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5,
"after": 0.4491,
"delta": -0.0509,
"percent_delta": -0.1018,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.413,
"after": 0.3992,
"delta": -0.0138,
"percent_delta": -0.0334,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.182,
"after": 1.16,
"delta": -0.022,
"percent_delta": -0.0186,
"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_BB",
"before": 0.409,
"after": 0.4638,
"delta": 0.0548,
"percent_delta": 0.134,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.8,
"after": 0.7366,
"delta": -0.0634,
"percent_delta": -0.0793,
"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": 110
}
},
{
"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.1805,
"predicted_3B": 0.0159,
"predicted_AB": 3.536,
"predicted_AVG": 0.1996,
"predicted_BB": 0.4558,
"predicted_H": 0.7059,
"predicted_HBP": 0.007,
"predicted_HR": 0.1461,
"predicted_OBP": 0.291,
"predicted_R": 0.4904,
"predicted_RBI": 0.4166,
"predicted_SLG": 0.3837,
"predicted_SO": 1.18
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1805,
"after": 0.1805,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0159,
"after": 0.0159,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.536,
"after": 3.536,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2079,
"after": 0.1996,
"delta": -0.0083,
"percent_delta": -0.0399,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4638,
"after": 0.4558,
"delta": -0.008,
"percent_delta": -0.0172,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.7366,
"after": 0.7059,
"delta": -0.0307,
"percent_delta": -0.0417,
"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.1541,
"after": 0.1461,
"delta": -0.008,
"percent_delta": -0.0519,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2999,
"after": 0.291,
"delta": -0.0089,
"percent_delta": -0.0297,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5286,
"after": 0.4904,
"delta": -0.0382,
"percent_delta": -0.0723,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4491,
"after": 0.4166,
"delta": -0.0325,
"percent_delta": -0.0724,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3992,
"after": 0.3837,
"delta": -0.0155,
"percent_delta": -0.0388,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.16,
"after": 1.18,
"delta": 0.02,
"percent_delta": 0.0172,
"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.3992,
"after": 0.3837,
"delta": -0.0155,
"percent_delta": -0.0388,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.56), rates preserved: AVG=0.198 HR/AB=0.041",
"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.1805,
"after": 0.0,
"delta": -0.1805,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0159,
"after": 0.0,
"delta": -0.0159,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.536,
"after": 4.0,
"delta": 0.464,
"percent_delta": 0.1312,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4558,
"after": 1.0,
"delta": 0.5442,
"percent_delta": 1.1939,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.7059,
"after": 1.0,
"delta": 0.2941,
"percent_delta": 0.4166,
"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.1461,
"after": 0.0,
"delta": -0.1461,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4166,
"after": 0.0,
"delta": -0.4166,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.18,
"after": 1.0,
"delta": -0.18,
"percent_delta": -0.1525,
"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_BB",
"before": 0.4558,
"after": 1.0,
"delta": 0.5442,
"percent_delta": 1.1939,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4166,
"after": 0.0,
"delta": -0.4166,
"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.4904,
"after": 0.0,
"delta": -0.4904,
"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.4904,
"after": 0.0,
"delta": -0.4904,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.4,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 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.25,
"delta": 0.0504,
"percent_delta": 0.2525,
"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.291,
"after": 0.4,
"delta": 0.109,
"percent_delta": 0.3746,
"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.3837,
"after": 0.25,
"delta": -0.1337,
"percent_delta": -0.3484,
"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.291,
"after": 0.4,
"delta": 0.109,
"percent_delta": 0.3746,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3837,
"after": 0.25,
"delta": -0.1337,
"percent_delta": -0.3484,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 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": 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": 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": 3,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_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": "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.1996,
"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.291,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3837,
"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.25,
"after": 0.1996,
"delta": -0.0504,
"percent_delta": -0.2015,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.291,
"delta": -0.109,
"percent_delta": -0.2724,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3837,
"delta": 0.1337,
"percent_delta": 0.5346,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3837,
"delta": 0.1337,
"percent_delta": 0.5346,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.291,
"delta": -0.109,
"percent_delta": -0.2724,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.218,
"after": 1.0,
"delta": 0.782,
"percent_delta": 3.5872,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.009,
"after": 0.0,
"delta": -0.009,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.564,
"after": 5.0,
"delta": 1.436,
"percent_delta": 0.4029,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.224,
"after": 0.1996,
"delta": -0.0244,
"percent_delta": -0.1089,
"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.8,
"after": 1.0,
"delta": 0.2,
"percent_delta": 0.25,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.145,
"after": 0.0,
"delta": -0.145,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.304,
"after": 0.291,
"delta": -0.013,
"percent_delta": -0.0428,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.482,
"after": 0.0,
"delta": -0.482,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5,
"after": 0.0,
"delta": -0.5,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.413,
"after": 0.3837,
"delta": -0.0293,
"percent_delta": -0.0709,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.182,
"after": 2.0,
"delta": 0.818,
"percent_delta": 0.692,
"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.564,
"after": 5.0,
"delta": 1.436,
"percent_delta": 0.4029,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.5,
"after": 0.0,
"delta": -0.5,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.218 | - |
| predicted_3B | 0.009 | - |
| predicted_AB | 3.564 | - |
| predicted_AVG | 0.224 | - |
| predicted_BB | 0.409 | - |
| predicted_H | 0.800 | - |
| predicted_HR | 0.145 | - |
| predicted_OBP | 0.304 | - |
| predicted_R | 0.482 | - |
| predicted_RBI | 0.500 | - |
| predicted_SLG | 0.413 | - |
| predicted_SO | 1.182 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.180 | -0.038 |
| predicted_3B | 0.016 | 0.007 |
| predicted_AB | 3.536 | -0.028 |
| predicted_AVG | 0.208 | -0.016 |
| predicted_BB | 0.464 | 0.055 |
| predicted_H | 0.737 | -0.063 |
| predicted_HBP | 0.007 | - |
| predicted_HR | 0.154 | 0.009 |
| predicted_OBP | 0.300 | -0.004 |
| predicted_R | 0.529 | 0.047 |
| predicted_RBI | 0.449 | -0.051 |
| predicted_SLG | 0.399 | -0.014 |
| predicted_SO | 1.160 | -0.022 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.180 | 0.000 |
| predicted_3B | 0.016 | 0.000 |
| predicted_AB | 3.536 | 0.000 |
| predicted_AVG | 0.200 | -0.008 |
| predicted_BB | 0.456 | -0.008 |
| predicted_H | 0.706 | -0.031 |
| predicted_HBP | 0.007 | 0.000 |
| predicted_HR | 0.146 | -0.008 |
| predicted_OBP | 0.291 | -0.009 |
| predicted_R | 0.490 | -0.038 |
| predicted_RBI | 0.417 | -0.032 |
| predicted_SLG | 0.384 | -0.016 |
| predicted_SO | 1.180 | 0.020 |
AB rounded to 4 (raw=3.56), rates preserved: AVG=0.198 HR/AB=0.041
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 1.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.180 |
| predicted_3B | 0.000 | -0.016 |
| predicted_AB | 4.000 | 0.464 |
| predicted_AVG | 0.250 | 0.050 |
| predicted_BB | 1.000 | 0.544 |
| predicted_H | 1.000 | 0.294 |
| predicted_HR | 0.000 | -0.146 |
| predicted_OBP | 0.400 | 0.109 |
| predicted_R | 0.000 | -0.490 |
| predicted_RBI | 0.000 | -0.417 |
| predicted_SLG | 0.250 | -0.134 |
| predicted_SO | 1.000 | -0.180 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 1.000 | 1.000 |
| 3B | 0.000 | 0.000 |
| AB | 5.000 | 1.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 16.000 | 2.000 | 0.000 | 0.000 | 1.000 | 1.000 | 4.000 | 4.000 | 5.000 | 0.1250 | 0.3000 | 0.3125 | 0.1250 | 0.0625 | 0.0625 | 0.2500 | 0.3125 |
| last_10 | 0.20 | 10 | - | 35.000 | 4.000 | 0.000 | 1.000 | 2.000 | 2.000 | 7.000 | 7.000 | 12.000 | 0.1143 | 0.2619 | 0.3429 | 0.1143 | 0.0571 | 0.0571 | 0.2000 | 0.3429 |
| season | 0.60 | 110 | - | 392.000 | 88.000 | 24.000 | 1.000 | 16.000 | 55.000 | 53.000 | 45.000 | 130.000 | 0.2245 | 0.3025 | 0.4133 | 0.2245 | 0.0408 | 0.1403 | 0.1148 | 0.3316 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1310 |
| predicted_3B | 0.0250 |
| predicted_AB | 3.4990 |
| predicted_AVG | 0.1867 |
| predicted_BB | 0.5360 |
| predicted_H | 0.6530 |
| predicted_HBP | 0.0070 |
| predicted_HR | 0.1660 |
| predicted_OBP | 0.2946 |
| predicted_R | 0.5900 |
| predicted_RBI | 0.3820 |
| predicted_SLG | 0.3809 |
| predicted_SO | 1.1310 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2180 | 0.1310 | 0.1805 | model_form_blend |
| predicted_3B | 0.0090 | 0.0250 | 0.0159 | model_form_blend |
| predicted_AB | 3.5640 | 3.4990 | 3.5360 | model_form_blend |
| predicted_AVG | 0.2240 | 0.1867 | 0.2079 | model_form_blend |
| predicted_BB | 0.4090 | 0.5360 | 0.4638 | model_form_blend |
| predicted_H | 0.8000 | 0.6530 | 0.7366 | model_form_blend |
| predicted_HBP | - | 0.0070 | 0.0070 | form_only |
| predicted_HR | 0.1450 | 0.1660 | 0.1541 | model_form_blend |
| predicted_OBP | 0.3040 | 0.2946 | 0.2999 | model_form_blend |
| predicted_R | 0.4820 | 0.5900 | 0.5286 | model_form_blend |
| predicted_RBI | 0.5000 | 0.3820 | 0.4491 | model_form_blend |
| predicted_SLG | 0.4130 | 0.3809 | 0.3992 | model_form_blend |
| predicted_SO | 1.1820 | 1.1310 | 1.1600 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 396 |
| Season rows before report date | 396 |
| Report year | 2026 |
| Profile rows used | 110 |
| Hitter metrics | Hitting_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 Field | Value |
|---|---|
| PA | 5 |
| AB | 5 |
| H | 1 |
| 2B | 1 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.224 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 5 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | C |
| gameID | 20260811_KC@LAD |
| game_type | full |
| mlbID | 695600 |
| playerID | 695600 |
| playerName | Carter Jensen |
| pos | C |
| started | True |
| startingPosition | C |
| team | KC |
| teamID | 12 |
| game_date | 2026-08-11 |
| sl_k_percent | 29.5 |
| sl_bb_percent | 10.1 |
| sl_woba | 0.311 |
| sl_xwoba | 0.284 |
| sl_xba | 0.201 |
| sl_xslg | 0.357 |
| sl_sweet_spot_percent | 31.1 |
| sl_barrel_batted_rate | 10.2 |
| sl_hard_hit_percent | 43.8 |
| sl_exit_velocity_avg | 90.7 |
| sl_launch_angle_avg | 21.0 |
| sl_whiff_percent | 29.8 |
| sl_swing_percent | 45.0 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.147 | 0.000 | 0.000 | Hitting_2B | 0.092 | 1.000 | -0.092 | -1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.588 | 4.000 | 3.000 | Hitting_AB | 2.429 | 2.000 | 1.571 | 2.000 |
| predicted_AVG | 0.318 | 0.000 | 0.333 | Hitting_AVG | 0.391 | 0.500 | -0.391 | -0.500 |
| predicted_BB | 0.235 | 0.000 | 0.000 | Hitting_BB | 0.184 | 1.000 | -0.184 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.071 | 0.000 | -0.071 | 0.000 |
| predicted_H | 0.824 | 0.000 | 1.000 | Hitting_H | 0.949 | 1.000 | -0.949 | -1.000 |
| predicted_HR | 0.088 | 0.000 | 0.000 | Hitting_HR | 0.122 | 0.000 | -0.122 | 0.000 |
| predicted_OBP | 0.375 | 0.200 | 0.333 | Hitting_OBP | 0.429 | 0.667 | -0.229 | -0.467 |
| predicted_R | 0.529 | 0.000 | 0.000 | Hitting_R | 0.684 | 0.000 | -0.684 | 0.000 |
| predicted_RBI | 0.176 | 0.000 | 0.000 | Hitting_RBI | 0.265 | 0.000 | -0.265 | 0.000 |
| predicted_SLG | 0.477 | 0.000 | 0.333 | Hitting_SLG | 0.580 | 1.000 | -0.580 | -1.000 |
| predicted_SO | 0.471 | 2.000 | 1.000 | Hitting_SO | 0.388 | 0.000 | 1.612 | 2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 9 |
| Better Metrics | 1 |
| Worse Metrics | 10 |
| Biggest Boost | predicted_SO: 0.4710 -> 2.0000 (boost 1.5290, worse) |
| Biggest Deboost | predicted_H: 0.8240 -> 0.0000 (deboost -0.8240, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 3 | 1 | 2 | 1 | 2 | predicted_AB: 2.5880 -> 2.7392 (boost 0.1512, better) | predicted_AVG: 0.3180 -> 0.3065 (deboost -0.0115, 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. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4732 -> 0.4551 (deboost -0.0181, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 3 | 4 | 2 | 5 | predicted_SO: 0.5198 -> 1.0000 (boost 0.4802, worse) | predicted_BB: 0.2545 -> 0.0000 (deboost -0.2545, worse) | AB rounded to 3 (raw=2.74), rates preserved: AVG=0.293 HR/AB=0.030 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4855 -> 0.0000 (deboost -0.4855, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2929 -> 0.3330 (boost 0.0401, better) | predicted_SLG: 0.4551 -> 0.3330 (deboost -0.1221, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 4 | 3 | 1 | 2 | 2 | predicted_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 |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.3330 -> 0.4551 (boost 0.1221, better) | predicted_AVG: 0.3330 -> 0.2929 (deboost -0.0401, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "686475",
"player_name": "Tyler Tolbert",
"position": "CF",
"team": "KC",
"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": 2.588,
"predicted_AVG": 0.318,
"predicted_BB": 0.235,
"predicted_H": 0.824,
"predicted_HR": 0.088,
"predicted_OBP": 0.375,
"predicted_R": 0.529,
"predicted_RBI": 0.176,
"predicted_SLG": 0.477,
"predicted_SO": 0.471
},
"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.1916,
"predicted_3B": 0.0011,
"predicted_AB": 2.7392,
"predicted_AVG": 0.3065,
"predicted_BB": 0.259,
"predicted_H": 0.8373,
"predicted_HBP": 0.006,
"predicted_HR": 0.088,
"predicted_OBP": 0.3663,
"predicted_R": 0.5233,
"predicted_RBI": 0.1851,
"predicted_SLG": 0.4732,
"predicted_SO": 0.511
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.147,
"after": 0.1916,
"delta": 0.0446,
"percent_delta": 0.3034,
"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.588,
"after": 2.7392,
"delta": 0.1512,
"percent_delta": 0.0584,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.318,
"after": 0.3065,
"delta": -0.0115,
"percent_delta": -0.0362,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.235,
"after": 0.259,
"delta": 0.024,
"percent_delta": 0.1021,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.824,
"after": 0.8373,
"delta": 0.0133,
"percent_delta": 0.0161,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.088,
"after": 0.088,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.375,
"after": 0.3663,
"delta": -0.0087,
"percent_delta": -0.0232,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.529,
"after": 0.5233,
"delta": -0.0057,
"percent_delta": -0.0108,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.176,
"after": 0.1851,
"delta": 0.0091,
"percent_delta": 0.0517,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.477,
"after": 0.4732,
"delta": -0.0038,
"percent_delta": -0.008,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.471,
"after": 0.511,
"delta": 0.04,
"percent_delta": 0.0849,
"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.588,
"after": 2.7392,
"delta": 0.1512,
"percent_delta": 0.0584,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.318,
"after": 0.3065,
"delta": -0.0115,
"percent_delta": -0.0362,
"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": 34
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1916,
"predicted_3B": 0.0011,
"predicted_AB": 2.7392,
"predicted_AVG": 0.2929,
"predicted_BB": 0.2545,
"predicted_H": 0.8024,
"predicted_HBP": 0.006,
"predicted_HR": 0.0835,
"predicted_OBP": 0.353,
"predicted_R": 0.4855,
"predicted_RBI": 0.1717,
"predicted_SLG": 0.4551,
"predicted_SO": 0.5198
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1916,
"after": 0.1916,
"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.7392,
"after": 2.7392,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.3065,
"after": 0.2929,
"delta": -0.0136,
"percent_delta": -0.0444,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.259,
"after": 0.2545,
"delta": -0.0045,
"percent_delta": -0.0174,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8373,
"after": 0.8024,
"delta": -0.0349,
"percent_delta": -0.0417,
"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.088,
"after": 0.0835,
"delta": -0.0045,
"percent_delta": -0.0511,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3663,
"after": 0.353,
"delta": -0.0133,
"percent_delta": -0.0363,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5233,
"after": 0.4855,
"delta": -0.0378,
"percent_delta": -0.0722,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.1851,
"after": 0.1717,
"delta": -0.0134,
"percent_delta": -0.0724,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4732,
"after": 0.4551,
"delta": -0.0181,
"percent_delta": -0.0383,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.511,
"after": 0.5198,
"delta": 0.0088,
"percent_delta": 0.0172,
"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.4732,
"after": 0.4551,
"delta": -0.0181,
"percent_delta": -0.0383,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=2.74), rates preserved: AVG=0.293 HR/AB=0.030",
"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.1916,
"after": 0.0,
"delta": -0.1916,
"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.7392,
"after": 3.0,
"delta": 0.2608,
"percent_delta": 0.0952,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2545,
"after": 0.0,
"delta": -0.2545,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8024,
"after": 1.0,
"delta": 0.1976,
"percent_delta": 0.2463,
"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.0835,
"after": 0.0,
"delta": -0.0835,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.1717,
"after": 0.0,
"delta": -0.1717,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5198,
"after": 1.0,
"delta": 0.4802,
"percent_delta": 0.9238,
"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_SO",
"before": 0.5198,
"after": 1.0,
"delta": 0.4802,
"percent_delta": 0.9238,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.2545,
"after": 0.0,
"delta": -0.2545,
"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.4855,
"after": 0.0,
"delta": -0.4855,
"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.4855,
"after": 0.0,
"delta": -0.4855,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2929,
"after": 0.333,
"delta": 0.0401,
"percent_delta": 0.1369,
"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.353,
"after": 0.333,
"delta": -0.02,
"percent_delta": -0.0567,
"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.4551,
"after": 0.333,
"delta": -0.1221,
"percent_delta": -0.2683,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2929,
"after": 0.333,
"delta": 0.0401,
"percent_delta": 0.1369,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4551,
"after": 0.333,
"delta": -0.1221,
"percent_delta": -0.2683,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 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": 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": 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": 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": 3,
"deboosted_metrics": 1,
"better_metrics": 2,
"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": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2929,
"predicted_BB": 0.0,
"predicted_CF": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.353,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4551,
"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.333,
"after": 0.2929,
"delta": -0.0401,
"percent_delta": -0.1203,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.353,
"delta": 0.02,
"percent_delta": 0.0602,
"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.4551,
"delta": 0.1221,
"percent_delta": 0.3666,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4551,
"delta": 0.1221,
"percent_delta": 0.3666,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2929,
"delta": -0.0401,
"percent_delta": -0.1203,
"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": 0.0,
"delta": -0.147,
"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.588,
"after": 4.0,
"delta": 1.412,
"percent_delta": 0.5456,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.318,
"after": 0.2929,
"delta": -0.0251,
"percent_delta": -0.0789,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.235,
"after": 0.0,
"delta": -0.235,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.824,
"after": 0.0,
"delta": -0.824,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.088,
"after": 0.0,
"delta": -0.088,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.375,
"after": 0.353,
"delta": -0.022,
"percent_delta": -0.0587,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.529,
"after": 0.0,
"delta": -0.529,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.176,
"after": 0.0,
"delta": -0.176,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.477,
"after": 0.4551,
"delta": -0.0219,
"percent_delta": -0.0459,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.471,
"after": 2.0,
"delta": 1.529,
"percent_delta": 3.2463,
"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.471,
"after": 2.0,
"delta": 1.529,
"percent_delta": 3.2463,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.824,
"after": 0.0,
"delta": -0.824,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.147 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.588 | - |
| predicted_AVG | 0.318 | - |
| predicted_BB | 0.235 | - |
| predicted_H | 0.824 | - |
| predicted_HR | 0.088 | - |
| predicted_OBP | 0.375 | - |
| predicted_R | 0.529 | - |
| predicted_RBI | 0.176 | - |
| predicted_SLG | 0.477 | - |
| predicted_SO | 0.471 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.192 | 0.045 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 2.739 | 0.151 |
| predicted_AVG | 0.306 | -0.012 |
| predicted_BB | 0.259 | 0.024 |
| predicted_H | 0.837 | 0.013 |
| predicted_HBP | 0.006 | - |
| predicted_HR | 0.088 | 0.000 |
| predicted_OBP | 0.366 | -0.009 |
| predicted_R | 0.523 | -0.006 |
| predicted_RBI | 0.185 | 0.009 |
| predicted_SLG | 0.473 | -0.004 |
| predicted_SO | 0.511 | 0.040 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.192 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 2.739 | 0.000 |
| predicted_AVG | 0.293 | -0.014 |
| predicted_BB | 0.255 | -0.005 |
| predicted_H | 0.802 | -0.035 |
| predicted_HBP | 0.006 | 0.000 |
| predicted_HR | 0.084 | -0.004 |
| predicted_OBP | 0.353 | -0.013 |
| predicted_R | 0.485 | -0.038 |
| predicted_RBI | 0.172 | -0.013 |
| predicted_SLG | 0.455 | -0.018 |
| predicted_SO | 0.520 | 0.009 |
AB rounded to 3 (raw=2.74), rates preserved: AVG=0.293 HR/AB=0.030
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.192 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | 0.261 |
| predicted_AVG | 0.333 | 0.040 |
| predicted_BB | 0.000 | -0.255 |
| predicted_H | 1.000 | 0.198 |
| predicted_HR | 0.000 | -0.084 |
| predicted_OBP | 0.333 | -0.020 |
| predicted_R | 0.000 | -0.485 |
| predicted_RBI | 0.000 | -0.172 |
| predicted_SLG | 0.333 | -0.122 |
| predicted_SO | 1.000 | 0.480 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 1.000 | 1.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 16.000 | 4.000 | 3.000 | 0.000 | 0.000 | 0.000 | 2.000 | 2.000 | 3.000 | 0.2500 | 0.3333 | 0.4375 | 0.2500 | 0.0000 | 0.0000 | 0.1250 | 0.1875 |
| last_10 | 0.20 | 10 | - | 27.000 | 8.000 | 4.000 | 0.000 | 1.000 | 1.000 | 5.000 | 4.000 | 5.000 | 0.2963 | 0.3871 | 0.5556 | 0.2963 | 0.0370 | 0.0370 | 0.1482 | 0.1852 |
| season | 0.60 | 34 | - | 88.000 | 28.000 | 5.000 | 0.000 | 3.000 | 6.000 | 18.000 | 8.000 | 16.000 | 0.3182 | 0.3711 | 0.4773 | 0.3182 | 0.0341 | 0.0682 | 0.0909 | 0.1818 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2640 |
| predicted_3B | 0.0030 |
| predicted_AB | 2.9850 |
| predicted_AVG | 0.2879 |
| predicted_BB | 0.2980 |
| predicted_H | 0.8590 |
| predicted_HBP | 0.0060 |
| predicted_HR | 0.0880 |
| predicted_OBP | 0.3522 |
| predicted_R | 0.5140 |
| predicted_RBI | 0.2000 |
| predicted_SLG | 0.4670 |
| predicted_SO | 0.5760 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1470 | 0.2640 | 0.1916 | model_form_blend |
| predicted_3B | 0.0000 | 0.0030 | 0.0011 | model_form_blend |
| predicted_AB | 2.5880 | 2.9850 | 2.7392 | model_form_blend |
| predicted_AVG | 0.3180 | 0.2879 | 0.3065 | model_form_blend |
| predicted_BB | 0.2350 | 0.2980 | 0.2590 | model_form_blend |
| predicted_H | 0.8240 | 0.8590 | 0.8373 | model_form_blend |
| predicted_HBP | - | 0.0060 | 0.0060 | form_only |
| predicted_HR | 0.0880 | 0.0880 | 0.0880 | model_form_blend |
| predicted_OBP | 0.3750 | 0.3522 | 0.3663 | model_form_blend |
| predicted_R | 0.5290 | 0.5140 | 0.5233 | model_form_blend |
| predicted_RBI | 0.1760 | 0.2000 | 0.1851 | model_form_blend |
| predicted_SLG | 0.4770 | 0.4670 | 0.4732 | model_form_blend |
| predicted_SO | 0.4710 | 0.5760 | 0.5110 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 98 |
| Season rows before report date | 98 |
| Report year | 2026 |
| Profile rows used | 34 |
| Hitter metrics | Hitting_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 Field | Value |
|---|---|
| PA | 5 |
| AB | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 2 |
| SF | 0 |
| HBP | 1 |
| season_avg | 0.318 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 1 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 1 |
| Hitting_3B | 0 |
| Hitting_AB | 2 |
| Hitting_AVG | 0.5 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 2 |
| Hitting_battingOrder | 7 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | LF |
| gameID | 20260811_KC@LAD |
| game_type | full |
| mlbID | 686475 |
| playerID | 686475 |
| playerName | Tyler Tolbert |
| pos | SS |
| started | True |
| startingPosition | LF |
| team | KC |
| teamID | 12 |
| game_date | 2026-08-11 |
| sl_k_percent | 15.8 |
| sl_bb_percent | 7.9 |
| sl_woba | 0.369 |
| sl_xwoba | 0.313 |
| sl_xba | 0.267 |
| sl_xslg | 0.349 |
| sl_sweet_spot_percent | 33.8 |
| sl_barrel_batted_rate | 3.9 |
| sl_hard_hit_percent | 28.6 |
| sl_exit_velocity_avg | 85.2 |
| sl_launch_angle_avg | 8.9 |
| sl_whiff_percent | 26.0 |
| sl_swing_percent | 51.8 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.115 | 0.000 | 0.000 | Hitting_2B | 0.155 | 0.000 | -0.155 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.615 | 4.000 | 3.000 | Hitting_AB | 3.207 | 0.000 | 0.793 | 4.000 |
| predicted_AVG | 0.210 | 0.250 | 0.333 | Hitting_AVG | 0.231 | - | 0.019 | - |
| predicted_BB | 0.077 | 1.000 | 0.000 | Hitting_BB | 0.052 | 0.000 | 0.948 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.180 | 1.000 | 1.000 | Hitting_H | 0.741 | 0.000 | 0.259 | 1.000 |
| predicted_HR | 0.010 | 0.000 | 0.000 | Hitting_HR | 0.017 | 0.000 | -0.017 | 0.000 |
| predicted_OBP | 0.248 | 0.400 | 0.333 | Hitting_OBP | 0.243 | - | 0.157 | - |
| predicted_R | 0.192 | 0.000 | 0.000 | Hitting_R | 0.259 | 0.000 | -0.259 | 0.000 |
| predicted_RBI | 0.150 | 0.000 | 0.000 | Hitting_RBI | 0.241 | 0.000 | -0.241 | 0.000 |
| predicted_SLG | 0.295 | 0.250 | 0.333 | Hitting_SLG | 0.296 | - | -0.046 | - |
| predicted_SO | 0.385 | 0.000 | 1.000 | Hitting_SO | 0.431 | 0.000 | -0.431 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 7 |
| Better Metrics | 4 |
| Worse Metrics | 6 |
| Biggest Boost | predicted_AB: 2.6150 -> 4.0000 (boost 1.3850, better) |
| Biggest Deboost | predicted_SO: 0.3850 -> 0.0000 (deboost -0.3850, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 6 | 6 | 0 | 6 | 0 | predicted_H: 0.1800 -> 0.3655 (boost 0.1855, 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. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3025 -> 0.1940 (deboost -0.1085, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 1 | 5 | 2 | 4 | predicted_AB: 2.7780 -> 3.0000 (boost 0.2220, better) | predicted_SO: 0.4112 -> 0.0000 (deboost -0.4112, better) | AB rounded to 3 (raw=2.78), rates preserved: AVG=0.126 HR/AB=0.009 |
| 5 | bvp_blend | 1 | 1 | 0 | 0 | 1 | predicted_SO: 0.0000 -> 1.0000 (boost 1.0000, worse) | - | Sample-size BvP blend (BvP AB=9.0, weight=0.092, BvP AVG=0.000) |
| 6 | consistency_constraints | 2 | 1 | 1 | 1 | 1 | predicted_H: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_R: 0.1959 -> 0.0000 (deboost -0.1959, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.1261 -> 0.3330 (boost 0.2069, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 3 | 2 | 1 | 3 | 0 | predicted_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 |
| 9 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.1261 (deboost -0.2069, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "668942",
"player_name": "Josh Rojas",
"position": "3B",
"team": "KC",
"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.115,
"predicted_3B": 0.0,
"predicted_AB": 2.615,
"predicted_AVG": 0.21,
"predicted_BB": 0.077,
"predicted_H": 0.18,
"predicted_HR": 0.01,
"predicted_OBP": 0.248,
"predicted_R": 0.192,
"predicted_RBI": 0.15,
"predicted_SLG": 0.295,
"predicted_SO": 0.385
},
"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.115,
"predicted_3B": 0.0014,
"predicted_AB": 2.778,
"predicted_AVG": 0.2157,
"predicted_BB": 0.1071,
"predicted_H": 0.3655,
"predicted_HBP": 0.008,
"predicted_HR": 0.0249,
"predicted_OBP": 0.2547,
"predicted_R": 0.2112,
"predicted_RBI": 0.2297,
"predicted_SLG": 0.3025,
"predicted_SO": 0.4042
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.115,
"after": 0.115,
"delta": 0.0,
"percent_delta": 0.0,
"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": 2.615,
"after": 2.778,
"delta": 0.163,
"percent_delta": 0.0623,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.21,
"after": 0.2157,
"delta": 0.0057,
"percent_delta": 0.0271,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.077,
"after": 0.1071,
"delta": 0.0301,
"percent_delta": 0.3909,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.18,
"after": 0.3655,
"delta": 0.1855,
"percent_delta": 1.0306,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.01,
"after": 0.0249,
"delta": 0.0149,
"percent_delta": 1.49,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.248,
"after": 0.2547,
"delta": 0.0067,
"percent_delta": 0.027,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.192,
"after": 0.2112,
"delta": 0.0192,
"percent_delta": 0.1,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.15,
"after": 0.2297,
"delta": 0.0797,
"percent_delta": 0.5313,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.295,
"after": 0.3025,
"delta": 0.0075,
"percent_delta": 0.0254,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.385,
"after": 0.4042,
"delta": 0.0192,
"percent_delta": 0.0499,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 6,
"deboosted_metrics": 0,
"better_metrics": 6,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.18,
"after": 0.3655,
"delta": 0.1855,
"percent_delta": 1.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": 5,
"last_10": 10,
"season": 26
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.115,
"predicted_3B": 0.0014,
"predicted_AB": 2.778,
"predicted_AVG": 0.1261,
"predicted_BB": 0.1053,
"predicted_H": 0.3503,
"predicted_HBP": 0.008,
"predicted_HR": 0.0236,
"predicted_OBP": 0.158,
"predicted_R": 0.1959,
"predicted_RBI": 0.2131,
"predicted_SLG": 0.194,
"predicted_SO": 0.4112
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.115,
"after": 0.115,
"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": 2.778,
"after": 2.778,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2157,
"after": 0.1261,
"delta": -0.0896,
"percent_delta": -0.4154,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1071,
"after": 0.1053,
"delta": -0.0018,
"percent_delta": -0.0168,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.3655,
"after": 0.3503,
"delta": -0.0152,
"percent_delta": -0.0416,
"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.0249,
"after": 0.0236,
"delta": -0.0013,
"percent_delta": -0.0522,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2547,
"after": 0.158,
"delta": -0.0967,
"percent_delta": -0.3797,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.2112,
"after": 0.1959,
"delta": -0.0153,
"percent_delta": -0.0724,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2297,
"after": 0.2131,
"delta": -0.0166,
"percent_delta": -0.0723,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3025,
"after": 0.194,
"delta": -0.1085,
"percent_delta": -0.3587,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.4042,
"after": 0.4112,
"delta": 0.007,
"percent_delta": 0.0173,
"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.3025,
"after": 0.194,
"delta": -0.1085,
"percent_delta": -0.3587,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=2.78), rates preserved: AVG=0.126 HR/AB=0.009",
"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.115,
"after": 0.0,
"delta": -0.115,
"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": 2.778,
"after": 3.0,
"delta": 0.222,
"percent_delta": 0.0799,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1053,
"after": 0.0,
"delta": -0.1053,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.3503,
"after": 0.0,
"delta": -0.3503,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"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.0236,
"after": 0.0,
"delta": -0.0236,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2131,
"after": 0.0,
"delta": -0.2131,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.4112,
"after": 0.0,
"delta": -0.4112,
"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_AB",
"before": 2.778,
"after": 3.0,
"delta": 0.222,
"percent_delta": 0.0799,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.4112,
"after": 0.0,
"delta": -0.4112,
"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.000)",
"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_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_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": {
"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": 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.1959,
"after": 0.0,
"delta": -0.1959,
"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.1959,
"after": 0.0,
"delta": -0.1959,
"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.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1261,
"after": 0.333,
"delta": 0.2069,
"percent_delta": 1.6408,
"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.158,
"after": 0.333,
"delta": 0.175,
"percent_delta": 1.1076,
"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.194,
"after": 0.333,
"delta": 0.139,
"percent_delta": 0.7165,
"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.1261,
"after": 0.333,
"delta": 0.2069,
"percent_delta": 1.6408,
"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": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 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": 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": 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_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.1261,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.158,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.194,
"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": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1261,
"delta": -0.2069,
"percent_delta": -0.6214,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.158,
"delta": -0.175,
"percent_delta": -0.5256,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.194,
"delta": -0.139,
"percent_delta": -0.4174,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1261,
"delta": -0.2069,
"percent_delta": -0.6214,
"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.115,
"after": 0.0,
"delta": -0.115,
"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.615,
"after": 4.0,
"delta": 1.385,
"percent_delta": 0.5296,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.21,
"after": 0.1261,
"delta": -0.0839,
"percent_delta": -0.3995,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.077,
"after": 1.0,
"delta": 0.923,
"percent_delta": 11.987,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.18,
"after": 1.0,
"delta": 0.82,
"percent_delta": 4.5556,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.01,
"after": 0.0,
"delta": -0.01,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.248,
"after": 0.158,
"delta": -0.09,
"percent_delta": -0.3629,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.192,
"after": 0.0,
"delta": -0.192,
"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.295,
"after": 0.194,
"delta": -0.101,
"percent_delta": -0.3424,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.385,
"after": 0.0,
"delta": -0.385,
"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_AB",
"before": 2.615,
"after": 4.0,
"delta": 1.385,
"percent_delta": 0.5296,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.385,
"after": 0.0,
"delta": -0.385,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.115 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.615 | - |
| predicted_AVG | 0.210 | - |
| predicted_BB | 0.077 | - |
| predicted_H | 0.180 | - |
| predicted_HR | 0.010 | - |
| predicted_OBP | 0.248 | - |
| predicted_R | 0.192 | - |
| predicted_RBI | 0.150 | - |
| predicted_SLG | 0.295 | - |
| predicted_SO | 0.385 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.115 | 0.000 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 2.778 | 0.163 |
| predicted_AVG | 0.216 | 0.006 |
| predicted_BB | 0.107 | 0.030 |
| predicted_H | 0.365 | 0.185 |
| predicted_HBP | 0.008 | - |
| predicted_HR | 0.025 | 0.015 |
| predicted_OBP | 0.255 | 0.007 |
| predicted_R | 0.211 | 0.019 |
| predicted_RBI | 0.230 | 0.080 |
| predicted_SLG | 0.302 | 0.008 |
| predicted_SO | 0.404 | 0.019 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.115 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 2.778 | 0.000 |
| predicted_AVG | 0.126 | -0.090 |
| predicted_BB | 0.105 | -0.002 |
| predicted_H | 0.350 | -0.015 |
| predicted_HBP | 0.008 | 0.000 |
| predicted_HR | 0.024 | -0.001 |
| predicted_OBP | 0.158 | -0.097 |
| predicted_R | 0.196 | -0.015 |
| predicted_RBI | 0.213 | -0.017 |
| predicted_SLG | 0.194 | -0.108 |
| predicted_SO | 0.411 | 0.007 |
AB rounded to 3 (raw=2.78), rates preserved: AVG=0.126 HR/AB=0.009
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 0.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 0.000 | - |
Sample-size BvP blend (BvP AB=9.0, weight=0.092, BvP AVG=0.000)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SO | 1.000 | 1.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.115 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | 0.222 |
| predicted_AVG | 0.333 | 0.207 |
| predicted_BB | 0.000 | -0.105 |
| predicted_H | 1.000 | 0.650 |
| predicted_HR | 0.000 | -0.024 |
| predicted_OBP | 0.333 | 0.175 |
| predicted_R | 0.000 | -0.196 |
| predicted_RBI | 0.000 | -0.213 |
| predicted_SLG | 0.333 | 0.139 |
| predicted_SO | 1.000 | 0.589 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 15.000 | 2.000 | 0.000 | 0.000 | 0.000 | 2.000 | 0.000 | 1.000 | 1.000 | 0.1333 | 0.1875 | 0.1333 | 0.1333 | 0.0000 | 0.1333 | 0.0667 | 0.0667 |
| last_10 | 0.20 | 10 | - | 29.000 | 7.000 | 1.000 | 0.000 | 0.000 | 3.000 | 2.000 | 2.000 | 1.000 | 0.2414 | 0.2903 | 0.2759 | 0.2414 | 0.0000 | 0.1035 | 0.0690 | 0.0345 |
| season | 0.60 | 26 | - | 68.000 | 16.000 | 3.000 | 0.000 | 1.000 | 8.000 | 5.000 | 2.000 | 10.000 | 0.2353 | 0.2571 | 0.3235 | 0.2353 | 0.0147 | 0.1177 | 0.0294 | 0.1471 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1150 |
| predicted_3B | 0.0040 |
| predicted_AB | 3.0650 |
| predicted_AVG | 0.2257 |
| predicted_BB | 0.1600 |
| predicted_H | 0.6920 |
| predicted_HBP | 0.0080 |
| predicted_HR | 0.0510 |
| predicted_OBP | 0.2665 |
| predicted_R | 0.2450 |
| predicted_RBI | 0.3700 |
| predicted_SLG | 0.3158 |
| predicted_SO | 0.4380 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1150 | 0.1150 | 0.1150 | model_form_blend |
| predicted_3B | 0.0000 | 0.0040 | 0.0014 | model_form_blend |
| predicted_AB | 2.6150 | 3.0650 | 2.7780 | model_form_blend |
| predicted_AVG | 0.2100 | 0.2257 | 0.2157 | model_form_blend |
| predicted_BB | 0.0770 | 0.1600 | 0.1071 | model_form_blend |
| predicted_H | 0.1800 | 0.6920 | 0.3655 | model_form_blend |
| predicted_HBP | - | 0.0080 | 0.0080 | form_only |
| predicted_HR | 0.0100 | 0.0510 | 0.0249 | model_form_blend |
| predicted_OBP | 0.2480 | 0.2665 | 0.2547 | model_form_blend |
| predicted_R | 0.1920 | 0.2450 | 0.2112 | model_form_blend |
| predicted_RBI | 0.1500 | 0.3700 | 0.2297 | model_form_blend |
| predicted_SLG | 0.2950 | 0.3158 | 0.3025 | model_form_blend |
| predicted_SO | 0.3850 | 0.4380 | 0.4042 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 58 |
| Season rows before report date | 58 |
| Report year | 2026 |
| Profile rows used | 26 |
| Hitter metrics | Hitting_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 Field | Value |
|---|---|
| PA | 5 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.235 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 4 |
| Pitching_ER | 0 |
| Pitching_ERA | 0.00 |
| Pitching_Flyouts | 2 |
| Pitching_Groundouts | 1 |
| Pitching_H | 1 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 13 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 7 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260809_CHC@KC |
| game_type | full |
| mlbID | 668942 |
| playerID | 668942 |
| playerName | Josh Rojas |
| pos | 3B |
| started | False |
| startingPosition | P |
| team | KC |
| teamID | 12 |
| game_date | 2026-08-09 |
| sl_k_percent | 13.9 |
| sl_bb_percent | 4.2 |
| sl_woba | 0.262 |
| sl_xwoba | 0.213 |
| sl_xba | 0.182 |
| sl_xslg | 0.261 |
| sl_sweet_spot_percent | 28.8 |
| sl_barrel_batted_rate | 1.7 |
| sl_hard_hit_percent | 30.5 |
| sl_exit_velocity_avg | 85.9 |
| sl_launch_angle_avg | 16.6 |
| sl_whiff_percent | 23.1 |
| sl_swing_percent | 51.4 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.238 | 0.000 | 0.000 | Hitting_2B | 0.239 | 0.000 | -0.239 | 0.000 |
| predicted_3B | 0.010 | 0.000 | 0.000 | Hitting_3B | 0.012 | 0.000 | -0.012 | 0.000 |
| predicted_AB | 4.930 | 5.000 | 5.000 | Hitting_AB | 4.014 | 5.000 | 0.986 | 0.000 |
| predicted_AVG | 0.269 | 0.000 | 0.200 | Hitting_AVG | 0.279 | 0.400 | -0.279 | -0.400 |
| predicted_BB | 0.426 | 1.000 | 0.000 | Hitting_BB | 0.465 | 0.000 | 0.535 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.064 | 0.000 | -0.064 | 0.000 |
| predicted_H | 1.330 | 0.000 | 1.000 | Hitting_H | 1.119 | 2.000 | -1.119 | -2.000 |
| predicted_HR | 0.150 | 0.000 | 0.000 | Hitting_HR | 0.129 | 0.000 | -0.129 | 0.000 |
| predicted_OBP | 0.360 | 0.167 | 0.200 | Hitting_OBP | 0.353 | 0.400 | -0.186 | -0.233 |
| predicted_R | 0.594 | 0.000 | 1.000 | Hitting_R | 0.561 | 2.000 | -0.561 | -2.000 |
| predicted_RBI | 0.490 | 0.000 | 0.000 | Hitting_RBI | 0.425 | 0.000 | -0.425 | 0.000 |
| predicted_SLG | 0.421 | 0.000 | 0.200 | Hitting_SLG | 0.441 | 0.400 | -0.441 | -0.400 |
| predicted_SO | 0.772 | 2.000 | 1.000 | Hitting_SO | 0.826 | 1.000 | 1.174 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 8 |
| Better Metrics | 2 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_SO: 0.7720 -> 2.0000 (boost 1.2280, worse) |
| Biggest Deboost | predicted_H: 1.3300 -> 0.0000 (deboost -1.3300, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 5 | 1 | 4 | 1 | 4 | predicted_R: 0.5940 -> 0.6531 (boost 0.0591, better) | predicted_AB: 4.9300 -> 4.4312 (deboost -0.4988, 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. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_OBP: 0.3556 -> 0.3249 (deboost -0.0307, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 2 | 5 | 1 | 6 | predicted_AB: 4.4312 -> 5.0000 (boost 0.5688, better) | predicted_BB: 0.4357 -> 0.0000 (deboost -0.4357, worse) | AB rounded to 5 (raw=4.93), rates preserved: AVG=0.232 HR/AB=0.023 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6059 -> 1.0000 (boost 0.3941, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3867 -> 0.2000 (deboost -0.1867, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 4 | 2 | 2 | 1 | 3 | predicted_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 |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2000 -> 0.3867 (boost 0.1867, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "677951",
"player_name": "Bobby Witt Jr.",
"position": "SS",
"team": "KC",
"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.238,
"predicted_3B": 0.01,
"predicted_AB": 4.93,
"predicted_AVG": 0.269,
"predicted_BB": 0.426,
"predicted_H": 1.33,
"predicted_HR": 0.15,
"predicted_OBP": 0.36,
"predicted_R": 0.594,
"predicted_RBI": 0.49,
"predicted_SLG": 0.421,
"predicted_SO": 0.772
},
"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.213,
"predicted_3B": 0.0083,
"predicted_AB": 4.4312,
"predicted_AVG": 0.2693,
"predicted_BB": 0.4433,
"predicted_H": 1.1954,
"predicted_HBP": 0.007,
"predicted_HR": 0.1189,
"predicted_OBP": 0.3556,
"predicted_R": 0.6531,
"predicted_RBI": 0.4296,
"predicted_SLG": 0.4046,
"predicted_SO": 0.7711
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.238,
"after": 0.213,
"delta": -0.025,
"percent_delta": -0.105,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.01,
"after": 0.0083,
"delta": -0.0017,
"percent_delta": -0.17,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.93,
"after": 4.4312,
"delta": -0.4988,
"percent_delta": -0.1012,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.269,
"after": 0.2693,
"delta": 0.0003,
"percent_delta": 0.0011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.426,
"after": 0.4433,
"delta": 0.0173,
"percent_delta": 0.0406,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.33,
"after": 1.1954,
"delta": -0.1346,
"percent_delta": -0.1012,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.15,
"after": 0.1189,
"delta": -0.0311,
"percent_delta": -0.2073,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.36,
"after": 0.3556,
"delta": -0.0044,
"percent_delta": -0.0122,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.594,
"after": 0.6531,
"delta": 0.0591,
"percent_delta": 0.0995,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.49,
"after": 0.4296,
"delta": -0.0604,
"percent_delta": -0.1233,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.421,
"after": 0.4046,
"delta": -0.0164,
"percent_delta": -0.039,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.772,
"after": 0.7711,
"delta": -0.0009,
"percent_delta": -0.0012,
"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.594,
"after": 0.6531,
"delta": 0.0591,
"percent_delta": 0.0995,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.93,
"after": 4.4312,
"delta": -0.4988,
"percent_delta": -0.1012,
"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.213,
"predicted_3B": 0.0083,
"predicted_AB": 4.4312,
"predicted_AVG": 0.2585,
"predicted_BB": 0.4357,
"predicted_H": 1.1456,
"predicted_HBP": 0.007,
"predicted_HR": 0.1128,
"predicted_OBP": 0.3249,
"predicted_R": 0.6059,
"predicted_RBI": 0.3985,
"predicted_SLG": 0.3867,
"predicted_SO": 0.7844
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.213,
"after": 0.213,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0083,
"after": 0.0083,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.4312,
"after": 4.4312,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2693,
"after": 0.2585,
"delta": -0.0108,
"percent_delta": -0.0401,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4433,
"after": 0.4357,
"delta": -0.0076,
"percent_delta": -0.0171,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.1954,
"after": 1.1456,
"delta": -0.0498,
"percent_delta": -0.0417,
"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.1189,
"after": 0.1128,
"delta": -0.0061,
"percent_delta": -0.0513,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3556,
"after": 0.3249,
"delta": -0.0307,
"percent_delta": -0.0863,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6531,
"after": 0.6059,
"delta": -0.0472,
"percent_delta": -0.0723,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4296,
"after": 0.3985,
"delta": -0.0311,
"percent_delta": -0.0724,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4046,
"after": 0.3867,
"delta": -0.0179,
"percent_delta": -0.0442,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7711,
"after": 0.7844,
"delta": 0.0133,
"percent_delta": 0.0172,
"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.3556,
"after": 0.3249,
"delta": -0.0307,
"percent_delta": -0.0863,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=4.93), rates preserved: AVG=0.232 HR/AB=0.023",
"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.213,
"after": 0.0,
"delta": -0.213,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0083,
"after": 0.0,
"delta": -0.0083,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.4312,
"after": 5.0,
"delta": 0.5688,
"percent_delta": 0.1284,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4357,
"after": 0.0,
"delta": -0.4357,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.1456,
"after": 1.0,
"delta": -0.1456,
"percent_delta": -0.1271,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.007,
"after": 0.0,
"delta": -0.007,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1128,
"after": 0.0,
"delta": -0.1128,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3985,
"after": 0.0,
"delta": -0.3985,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7844,
"after": 1.0,
"delta": 0.2156,
"percent_delta": 0.2749,
"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.4312,
"after": 5.0,
"delta": 0.5688,
"percent_delta": 0.1284,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.4357,
"after": 0.0,
"delta": -0.4357,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.6059,
"after": 1.0,
"delta": 0.3941,
"percent_delta": 0.6504,
"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.6059,
"after": 1.0,
"delta": 0.3941,
"percent_delta": 0.6504,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_AVG": 0.2,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.2,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2585,
"after": 0.2,
"delta": -0.0585,
"percent_delta": -0.2263,
"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.3249,
"after": 0.2,
"delta": -0.1249,
"percent_delta": -0.3844,
"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.3867,
"after": 0.2,
"delta": -0.1867,
"percent_delta": -0.4828,
"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.3867,
"after": 0.2,
"delta": -0.1867,
"percent_delta": -0.4828,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_BB": 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": 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_CS",
"before": 0.0,
"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": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_AVG": 0.2585,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3249,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3867,
"predicted_SO": 2.0,
"predicted_SS": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2,
"after": 0.2585,
"delta": 0.0585,
"percent_delta": 0.2926,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2,
"after": 0.3249,
"delta": 0.1249,
"percent_delta": 0.6245,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.2,
"after": 0.3867,
"delta": 0.1867,
"percent_delta": 0.9334,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.2,
"after": 0.3867,
"delta": 0.1867,
"percent_delta": 0.9334,
"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.238,
"after": 0.0,
"delta": -0.238,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"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": 4.93,
"after": 5.0,
"delta": 0.07,
"percent_delta": 0.0142,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.269,
"after": 0.2585,
"delta": -0.0105,
"percent_delta": -0.039,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.426,
"after": 1.0,
"delta": 0.574,
"percent_delta": 1.3474,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.33,
"after": 0.0,
"delta": -1.33,
"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.36,
"after": 0.3249,
"delta": -0.0351,
"percent_delta": -0.0975,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.594,
"after": 0.0,
"delta": -0.594,
"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.421,
"after": 0.3867,
"delta": -0.0343,
"percent_delta": -0.0815,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.772,
"after": 2.0,
"delta": 1.228,
"percent_delta": 1.5907,
"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.772,
"after": 2.0,
"delta": 1.228,
"percent_delta": 1.5907,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.33,
"after": 0.0,
"delta": -1.33,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.238 | - |
| predicted_3B | 0.010 | - |
| predicted_AB | 4.930 | - |
| predicted_AVG | 0.269 | - |
| predicted_BB | 0.426 | - |
| predicted_H | 1.330 | - |
| predicted_HR | 0.150 | - |
| predicted_OBP | 0.360 | - |
| predicted_R | 0.594 | - |
| predicted_RBI | 0.490 | - |
| predicted_SLG | 0.421 | - |
| predicted_SO | 0.772 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.213 | -0.025 |
| predicted_3B | 0.008 | -0.002 |
| predicted_AB | 4.431 | -0.499 |
| predicted_AVG | 0.269 | 0.000 |
| predicted_BB | 0.443 | 0.017 |
| predicted_H | 1.195 | -0.135 |
| predicted_HBP | 0.007 | - |
| predicted_HR | 0.119 | -0.031 |
| predicted_OBP | 0.356 | -0.004 |
| predicted_R | 0.653 | 0.059 |
| predicted_RBI | 0.430 | -0.060 |
| predicted_SLG | 0.405 | -0.016 |
| predicted_SO | 0.771 | -0.001 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.213 | 0.000 |
| predicted_3B | 0.008 | 0.000 |
| predicted_AB | 4.431 | 0.000 |
| predicted_AVG | 0.259 | -0.011 |
| predicted_BB | 0.436 | -0.008 |
| predicted_H | 1.146 | -0.050 |
| predicted_HBP | 0.007 | 0.000 |
| predicted_HR | 0.113 | -0.006 |
| predicted_OBP | 0.325 | -0.031 |
| predicted_R | 0.606 | -0.047 |
| predicted_RBI | 0.399 | -0.031 |
| predicted_SLG | 0.387 | -0.018 |
| predicted_SO | 0.784 | 0.013 |
AB rounded to 5 (raw=4.93), rates preserved: AVG=0.232 HR/AB=0.023
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 5.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 5.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.213 |
| predicted_3B | 0.000 | -0.008 |
| predicted_AB | 5.000 | 0.569 |
| predicted_AVG | 0.200 | -0.058 |
| predicted_BB | 0.000 | -0.436 |
| predicted_H | 1.000 | -0.146 |
| predicted_HR | 0.000 | -0.113 |
| predicted_OBP | 0.200 | -0.125 |
| predicted_R | 1.000 | 0.394 |
| predicted_RBI | 0.000 | -0.399 |
| predicted_SLG | 0.200 | -0.187 |
| predicted_SO | 1.000 | 0.216 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 5.000 | 0.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 6.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 18.000 | 4.000 | 0.000 | 0.000 | 0.000 | 1.000 | 5.000 | 3.000 | 4.000 | 0.2222 | 0.3333 | 0.2222 | 0.2222 | 0.0000 | 0.0556 | 0.1667 | 0.2222 |
| last_10 | 0.20 | 10 | - | 35.000 | 10.000 | 2.000 | 0.000 | 0.000 | 3.000 | 9.000 | 5.000 | 7.000 | 0.2857 | 0.3750 | 0.3429 | 0.2857 | 0.0000 | 0.0857 | 0.1429 | 0.2000 |
| season | 0.60 | 101 | - | 396.000 | 112.000 | 24.000 | 1.000 | 13.000 | 41.000 | 60.000 | 43.000 | 78.000 | 0.2828 | 0.3521 | 0.4470 | 0.2828 | 0.0328 | 0.1035 | 0.1086 | 0.1970 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1800 |
| predicted_3B | 0.0060 |
| predicted_AB | 3.7740 |
| predicted_AVG | 0.2698 |
| predicted_BB | 0.4660 |
| predicted_H | 1.0180 |
| predicted_HBP | 0.0070 |
| predicted_HR | 0.0780 |
| predicted_OBP | 0.3499 |
| predicted_R | 0.7310 |
| predicted_RBI | 0.3500 |
| predicted_SLG | 0.3830 |
| predicted_SO | 0.7700 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2380 | 0.1800 | 0.2130 | model_form_blend |
| predicted_3B | 0.0100 | 0.0060 | 0.0083 | model_form_blend |
| predicted_AB | 4.9300 | 3.7740 | 4.4312 | model_form_blend |
| predicted_AVG | 0.2690 | 0.2698 | 0.2693 | model_form_blend |
| predicted_BB | 0.4260 | 0.4660 | 0.4433 | model_form_blend |
| predicted_H | 1.3300 | 1.0180 | 1.1954 | model_form_blend |
| predicted_HBP | - | 0.0070 | 0.0070 | form_only |
| predicted_HR | 0.1500 | 0.0780 | 0.1189 | model_form_blend |
| predicted_OBP | 0.3600 | 0.3499 | 0.3556 | model_form_blend |
| predicted_R | 0.5940 | 0.7310 | 0.6531 | model_form_blend |
| predicted_RBI | 0.4900 | 0.3500 | 0.4296 | model_form_blend |
| predicted_SLG | 0.4210 | 0.3830 | 0.4046 | model_form_blend |
| predicted_SO | 0.7720 | 0.7700 | 0.7711 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 419 |
| Season rows before report date | 419 |
| Report year | 2026 |
| Profile rows used | 101 |
| Hitter metrics | Hitting_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 Field | Value |
|---|---|
| PA | 6 |
| AB | 5 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.283 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 5 |
| Hitting_AVG | 0.4 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 2 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 2 |
| Hitting_battingOrder | 2 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | SS |
| gameID | 20260811_KC@LAD |
| game_type | full |
| mlbID | 677951 |
| playerID | 677951 |
| playerName | Bobby Witt Jr. |
| pos | SS |
| started | True |
| startingPosition | SS |
| team | KC |
| teamID | 12 |
| game_date | 2026-08-11 |
| sl_k_percent | 17.4 |
| sl_bb_percent | 10.0 |
| sl_woba | 0.348 |
| sl_xwoba | 0.382 |
| sl_xba | 0.303 |
| sl_xslg | 0.509 |
| sl_sweet_spot_percent | 37.0 |
| sl_barrel_batted_rate | 11.9 |
| sl_hard_hit_percent | 52.2 |
| sl_exit_velocity_avg | 92.7 |
| sl_launch_angle_avg | 16.3 |
| sl_whiff_percent | 24.6 |
| sl_swing_percent | 47.7 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.093 | 0.000 | 0.000 | Hitting_2B | 0.111 | 0.000 | -0.111 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.090 | 5.000 | 3.000 | Hitting_AB | 3.188 | 3.000 | 1.812 | 2.000 |
| predicted_AVG | 0.205 | 0.000 | 0.333 | Hitting_AVG | 0.285 | 0.000 | -0.285 | 0.000 |
| predicted_BB | 0.167 | 0.000 | 0.000 | Hitting_BB | 0.181 | 1.000 | -0.181 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.049 | 0.000 | -0.049 | 0.000 |
| predicted_H | 0.630 | 0.000 | 1.000 | Hitting_H | 0.910 | 0.000 | -0.910 | 0.000 |
| predicted_HR | 0.100 | 0.000 | 0.000 | Hitting_HR | 0.035 | 0.000 | -0.035 | 0.000 |
| predicted_OBP | 0.264 | 0.000 | 0.333 | Hitting_OBP | 0.339 | 0.250 | -0.339 | -0.250 |
| predicted_R | 0.278 | 0.000 | 0.000 | Hitting_R | 0.354 | 0.000 | -0.354 | 0.000 |
| predicted_RBI | 0.440 | 0.000 | 0.000 | Hitting_RBI | 0.312 | 0.000 | -0.312 | 0.000 |
| predicted_SLG | 0.342 | 0.000 | 0.333 | Hitting_SLG | 0.353 | 0.000 | -0.353 | 0.000 |
| predicted_SO | 0.704 | 1.000 | 1.000 | Hitting_SO | 0.833 | 0.000 | 0.167 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 8 |
| Better Metrics | 1 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_AB: 3.0900 -> 5.0000 (boost 1.9100, better) |
| Biggest Deboost | predicted_H: 0.6300 -> 0.0000 (deboost -0.6300, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2050 -> 0.2125 (boost 0.0075, better) | predicted_AB: 3.0900 -> 3.0132 (deboost -0.0768, 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. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_OBP: 0.2686 -> 0.2445 (deboost -0.0241, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 2 | 4 | 1 | 5 | predicted_H: 0.6107 -> 1.0000 (boost 0.3893, better) | predicted_RBI: 0.4029 -> 0.0000 (deboost -0.4029, worse) | AB rounded to 3 (raw=3.09), rates preserved: AVG=0.198 HR/AB=0.029 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=9.0, weight=0.092, BvP AVG=0.222) |
| 6 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.2714 -> 0.0000 (deboost -0.2714, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.2027 -> 0.3330 (boost 0.1303, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 2 | 1 | 1 | 1 | 1 | predicted_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 |
| 9 | current_json_final | 2 | 0 | 2 | 0 | 2 | - | predicted_AVG: 0.3330 -> 0.2027 (deboost -0.1303, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "516782",
"player_name": "Starling Marte",
"position": "RF",
"team": "KC",
"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.093,
"predicted_3B": 0.0,
"predicted_AB": 3.09,
"predicted_AVG": 0.205,
"predicted_BB": 0.167,
"predicted_H": 0.63,
"predicted_HR": 0.1,
"predicted_OBP": 0.264,
"predicted_R": 0.278,
"predicted_RBI": 0.44,
"predicted_SLG": 0.342,
"predicted_SO": 0.704
},
"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.1055,
"predicted_3B": 0.0008,
"predicted_AB": 3.0132,
"predicted_AVG": 0.2125,
"predicted_BB": 0.1698,
"predicted_H": 0.6373,
"predicted_HBP": 0.044,
"predicted_HR": 0.0951,
"predicted_OBP": 0.2686,
"predicted_R": 0.2926,
"predicted_RBI": 0.4343,
"predicted_SLG": 0.3487,
"predicted_SO": 0.664
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.093,
"after": 0.1055,
"delta": 0.0125,
"percent_delta": 0.1344,
"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.09,
"after": 3.0132,
"delta": -0.0768,
"percent_delta": -0.0249,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.205,
"after": 0.2125,
"delta": 0.0075,
"percent_delta": 0.0366,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.167,
"after": 0.1698,
"delta": 0.0028,
"percent_delta": 0.0168,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.63,
"after": 0.6373,
"delta": 0.0073,
"percent_delta": 0.0116,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.0951,
"delta": -0.0049,
"percent_delta": -0.049,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.264,
"after": 0.2686,
"delta": 0.0046,
"percent_delta": 0.0174,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.278,
"after": 0.2926,
"delta": 0.0146,
"percent_delta": 0.0525,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.44,
"after": 0.4343,
"delta": -0.0057,
"percent_delta": -0.013,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.342,
"after": 0.3487,
"delta": 0.0067,
"percent_delta": 0.0196,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.704,
"after": 0.664,
"delta": -0.04,
"percent_delta": -0.0568,
"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.205,
"after": 0.2125,
"delta": 0.0075,
"percent_delta": 0.0366,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.09,
"after": 3.0132,
"delta": -0.0768,
"percent_delta": -0.0249,
"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": 54
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1055,
"predicted_3B": 0.0008,
"predicted_AB": 3.0132,
"predicted_AVG": 0.2027,
"predicted_BB": 0.1669,
"predicted_H": 0.6107,
"predicted_HBP": 0.044,
"predicted_HR": 0.0902,
"predicted_OBP": 0.2445,
"predicted_R": 0.2714,
"predicted_RBI": 0.4029,
"predicted_SLG": 0.328,
"predicted_SO": 0.6754
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1055,
"after": 0.1055,
"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.0132,
"after": 3.0132,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2125,
"after": 0.2027,
"delta": -0.0098,
"percent_delta": -0.0461,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1698,
"after": 0.1669,
"delta": -0.0029,
"percent_delta": -0.0171,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.6373,
"after": 0.6107,
"delta": -0.0266,
"percent_delta": -0.0417,
"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.0951,
"after": 0.0902,
"delta": -0.0049,
"percent_delta": -0.0515,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2686,
"after": 0.2445,
"delta": -0.0241,
"percent_delta": -0.0897,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.2926,
"after": 0.2714,
"delta": -0.0212,
"percent_delta": -0.0725,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4343,
"after": 0.4029,
"delta": -0.0314,
"percent_delta": -0.0723,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3487,
"after": 0.328,
"delta": -0.0207,
"percent_delta": -0.0594,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.664,
"after": 0.6754,
"delta": 0.0114,
"percent_delta": 0.0172,
"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.2686,
"after": 0.2445,
"delta": -0.0241,
"percent_delta": -0.0897,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.09), rates preserved: AVG=0.198 HR/AB=0.029",
"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.1055,
"after": 0.0,
"delta": -0.1055,
"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.0132,
"after": 3.0,
"delta": -0.0132,
"percent_delta": -0.0044,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.1669,
"after": 0.0,
"delta": -0.1669,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.6107,
"after": 1.0,
"delta": 0.3893,
"percent_delta": 0.6375,
"direction": "boost",
"projection_effect": "better",
"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.0902,
"after": 0.0,
"delta": -0.0902,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4029,
"after": 0.0,
"delta": -0.4029,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6754,
"after": 1.0,
"delta": 0.3246,
"percent_delta": 0.4806,
"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.6107,
"after": 1.0,
"delta": 0.3893,
"percent_delta": 0.6375,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4029,
"after": 0.0,
"delta": -0.4029,
"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": 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.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": 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.2714,
"after": 0.0,
"delta": -0.2714,
"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.2714,
"after": 0.0,
"delta": -0.2714,
"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.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2027,
"after": 0.333,
"delta": 0.1303,
"percent_delta": 0.6428,
"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.2445,
"after": 0.333,
"delta": 0.0885,
"percent_delta": 0.362,
"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.328,
"after": 0.333,
"delta": 0.005,
"percent_delta": 0.0152,
"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.2027,
"after": 0.333,
"delta": 0.1303,
"percent_delta": 0.6428,
"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": 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": 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": 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_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.2027,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2445,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.328,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2027,
"delta": -0.1303,
"percent_delta": -0.3913,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2445,
"delta": -0.0885,
"percent_delta": -0.2657,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.328,
"delta": -0.005,
"percent_delta": -0.0149,
"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_AVG",
"before": 0.333,
"after": 0.2027,
"delta": -0.1303,
"percent_delta": -0.3913,
"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.093,
"after": 0.0,
"delta": -0.093,
"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.09,
"after": 5.0,
"delta": 1.91,
"percent_delta": 0.6181,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.205,
"after": 0.2027,
"delta": -0.0023,
"percent_delta": -0.0112,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.167,
"after": 0.0,
"delta": -0.167,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.63,
"after": 0.0,
"delta": -0.63,
"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.264,
"after": 0.2445,
"delta": -0.0195,
"percent_delta": -0.0739,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.278,
"after": 0.0,
"delta": -0.278,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.44,
"after": 0.0,
"delta": -0.44,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.342,
"after": 0.328,
"delta": -0.014,
"percent_delta": -0.0409,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.704,
"after": 1.0,
"delta": 0.296,
"percent_delta": 0.4205,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 2,
"deboosted_metrics": 8,
"better_metrics": 1,
"worse_metrics": 9,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.09,
"after": 5.0,
"delta": 1.91,
"percent_delta": 0.6181,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"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"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.093 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.090 | - |
| predicted_AVG | 0.205 | - |
| predicted_BB | 0.167 | - |
| predicted_H | 0.630 | - |
| predicted_HR | 0.100 | - |
| predicted_OBP | 0.264 | - |
| predicted_R | 0.278 | - |
| predicted_RBI | 0.440 | - |
| predicted_SLG | 0.342 | - |
| predicted_SO | 0.704 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.105 | 0.012 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 3.013 | -0.077 |
| predicted_AVG | 0.212 | 0.008 |
| predicted_BB | 0.170 | 0.003 |
| predicted_H | 0.637 | 0.007 |
| predicted_HBP | 0.044 | - |
| predicted_HR | 0.095 | -0.005 |
| predicted_OBP | 0.269 | 0.005 |
| predicted_R | 0.293 | 0.015 |
| predicted_RBI | 0.434 | -0.006 |
| predicted_SLG | 0.349 | 0.007 |
| predicted_SO | 0.664 | -0.040 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.105 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 3.013 | 0.000 |
| predicted_AVG | 0.203 | -0.010 |
| predicted_BB | 0.167 | -0.003 |
| predicted_H | 0.611 | -0.027 |
| predicted_HBP | 0.044 | 0.000 |
| predicted_HR | 0.090 | -0.005 |
| predicted_OBP | 0.244 | -0.024 |
| predicted_R | 0.271 | -0.021 |
| predicted_RBI | 0.403 | -0.031 |
| predicted_SLG | 0.328 | -0.021 |
| predicted_SO | 0.675 | 0.011 |
AB rounded to 3 (raw=3.09), rates preserved: AVG=0.198 HR/AB=0.029
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=9.0, weight=0.092, BvP AVG=0.222)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.105 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | -0.013 |
| predicted_AVG | 0.333 | 0.130 |
| predicted_BB | 0.000 | -0.167 |
| predicted_H | 1.000 | 0.389 |
| predicted_HR | 0.000 | -0.090 |
| predicted_OBP | 0.333 | 0.089 |
| predicted_R | 0.000 | -0.271 |
| predicted_RBI | 0.000 | -0.403 |
| predicted_SLG | 0.333 | 0.005 |
| predicted_SO | 1.000 | 0.325 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 5.000 | 2.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 15.000 | 3.000 | 1.000 | 0.000 | 1.000 | 4.000 | 2.000 | 1.000 | 2.000 | 0.2000 | 0.2500 | 0.4667 | 0.2000 | 0.0667 | 0.2667 | 0.0667 | 0.1333 |
| last_10 | 0.20 | 10 | - | 25.000 | 4.000 | 1.000 | 0.000 | 1.000 | 5.000 | 2.000 | 1.000 | 3.000 | 0.1600 | 0.1923 | 0.3200 | 0.1600 | 0.0400 | 0.2000 | 0.0400 | 0.1200 |
| season | 0.60 | 54 | - | 147.000 | 36.000 | 5.000 | 0.000 | 2.000 | 14.000 | 15.000 | 9.000 | 38.000 | 0.2449 | 0.3025 | 0.3197 | 0.2449 | 0.0136 | 0.0952 | 0.0612 | 0.2585 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1240 |
| predicted_3B | 0.0020 |
| predicted_AB | 2.9000 |
| predicted_AVG | 0.2235 |
| predicted_BB | 0.1740 |
| predicted_H | 0.6480 |
| predicted_HBP | 0.0440 |
| predicted_HR | 0.0880 |
| predicted_OBP | 0.2755 |
| predicted_R | 0.3140 |
| predicted_RBI | 0.4260 |
| predicted_SLG | 0.3585 |
| predicted_SO | 0.6050 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0930 | 0.1240 | 0.1055 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 3.0900 | 2.9000 | 3.0132 | model_form_blend |
| predicted_AVG | 0.2050 | 0.2235 | 0.2125 | model_form_blend |
| predicted_BB | 0.1670 | 0.1740 | 0.1698 | model_form_blend |
| predicted_H | 0.6300 | 0.6480 | 0.6373 | model_form_blend |
| predicted_HBP | - | 0.0440 | 0.0440 | form_only |
| predicted_HR | 0.1000 | 0.0880 | 0.0951 | model_form_blend |
| predicted_OBP | 0.2640 | 0.2755 | 0.2686 | model_form_blend |
| predicted_R | 0.2780 | 0.3140 | 0.2926 | model_form_blend |
| predicted_RBI | 0.4400 | 0.4260 | 0.4343 | model_form_blend |
| predicted_SLG | 0.3420 | 0.3585 | 0.3487 | model_form_blend |
| predicted_SO | 0.7040 | 0.6050 | 0.6640 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 144 |
| Season rows before report date | 144 |
| Report year | 2026 |
| Profile rows used | 54 |
| Hitter metrics | Hitting_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 Field | Value |
|---|---|
| PA | 5 |
| AB | 5 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.245 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 1 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 1 |
| Hitting_GIDP | 1 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 6 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | RF |
| gameID | 20260810_KC@LAD |
| game_type | full |
| mlbID | 516782 |
| playerID | 516782 |
| playerName | Starling Marte |
| pos | RF |
| started | True |
| startingPosition | RF |
| team | KC |
| teamID | 12 |
| game_date | 2026-08-10 |
| sl_k_percent | 23.5 |
| sl_bb_percent | 5.6 |
| sl_woba | 0.28 |
| sl_xwoba | 0.294 |
| sl_xba | 0.235 |
| sl_xslg | 0.374 |
| sl_sweet_spot_percent | 27.9 |
| sl_barrel_batted_rate | 9.9 |
| sl_hard_hit_percent | 35.1 |
| sl_exit_velocity_avg | 87.6 |
| sl_launch_angle_avg | 7.1 |
| sl_whiff_percent | 28.0 |
| sl_swing_percent | 52.9 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.181 | 1.000 | 0.000 | Hitting_2B | 0.199 | 0.000 | 0.801 | 1.000 |
| predicted_3B | 0.029 | 0.000 | 0.000 | Hitting_3B | 0.017 | 0.000 | -0.017 | 0.000 |
| predicted_AB | 3.200 | 4.000 | 3.000 | Hitting_AB | 3.295 | 1.000 | 0.705 | 3.000 |
| predicted_AVG | 0.203 | 0.500 | 0.333 | Hitting_AVG | 0.246 | 0.000 | 0.254 | 0.500 |
| predicted_BB | 0.429 | 1.000 | 0.000 | Hitting_BB | 0.494 | 0.000 | 0.506 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.053 | 0.000 | -0.053 | 0.000 |
| predicted_H | 0.280 | 2.000 | 1.000 | Hitting_H | 0.809 | 0.000 | 1.191 | 2.000 |
| predicted_HR | 0.020 | 0.000 | 0.000 | Hitting_HR | 0.059 | 0.000 | -0.059 | 0.000 |
| predicted_OBP | 0.270 | 0.600 | 0.333 | Hitting_OBP | 0.354 | 0.000 | 0.246 | 0.600 |
| predicted_R | 0.381 | 1.000 | 0.000 | Hitting_R | 0.449 | 0.000 | 0.551 | 1.000 |
| predicted_RBI | 0.160 | 1.000 | 0.000 | Hitting_RBI | 0.402 | 0.000 | 0.598 | 1.000 |
| predicted_SLG | 0.317 | 0.750 | 0.333 | Hitting_SLG | 0.370 | 0.000 | 0.380 | 0.750 |
| predicted_SO | 0.819 | 1.000 | 1.000 | Hitting_SO | 0.890 | 0.000 | 0.110 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 10 |
| Boosted Metrics | 7 |
| Deboosted Metrics | 3 |
| Better Metrics | 6 |
| Worse Metrics | 4 |
| Biggest Boost | predicted_H: 0.2800 -> 2.0000 (boost 1.7200, better) |
| Biggest Deboost | predicted_SLG: 0.3170 -> 0.2401 (deboost -0.0769, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 4 | 3 | 1 | 4 | 0 | predicted_H: 0.2800 -> 0.4555 (boost 0.1755, better) | predicted_SO: 0.8190 -> 0.7534 (deboost -0.0656, 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. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3242 -> 0.2401 (deboost -0.0841, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 1 | 5 | 0 | 6 | predicted_SO: 0.7664 -> 1.0000 (boost 0.2336, worse) | predicted_H: 0.4365 -> 0.0000 (deboost -0.4365, worse) | AB rounded to 3 (raw=3.23), rates preserved: AVG=0.135 HR/AB=0.009 |
| 5 | consistency_constraints | 2 | 1 | 1 | 1 | 1 | predicted_H: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_R: 0.3149 -> 0.0000 (deboost -0.3149, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.1353 -> 0.3330 (boost 0.1977, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 6 | 6 | 0 | 6 | 0 | predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.1353 (deboost -0.1977, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "686555",
"player_name": "Isaac Collins",
"position": "LF",
"team": "KC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.181,
"predicted_3B": 0.029,
"predicted_AB": 3.2,
"predicted_AVG": 0.203,
"predicted_BB": 0.429,
"predicted_H": 0.28,
"predicted_HR": 0.02,
"predicted_OBP": 0.27,
"predicted_R": 0.381,
"predicted_RBI": 0.16,
"predicted_SLG": 0.317,
"predicted_SO": 0.819
},
"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.1763,
"predicted_3B": 0.0397,
"predicted_AB": 3.2266,
"predicted_AVG": 0.2066,
"predicted_BB": 0.3964,
"predicted_H": 0.4555,
"predicted_HBP": 0.034,
"predicted_HR": 0.029,
"predicted_OBP": 0.2796,
"predicted_R": 0.3394,
"predicted_RBI": 0.2093,
"predicted_SLG": 0.3242,
"predicted_SO": 0.7534
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.181,
"after": 0.1763,
"delta": -0.0047,
"percent_delta": -0.026,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.029,
"after": 0.0397,
"delta": 0.0107,
"percent_delta": 0.369,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.2,
"after": 3.2266,
"delta": 0.0266,
"percent_delta": 0.0083,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.203,
"after": 0.2066,
"delta": 0.0036,
"percent_delta": 0.0177,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.429,
"after": 0.3964,
"delta": -0.0326,
"percent_delta": -0.076,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.28,
"after": 0.4555,
"delta": 0.1755,
"percent_delta": 0.6268,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.02,
"after": 0.029,
"delta": 0.009,
"percent_delta": 0.45,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.27,
"after": 0.2796,
"delta": 0.0096,
"percent_delta": 0.0356,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.381,
"after": 0.3394,
"delta": -0.0416,
"percent_delta": -0.1092,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.16,
"after": 0.2093,
"delta": 0.0493,
"percent_delta": 0.3081,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.317,
"after": 0.3242,
"delta": 0.0072,
"percent_delta": 0.0227,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.819,
"after": 0.7534,
"delta": -0.0656,
"percent_delta": -0.0801,
"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_H",
"before": 0.28,
"after": 0.4555,
"delta": 0.1755,
"percent_delta": 0.6268,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.819,
"after": 0.7534,
"delta": -0.0656,
"percent_delta": -0.0801,
"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": 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.1763,
"predicted_3B": 0.0397,
"predicted_AB": 3.2266,
"predicted_AVG": 0.1353,
"predicted_BB": 0.3896,
"predicted_H": 0.4365,
"predicted_HBP": 0.034,
"predicted_HR": 0.0275,
"predicted_OBP": 0.2284,
"predicted_R": 0.3149,
"predicted_RBI": 0.1942,
"predicted_SLG": 0.2401,
"predicted_SO": 0.7664
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1763,
"after": 0.1763,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0397,
"after": 0.0397,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.2266,
"after": 3.2266,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2066,
"after": 0.1353,
"delta": -0.0713,
"percent_delta": -0.3451,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3964,
"after": 0.3896,
"delta": -0.0068,
"percent_delta": -0.0172,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.4555,
"after": 0.4365,
"delta": -0.019,
"percent_delta": -0.0417,
"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.029,
"after": 0.0275,
"delta": -0.0015,
"percent_delta": -0.0517,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2796,
"after": 0.2284,
"delta": -0.0512,
"percent_delta": -0.1831,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3394,
"after": 0.3149,
"delta": -0.0245,
"percent_delta": -0.0722,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2093,
"after": 0.1942,
"delta": -0.0151,
"percent_delta": -0.0721,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3242,
"after": 0.2401,
"delta": -0.0841,
"percent_delta": -0.2594,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7534,
"after": 0.7664,
"delta": 0.013,
"percent_delta": 0.0173,
"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.3242,
"after": 0.2401,
"delta": -0.0841,
"percent_delta": -0.2594,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.23), rates preserved: AVG=0.135 HR/AB=0.009",
"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.1763,
"after": 0.0,
"delta": -0.1763,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0397,
"after": 0.0,
"delta": -0.0397,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.2266,
"after": 3.0,
"delta": -0.2266,
"percent_delta": -0.0702,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3896,
"after": 0.0,
"delta": -0.3896,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.4365,
"after": 0.0,
"delta": -0.4365,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"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.0275,
"after": 0.0,
"delta": -0.0275,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.1942,
"after": 0.0,
"delta": -0.1942,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7664,
"after": 1.0,
"delta": 0.2336,
"percent_delta": 0.3048,
"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.7664,
"after": 1.0,
"delta": 0.2336,
"percent_delta": 0.3048,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.4365,
"after": 0.0,
"delta": -0.4365,
"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.3149,
"after": 0.0,
"delta": -0.3149,
"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.3149,
"after": 0.0,
"delta": -0.3149,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1353,
"after": 0.333,
"delta": 0.1977,
"percent_delta": 1.4612,
"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.2284,
"after": 0.333,
"delta": 0.1046,
"percent_delta": 0.458,
"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.2401,
"after": 0.333,
"delta": 0.0929,
"percent_delta": 0.3869,
"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.1353,
"after": 0.333,
"delta": 0.1977,
"percent_delta": 1.4612,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 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": 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": 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": 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": 6,
"boosted_metrics": 6,
"deboosted_metrics": 0,
"better_metrics": 6,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.1353,
"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.2284,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2401,
"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.333,
"after": 0.1353,
"delta": -0.1977,
"percent_delta": -0.5937,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2284,
"delta": -0.1046,
"percent_delta": -0.314,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.2401,
"delta": -0.0929,
"percent_delta": -0.279,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1353,
"delta": -0.1977,
"percent_delta": -0.5937,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.181,
"after": 1.0,
"delta": 0.819,
"percent_delta": 4.5249,
"direction": "boost",
"projection_effect": "better",
"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": 3.2,
"after": 4.0,
"delta": 0.8,
"percent_delta": 0.25,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.203,
"after": 0.1353,
"delta": -0.0677,
"percent_delta": -0.3335,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.429,
"after": 1.0,
"delta": 0.571,
"percent_delta": 1.331,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.28,
"after": 2.0,
"delta": 1.72,
"percent_delta": 6.1429,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.02,
"after": 0.0,
"delta": -0.02,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.27,
"after": 0.2284,
"delta": -0.0416,
"percent_delta": -0.1541,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.381,
"after": 1.0,
"delta": 0.619,
"percent_delta": 1.6247,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.16,
"after": 1.0,
"delta": 0.84,
"percent_delta": 5.25,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.317,
"after": 0.2401,
"delta": -0.0769,
"percent_delta": -0.2426,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.819,
"after": 1.0,
"delta": 0.181,
"percent_delta": 0.221,
"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_H",
"before": 0.28,
"after": 2.0,
"delta": 1.72,
"percent_delta": 6.1429,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.317,
"after": 0.2401,
"delta": -0.0769,
"percent_delta": -0.2426,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.181 | - |
| predicted_3B | 0.029 | - |
| predicted_AB | 3.200 | - |
| predicted_AVG | 0.203 | - |
| predicted_BB | 0.429 | - |
| predicted_H | 0.280 | - |
| predicted_HR | 0.020 | - |
| predicted_OBP | 0.270 | - |
| predicted_R | 0.381 | - |
| predicted_RBI | 0.160 | - |
| predicted_SLG | 0.317 | - |
| predicted_SO | 0.819 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.176 | -0.005 |
| predicted_3B | 0.040 | 0.011 |
| predicted_AB | 3.227 | 0.027 |
| predicted_AVG | 0.207 | 0.004 |
| predicted_BB | 0.396 | -0.033 |
| predicted_H | 0.456 | 0.175 |
| predicted_HBP | 0.034 | - |
| predicted_HR | 0.029 | 0.009 |
| predicted_OBP | 0.280 | 0.010 |
| predicted_R | 0.339 | -0.042 |
| predicted_RBI | 0.209 | 0.049 |
| predicted_SLG | 0.324 | 0.007 |
| predicted_SO | 0.753 | -0.066 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.176 | 0.000 |
| predicted_3B | 0.040 | 0.000 |
| predicted_AB | 3.227 | 0.000 |
| predicted_AVG | 0.135 | -0.071 |
| predicted_BB | 0.390 | -0.007 |
| predicted_H | 0.436 | -0.019 |
| predicted_HBP | 0.034 | 0.000 |
| predicted_HR | 0.028 | -0.002 |
| predicted_OBP | 0.228 | -0.051 |
| predicted_R | 0.315 | -0.024 |
| predicted_RBI | 0.194 | -0.015 |
| predicted_SLG | 0.240 | -0.084 |
| predicted_SO | 0.766 | 0.013 |
AB rounded to 3 (raw=3.23), rates preserved: AVG=0.135 HR/AB=0.009
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 0.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.176 |
| predicted_3B | 0.000 | -0.040 |
| predicted_AB | 3.000 | -0.227 |
| predicted_AVG | 0.333 | 0.198 |
| predicted_BB | 0.000 | -0.390 |
| predicted_H | 1.000 | 0.564 |
| predicted_HR | 0.000 | -0.028 |
| predicted_OBP | 0.333 | 0.105 |
| predicted_R | 0.000 | -0.315 |
| predicted_RBI | 0.000 | -0.194 |
| predicted_SLG | 0.333 | 0.093 |
| predicted_SO | 1.000 | 0.234 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 1.000 | 1.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 2.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 1.000 | 1.000 |
| RBI | 1.000 | 1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 16.000 | 2.000 | 1.000 | 0.000 | 0.000 | 1.000 | 0.000 | 1.000 | 2.000 | 0.1250 | 0.1765 | 0.1875 | 0.1250 | 0.0000 | 0.0625 | 0.0625 | 0.1250 |
| last_10 | 0.20 | 10 | - | 33.000 | 7.000 | 1.000 | 2.000 | 0.000 | 1.000 | 2.000 | 3.000 | 4.000 | 0.2121 | 0.2778 | 0.3636 | 0.2121 | 0.0000 | 0.0303 | 0.0909 | 0.1212 |
| season | 0.60 | 105 | - | 336.000 | 79.000 | 19.000 | 3.000 | 6.000 | 35.000 | 40.000 | 45.000 | 86.000 | 0.2351 | 0.3342 | 0.3631 | 0.2351 | 0.0179 | 0.1042 | 0.1339 | 0.2560 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1700 |
| predicted_3B | 0.0540 |
| predicted_AB | 3.2620 |
| predicted_AVG | 0.2113 |
| predicted_BB | 0.3530 |
| predicted_H | 0.6890 |
| predicted_HBP | 0.0340 |
| predicted_HR | 0.0410 |
| predicted_OBP | 0.2924 |
| predicted_R | 0.2840 |
| predicted_RBI | 0.2750 |
| predicted_SLG | 0.3338 |
| predicted_SO | 0.6660 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1810 | 0.1700 | 0.1763 | model_form_blend |
| predicted_3B | 0.0290 | 0.0540 | 0.0397 | model_form_blend |
| predicted_AB | 3.2000 | 3.2620 | 3.2266 | model_form_blend |
| predicted_AVG | 0.2030 | 0.2113 | 0.2066 | model_form_blend |
| predicted_BB | 0.4290 | 0.3530 | 0.3964 | model_form_blend |
| predicted_H | 0.2800 | 0.6890 | 0.4555 | model_form_blend |
| predicted_HBP | - | 0.0340 | 0.0340 | form_only |
| predicted_HR | 0.0200 | 0.0410 | 0.0290 | model_form_blend |
| predicted_OBP | 0.2700 | 0.2924 | 0.2796 | model_form_blend |
| predicted_R | 0.3810 | 0.2840 | 0.3394 | model_form_blend |
| predicted_RBI | 0.1600 | 0.2750 | 0.2093 | model_form_blend |
| predicted_SLG | 0.3170 | 0.3338 | 0.3242 | model_form_blend |
| predicted_SO | 0.8190 | 0.6660 | 0.7534 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 356 |
| Season rows before report date | 356 |
| Report year | 2026 |
| Profile rows used | 105 |
| Hitter metrics | Hitting_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 Field | Value |
|---|---|
| PA | 5 |
| AB | 4 |
| H | 2 |
| 2B | 1 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| BB | 1 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.235 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 1 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 7 |
| Hitting_substitutionOrder | 1 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | PH |
| gameID | 20260811_KC@LAD |
| game_type | ph |
| mlbID | 686555 |
| note | Popped out for Tolbert in the 9th. |
| playerID | 686555 |
| playerName | Isaac Collins |
| pos | LF |
| started | False |
| startingPosition | PH |
| team | KC |
| teamID | 12 |
| game_date | 2026-08-11 |
| sl_k_percent | 22.0 |
| sl_bb_percent | 11.4 |
| sl_woba | 0.313 |
| sl_xwoba | 0.304 |
| sl_xba | 0.233 |
| sl_xslg | 0.33 |
| sl_sweet_spot_percent | 31.9 |
| sl_barrel_batted_rate | 5.8 |
| sl_hard_hit_percent | 40.5 |
| sl_exit_velocity_avg | 88.5 |
| sl_launch_angle_avg | 17.3 |
| sl_whiff_percent | 21.6 |
| sl_swing_percent | 40.3 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 4.000 | 4.000 | 4.000 | Pitching_BB | 0.298 | 2.000 | 3.702 | 2.000 |
| predicted_ER | 2.000 | 2.000 | 2.000 | Pitching_ER | 0.277 | 3.000 | 1.723 | -1.000 |
| predicted_H | 3.000 | 3.000 | 3.000 | Pitching_H | 0.723 | 3.000 | 2.277 | 0.000 |
| predicted_IP | 5.200 | 5.200 | 5.200 | Pitching_InningsPitched | 0.900 | 1.200 | 4.300 | 4.000 |
| predicted_SO | 8.000 | 8.000 | 8.000 | Pitching_SO | 0.787 | 2.000 | 7.213 | 6.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 2 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 1 |
| Better Metrics | 1 |
| Worse Metrics | 1 |
| Biggest Boost | predicted_SO: 7.0000 -> 8.0000 (boost 1.0000, better) |
| Biggest Deboost | predicted_IP: 5.6667 -> 5.2000 (deboost -0.4667, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | pitcher_quality_guardrail | 2 | 0 | 2 | 1 | 1 | - | predicted_HR: 2.0000 -> 1.0000 (deboost -1.0000, better) | Elite/strong starter guardrail capped a noisy simulation draw using season workload, ERA/WHIP, and weighted recent form. |
| 3 | current_json_final | 2 | 2 | 0 | 1 | 1 | predicted_HR: 1.0000 -> 2.0000 (boost 1.0000, worse) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "663738",
"player_name": "Daniel Lynch IV",
"position": "Starter",
"team": "KC",
"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": 3.0,
"predicted_HR": 2.0,
"predicted_IP": 5.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": 2.0,
"predicted_H": 3.0,
"predicted_HR": 1.0,
"predicted_IP": 5.2,
"predicted_SO": 7.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": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_IP",
"before": 5.6667,
"after": 5.2,
"delta": -0.4667,
"percent_delta": -0.0824,
"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": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_HR",
"before": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 3,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 4.0,
"predicted_ER": 2.0,
"predicted_H": 3.0,
"predicted_HR": 2.0,
"predicted_IP": 5.2,
"predicted_R": 2.0,
"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": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_IP",
"before": 5.2,
"after": 5.2,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"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": 2,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_HR",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"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": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.6667,
"after": 5.2,
"delta": -0.4667,
"percent_delta": -0.0824,
"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": 5.6667,
"after": 5.2,
"delta": -0.4667,
"percent_delta": -0.0824,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 4.000 | - |
| predicted_ER | 2.000 | - |
| predicted_H | 3.000 | - |
| predicted_HR | 2.000 | - |
| predicted_IP | 5.667 | - |
| predicted_SO | 7.000 | - |
Elite/strong starter guardrail capped a noisy simulation draw using season workload, ERA/WHIP, and weighted recent form.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 4.000 | 0.000 |
| predicted_ER | 2.000 | 0.000 |
| predicted_H | 3.000 | 0.000 |
| predicted_HR | 1.000 | -1.000 |
| predicted_IP | 5.200 | -0.467 |
| predicted_SO | 7.000 | 0.000 |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.100 | 3.000 | 7.000 | 2.000 | 3.000 | 0.000 | 5.0625 | 1.6875 | 0.5625 | 1.3125 | 0.3750 | 0.5625 | 0.0000 |
| last_10 | 0.35 | 10 | 11.200 | 3.000 | 10.000 | 3.000 | 5.000 | 0.000 | 2.3143 | 1.1143 | 0.2571 | 0.8571 | 0.2571 | 0.4286 | 0.0000 |
| season | 0.20 | 47 | 47.200 | 13.000 | 34.000 | 14.000 | 37.000 | 2.000 | 2.4545 | 1.0070 | 0.2727 | 0.7133 | 0.2937 | 0.7762 | 0.0420 |
| Metric | Value |
|---|---|
| predicted_BB | 0.8920 |
| predicted_ER | 1.1600 |
| predicted_ERA | 3.8918 |
| predicted_H | 2.7160 |
| predicted_HR | 0.1520 |
| predicted_IP | 2.2000 |
| predicted_SO | 1.8640 |
| predicted_WHIP | 1.3453 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 4.0000 | 0.8920 | 2.4314 | model_form_blend |
| predicted_ER | 2.0000 | 1.1600 | 1.5761 | model_form_blend |
| predicted_ERA | - | 3.8918 | 3.8918 | form_only |
| predicted_H | 3.0000 | 2.7160 | 2.8567 | model_form_blend |
| predicted_HR | 2.0000 | 0.1520 | 1.0673 | model_form_blend |
| predicted_IP | 5.2000 | 2.2000 | 4.2000 | model_form_blend |
| predicted_SO | 7.0000 | 1.8640 | 4.4078 | model_form_blend |
| predicted_WHIP | - | 1.3453 | 1.3453 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 47 |
| Season rows before report date | 47 |
| Report year | 2026 |
| Profile rows used | 47 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 5.2 |
| H | 3 |
| R | 2 |
| ER | 2 |
| BB | 4 |
| SO | 8 |
| HR | 2 |
| BF | 24 |
| Pitches | 96 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 2 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 10 |
| Pitching_ER | 3 |
| Pitching_ERA | 2.45 |
| Pitching_Flyouts | 2 |
| Pitching_Groundouts | 0 |
| Pitching_H | 3 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.2 |
| Pitching_Pitches | 35 |
| Pitching_R | 4 |
| Pitching_SO | 2 |
| Pitching_Strikes | 21 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | L |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260807_CHC@KC |
| game_type | full |
| mlbID | 663738 |
| playerID | 663738 |
| playerName | Daniel Lynch IV |
| pos | P |
| started | True |
| startingPosition | P |
| team | KC |
| teamID | 12 |
| game_date | 2026-08-07 |
| sl_k_percent | 19.2 |
| sl_bb_percent | 7.3 |
| sl_woba | 0.25 |
| sl_xwoba | 0.285 |
| sl_sweet_spot_percent | 32.9 |
| sl_barrel_batted_rate | 5.0 |
| sl_hard_hit_percent | 34.3 |
| sl_whiff_percent | 28.8 |
| sl_swing_percent | 46.9 |
| sl_avg_best_speed | 76.48333029 |
| sl_avg_hyper_speed | 93.486944855 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.429 | 1.000 | -0.429 | -1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.500 | 1.000 | -0.500 | -1.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.857 | 1.000 | -0.857 | -1.000 |
| predicted_IP | 1.200 | 1.200 | 1.200 | Pitching_InningsPitched | 0.950 | 1.100 | 0.250 | 0.100 |
| predicted_SO | 2.000 | 2.000 | 2.000 | Pitching_SO | 1.190 | 1.000 | 0.810 | 1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 1 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 0 |
| Better Metrics | 1 |
| Worse Metrics | 0 |
| Biggest Boost | predicted_IP: 1.0000 -> 1.2000 (boost 0.2000, better) |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 1 | 0 | 1 | 0 | predicted_IP: 1.0000 -> 1.2000 (boost 0.2000, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "674444",
"player_name": "Steven Cruz",
"position": "Middle Reliever",
"team": "KC",
"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.2,
"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.2,
"delta": 0.2,
"percent_delta": 0.2,
"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.2,
"delta": 0.2,
"percent_delta": 0.2,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 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.2,
"delta": 0.2,
"percent_delta": 0.2,
"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.2,
"delta": 0.2,
"percent_delta": 0.2,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null,
"has_material_change": true,
"dominant_effect": "better"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 2.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.100 | 2.000 | 4.000 | 1.000 | 4.000 | 1.000 | 3.3750 | 0.9375 | 0.3750 | 0.7500 | 0.1875 | 0.7500 | 0.1875 |
| last_10 | 0.35 | 10 | 10.100 | 4.000 | 9.000 | 2.000 | 9.000 | 2.000 | 3.4839 | 1.0645 | 0.3871 | 0.8710 | 0.1935 | 0.8710 | 0.1935 |
| season | 0.20 | 42 | 44.100 | 21.000 | 36.000 | 18.000 | 50.000 | 11.000 | 4.2632 | 1.2180 | 0.4737 | 0.8120 | 0.4060 | 1.1278 | 0.2481 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2790 |
| predicted_ER | 0.4350 |
| predicted_ERA | 3.9144 |
| predicted_H | 0.8660 |
| predicted_HR | 0.1830 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.9000 |
| predicted_WHIP | 1.1451 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.2790 | 0.1389 | model_form_blend |
| predicted_ER | 0.0000 | 0.4350 | 0.2165 | model_form_blend |
| predicted_ERA | - | 3.9144 | 3.9144 | form_only |
| predicted_H | 0.0000 | 0.8660 | 0.4310 | model_form_blend |
| predicted_HR | 0.0000 | 0.1830 | 0.0911 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 2.0000 | 0.9000 | 1.4525 | model_form_blend |
| predicted_WHIP | - | 1.1451 | 1.1451 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 42 |
| Season rows before report date | 42 |
| Report year | 2026 |
| Profile rows used | 42 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.2 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 2 |
| HR | 0 |
| BF | 5 |
| Pitches | 21 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 7 |
| Pitching_ER | 1 |
| Pitching_ERA | 4.26 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 3 |
| Pitching_H | 1 |
| Pitching_HBP | 1 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 1 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.1 |
| Pitching_Pitches | 24 |
| Pitching_R | 1 |
| Pitching_SO | 1 |
| Pitching_Strikes | 15 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260811_KC@LAD |
| game_type | full |
| mlbID | 674444 |
| playerID | 674444 |
| playerName | Steven Cruz |
| pos | P |
| started | False |
| startingPosition | P |
| team | KC |
| teamID | 12 |
| game_date | 2026-08-11 |
| sl_k_percent | 27.0 |
| sl_bb_percent | 9.7 |
| sl_woba | 0.325 |
| sl_xwoba | 0.306 |
| sl_sweet_spot_percent | 33.9 |
| sl_barrel_batted_rate | 11.3 |
| sl_hard_hit_percent | 34.8 |
| sl_whiff_percent | 29.2 |
| sl_swing_percent | 52.6 |
| sl_avg_best_speed | 78.215802143 |
| sl_avg_hyper_speed | 94.199950268 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.438 | 1.000 | -0.438 | -1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.375 | 1.000 | -0.375 | -1.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.833 | 1.000 | -0.833 | -1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.765 | 0.100 | 0.235 | 0.900 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 0.688 | 0.000 | 0.312 | 1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 1 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 0 |
| Better Metrics | 1 |
| Worse Metrics | 0 |
| Biggest Boost | predicted_IP: 0.6667 -> 1.0000 (boost 0.3333, better) |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 1 | 0 | 1 | 0 | predicted_IP: 0.6667 -> 1.0000 (boost 0.3333, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "670167",
"player_name": "John Schreiber",
"position": "Middle Reliever",
"team": "KC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 0.6667,
"predicted_SO": 1.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 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.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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.6667,
"after": 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"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 0.667 | - |
| predicted_SO | 1.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 3.200 | 1.000 | 2.000 | 6.000 | 4.000 | 0.000 | 2.4545 | 2.1818 | 0.2727 | 0.5454 | 1.6364 | 1.0909 | 0.0000 |
| last_10 | 0.35 | 10 | 8.000 | 6.000 | 9.000 | 9.000 | 6.000 | 1.000 | 6.7500 | 2.2500 | 0.7500 | 1.1250 | 1.1250 | 0.7500 | 0.1250 |
| season | 0.20 | 48 | 43.000 | 18.000 | 40.000 | 21.000 | 33.000 | 7.000 | 3.7674 | 1.4186 | 0.4186 | 0.9302 | 0.4884 | 0.7674 | 0.1628 |
| Metric | Value |
|---|---|
| predicted_BB | 0.6450 |
| predicted_ER | 0.3400 |
| predicted_ERA | 4.3190 |
| predicted_H | 0.6240 |
| predicted_HR | 0.0730 |
| predicted_IP | 0.2000 |
| predicted_SO | 0.6560 |
| predicted_WHIP | 1.7891 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.6450 | 0.3191 | model_form_blend |
| predicted_ER | 0.0000 | 0.3400 | 0.1682 | model_form_blend |
| predicted_ERA | - | 4.3190 | 4.3190 | form_only |
| predicted_H | 0.0000 | 0.6240 | 0.3087 | model_form_blend |
| predicted_HR | 0.0000 | 0.0730 | 0.0361 | model_form_blend |
| predicted_IP | 0.2000 | 0.2000 | 0.2000 | model_form_blend |
| predicted_SO | 1.0000 | 0.6560 | 0.8298 | model_form_blend |
| predicted_WHIP | - | 1.7891 | 1.7891 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 48 |
| Season rows before report date | 48 |
| Report year | 2026 |
| Profile rows used | 48 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 1 |
| HR | 0 |
| BF | 3 |
| Pitches | 16 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 3 |
| Pitching_ER | 1 |
| Pitching_ERA | 3.77 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 1 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 2 |
| Pitching_Inherited Runners Scored | 2 |
| Pitching_InningsPitched | 0.1 |
| Pitching_Pitches | 10 |
| Pitching_R | 1 |
| Pitching_SO | 0 |
| Pitching_Strikes | 5 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | BS |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260810_KC@LAD |
| game_type | full |
| mlbID | 670167 |
| playerID | 670167 |
| playerName | John Schreiber |
| pos | P |
| started | False |
| startingPosition | P |
| team | KC |
| teamID | 12 |
| game_date | 2026-08-10 |
| sl_k_percent | 18.1 |
| sl_bb_percent | 11.5 |
| sl_woba | 0.337 |
| sl_xwoba | 0.344 |
| sl_sweet_spot_percent | 40.2 |
| sl_barrel_batted_rate | 7.1 |
| sl_hard_hit_percent | 42.5 |
| sl_whiff_percent | 22.2 |
| sl_swing_percent | 42.5 |
| sl_avg_best_speed | 78.962145968 |
| sl_avg_hyper_speed | 94.584123496 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.286 | 0.000 | -0.286 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.429 | 0.000 | -0.429 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.886 | 1.000 | 0.114 | 0.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 0.857 | 2.000 | -0.857 | -2.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 1 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 0 |
| Better Metrics | 1 |
| Worse Metrics | 0 |
| Biggest Boost | predicted_IP: 0.6667 -> 1.0000 (boost 0.3333, better) |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 1 | 0 | 1 | 0 | predicted_IP: 0.6667 -> 1.0000 (boost 0.3333, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "663878",
"player_name": "Nate Pearson",
"position": "Middle Reliever",
"team": "KC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 0.6667,
"predicted_SO": 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": 0.6667,
"after": 1.0,
"delta": 0.3333,
"percent_delta": 0.5,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 0.6667,
"after": 1.0,
"delta": 0.3333,
"percent_delta": 0.5,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 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"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 0.667 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 4.200 | 0.000 | 3.000 | 1.000 | 6.000 | 0.000 | 0.0000 | 0.8571 | 0.0000 | 0.6429 | 0.2143 | 1.2857 | 0.0000 |
| last_10 | 0.35 | 10 | 9.200 | 0.000 | 4.000 | 5.000 | 8.000 | 0.000 | 0.0000 | 0.9310 | 0.0000 | 0.4138 | 0.5172 | 0.8276 | 0.0000 |
| season | 0.20 | 23 | 26.200 | 8.000 | 19.000 | 14.000 | 22.000 | 1.000 | 2.7000 | 1.2375 | 0.3000 | 0.7125 | 0.5250 | 0.8250 | 0.0375 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3120 |
| predicted_ER | 0.2280 |
| predicted_ERA | 2.4503 |
| predicted_H | 0.6450 |
| predicted_HR | 0.0640 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.8350 |
| predicted_WHIP | 1.1409 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.3120 | 0.1390 | model_form_blend |
| predicted_ER | 0.0000 | 0.2280 | 0.1016 | model_form_blend |
| predicted_ERA | - | 2.4503 | 2.4503 | form_only |
| predicted_H | 0.0000 | 0.6450 | 0.2874 | model_form_blend |
| predicted_HR | 0.0000 | 0.0640 | 0.0285 | model_form_blend |
| predicted_IP | 0.2000 | 1.0000 | 0.2000 | model_form_blend |
| predicted_SO | 0.0000 | 0.8350 | 0.3721 | model_form_blend |
| predicted_WHIP | - | 1.1409 | 1.1409 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 7 |
| Season rows before report date | 7 |
| Report year | 2026 |
| Profile rows used | 23 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 0 |
| HR | 0 |
| BF | 3 |
| Pitches | 14 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 2.70 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 1 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 11 |
| Pitching_R | 0 |
| Pitching_SO | 2 |
| Pitching_Strikes | 8 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260811_KC@LAD |
| game_type | full |
| mlbID | 663878 |
| playerID | 663878 |
| playerName | Nate Pearson |
| pos | P |
| started | False |
| startingPosition | P |
| team | KC |
| teamID | 12 |
| game_date | 2026-08-11 |
| sl_k_percent | 20.2 |
| sl_bb_percent | 12.8 |
| sl_woba | 0.279 |
| sl_xwoba | 0.323 |
| sl_sweet_spot_percent | 35.2 |
| sl_barrel_batted_rate | 7.1 |
| sl_hard_hit_percent | 36.6 |
| sl_whiff_percent | 22.7 |
| sl_swing_percent | 45.3 |
| sl_avg_best_speed | 73.072888286 |
| sl_avg_hyper_speed | 93.593098429 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.578 | 0.000 | -0.578 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.711 | 1.000 | -0.711 | -1.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 1.044 | 3.000 | -0.044 | -2.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.949 | 1.000 | 0.051 | 0.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.089 | 1.000 | -1.089 | -1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 1 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 0 |
| Better Metrics | 1 |
| Worse Metrics | 0 |
| Biggest Boost | predicted_IP: 0.1000 -> 1.0000 (boost 0.9000, better) |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 1 | 0 | 1 | 0 | predicted_IP: 0.1000 -> 1.0000 (boost 0.9000, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "656638",
"player_name": "Alex Lange",
"position": "Middle Reliever",
"team": "KC",
"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.1,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 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": 0.1,
"after": 1.0,
"delta": 0.9,
"percent_delta": 9.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": 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": 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.1,
"after": 1.0,
"delta": 0.9,
"percent_delta": 9.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": 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"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 0.100 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.200 | 4.000 | 8.000 | 3.000 | 8.000 | 1.000 | 6.3529 | 1.9412 | 0.7059 | 1.4118 | 0.5294 | 1.4118 | 0.1765 |
| last_10 | 0.35 | 10 | 10.100 | 12.000 | 14.000 | 5.000 | 12.000 | 3.000 | 10.4516 | 1.8387 | 1.1613 | 1.3548 | 0.4839 | 1.1613 | 0.2903 |
| season | 0.20 | 45 | 46.200 | 32.000 | 47.000 | 26.000 | 49.000 | 5.000 | 6.1714 | 1.5643 | 0.6857 | 1.0071 | 0.5571 | 1.0500 | 0.1071 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3560 |
| predicted_ER | 0.5640 |
| predicted_ERA | 6.6135 |
| predicted_H | 0.9160 |
| predicted_HR | 0.1410 |
| predicted_IP | 0.2000 |
| predicted_SO | 0.8820 |
| predicted_WHIP | 1.6573 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.3560 | 0.1790 | model_form_blend |
| predicted_ER | 0.0000 | 0.5640 | 0.2835 | model_form_blend |
| predicted_ERA | - | 6.6135 | 6.6135 | form_only |
| predicted_H | 1.0000 | 0.9160 | 0.9578 | model_form_blend |
| predicted_HR | 0.0000 | 0.1410 | 0.0709 | model_form_blend |
| predicted_IP | 0.1000 | 0.2000 | 0.2000 | model_form_blend |
| predicted_SO | 0.0000 | 0.8820 | 0.4434 | model_form_blend |
| predicted_WHIP | - | 1.6573 | 1.6573 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 45 |
| Season rows before report date | 45 |
| Report year | 2026 |
| Profile rows used | 45 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 1 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 0 |
| HR | 0 |
| BF | 4 |
| Pitches | 20 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 5 |
| Pitching_ER | 1 |
| Pitching_ERA | 6.17 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 1 |
| Pitching_H | 3 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 21 |
| Pitching_R | 1 |
| Pitching_SO | 1 |
| Pitching_Strikes | 12 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | L |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260810_KC@LAD |
| game_type | full |
| mlbID | 656638 |
| playerID | 656638 |
| playerName | Alex Lange |
| pos | P |
| started | False |
| startingPosition | P |
| team | KC |
| teamID | 12 |
| game_date | 2026-08-10 |
| sl_k_percent | 23.2 |
| sl_bb_percent | 12.3 |
| sl_woba | 0.351 |
| sl_xwoba | 0.34 |
| sl_sweet_spot_percent | 36.6 |
| sl_barrel_batted_rate | 12.2 |
| sl_hard_hit_percent | 42.7 |
| sl_whiff_percent | 26.8 |
| sl_swing_percent | 46.4 |
| sl_avg_best_speed | 80.024422462 |
| sl_avg_hyper_speed | 94.867764077 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 1.000 | 1.000 | 1.000 | Pitching_BB | - | - | - | - |
| predicted_ER | 2.000 | 2.000 | 2.000 | Pitching_ER | - | - | - | - |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | - | - | - | - |
| predicted_IP | 0.100 | 0.100 | 0.100 | Pitching_InningsPitched | - | - | - | - |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | - | - | - | - |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 5 |
| Boosted Metrics | 5 |
| Deboosted Metrics | 0 |
| Better Metrics | 1 |
| Worse Metrics | 4 |
| Biggest Boost | predicted_ER: 0.0000 -> 2.0000 (boost 2.0000, worse) |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 5 | 5 | 0 | 1 | 4 | predicted_ER: 0.0000 -> 2.0000 (boost 2.0000, worse) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "518886",
"player_name": "Craig Kimbrel",
"position": "Reliever",
"team": "KC",
"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": 1.0,
"predicted_ER": 2.0,
"predicted_H": 1.0,
"predicted_HR": 1.0,
"predicted_IP": 0.1,
"predicted_R": 2.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 2.0,
"delta": 2.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_IP",
"before": 0.1,
"after": 0.1,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 5,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_ER",
"before": 0.0,
"after": 2.0,
"delta": 2.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 2.0,
"delta": 2.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_IP",
"before": 0.1,
"after": 0.1,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 5,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_ER",
"before": 0.0,
"after": 2.0,
"delta": 2.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": null,
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 0.100 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 4.200 | 3.000 | 3.000 | 4.000 | 5.000 | 0.000 | 5.7857 | 1.5000 | 0.6429 | 0.6429 | 0.8571 | 1.0714 | 0.0000 |
| last_10 | 0.35 | 10 | 10.200 | 5.000 | 9.000 | 6.000 | 10.000 | 0.000 | 4.2188 | 1.4062 | 0.4688 | 0.8438 | 0.5625 | 0.9375 | 0.0000 |
| season | 0.20 | 33 | 33.200 | 18.000 | 29.000 | 16.000 | 32.000 | 4.000 | 4.8119 | 1.3366 | 0.5346 | 0.8614 | 0.4753 | 0.9505 | 0.1188 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3890 |
| predicted_ER | 0.3820 |
| predicted_ERA | 4.8066 |
| predicted_H | 0.6080 |
| predicted_HR | 0.0550 |
| predicted_IP | 0.2000 |
| predicted_SO | 0.7030 |
| predicted_WHIP | 1.3921 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.3890 | 0.1828 | model_form_blend |
| predicted_ER | 0.0000 | 0.3820 | 0.1795 | model_form_blend |
| predicted_ERA | - | 4.8066 | 4.8066 | form_only |
| predicted_H | 0.0000 | 0.6080 | 0.2858 | model_form_blend |
| predicted_HR | 0.0000 | 0.0550 | 0.0259 | model_form_blend |
| predicted_IP | 0.1000 | 0.2000 | 0.1000 | model_form_blend |
| predicted_SO | 0.0000 | 0.7030 | 0.3304 | model_form_blend |
| predicted_WHIP | - | 1.3921 | 1.3921 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 0 |
| Season rows before report date | 0 |
| Report year | 2026 |
| Profile rows used | 33 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 0.1 |
| H | 1 |
| R | 2 |
| ER | 2 |
| BB | 1 |
| SO | 1 |
| HR | 1 |
| BF | 3 |
| Pitches | 20 |
No historical data found for this player before report date.
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 1.000 | 1.000 | 1.000 | Pitching_BB | 0.250 | 0.000 | 0.750 | 1.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 0.250 | 0.000 | 0.750 | 1.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 1.250 | 0.000 | -0.250 | 1.000 |
| predicted_IP | 0.100 | 0.100 | 0.100 | Pitching_InningsPitched | 1.038 | 1.000 | -0.938 | -0.900 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.375 | 1.000 | -1.375 | -1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 3 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 3 |
| Biggest Boost | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, worse) |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 3 | 3 | 0 | 0 | 3 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, worse) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "621016",
"player_name": "Jose Cuas",
"position": "Reliever",
"team": "KC",
"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": 1.0,
"predicted_ER": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 0.1,
"predicted_R": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.1,
"after": 0.1,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_BB",
"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": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.1,
"after": 0.1,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": null,
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 0.100 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 4.000 | 0.000 | 5.000 | 2.000 | 5.000 | 0.000 | 0.0000 | 1.7500 | 0.0000 | 1.2500 | 0.5000 | 1.2500 | 0.0000 |
| last_10 | 0.35 | 8 | 9.000 | 2.000 | 10.000 | 2.000 | 11.000 | 0.000 | 2.0000 | 1.3333 | 0.2222 | 1.1111 | 0.2222 | 1.2222 | 0.0000 |
| season | 0.20 | 8 | 9.000 | 2.000 | 10.000 | 2.000 | 11.000 | 0.000 | 2.0000 | 1.3333 | 0.2222 | 1.1111 | 0.2222 | 1.2222 | 0.0000 |
| Metric | Value |
|---|---|
| predicted_BB | 0.1680 |
| predicted_ER | 0.1730 |
| predicted_ERA | 3.4685 |
| predicted_H | 0.4660 |
| predicted_HR | 0.0490 |
| predicted_IP | 0.1000 |
| predicted_SO | 0.4640 |
| predicted_WHIP | 1.4097 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.1680 | 0.0570 | model_form_blend |
| predicted_ER | 0.0000 | 0.1730 | 0.0587 | model_form_blend |
| predicted_ERA | - | 3.4685 | 3.4685 | form_only |
| predicted_H | 0.0000 | 0.4660 | 0.1582 | model_form_blend |
| predicted_HR | 0.0000 | 0.0490 | 0.0166 | model_form_blend |
| predicted_IP | 0.1000 | 0.1000 | 0.1000 | model_form_blend |
| predicted_SO | 0.0000 | 0.4640 | 0.1575 | model_form_blend |
| predicted_WHIP | - | 1.4097 | 1.4097 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 8 |
| Season rows before report date | 8 |
| Report year | 2026 |
| Profile rows used | 8 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 0.1 |
| H | 1 |
| R | 1 |
| ER | 1 |
| BB | 1 |
| SO | 0 |
| HR | 0 |
| BF | 3 |
| Pitches | 7 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 2.00 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 12 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 7 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260810_KC@LAD |
| game_type | full |
| mlbID | 621016 |
| playerID | 621016 |
| playerName | Jose Cuas |
| pos | P |
| started | False |
| startingPosition | P |
| team | KC |
| teamID | 12 |
| game_date | 2026-08-10 |
| sl_k_percent | 28.2 |
| sl_bb_percent | 5.1 |
| sl_woba | 0.291 |
| sl_xwoba | 0.313 |
| sl_sweet_spot_percent | 42.3 |
| sl_barrel_batted_rate | 3.8 |
| sl_hard_hit_percent | 38.5 |
| sl_whiff_percent | 23.9 |
| sl_swing_percent | 48.9 |
| sl_avg_best_speed | 74.04182 |
| sl_avg_hyper_speed | 93.216339231 |
| Field | Value |
|---|---|
| Pitcher | Eric Lauer |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | -0.5612 |
| ESPN Rank | 332 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.1940 |
| Avg Velo | 86.4538 |
| Avg Spin | 2110.7088 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 5.1000 |
| Pre ER | 1 |
| Pre H | 6 |
| Pre BB | 3 |
| Pre SO | 6 |
| Season ERA | 4.8913 |
| Season WHIP | 1.2609 |
| Role Avg IP | 5.0670 |
| Recent Avg IP | 5.4670 |
| Last Start IP | 4 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "LAD",
"games": 127,
"wins": 75,
"losses": 52,
"win_pct": 0.5906,
"runs_scored": 636.0,
"runs_allowed": 486.0,
"run_differential": 150.0,
"run_differential_per_game": 1.1811,
"avg_runs_scored": 5.0079,
"avg_runs_allowed": 3.8268,
"offense_index": 1.1121,
"defense_index": 1.1767,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 3.6,
"avg_runs_allowed": 5.1,
"run_differential": -15.0
},
"available": true,
"quality_score": 0.1513
},
"opponent": {
"team": "KC",
"games": 129,
"wins": 50,
"losses": 79,
"win_pct": 0.3876,
"runs_scored": 523.0,
"runs_allowed": 652.0,
"run_differential": -129.0,
"run_differential_per_game": -1.0,
"avg_runs_scored": 4.0543,
"avg_runs_allowed": 5.0543,
"offense_index": 0.9003,
"defense_index": 0.891,
"current_streak": "L3",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 4.1,
"avg_runs_allowed": 5.7,
"run_differential": -16.0
},
"available": true,
"quality_score": -0.2877
},
"edges": {
"quality_edge": 0.439,
"offense_edge": 0.1121,
"opponent_offense_edge": -0.0997,
"defense_strength": 0.1767,
"opponent_defense_weakness": 0.109,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 1.0268,
"run_prevention": 0.9444,
"strikeout": 1.0211
},
"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": 344.0,
"k_percent": 14.7,
"bb_percent": 7.5,
"woba": 0.338,
"xwoba": 0.341,
"sweet_spot_percent": 35.8,
"barrel_batted_rate": 11.4,
"hard_hit_percent": 35.5,
"avg_best_speed": 77.9493,
"avg_hyper_speed": 93.5572,
"whiff_percent": 18.1,
"swing_percent": 51.6
},
"league_medians": {
"pa": 108.0,
"k_percent": 22.0,
"bb_percent": 8.9,
"woba": 0.3145,
"xwoba": 0.312,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 37.7,
"avg_best_speed": 77.5616,
"avg_hyper_speed": 93.8924,
"whiff_percent": 25.4,
"swing_percent": 47.6
},
"components": {
"contact_quality": -0.6042,
"command_and_miss": -0.7643,
"regression_edge": -0.0857,
"xwoba_edge": -0.8286,
"barrel_edge": -0.9556,
"hard_hit_edge": 0.3143,
"whiff_edge": -1.0429,
"bb_edge": 0.35,
"pitch_design_score": -0.194
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "641778",
"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": 86.45377664343971,
"release_spin_rate": 2110.7088109420706,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 86.45377664343971,
"release_spin_rate": 2110.7088109420706,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.4538,
"release_spin_rate": 2110.7088,
"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.194,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.3855,
"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.5612,
"sample_weight": 1.0,
"run_prevention_factor": 1.0477,
"strikeout_factor": 0.9166,
"walk_factor": 0.972,
"homer_factor": 1.0887,
"woba_minus_xwoba": -0.003,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "641778",
"espn_id": 39915,
"player_name": "Eric Lauer",
"team": "LAD",
"role": "pitcher",
"espn_rank": 332,
"espn_total_ranked": 804,
"metrics": {
"espn_rank": 332,
"gp_value": 18.0,
"gp_rank": 370,
"gs_value": 15.0,
"gs_rank": 112,
"qs_value": 5.0,
"qs_rank": 92,
"era_value": 4.8913,
"era_rank": null,
"w_value": 6.0,
"w_rank": 78,
"l_value": 6.0,
"l_rank": 82,
"sv_value": 0.0,
"sv_rank": 234,
"hld_value": 0.0,
"hld_rank": 317,
"ip_value": 92.0,
"ip_rank": 109,
"h_value": 87.0,
"h_rank": 102,
"er_value": 50.0,
"er_rank": 72,
"hr_value": 22.0,
"hr_rank": 11,
"bb_value": 29.0,
"bb_rank": 128,
"k_value": 57.0,
"k_rank": 187,
"k_per_9_value": 5.576087,
"k_per_9_rank": 46,
"whip_value": 1.2608,
"whip_rank": null,
"war_value": 0.17,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 3.0,
"factor": 1.0477,
"adjusted": 3
},
"predicted_H": {
"original": 6.0,
"factor": 1.0477,
"adjusted": 6
},
"predicted_BB": {
"original": 1.0,
"factor": 0.972,
"adjusted": 1
},
"predicted_HR": {
"original": 1.0,
"factor": 1.0887,
"adjusted": 1
},
"predicted_SO": {
"original": 3.0,
"factor": 0.9166,
"adjusted": 3
}
}
}
}{
"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": 55.2,
"ER": 23,
"H": 49,
"BB": 13,
"SO": 31,
"HR": 11,
"ERA": 3.7185628742514973,
"WHIP": 1.1137724550898205,
"K9": 5.0119760479041915,
"HR9": 1.7784431137724552,
"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-05T00:00:00"
}{
"available": true,
"pitcher_id": "641778",
"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": 86.45377664343971,
"release_spin_rate": 2110.7088109420706,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 86.45377664343971,
"release_spin_rate": 2110.7088109420706,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.4538,
"release_spin_rate": 2110.7088,
"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.194,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.3855,
"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."
}{
"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": 18.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.7826,
"prior_weight": 0.2174
},
"role": "pitcher",
"player_id": "641778",
"report_date": "20260812",
"season_year": 2026,
"rows_used": 18,
"reference_playing_time": 5.333,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 27.1,
"ER": 15.0,
"R": 15.0,
"H": 31.0,
"BB": 5.0,
"SO": 15.0,
"HR": 6.0,
"BF": 118.0,
"Pitches": 467.0
},
"per_game": {
"IP": 5.1,
"ER": 3.0,
"R": 3.0,
"H": 6.2,
"BB": 1.0,
"SO": 3.0,
"HR": 1.2,
"BF": 23.6,
"Pitches": 93.4
},
"rates": {
"ERA": 4.939,
"WHIP": 1.3171,
"ER_per_IP": 0.54878,
"H_per_IP": 1.13415,
"BB_per_IP": 0.18293,
"SO_per_IP": 0.54878,
"HR_per_IP": 0.21951
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 55.2,
"ER": 23.0,
"R": 23.0,
"H": 49.0,
"BB": 13.0,
"SO": 31.0,
"HR": 11.0,
"BF": 227.0,
"Pitches": 899.0
},
"per_game": {
"IP": 5.2,
"ER": 2.3,
"R": 2.3,
"H": 4.9,
"BB": 1.3,
"SO": 3.1,
"HR": 1.1,
"BF": 22.7,
"Pitches": 89.9
},
"rates": {
"ERA": 3.7186,
"WHIP": 1.1138,
"ER_per_IP": 0.41317,
"H_per_IP": 0.88024,
"BB_per_IP": 0.23353,
"SO_per_IP": 0.55689,
"HR_per_IP": 0.1976
}
},
"season": {
"games": 18,
"totals": {
"IP": 92.0,
"ER": 50.0,
"R": 50.0,
"H": 87.0,
"BB": 29.0,
"SO": 57.0,
"HR": 22.0,
"BF": 389.0,
"Pitches": 1501.0
},
"per_game": {
"IP": 5.0,
"ER": 2.7778,
"R": 2.7778,
"H": 4.8333,
"BB": 1.6111,
"SO": 3.1667,
"HR": 1.2222,
"BF": 21.6111,
"Pitches": 83.3889
},
"rates": {
"ERA": 4.8913,
"WHIP": 1.2609,
"ER_per_IP": 0.54348,
"H_per_IP": 0.94565,
"BB_per_IP": 0.31522,
"SO_per_IP": 0.61957,
"HR_per_IP": 0.23913
}
}
},
"blend_segments": {},
"weighted_prediction": {
"predicted_IP": 5.1,
"predicted_ER": 2.686,
"predicted_H": 5.374,
"predicted_BB": 1.377,
"predicted_SO": 3.495,
"predicted_HR": 1.081,
"predicted_ERA": 4.4993,
"predicted_WHIP": 1.2565
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.4419,
"form_weight": 0.5581,
"form_reliability": 0.7826,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 18.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.7826,
"prior_weight": 0.2174
},
"applied_metrics": {
"predicted_IP": {
"model": 5.1,
"form": 5.1,
"final": 5.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 2.686,
"final": 1.941,
"source": "model_form_blend"
},
"predicted_H": {
"model": 6.0,
"form": 5.374,
"final": 5.6506,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 3.0,
"form": 1.377,
"final": 2.0941,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 6.0,
"form": 3.495,
"final": 4.6018,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 1.081,
"final": 0.6034,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.4993,
"final": 4.4993,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2565,
"final": 1.2565,
"source": "form_only"
}
}
}{
"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."
}| Field | Value |
|---|---|
| Pitcher | Alex Vesia |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.3321 |
| ESPN Rank | 178 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1.1000 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 1 |
| Pre SO | 2 |
| Season ERA | 2.8080 |
| Season WHIP | 1.1760 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "LAD",
"games": 127,
"wins": 75,
"losses": 52,
"win_pct": 0.5906,
"runs_scored": 636.0,
"runs_allowed": 486.0,
"run_differential": 150.0,
"run_differential_per_game": 1.1811,
"avg_runs_scored": 5.0079,
"avg_runs_allowed": 3.8268,
"offense_index": 1.1121,
"defense_index": 1.1767,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 3.6,
"avg_runs_allowed": 5.1,
"run_differential": -15.0
},
"available": true,
"quality_score": 0.1513
},
"opponent": {
"team": "KC",
"games": 129,
"wins": 50,
"losses": 79,
"win_pct": 0.3876,
"runs_scored": 523.0,
"runs_allowed": 652.0,
"run_differential": -129.0,
"run_differential_per_game": -1.0,
"avg_runs_scored": 4.0543,
"avg_runs_allowed": 5.0543,
"offense_index": 0.9003,
"defense_index": 0.891,
"current_streak": "L3",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 4.1,
"avg_runs_allowed": 5.7,
"run_differential": -16.0
},
"available": true,
"quality_score": -0.2877
},
"edges": {
"quality_edge": 0.439,
"offense_edge": 0.1121,
"opponent_offense_edge": -0.0997,
"defense_strength": 0.1767,
"opponent_defense_weakness": 0.109,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 1.0268,
"run_prevention": 0.9444,
"strikeout": 1.0211
},
"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": 142.0,
"k_percent": 32.0,
"bb_percent": 16.0,
"woba": 0.236,
"xwoba": 0.27,
"sweet_spot_percent": 31.9,
"barrel_batted_rate": 6.6,
"hard_hit_percent": 36.3,
"avg_best_speed": 78.2837,
"avg_hyper_speed": 92.8953,
"whiff_percent": 35.5,
"swing_percent": 46.5
},
"league_medians": {
"pa": 108.0,
"k_percent": 22.0,
"bb_percent": 8.9,
"woba": 0.3145,
"xwoba": 0.312,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 37.7,
"avg_best_speed": 77.5616,
"avg_hyper_speed": 93.8924,
"whiff_percent": 25.4,
"swing_percent": 47.6
},
"components": {
"contact_quality": 0.8494,
"command_and_miss": 0.7929,
"regression_edge": -0.9714,
"xwoba_edge": 1.2,
"barrel_edge": 0.1111,
"hard_hit_edge": 0.2,
"whiff_edge": 1.4429,
"bb_edge": -1.775,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "681911",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.3321,
"sample_weight": 0.568,
"run_prevention_factor": 0.9718,
"strikeout_factor": 1.0652,
"walk_factor": 1.0807,
"homer_factor": 0.97,
"woba_minus_xwoba": -0.034,
"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": 178,
"espn_total_ranked": 804,
"metrics": {
"espn_rank": 178,
"gp_value": 53.0,
"gp_rank": 23,
"gs_value": 0.0,
"gs_rank": 337,
"qs_value": 0.0,
"qs_rank": 202,
"era_value": 2.808,
"era_rank": null,
"w_value": 1.0,
"w_rank": 368,
"l_value": 1.0,
"l_rank": 382,
"sv_value": 3.0,
"sv_rank": 57,
"hld_value": 17.0,
"hld_rank": 17,
"ip_value": 41.2,
"ip_rank": 302,
"h_value": 21.0,
"h_rank": 450,
"er_value": 13.0,
"er_rank": 392,
"hr_value": 2.0,
"hr_rank": 465,
"bb_value": 28.0,
"bb_rank": 133,
"k_value": 56.0,
"k_rank": 190,
"k_per_9_value": 12.096,
"k_per_9_rank": 16,
"whip_value": 1.176,
"whip_rank": null,
"war_value": 0.87,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.984,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.984,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0458,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.983,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.037,
"adjusted": 2
}
}
}
}{
"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": 5,
"H": 4,
"BB": 6,
"SO": 11,
"HR": 2,
"ERA": 5.0,
"WHIP": 1.1111111111111112,
"K9": 11.0,
"HR9": 2.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-11T00:00:00"
}{
"available": false,
"pitcher_id": "681911",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"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": 8.337,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6251,
"prior_weight": 0.3749
},
"role": "pitcher",
"player_id": "681911",
"report_date": "20260812",
"season_year": 2026,
"rows_used": 53,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.2,
"ER": 2.0,
"R": 2.0,
"H": 2.0,
"BB": 3.0,
"SO": 4.0,
"HR": 0.0,
"BF": 19.0,
"Pitches": 76.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 0.4,
"BB": 0.6,
"SO": 0.8,
"HR": 0.0,
"BF": 3.8,
"Pitches": 15.2
},
"rates": {
"ERA": 3.8571,
"WHIP": 1.0714,
"ER_per_IP": 0.42857,
"H_per_IP": 0.42857,
"BB_per_IP": 0.64286,
"SO_per_IP": 0.85714,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.0,
"ER": 5.0,
"R": 5.0,
"H": 4.0,
"BB": 6.0,
"SO": 11.0,
"HR": 2.0,
"BF": 37.0,
"Pitches": 144.0
},
"per_game": {
"IP": 1.0,
"ER": 0.5,
"R": 0.5,
"H": 0.4,
"BB": 0.6,
"SO": 1.1,
"HR": 0.2,
"BF": 3.7,
"Pitches": 14.4
},
"rates": {
"ERA": 5.0,
"WHIP": 1.1111,
"ER_per_IP": 0.55556,
"H_per_IP": 0.44444,
"BB_per_IP": 0.66667,
"SO_per_IP": 1.22222,
"HR_per_IP": 0.22222
}
},
"season": {
"games": 53,
"totals": {
"IP": 41.2,
"ER": 13.0,
"R": 13.0,
"H": 21.0,
"BB": 28.0,
"SO": 56.0,
"HR": 2.0,
"BF": 175.0,
"Pitches": 751.0
},
"per_game": {
"IP": 0.2,
"ER": 0.2453,
"R": 0.2453,
"H": 0.3962,
"BB": 0.5283,
"SO": 1.0566,
"HR": 0.0377,
"BF": 3.3019,
"Pitches": 14.1698
},
"rates": {
"ERA": 2.808,
"WHIP": 1.176,
"ER_per_IP": 0.312,
"H_per_IP": 0.504,
"BB_per_IP": 0.672,
"SO_per_IP": 1.344,
"HR_per_IP": 0.048
}
}
},
"blend_segments": {},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.449,
"predicted_H": 0.619,
"predicted_BB": 0.523,
"predicted_SO": 0.992,
"predicted_HR": 0.106,
"predicted_ERA": 4.2128,
"predicted_WHIP": 1.1919
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5084,
"form_weight": 0.4916,
"form_reliability": 0.6251,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 8.337,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6251,
"prior_weight": 0.3749
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.449,
"final": 0.2207,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.619,
"final": 0.3043,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 0.523,
"final": 0.7655,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 2.0,
"form": 0.992,
"final": 1.5045,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.106,
"final": 0.0521,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.2128,
"final": 4.2128,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1919,
"final": 1.1919,
"source": "form_only"
}
}
}{
"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."
}| Field | Value |
|---|---|
| Pitcher | Edwin Díaz |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.3236 |
| ESPN Rank | 774 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 2.1000 |
| Pre ER | 1 |
| Pre H | 1 |
| Pre BB | 0 |
| Pre SO | 1 |
| Season ERA | 7.3636 |
| Season WHIP | 1.9091 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "LAD",
"games": 127,
"wins": 75,
"losses": 52,
"win_pct": 0.5906,
"runs_scored": 636.0,
"runs_allowed": 486.0,
"run_differential": 150.0,
"run_differential_per_game": 1.1811,
"avg_runs_scored": 5.0079,
"avg_runs_allowed": 3.8268,
"offense_index": 1.1121,
"defense_index": 1.1767,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 3.6,
"avg_runs_allowed": 5.1,
"run_differential": -15.0
},
"available": true,
"quality_score": 0.1513
},
"opponent": {
"team": "KC",
"games": 129,
"wins": 50,
"losses": 79,
"win_pct": 0.3876,
"runs_scored": 523.0,
"runs_allowed": 652.0,
"run_differential": -129.0,
"run_differential_per_game": -1.0,
"avg_runs_scored": 4.0543,
"avg_runs_allowed": 5.0543,
"offense_index": 0.9003,
"defense_index": 0.891,
"current_streak": "L3",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 4.1,
"avg_runs_allowed": 5.7,
"run_differential": -16.0
},
"available": true,
"quality_score": -0.2877
},
"edges": {
"quality_edge": 0.439,
"offense_edge": 0.1121,
"opponent_offense_edge": -0.0997,
"defense_strength": 0.1767,
"opponent_defense_weakness": 0.109,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 1.0268,
"run_prevention": 0.9444,
"strikeout": 1.0211
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "621242",
"profile": {
"available": true,
"pitcher_id": "621242",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 31.0,
"k_percent": 27.1,
"bb_percent": 13.6,
"woba": 0.45,
"xwoba": 0.349,
"sweet_spot_percent": 47.1,
"barrel_batted_rate": 12.1,
"hard_hit_percent": 55.9,
"avg_best_speed": 83.8027,
"avg_hyper_speed": 95.5013,
"whiff_percent": 19.8,
"swing_percent": 46.4
},
"league_medians": {
"pa": 108.0,
"k_percent": 22.0,
"bb_percent": 8.9,
"woba": 0.3145,
"xwoba": 0.312,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 37.7,
"avg_best_speed": 77.5616,
"avg_hyper_speed": 93.8924,
"whiff_percent": 25.4,
"swing_percent": 47.6
},
"components": {
"contact_quality": -1.5545,
"command_and_miss": -0.1871,
"regression_edge": 2.0,
"xwoba_edge": -1.0571,
"barrel_edge": -1.1111,
"hard_hit_edge": -2.5,
"whiff_edge": -0.8,
"bb_edge": -1.175,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "621242",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": -0.3236,
"sample_weight": 0.45,
"run_prevention_factor": 1.0275,
"strikeout_factor": 0.9987,
"walk_factor": 1.0423,
"homer_factor": 1.0993,
"woba_minus_xwoba": 0.101,
"regression_flag": "positive_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "621242",
"espn_id": 35394,
"player_name": "Edwin Diaz",
"team": "LAD",
"role": "pitcher",
"espn_rank": 774,
"espn_total_ranked": 804,
"metrics": {
"espn_rank": 774,
"gp_value": 13.0,
"gp_rank": 441,
"gs_value": 0.0,
"gs_rank": 337,
"qs_value": 0.0,
"qs_rank": 202,
"era_value": 9.8181,
"era_rank": null,
"w_value": 2.0,
"w_rank": 282,
"l_value": 1.0,
"l_rank": 382,
"sv_value": 6.0,
"sv_rank": 32,
"hld_value": 0.0,
"hld_rank": 317,
"ip_value": 11.0,
"ip_rank": 554,
"h_value": 17.0,
"h_rank": 493,
"er_value": 12.0,
"er_rank": 415,
"hr_value": 3.0,
"hr_rank": 389,
"bb_value": 8.0,
"bb_rank": 486,
"k_value": 16.0,
"k_rank": 482,
"k_per_9_value": 13.090909,
"k_per_9_rank": 23,
"whip_value": 2.2727,
"whip_rank": null,
"war_value": -0.84,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 1.0124,
"adjusted": 1
},
"predicted_H": {
"original": 0.0,
"factor": 1.0124,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.019,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0447,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.9994,
"adjusted": 2
}
}
}
}{
"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": 8,
"H": 13,
"BB": 5,
"SO": 12,
"HR": 3,
"ERA": 9.0,
"WHIP": 2.25,
"K9": 13.5,
"HR9": 3.375,
"games_pitched": 9,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": true
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-08-10T00:00:00"
}{
"available": false,
"pitcher_id": "621242",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"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.201,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.3056,
"prior_weight": 0.6944
},
"role": "pitcher",
"player_id": "621242",
"report_date": "20260812",
"season_year": 2026,
"rows_used": 12,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.0,
"ER": 4.0,
"R": 4.0,
"H": 6.0,
"BB": 3.0,
"SO": 6.0,
"HR": 2.0,
"BF": 21.0,
"Pitches": 94.0
},
"per_game": {
"IP": 0.2,
"ER": 0.8,
"R": 0.8,
"H": 1.2,
"BB": 0.6,
"SO": 1.2,
"HR": 0.4,
"BF": 4.2,
"Pitches": 18.8
},
"rates": {
"ERA": 9.0,
"WHIP": 2.25,
"ER_per_IP": 1.0,
"H_per_IP": 1.5,
"BB_per_IP": 0.75,
"SO_per_IP": 1.5,
"HR_per_IP": 0.5
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.0,
"ER": 9.0,
"R": 9.0,
"H": 14.0,
"BB": 6.0,
"SO": 14.0,
"HR": 3.0,
"BF": 48.0,
"Pitches": 199.0
},
"per_game": {
"IP": 1.0,
"ER": 0.9,
"R": 0.9,
"H": 1.4,
"BB": 0.6,
"SO": 1.4,
"HR": 0.3,
"BF": 4.8,
"Pitches": 19.9
},
"rates": {
"ERA": 9.0,
"WHIP": 2.2222,
"ER_per_IP": 1.0,
"H_per_IP": 1.55556,
"BB_per_IP": 0.66667,
"SO_per_IP": 1.55556,
"HR_per_IP": 0.33333
}
},
"season": {
"games": 12,
"totals": {
"IP": 11.0,
"ER": 9.0,
"R": 9.0,
"H": 14.0,
"BB": 7.0,
"SO": 16.0,
"HR": 3.0,
"BF": 55.0,
"Pitches": 226.0
},
"per_game": {
"IP": 1.0,
"ER": 0.75,
"R": 0.75,
"H": 1.1667,
"BB": 0.5833,
"SO": 1.3333,
"HR": 0.25,
"BF": 4.5833,
"Pitches": 18.8333
},
"rates": {
"ERA": 7.3636,
"WHIP": 1.9091,
"ER_per_IP": 0.81818,
"H_per_IP": 1.27273,
"BB_per_IP": 0.63636,
"SO_per_IP": 1.45455,
"HR_per_IP": 0.27273
}
}
},
"blend_segments": {},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.611,
"predicted_H": 1.075,
"predicted_BB": 0.443,
"predicted_SO": 1.074,
"predicted_HR": 0.214,
"predicted_ERA": 5.7673,
"predicted_WHIP": 1.5907
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.6434,
"form_weight": 0.3566,
"form_reliability": 0.3056,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 2.201,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.3056,
"prior_weight": 0.6944
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 0.611,
"final": 0.8613,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 1.075,
"final": 1.0267,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.443,
"final": 0.158,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 1.074,
"final": 1.0264,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.214,
"final": 0.0763,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 5.7673,
"final": 5.7673,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.5907,
"final": 1.5907,
"source": "form_only"
}
}
}{
"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."
}| Field | Value |
|---|---|
| Pitcher | Tanner Scott |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.3897 |
| ESPN Rank | 98 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 1 |
| Season ERA | 2.2657 |
| Season WHIP | 0.9231 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "LAD",
"games": 127,
"wins": 75,
"losses": 52,
"win_pct": 0.5906,
"runs_scored": 636.0,
"runs_allowed": 486.0,
"run_differential": 150.0,
"run_differential_per_game": 1.1811,
"avg_runs_scored": 5.0079,
"avg_runs_allowed": 3.8268,
"offense_index": 1.1121,
"defense_index": 1.1767,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 3.6,
"avg_runs_allowed": 5.1,
"run_differential": -15.0
},
"available": true,
"quality_score": 0.1513
},
"opponent": {
"team": "KC",
"games": 129,
"wins": 50,
"losses": 79,
"win_pct": 0.3876,
"runs_scored": 523.0,
"runs_allowed": 652.0,
"run_differential": -129.0,
"run_differential_per_game": -1.0,
"avg_runs_scored": 4.0543,
"avg_runs_allowed": 5.0543,
"offense_index": 0.9003,
"defense_index": 0.891,
"current_streak": "L3",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 4.1,
"avg_runs_allowed": 5.7,
"run_differential": -16.0
},
"available": true,
"quality_score": -0.2877
},
"edges": {
"quality_edge": 0.439,
"offense_edge": 0.1121,
"opponent_offense_edge": -0.0997,
"defense_strength": 0.1767,
"opponent_defense_weakness": 0.109,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 1.0268,
"run_prevention": 0.9444,
"strikeout": 1.0211
},
"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": 150.0,
"k_percent": 32.8,
"bb_percent": 6.0,
"woba": 0.243,
"xwoba": 0.276,
"sweet_spot_percent": 38.7,
"barrel_batted_rate": 7.2,
"hard_hit_percent": 33.3,
"avg_best_speed": 78.9418,
"avg_hyper_speed": 93.4183,
"whiff_percent": 36.3,
"swing_percent": 55.1
},
"league_medians": {
"pa": 108.0,
"k_percent": 22.0,
"bb_percent": 8.9,
"woba": 0.3145,
"xwoba": 0.312,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 37.7,
"avg_best_speed": 77.5616,
"avg_hyper_speed": 93.8924,
"whiff_percent": 25.4,
"swing_percent": 47.6
},
"components": {
"contact_quality": 0.6855,
"command_and_miss": 1.3843,
"regression_edge": -0.9429,
"xwoba_edge": 1.0286,
"barrel_edge": -0.0222,
"hard_hit_edge": 0.6286,
"whiff_edge": 1.5571,
"bb_edge": 0.725,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "656945",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.3897,
"sample_weight": 0.6,
"run_prevention_factor": 0.9669,
"strikeout_factor": 1.0744,
"walk_factor": 0.9652,
"homer_factor": 0.9675,
"woba_minus_xwoba": -0.033,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "656945",
"espn_id": 35135,
"player_name": "Tanner Scott",
"team": "LAD",
"role": "pitcher",
"espn_rank": 98,
"espn_total_ranked": 804,
"metrics": {
"espn_rank": 98,
"gp_value": 51.0,
"gp_rank": 35,
"gs_value": 0.0,
"gs_rank": 337,
"qs_value": 0.0,
"qs_rank": 202,
"era_value": 2.2657,
"era_rank": null,
"w_value": 1.0,
"w_rank": 368,
"l_value": 3.0,
"l_rank": 196,
"sv_value": 16.0,
"sv_rank": 15,
"hld_value": 10.0,
"hld_rank": 62,
"ip_value": 47.2,
"ip_rank": 249,
"h_value": 33.0,
"h_rank": 330,
"er_value": 12.0,
"er_rank": 415,
"hr_value": 4.0,
"hr_rank": 321,
"bb_value": 11.0,
"bb_rank": 414,
"k_value": 60.0,
"k_rank": 173,
"k_per_9_value": 11.328671,
"k_per_9_rank": 18,
"whip_value": 0.923,
"whip_rank": null,
"war_value": 1.52,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9801,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9801,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9791,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9805,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0446,
"adjusted": 2
}
}
}
}{
"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": 1,
"H": 8,
"BB": 6,
"SO": 10,
"HR": 0,
"ERA": 1.0,
"WHIP": 1.5555555555555556,
"K9": 10.0,
"HR9": 0.0,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": true
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-08-10T00:00:00"
}{
"available": false,
"pitcher_id": "656945",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"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.537,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6561,
"prior_weight": 0.3439
},
"role": "pitcher",
"player_id": "656945",
"report_date": "20260812",
"season_year": 2026,
"rows_used": 51,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.0,
"ER": 0.0,
"R": 0.0,
"H": 3.0,
"BB": 5.0,
"SO": 4.0,
"HR": 0.0,
"BF": 19.0,
"Pitches": 84.0
},
"per_game": {
"IP": 0.2,
"ER": 0.0,
"R": 0.0,
"H": 0.6,
"BB": 1.0,
"SO": 0.8,
"HR": 0.0,
"BF": 3.8,
"Pitches": 16.8
},
"rates": {
"ERA": 0.0,
"WHIP": 2.0,
"ER_per_IP": 0.0,
"H_per_IP": 0.75,
"BB_per_IP": 1.25,
"SO_per_IP": 1.0,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.0,
"ER": 1.0,
"R": 1.0,
"H": 8.0,
"BB": 6.0,
"SO": 10.0,
"HR": 0.0,
"BF": 39.0,
"Pitches": 149.0
},
"per_game": {
"IP": 1.0,
"ER": 0.1,
"R": 0.1,
"H": 0.8,
"BB": 0.6,
"SO": 1.0,
"HR": 0.0,
"BF": 3.9,
"Pitches": 14.9
},
"rates": {
"ERA": 1.0,
"WHIP": 1.5556,
"ER_per_IP": 0.11111,
"H_per_IP": 0.88889,
"BB_per_IP": 0.66667,
"SO_per_IP": 1.11111,
"HR_per_IP": 0.0
}
},
"season": {
"games": 51,
"totals": {
"IP": 47.2,
"ER": 12.0,
"R": 12.0,
"H": 33.0,
"BB": 11.0,
"SO": 60.0,
"HR": 4.0,
"BF": 183.0,
"Pitches": 704.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2353,
"R": 0.2353,
"H": 0.6471,
"BB": 0.2157,
"SO": 1.1765,
"HR": 0.0784,
"BF": 3.5882,
"Pitches": 13.8039
},
"rates": {
"ERA": 2.2657,
"WHIP": 0.9231,
"ER_per_IP": 0.25175,
"H_per_IP": 0.69231,
"BB_per_IP": 0.23077,
"SO_per_IP": 1.25874,
"HR_per_IP": 0.08392
}
}
},
"blend_segments": {},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.207,
"predicted_H": 0.768,
"predicted_BB": 0.61,
"predicted_SO": 0.942,
"predicted_HR": 0.056,
"predicted_ERA": 2.0706,
"predicted_WHIP": 1.5279
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.4953,
"form_weight": 0.5047,
"form_reliability": 0.6561,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 9.537,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6561,
"prior_weight": 0.3439
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.207,
"final": 0.1045,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.768,
"final": 0.3876,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.61,
"final": 0.3079,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.942,
"final": 0.9707,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.056,
"final": 0.0283,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.0706,
"final": 2.0706,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.5279,
"final": 1.5279,
"source": "form_only"
}
}
}{
"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."
}| Field | Value |
|---|---|
| Pitcher | Evan Phillips |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.1209 |
| ESPN Rank | 664 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 0.2000 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 1 |
| Season ERA | 5.7273 |
| Season WHIP | 1.4545 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "LAD",
"games": 127,
"wins": 75,
"losses": 52,
"win_pct": 0.5906,
"runs_scored": 636.0,
"runs_allowed": 486.0,
"run_differential": 150.0,
"run_differential_per_game": 1.1811,
"avg_runs_scored": 5.0079,
"avg_runs_allowed": 3.8268,
"offense_index": 1.1121,
"defense_index": 1.1767,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 3.6,
"avg_runs_allowed": 5.1,
"run_differential": -15.0
},
"available": true,
"quality_score": 0.1513
},
"opponent": {
"team": "KC",
"games": 129,
"wins": 50,
"losses": 79,
"win_pct": 0.3876,
"runs_scored": 523.0,
"runs_allowed": 652.0,
"run_differential": -129.0,
"run_differential_per_game": -1.0,
"avg_runs_scored": 4.0543,
"avg_runs_allowed": 5.0543,
"offense_index": 0.9003,
"defense_index": 0.891,
"current_streak": "L3",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 4.1,
"avg_runs_allowed": 5.7,
"run_differential": -16.0
},
"available": true,
"quality_score": -0.2877
},
"edges": {
"quality_edge": 0.439,
"offense_edge": 0.1121,
"opponent_offense_edge": -0.0997,
"defense_strength": 0.1767,
"opponent_defense_weakness": 0.109,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 1.0268,
"run_prevention": 0.9444,
"strikeout": 1.0211
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "623465",
"profile": {
"available": true,
"pitcher_id": "623465",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 22.0,
"k_percent": 24.5,
"bb_percent": 6.1,
"woba": 0.374,
"xwoba": 0.332,
"sweet_spot_percent": 26.5,
"barrel_batted_rate": 14.7,
"hard_hit_percent": 41.2,
"avg_best_speed": 85.1234,
"avg_hyper_speed": 95.4344,
"whiff_percent": 25.3,
"swing_percent": 44.8
},
"league_medians": {
"pa": 108.0,
"k_percent": 22.0,
"bb_percent": 8.9,
"woba": 0.3145,
"xwoba": 0.312,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 37.7,
"avg_best_speed": 77.5616,
"avg_hyper_speed": 93.8924,
"whiff_percent": 25.4,
"swing_percent": 47.6
},
"components": {
"contact_quality": -0.8314,
"command_and_miss": 0.2957,
"regression_edge": 1.2,
"xwoba_edge": -0.5714,
"barrel_edge": -1.6889,
"hard_hit_edge": -0.5,
"whiff_edge": -0.0143,
"bb_edge": 0.7,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "623465",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": -0.1209,
"sample_weight": 0.45,
"run_prevention_factor": 1.0103,
"strikeout_factor": 1.0062,
"walk_factor": 0.9748,
"homer_factor": 1.0775,
"woba_minus_xwoba": 0.042,
"regression_flag": "positive_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "623465",
"espn_id": 37911,
"player_name": "Evan Phillips",
"team": "LAD",
"role": "pitcher",
"espn_rank": 664,
"espn_total_ranked": 804,
"metrics": {
"espn_rank": 664,
"gp_value": 14.0,
"gp_rank": 422,
"gs_value": 0.0,
"gs_rank": 337,
"qs_value": 0.0,
"qs_rank": 202,
"era_value": 5.7272,
"era_rank": null,
"w_value": 0.0,
"w_rank": 480,
"l_value": 2.0,
"l_rank": 282,
"sv_value": 0.0,
"sv_rank": 234,
"hld_value": 2.0,
"hld_rank": 207,
"ip_value": 11.0,
"ip_rank": 554,
"h_value": 13.0,
"h_rank": 543,
"er_value": 7.0,
"er_rank": 548,
"hr_value": 4.0,
"hr_rank": 321,
"bb_value": 3.0,
"bb_rank": 628,
"k_value": 12.0,
"k_rank": 517,
"k_per_9_value": 9.818182,
"k_per_9_rank": 25,
"whip_value": 1.4545,
"whip_rank": null,
"war_value": -0.29,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 1.0046,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 1.0046,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9887,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0349,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0028,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 7.0,
"ER": 4,
"H": 7,
"BB": 2,
"SO": 7,
"HR": 2,
"ERA": 5.142857142857143,
"WHIP": 1.2857142857142858,
"K9": 9.0,
"HR9": 2.5714285714285716,
"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-11T00:00:00"
}{
"available": false,
"pitcher_id": "623465",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"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.201,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.3056,
"prior_weight": 0.6944
},
"role": "pitcher",
"player_id": "623465",
"report_date": "20260812",
"season_year": 2026,
"rows_used": 14,
"reference_playing_time": 0.667,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 2.2,
"ER": 2.0,
"R": 3.0,
"H": 5.0,
"BB": 1.0,
"SO": 3.0,
"HR": 0.0,
"BF": 14.0,
"Pitches": 56.0
},
"per_game": {
"IP": 0.2,
"ER": 0.4,
"R": 0.6,
"H": 1.0,
"BB": 0.2,
"SO": 0.6,
"HR": 0.0,
"BF": 2.8,
"Pitches": 11.2
},
"rates": {
"ERA": 6.75,
"WHIP": 2.25,
"ER_per_IP": 0.75,
"H_per_IP": 1.875,
"BB_per_IP": 0.375,
"SO_per_IP": 1.125,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 7.0,
"ER": 4.0,
"R": 5.0,
"H": 7.0,
"BB": 2.0,
"SO": 7.0,
"HR": 2.0,
"BF": 30.0,
"Pitches": 112.0
},
"per_game": {
"IP": 0.2,
"ER": 0.4,
"R": 0.5,
"H": 0.7,
"BB": 0.2,
"SO": 0.7,
"HR": 0.2,
"BF": 3.0,
"Pitches": 11.2
},
"rates": {
"ERA": 5.1429,
"WHIP": 1.2857,
"ER_per_IP": 0.57143,
"H_per_IP": 1.0,
"BB_per_IP": 0.28571,
"SO_per_IP": 1.0,
"HR_per_IP": 0.28571
}
},
"season": {
"games": 14,
"totals": {
"IP": 11.0,
"ER": 7.0,
"R": 8.0,
"H": 13.0,
"BB": 3.0,
"SO": 12.0,
"HR": 4.0,
"BF": 49.0,
"Pitches": 194.0
},
"per_game": {
"IP": 0.2,
"ER": 0.5,
"R": 0.5714,
"H": 0.9286,
"BB": 0.2143,
"SO": 0.8571,
"HR": 0.2857,
"BF": 3.5,
"Pitches": 13.8571
},
"rates": {
"ERA": 5.7273,
"WHIP": 1.4545,
"ER_per_IP": 0.63636,
"H_per_IP": 1.18182,
"BB_per_IP": 0.27273,
"SO_per_IP": 1.09091,
"HR_per_IP": 0.36364
}
}
},
"blend_segments": {},
"weighted_prediction": {
"predicted_IP": 0.2,
"predicted_ER": 0.366,
"predicted_H": 0.742,
"predicted_BB": 0.233,
"predicted_SO": 0.661,
"predicted_HR": 0.104,
"predicted_ERA": 4.9453,
"predicted_WHIP": 1.4628
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.6434,
"form_weight": 0.3566,
"form_reliability": 0.3056,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 2.201,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.3056,
"prior_weight": 0.6944
},
"applied_metrics": {
"predicted_IP": {
"model": 0.2,
"form": 0.2,
"final": 0.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.366,
"final": 0.1305,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.742,
"final": 0.2646,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.233,
"final": 0.0831,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.661,
"final": 0.8791,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.104,
"final": 0.0371,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.9453,
"final": 4.9453,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.4628,
"final": 1.4628,
"source": "form_only"
}
}
}{
"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."
}| Field | Value |
|---|---|
| Pitcher | Jack Dreyer |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.2822 |
| ESPN Rank | 185 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 0.1000 |
| Pre ER | 1 |
| Pre H | 1 |
| Pre BB | 1 |
| Pre SO | 1 |
| Season ERA | 3.1438 |
| Season WHIP | 1.0068 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "LAD",
"games": 127,
"wins": 75,
"losses": 52,
"win_pct": 0.5906,
"runs_scored": 636.0,
"runs_allowed": 486.0,
"run_differential": 150.0,
"run_differential_per_game": 1.1811,
"avg_runs_scored": 5.0079,
"avg_runs_allowed": 3.8268,
"offense_index": 1.1121,
"defense_index": 1.1767,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 3.6,
"avg_runs_allowed": 5.1,
"run_differential": -15.0
},
"available": true,
"quality_score": 0.1513
},
"opponent": {
"team": "KC",
"games": 129,
"wins": 50,
"losses": 79,
"win_pct": 0.3876,
"runs_scored": 523.0,
"runs_allowed": 652.0,
"run_differential": -129.0,
"run_differential_per_game": -1.0,
"avg_runs_scored": 4.0543,
"avg_runs_allowed": 5.0543,
"offense_index": 0.9003,
"defense_index": 0.891,
"current_streak": "L3",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 4.1,
"avg_runs_allowed": 5.7,
"run_differential": -16.0
},
"available": true,
"quality_score": -0.2877
},
"edges": {
"quality_edge": 0.439,
"offense_edge": 0.1121,
"opponent_offense_edge": -0.0997,
"defense_strength": 0.1767,
"opponent_defense_weakness": 0.109,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 1.0268,
"run_prevention": 0.9444,
"strikeout": 1.0211
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "676263",
"profile": {
"available": true,
"pitcher_id": "676263",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 158.0,
"k_percent": 29.2,
"bb_percent": 7.3,
"woba": 0.267,
"xwoba": 0.284,
"sweet_spot_percent": 25.6,
"barrel_batted_rate": 7.5,
"hard_hit_percent": 41.3,
"avg_best_speed": 77.8392,
"avg_hyper_speed": 94.6983,
"whiff_percent": 28.2,
"swing_percent": 48.6
},
"league_medians": {
"pa": 108.0,
"k_percent": 22.0,
"bb_percent": 8.9,
"woba": 0.3145,
"xwoba": 0.312,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 37.7,
"avg_best_speed": 77.5616,
"avg_hyper_speed": 93.8924,
"whiff_percent": 25.4,
"swing_percent": 47.6
},
"components": {
"contact_quality": 0.5671,
"command_and_miss": 0.6829,
"regression_edge": -0.4857,
"xwoba_edge": 0.8,
"barrel_edge": -0.0889,
"hard_hit_edge": -0.5143,
"whiff_edge": 0.4,
"bb_edge": 0.4,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "676263",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.2822,
"sample_weight": 0.632,
"run_prevention_factor": 0.976,
"strikeout_factor": 1.0361,
"walk_factor": 0.9798,
"homer_factor": 1.0023,
"woba_minus_xwoba": -0.017,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "676263",
"espn_id": 5136082,
"player_name": "Jack Dreyer",
"team": "LAD",
"role": "pitcher",
"espn_rank": 185,
"espn_total_ranked": 804,
"metrics": {
"espn_rank": 185,
"gp_value": 50.0,
"gp_rank": 39,
"gs_value": 1.0,
"gs_rank": 281,
"qs_value": 0.0,
"qs_rank": 202,
"era_value": 3.1438,
"era_rank": null,
"w_value": 5.0,
"w_rank": 110,
"l_value": 1.0,
"l_rank": 382,
"sv_value": 1.0,
"sv_rank": 116,
"hld_value": 7.0,
"hld_rank": 104,
"ip_value": 48.2,
"ip_rank": 242,
"h_value": 35.0,
"h_rank": 303,
"er_value": 17.0,
"er_rank": 318,
"hr_value": 7.0,
"hr_rank": 197,
"bb_value": 14.0,
"bb_rank": 342,
"k_value": 56.0,
"k_rank": 190,
"k_per_9_value": 10.356165,
"k_per_9_rank": 21,
"whip_value": 1.0068,
"whip_rank": null,
"war_value": 0.82,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9848,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9848,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9872,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0015,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0228,
"adjusted": 2
}
}
}
}{
"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": 4,
"H": 4,
"BB": 4,
"SO": 10,
"HR": 1,
"ERA": 4.32,
"WHIP": 0.9600000000000002,
"K9": 10.8,
"HR9": 1.08,
"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-11T00:00:00"
}{
"available": false,
"pitcher_id": "676263",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"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.737,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6607,
"prior_weight": 0.3393
},
"role": "pitcher",
"player_id": "676263",
"report_date": "20260812",
"season_year": 2026,
"rows_used": 50,
"reference_playing_time": 0.1,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 3.1,
"ER": 2.0,
"R": 2.0,
"H": 3.0,
"BB": 1.0,
"SO": 4.0,
"HR": 1.0,
"BF": 13.0,
"Pitches": 47.0
},
"per_game": {
"IP": 0.2,
"ER": 0.4,
"R": 0.4,
"H": 0.6,
"BB": 0.2,
"SO": 0.8,
"HR": 0.2,
"BF": 2.6,
"Pitches": 9.4
},
"rates": {
"ERA": 5.4,
"WHIP": 1.2,
"ER_per_IP": 0.6,
"H_per_IP": 0.9,
"BB_per_IP": 0.3,
"SO_per_IP": 1.2,
"HR_per_IP": 0.3
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 8.1,
"ER": 4.0,
"R": 4.0,
"H": 4.0,
"BB": 4.0,
"SO": 10.0,
"HR": 1.0,
"BF": 32.0,
"Pitches": 131.0
},
"per_game": {
"IP": 0.2,
"ER": 0.4,
"R": 0.4,
"H": 0.4,
"BB": 0.4,
"SO": 1.0,
"HR": 0.1,
"BF": 3.2,
"Pitches": 13.1
},
"rates": {
"ERA": 4.32,
"WHIP": 0.96,
"ER_per_IP": 0.48,
"H_per_IP": 0.48,
"BB_per_IP": 0.48,
"SO_per_IP": 1.2,
"HR_per_IP": 0.12
}
},
"season": {
"games": 50,
"totals": {
"IP": 48.2,
"ER": 17.0,
"R": 17.0,
"H": 35.0,
"BB": 14.0,
"SO": 56.0,
"HR": 7.0,
"BF": 192.0,
"Pitches": 765.0
},
"per_game": {
"IP": 1.0,
"ER": 0.34,
"R": 0.34,
"H": 0.7,
"BB": 0.28,
"SO": 1.12,
"HR": 0.14,
"BF": 3.84,
"Pitches": 15.3
},
"rates": {
"ERA": 3.1438,
"WHIP": 1.0068,
"ER_per_IP": 0.34932,
"H_per_IP": 0.71918,
"BB_per_IP": 0.28767,
"SO_per_IP": 1.15068,
"HR_per_IP": 0.14384
}
}
},
"blend_segments": {},
"weighted_prediction": {
"predicted_IP": 0.2,
"predicted_ER": 0.302,
"predicted_H": 0.48,
"predicted_BB": 0.216,
"predicted_SO": 0.664,
"predicted_HR": 0.112,
"predicted_ERA": 4.5429,
"predicted_WHIP": 1.1647
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.4934,
"form_weight": 0.5066,
"form_reliability": 0.6607,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 9.737,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6607,
"prior_weight": 0.3393
},
"applied_metrics": {
"predicted_IP": {
"model": 0.1,
"form": 0.2,
"final": 0.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 0.302,
"final": 0.6464,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.48,
"final": 0.7365,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 0.216,
"final": 0.6028,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.664,
"final": 0.8298,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.112,
"final": 0.0567,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.5429,
"final": 4.5429,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1647,
"final": 1.1647,
"source": "form_only"
}
}
}{
"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."
}| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.202 | 0.000 | 0.000 | Hitting_2B | 0.180 | 0.000 | -0.180 | 0.000 |
| predicted_3B | 0.018 | 0.000 | 0.000 | Hitting_3B | 0.024 | 0.000 | -0.024 | 0.000 |
| predicted_AB | 3.844 | 5.000 | 4.000 | Hitting_AB | 3.869 | 5.000 | 1.131 | 0.000 |
| predicted_AVG | 0.289 | 0.000 | 0.250 | Hitting_AVG | 0.288 | 0.000 | -0.288 | 0.000 |
| predicted_BB | 0.633 | 0.000 | 1.000 | Hitting_BB | 0.684 | 0.000 | -0.684 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.022 | 0.000 | -0.022 | 0.000 |
| predicted_H | 1.110 | 0.000 | 1.000 | Hitting_H | 1.116 | 0.000 | -1.116 | 0.000 |
| predicted_HR | 0.239 | 0.000 | 0.000 | Hitting_HR | 0.231 | 0.000 | -0.231 | 0.000 |
| predicted_OBP | 0.389 | 0.000 | 0.400 | Hitting_OBP | 0.398 | 0.000 | -0.398 | 0.000 |
| predicted_R | 0.688 | 0.000 | 1.000 | Hitting_R | 0.707 | 1.000 | -0.707 | -1.000 |
| predicted_RBI | 0.642 | 0.000 | 1.000 | Hitting_RBI | 0.660 | 0.000 | -0.660 | 0.000 |
| predicted_SLG | 0.537 | 0.000 | 0.250 | Hitting_SLG | 0.527 | 0.000 | -0.527 | 0.000 |
| predicted_SO | 1.055 | 4.000 | 1.000 | Hitting_SO | 1.071 | 2.000 | 2.929 | 2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 8 |
| Better Metrics | 1 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_SO: 1.0550 -> 4.0000 (boost 2.9450, worse) |
| Biggest Deboost | predicted_H: 1.1100 -> 0.0000 (deboost -1.1100, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.5370 -> 0.5001 (deboost -0.0369, 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. |
| 3 | team_form_snapshot | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.5001 -> 0.5181 (boost 0.0180, better) | - | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 3 | 3 | 3 | 3 | predicted_BB: 0.6049 -> 1.0000 (boost 0.3951, better) | predicted_HR: 0.2242 -> 0.0000 (deboost -0.2242, worse) | AB rounded to 4 (raw=3.86), rates preserved: AVG=0.286 HR/AB=0.058 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7136 -> 1.0000 (boost 0.2864, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_OBP: 0.3828 -> 0.4000 (boost 0.0172, better) | predicted_SLG: 0.5181 -> 0.2500 (deboost -0.2681, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 6 | 2 | 4 | 1 | 5 | predicted_SO: 1.0000 -> 4.0000 (boost 3.0000, worse) | predicted_BB: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2500 -> 0.5181 (boost 0.2681, better) | predicted_OBP: 0.4000 -> 0.3828 (deboost -0.0172, worse) | Final player values currently stored in the game 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.202,
"predicted_3B": 0.018,
"predicted_AB": 3.844,
"predicted_AVG": 0.289,
"predicted_BB": 0.633,
"predicted_H": 1.11,
"predicted_HR": 0.239,
"predicted_OBP": 0.389,
"predicted_R": 0.688,
"predicted_RBI": 0.642,
"predicted_SLG": 0.537,
"predicted_SO": 1.055
},
"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.1929,
"predicted_3B": 0.015,
"predicted_AB": 3.8605,
"predicted_AVG": 0.276,
"predicted_BB": 0.5944,
"predicted_H": 1.0645,
"predicted_HBP": 0.028,
"predicted_HR": 0.2143,
"predicted_OBP": 0.3723,
"predicted_R": 0.6694,
"predicted_RBI": 0.6073,
"predicted_SLG": 0.5001,
"predicted_SO": 1.065
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.202,
"after": 0.1929,
"delta": -0.0091,
"percent_delta": -0.045,
"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": 3.844,
"after": 3.8605,
"delta": 0.0165,
"percent_delta": 0.0043,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.289,
"after": 0.276,
"delta": -0.013,
"percent_delta": -0.045,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.633,
"after": 0.5944,
"delta": -0.0386,
"percent_delta": -0.061,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.11,
"after": 1.0645,
"delta": -0.0455,
"percent_delta": -0.041,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.239,
"after": 0.2143,
"delta": -0.0247,
"percent_delta": -0.1033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.389,
"after": 0.3723,
"delta": -0.0167,
"percent_delta": -0.0429,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.688,
"after": 0.6694,
"delta": -0.0186,
"percent_delta": -0.027,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.642,
"after": 0.6073,
"delta": -0.0347,
"percent_delta": -0.054,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.537,
"after": 0.5001,
"delta": -0.0369,
"percent_delta": -0.0687,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.055,
"after": 1.065,
"delta": 0.01,
"percent_delta": 0.0095,
"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.537,
"after": 0.5001,
"delta": -0.0369,
"percent_delta": -0.0687,
"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.1929,
"predicted_3B": 0.015,
"predicted_AB": 3.8605,
"predicted_AVG": 0.2861,
"predicted_BB": 0.6049,
"predicted_H": 1.1044,
"predicted_HBP": 0.028,
"predicted_HR": 0.2242,
"predicted_OBP": 0.3828,
"predicted_R": 0.7136,
"predicted_RBI": 0.6474,
"predicted_SLG": 0.5181,
"predicted_SO": 1.0461
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1929,
"after": 0.1929,
"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.8605,
"after": 3.8605,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.276,
"after": 0.2861,
"delta": 0.0101,
"percent_delta": 0.0366,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5944,
"after": 0.6049,
"delta": 0.0105,
"percent_delta": 0.0177,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0645,
"after": 1.1044,
"delta": 0.0399,
"percent_delta": 0.0375,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.028,
"after": 0.028,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2143,
"after": 0.2242,
"delta": 0.0099,
"percent_delta": 0.0462,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3723,
"after": 0.3828,
"delta": 0.0105,
"percent_delta": 0.0282,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6694,
"after": 0.7136,
"delta": 0.0442,
"percent_delta": 0.066,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6073,
"after": 0.6474,
"delta": 0.0401,
"percent_delta": 0.066,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5001,
"after": 0.5181,
"delta": 0.018,
"percent_delta": 0.036,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.065,
"after": 1.0461,
"delta": -0.0189,
"percent_delta": -0.0177,
"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.5001,
"after": 0.5181,
"delta": 0.018,
"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.86), rates preserved: AVG=0.286 HR/AB=0.058",
"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.1929,
"after": 0.0,
"delta": -0.1929,
"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.8605,
"after": 4.0,
"delta": 0.1395,
"percent_delta": 0.0361,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6049,
"after": 1.0,
"delta": 0.3951,
"percent_delta": 0.6532,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.1044,
"after": 1.0,
"delta": -0.1044,
"percent_delta": -0.0945,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.028,
"after": 0.0,
"delta": -0.028,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2242,
"after": 0.0,
"delta": -0.2242,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6474,
"after": 1.0,
"delta": 0.3526,
"percent_delta": 0.5446,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0461,
"after": 1.0,
"delta": -0.0461,
"percent_delta": -0.0441,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 3,
"deboosted_metrics": 3,
"better_metrics": 3,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.6049,
"after": 1.0,
"delta": 0.3951,
"percent_delta": 0.6532,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.2242,
"after": 0.0,
"delta": -0.2242,
"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": 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.7136,
"after": 1.0,
"delta": 0.2864,
"percent_delta": 0.4013,
"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.7136,
"after": 1.0,
"delta": 0.2864,
"percent_delta": 0.4013,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.4,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 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.2861,
"after": 0.25,
"delta": -0.0361,
"percent_delta": -0.1262,
"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.3828,
"after": 0.4,
"delta": 0.0172,
"percent_delta": 0.0449,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5181,
"after": 0.25,
"delta": -0.2681,
"percent_delta": -0.5175,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.3828,
"after": 0.4,
"delta": 0.0172,
"percent_delta": 0.0449,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.5181,
"after": 0.25,
"delta": -0.2681,
"percent_delta": -0.5175,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 4.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 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": 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": 4.0,
"delta": 3.0,
"percent_delta": 3.0,
"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": 1.0,
"after": 4.0,
"delta": 3.0,
"percent_delta": 3.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_AVG": 0.2861,
"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.3828,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.5181,
"predicted_SO": 4.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2861,
"delta": 0.0361,
"percent_delta": 0.1443,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.3828,
"delta": -0.0172,
"percent_delta": -0.043,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.5181,
"delta": 0.2681,
"percent_delta": 1.0723,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.5181,
"delta": 0.2681,
"percent_delta": 1.0723,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.3828,
"delta": -0.0172,
"percent_delta": -0.043,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.202,
"after": 0.0,
"delta": -0.202,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.018,
"after": 0.0,
"delta": -0.018,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.844,
"after": 5.0,
"delta": 1.156,
"percent_delta": 0.3007,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.289,
"after": 0.2861,
"delta": -0.0029,
"percent_delta": -0.01,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.633,
"after": 0.0,
"delta": -0.633,
"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.239,
"after": 0.0,
"delta": -0.239,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.389,
"after": 0.3828,
"delta": -0.0062,
"percent_delta": -0.0159,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.688,
"after": 0.0,
"delta": -0.688,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.642,
"after": 0.0,
"delta": -0.642,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.537,
"after": 0.5181,
"delta": -0.0189,
"percent_delta": -0.0352,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.055,
"after": 4.0,
"delta": 2.945,
"percent_delta": 2.7915,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 2,
"deboosted_metrics": 8,
"better_metrics": 1,
"worse_metrics": 9,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.055,
"after": 4.0,
"delta": 2.945,
"percent_delta": 2.7915,
"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"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.202 | - |
| predicted_3B | 0.018 | - |
| predicted_AB | 3.844 | - |
| predicted_AVG | 0.289 | - |
| predicted_BB | 0.633 | - |
| predicted_H | 1.110 | - |
| predicted_HR | 0.239 | - |
| predicted_OBP | 0.389 | - |
| predicted_R | 0.688 | - |
| predicted_RBI | 0.642 | - |
| predicted_SLG | 0.537 | - |
| predicted_SO | 1.055 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.193 | -0.009 |
| predicted_3B | 0.015 | -0.003 |
| predicted_AB | 3.861 | 0.017 |
| predicted_AVG | 0.276 | -0.013 |
| predicted_BB | 0.594 | -0.039 |
| predicted_H | 1.065 | -0.046 |
| predicted_HBP | 0.028 | - |
| predicted_HR | 0.214 | -0.025 |
| predicted_OBP | 0.372 | -0.017 |
| predicted_R | 0.669 | -0.019 |
| predicted_RBI | 0.607 | -0.035 |
| predicted_SLG | 0.500 | -0.037 |
| predicted_SO | 1.065 | 0.010 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.193 | 0.000 |
| predicted_3B | 0.015 | 0.000 |
| predicted_AB | 3.861 | 0.000 |
| predicted_AVG | 0.286 | 0.010 |
| predicted_BB | 0.605 | 0.010 |
| predicted_H | 1.104 | 0.040 |
| predicted_HBP | 0.028 | 0.000 |
| predicted_HR | 0.224 | 0.010 |
| predicted_OBP | 0.383 | 0.010 |
| predicted_R | 0.714 | 0.044 |
| predicted_RBI | 0.647 | 0.040 |
| predicted_SLG | 0.518 | 0.018 |
| predicted_SO | 1.046 | -0.019 |
AB rounded to 4 (raw=3.86), rates preserved: AVG=0.286 HR/AB=0.058
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 1.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.193 |
| predicted_3B | 0.000 | -0.015 |
| predicted_AB | 4.000 | 0.139 |
| predicted_AVG | 0.250 | -0.036 |
| predicted_BB | 1.000 | 0.395 |
| predicted_H | 1.000 | -0.104 |
| predicted_HR | 0.000 | -0.224 |
| predicted_OBP | 0.400 | 0.017 |
| predicted_R | 1.000 | 0.286 |
| predicted_RBI | 1.000 | 0.353 |
| predicted_SLG | 0.250 | -0.268 |
| predicted_SO | 1.000 | -0.046 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 5.000 | 1.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 4.000 | 3.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 20.000 | 3.000 | 1.000 | 0.000 | 0.000 | 2.000 | 3.000 | 2.000 | 6.000 | 0.1500 | 0.2273 | 0.2000 | 0.1500 | 0.0000 | 0.1000 | 0.1000 | 0.3000 |
| last_10 | 0.20 | 10 | - | 39.000 | 11.000 | 1.000 | 0.000 | 2.000 | 5.000 | 6.000 | 5.000 | 11.000 | 0.2821 | 0.3636 | 0.4615 | 0.2821 | 0.0513 | 0.1282 | 0.1282 | 0.2821 |
| season | 0.60 | 109 | - | 419.000 | 121.000 | 22.000 | 2.000 | 26.000 | 70.000 | 75.000 | 69.000 | 115.000 | 0.2888 | 0.3916 | 0.5370 | 0.2888 | 0.0621 | 0.1671 | 0.1647 | 0.2745 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1810 |
| predicted_3B | 0.0110 |
| predicted_AB | 3.8820 |
| predicted_AVG | 0.2590 |
| predicted_BB | 0.5440 |
| predicted_H | 1.0050 |
| predicted_HBP | 0.0280 |
| predicted_HR | 0.1820 |
| predicted_OBP | 0.3504 |
| predicted_R | 0.6450 |
| predicted_RBI | 0.5620 |
| predicted_SLG | 0.4519 |
| predicted_SO | 1.0780 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2020 | 0.1810 | 0.1929 | model_form_blend |
| predicted_3B | 0.0180 | 0.0110 | 0.0150 | model_form_blend |
| predicted_AB | 3.8440 | 3.8820 | 3.8605 | model_form_blend |
| predicted_AVG | 0.2890 | 0.2590 | 0.2760 | model_form_blend |
| predicted_BB | 0.6330 | 0.5440 | 0.5944 | model_form_blend |
| predicted_H | 1.1100 | 1.0050 | 1.0645 | model_form_blend |
| predicted_HBP | - | 0.0280 | 0.0280 | form_only |
| predicted_HR | 0.2390 | 0.1820 | 0.2143 | model_form_blend |
| predicted_OBP | 0.3890 | 0.3504 | 0.3723 | model_form_blend |
| predicted_R | 0.6880 | 0.6450 | 0.6694 | model_form_blend |
| predicted_RBI | 0.6420 | 0.5620 | 0.6073 | model_form_blend |
| predicted_SLG | 0.5370 | 0.4519 | 0.5001 | model_form_blend |
| predicted_SO | 1.0550 | 1.0780 | 1.0650 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 450 |
| Season rows before report date | 450 |
| Report year | 2026 |
| Profile rows used | 109 |
| Hitter metrics | Hitting_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 Field | Value |
|---|---|
| PA | 5 |
| AB | 5 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 4 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.289 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 5 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 1 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | DH |
| gameID | 20260811_KC@LAD |
| game_type | full |
| mlbID | 660271 |
| playerID | 660271 |
| playerName | Shohei Ohtani |
| pos | TWP |
| started | True |
| startingPosition | DH |
| team | LAD |
| teamID | 14 |
| game_date | 2026-08-11 |
| sl_k_percent | 23.0 |
| sl_bb_percent | 13.7 |
| sl_woba | 0.39 |
| sl_xwoba | 0.405 |
| sl_xba | 0.294 |
| sl_xslg | 0.566 |
| sl_sweet_spot_percent | 39.3 |
| sl_barrel_batted_rate | 16.4 |
| sl_hard_hit_percent | 52.1 |
| sl_exit_velocity_avg | 93.3 |
| sl_launch_angle_avg | 12.7 |
| sl_whiff_percent | 30.4 |
| sl_swing_percent | 46.4 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.233 | 0.000 | 0.000 | Hitting_2B | 0.253 | 0.000 | -0.253 | 0.000 |
| predicted_3B | 0.009 | 0.000 | 0.000 | Hitting_3B | 0.009 | 0.000 | -0.009 | 0.000 |
| predicted_AB | 3.860 | 4.000 | 4.000 | Hitting_AB | 3.812 | 4.000 | 0.188 | 0.000 |
| predicted_AVG | 0.234 | 0.500 | 0.250 | Hitting_AVG | 0.295 | 0.000 | 0.205 | 0.500 |
| predicted_BB | 0.448 | 1.000 | 0.000 | Hitting_BB | 0.535 | 1.000 | 0.465 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.900 | 2.000 | 1.000 | Hitting_H | 1.125 | 0.000 | 0.875 | 2.000 |
| predicted_HR | 0.070 | 2.000 | 0.000 | Hitting_HR | 0.143 | 0.000 | 1.857 | 2.000 |
| predicted_OBP | 0.339 | 0.600 | 0.250 | Hitting_OBP | 0.384 | 0.200 | 0.216 | 0.400 |
| predicted_R | 0.500 | 1.000 | 0.000 | Hitting_R | 0.566 | 0.000 | 0.434 | 1.000 |
| predicted_RBI | 0.440 | 2.000 | 0.000 | Hitting_RBI | 0.528 | 0.000 | 1.472 | 2.000 |
| predicted_SLG | 0.366 | 2.000 | 0.250 | Hitting_SLG | 0.479 | 0.000 | 1.521 | 2.000 |
| predicted_SO | 0.681 | 0.000 | 1.000 | Hitting_SO | 0.718 | 3.000 | -0.718 | -3.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 10 |
| Boosted Metrics | 8 |
| Deboosted Metrics | 2 |
| Better Metrics | 9 |
| Worse Metrics | 1 |
| Biggest Boost | predicted_HR: 0.0700 -> 2.0000 (boost 1.9300, better) |
| Biggest Deboost | predicted_SO: 0.6810 -> 0.0000 (deboost -0.6810, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 3 | 3 | 0 | 3 | 0 | predicted_H: 0.9000 -> 0.9732 (boost 0.0732, 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. |
| 3 | team_form_snapshot | 2 | 1 | 1 | 1 | 1 | predicted_AVG: 0.2542 -> 0.2631 (boost 0.0089, better) | predicted_OBP: 0.3396 -> 0.3343 (deboost -0.0053, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 2 | 4 | 1 | 5 | predicted_SO: 0.6520 -> 1.0000 (boost 0.3480, worse) | predicted_RBI: 0.4802 -> 0.0000 (deboost -0.4802, worse) | AB rounded to 4 (raw=3.86), rates preserved: AVG=0.262 HR/AB=0.020 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.333) |
| 6 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4813 -> 0.0000 (deboost -0.4813, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3788 -> 0.2500 (deboost -0.1288, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 6 | 5 | 1 | 6 | 0 | predicted_HR: 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 |
| 9 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2500 -> 0.3788 (boost 0.1288, better) | - | Final player values currently stored in the game 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.233,
"predicted_3B": 0.009,
"predicted_AB": 3.86,
"predicted_AVG": 0.234,
"predicted_BB": 0.448,
"predicted_H": 0.9,
"predicted_HR": 0.07,
"predicted_OBP": 0.339,
"predicted_R": 0.5,
"predicted_RBI": 0.44,
"predicted_SLG": 0.366,
"predicted_SO": 0.681
},
"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.194,
"predicted_3B": 0.0077,
"predicted_AB": 3.8383,
"predicted_AVG": 0.2542,
"predicted_BB": 0.4034,
"predicted_H": 0.9732,
"predicted_HBP": 0.017,
"predicted_HR": 0.0748,
"predicted_OBP": 0.3396,
"predicted_R": 0.4515,
"predicted_RBI": 0.4504,
"predicted_SLG": 0.3743,
"predicted_SO": 0.6637
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.233,
"after": 0.194,
"delta": -0.039,
"percent_delta": -0.1674,
"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": 3.86,
"after": 3.8383,
"delta": -0.0217,
"percent_delta": -0.0056,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.234,
"after": 0.2542,
"delta": 0.0202,
"percent_delta": 0.0863,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.448,
"after": 0.4034,
"delta": -0.0446,
"percent_delta": -0.0996,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9,
"after": 0.9732,
"delta": 0.0732,
"percent_delta": 0.0813,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 0.0748,
"delta": 0.0048,
"percent_delta": 0.0686,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.339,
"after": 0.3396,
"delta": 0.0006,
"percent_delta": 0.0018,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5,
"after": 0.4515,
"delta": -0.0485,
"percent_delta": -0.097,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.44,
"after": 0.4504,
"delta": 0.0104,
"percent_delta": 0.0236,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.366,
"after": 0.3743,
"delta": 0.0083,
"percent_delta": 0.0227,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.681,
"after": 0.6637,
"delta": -0.0173,
"percent_delta": -0.0254,
"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.9,
"after": 0.9732,
"delta": 0.0732,
"percent_delta": 0.0813,
"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": 116
}
},
{
"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.194,
"predicted_3B": 0.0077,
"predicted_AB": 3.8383,
"predicted_AVG": 0.2631,
"predicted_BB": 0.4105,
"predicted_H": 1.0097,
"predicted_HBP": 0.017,
"predicted_HR": 0.0783,
"predicted_OBP": 0.3343,
"predicted_R": 0.4813,
"predicted_RBI": 0.4802,
"predicted_SLG": 0.3788,
"predicted_SO": 0.652
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.194,
"after": 0.194,
"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": 3.8383,
"after": 3.8383,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2542,
"after": 0.2631,
"delta": 0.0089,
"percent_delta": 0.035,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4034,
"after": 0.4105,
"delta": 0.0071,
"percent_delta": 0.0176,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9732,
"after": 1.0097,
"delta": 0.0365,
"percent_delta": 0.0375,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.017,
"after": 0.017,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0748,
"after": 0.0783,
"delta": 0.0035,
"percent_delta": 0.0468,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3396,
"after": 0.3343,
"delta": -0.0053,
"percent_delta": -0.0156,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4515,
"after": 0.4813,
"delta": 0.0298,
"percent_delta": 0.066,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4504,
"after": 0.4802,
"delta": 0.0298,
"percent_delta": 0.0662,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3743,
"after": 0.3788,
"delta": 0.0045,
"percent_delta": 0.012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.6637,
"after": 0.652,
"delta": -0.0117,
"percent_delta": -0.0176,
"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.2542,
"after": 0.2631,
"delta": 0.0089,
"percent_delta": 0.035,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3396,
"after": 0.3343,
"delta": -0.0053,
"percent_delta": -0.0156,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.86), rates preserved: AVG=0.262 HR/AB=0.020",
"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.194,
"after": 0.0,
"delta": -0.194,
"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": 3.8383,
"after": 4.0,
"delta": 0.1617,
"percent_delta": 0.0421,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4105,
"after": 0.0,
"delta": -0.4105,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0097,
"after": 1.0,
"delta": -0.0097,
"percent_delta": -0.0096,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.017,
"after": 0.0,
"delta": -0.017,
"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.4802,
"after": 0.0,
"delta": -0.4802,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.652,
"after": 1.0,
"delta": 0.348,
"percent_delta": 0.5337,
"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.652,
"after": 1.0,
"delta": 0.348,
"percent_delta": 0.5337,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4802,
"after": 0.0,
"delta": -0.4802,
"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": 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.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": 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.4813,
"after": 0.0,
"delta": -0.4813,
"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.4813,
"after": 0.0,
"delta": -0.4813,
"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.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 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.2631,
"after": 0.25,
"delta": -0.0131,
"percent_delta": -0.0498,
"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.3343,
"after": 0.25,
"delta": -0.0843,
"percent_delta": -0.2522,
"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.3788,
"after": 0.25,
"delta": -0.1288,
"percent_delta": -0.34,
"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.3788,
"after": 0.25,
"delta": -0.1288,
"percent_delta": -0.34,
"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": 2.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": 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": 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": 2.0,
"delta": 2.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_HR",
"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": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2631,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_FB": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 2.0,
"predicted_OBP": 0.3343,
"predicted_R": 1.0,
"predicted_RBI": 2.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3788,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2631,
"delta": 0.0131,
"percent_delta": 0.0522,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.3343,
"delta": 0.0843,
"percent_delta": 0.3371,
"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.25,
"after": 0.3788,
"delta": 0.1288,
"percent_delta": 0.5151,
"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.25,
"after": 0.3788,
"delta": 0.1288,
"percent_delta": 0.5151,
"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.233,
"after": 0.0,
"delta": -0.233,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.009,
"after": 0.0,
"delta": -0.009,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.86,
"after": 4.0,
"delta": 0.14,
"percent_delta": 0.0363,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.234,
"after": 0.2631,
"delta": 0.0291,
"percent_delta": 0.1244,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.448,
"after": 1.0,
"delta": 0.552,
"percent_delta": 1.2321,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9,
"after": 2.0,
"delta": 1.1,
"percent_delta": 1.2222,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 2.0,
"delta": 1.93,
"percent_delta": 27.5714,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.339,
"after": 0.3343,
"delta": -0.0047,
"percent_delta": -0.0139,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5,
"after": 1.0,
"delta": 0.5,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.44,
"after": 2.0,
"delta": 1.56,
"percent_delta": 3.5455,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.366,
"after": 0.3788,
"delta": 0.0128,
"percent_delta": 0.035,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.681,
"after": 0.0,
"delta": -0.681,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 8,
"deboosted_metrics": 2,
"better_metrics": 9,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_HR",
"before": 0.07,
"after": 2.0,
"delta": 1.93,
"percent_delta": 27.5714,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.681,
"after": 0.0,
"delta": -0.681,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.233 | - |
| predicted_3B | 0.009 | - |
| predicted_AB | 3.860 | - |
| predicted_AVG | 0.234 | - |
| predicted_BB | 0.448 | - |
| predicted_H | 0.900 | - |
| predicted_HR | 0.070 | - |
| predicted_OBP | 0.339 | - |
| predicted_R | 0.500 | - |
| predicted_RBI | 0.440 | - |
| predicted_SLG | 0.366 | - |
| predicted_SO | 0.681 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.194 | -0.039 |
| predicted_3B | 0.008 | -0.001 |
| predicted_AB | 3.838 | -0.022 |
| predicted_AVG | 0.254 | 0.020 |
| predicted_BB | 0.403 | -0.045 |
| predicted_H | 0.973 | 0.073 |
| predicted_HBP | 0.017 | - |
| predicted_HR | 0.075 | 0.005 |
| predicted_OBP | 0.340 | 0.001 |
| predicted_R | 0.452 | -0.048 |
| predicted_RBI | 0.450 | 0.010 |
| predicted_SLG | 0.374 | 0.008 |
| predicted_SO | 0.664 | -0.017 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.194 | 0.000 |
| predicted_3B | 0.008 | 0.000 |
| predicted_AB | 3.838 | 0.000 |
| predicted_AVG | 0.263 | 0.009 |
| predicted_BB | 0.410 | 0.007 |
| predicted_H | 1.010 | 0.037 |
| predicted_HBP | 0.017 | 0.000 |
| predicted_HR | 0.078 | 0.003 |
| predicted_OBP | 0.334 | -0.005 |
| predicted_R | 0.481 | 0.030 |
| predicted_RBI | 0.480 | 0.030 |
| predicted_SLG | 0.379 | 0.005 |
| predicted_SO | 0.652 | -0.012 |
AB rounded to 4 (raw=3.86), rates preserved: AVG=0.262 HR/AB=0.020
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.333)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.194 |
| predicted_3B | 0.000 | -0.008 |
| predicted_AB | 4.000 | 0.162 |
| predicted_AVG | 0.250 | -0.013 |
| predicted_BB | 0.000 | -0.410 |
| predicted_H | 1.000 | -0.010 |
| predicted_HR | 0.000 | -0.078 |
| predicted_OBP | 0.250 | -0.084 |
| predicted_R | 0.000 | -0.481 |
| predicted_RBI | 0.000 | -0.480 |
| predicted_SLG | 0.250 | -0.129 |
| predicted_SO | 1.000 | 0.348 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 2.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 2.000 | 2.000 |
| PA | 5.000 | - |
| R | 1.000 | 1.000 |
| RBI | 2.000 | 2.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 20.000 | 4.000 | 0.000 | 0.000 | 0.000 | 3.000 | 1.000 | 1.000 | 3.000 | 0.2000 | 0.2381 | 0.2000 | 0.2000 | 0.0000 | 0.1500 | 0.0500 | 0.1500 |
| last_10 | 0.20 | 10 | - | 37.000 | 11.000 | 0.000 | 0.000 | 0.000 | 3.000 | 2.000 | 2.000 | 5.000 | 0.2973 | 0.3333 | 0.2973 | 0.2973 | 0.0000 | 0.0811 | 0.0541 | 0.1351 |
| season | 0.60 | 116 | - | 439.000 | 134.000 | 27.000 | 1.000 | 15.000 | 55.000 | 58.000 | 52.000 | 79.000 | 0.3052 | 0.3803 | 0.4738 | 0.3052 | 0.0342 | 0.1253 | 0.1184 | 0.1799 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1430 |
| predicted_3B | 0.0060 |
| predicted_AB | 3.8100 |
| predicted_AVG | 0.2806 |
| predicted_BB | 0.3450 |
| predicted_H | 1.0690 |
| predicted_HBP | 0.0170 |
| predicted_HR | 0.0810 |
| predicted_OBP | 0.3403 |
| predicted_R | 0.3880 |
| predicted_RBI | 0.4640 |
| predicted_SLG | 0.3852 |
| predicted_SO | 0.6410 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2330 | 0.1430 | 0.1940 | model_form_blend |
| predicted_3B | 0.0090 | 0.0060 | 0.0077 | model_form_blend |
| predicted_AB | 3.8600 | 3.8100 | 3.8383 | model_form_blend |
| predicted_AVG | 0.2340 | 0.2806 | 0.2542 | model_form_blend |
| predicted_BB | 0.4480 | 0.3450 | 0.4034 | model_form_blend |
| predicted_H | 0.9000 | 1.0690 | 0.9732 | model_form_blend |
| predicted_HBP | - | 0.0170 | 0.0170 | form_only |
| predicted_HR | 0.0700 | 0.0810 | 0.0748 | model_form_blend |
| predicted_OBP | 0.3390 | 0.3403 | 0.3396 | model_form_blend |
| predicted_R | 0.5000 | 0.3880 | 0.4515 | model_form_blend |
| predicted_RBI | 0.4400 | 0.4640 | 0.4504 | model_form_blend |
| predicted_SLG | 0.3660 | 0.3852 | 0.3743 | model_form_blend |
| predicted_SO | 0.6810 | 0.6410 | 0.6637 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 447 |
| Season rows before report date | 447 |
| Report year | 2026 |
| Profile rows used | 116 |
| Hitter metrics | Hitting_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 Field | Value |
|---|---|
| PA | 5 |
| AB | 4 |
| H | 2 |
| 2B | 0 |
| 3B | 0 |
| HR | 2 |
| R | 1 |
| RBI | 2 |
| BB | 1 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.305 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 1 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 3 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 2 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 1B |
| gameID | 20260811_KC@LAD |
| game_type | full |
| mlbID | 518692 |
| playerID | 518692 |
| playerName | Freddie Freeman |
| pos | 1B |
| started | True |
| startingPosition | 1B |
| team | LAD |
| teamID | 14 |
| game_date | 2026-08-11 |
| sl_k_percent | 16.1 |
| sl_bb_percent | 10.4 |
| sl_woba | 0.37 |
| sl_xwoba | 0.377 |
| sl_xba | 0.3 |
| sl_xslg | 0.489 |
| sl_sweet_spot_percent | 37.7 |
| sl_barrel_batted_rate | 9.0 |
| sl_hard_hit_percent | 42.9 |
| sl_exit_velocity_avg | 89.8 |
| sl_launch_angle_avg | 12.1 |
| sl_whiff_percent | 21.9 |
| sl_swing_percent | 50.9 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.164 | 0.000 | 0.000 | Hitting_2B | 0.188 | 0.000 | -0.188 | 0.000 |
| predicted_3B | 0.027 | 0.000 | 0.000 | Hitting_3B | 0.026 | 0.000 | -0.026 | 0.000 |
| predicted_AB | 4.190 | 3.000 | 4.000 | Hitting_AB | 3.736 | 4.000 | -0.736 | -1.000 |
| predicted_AVG | 0.194 | 0.000 | 0.250 | Hitting_AVG | 0.246 | 0.000 | -0.246 | 0.000 |
| predicted_BB | 0.482 | 2.000 | 0.000 | Hitting_BB | 0.517 | 1.000 | 1.483 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.810 | 0.000 | 1.000 | Hitting_H | 0.918 | 0.000 | -0.918 | 0.000 |
| predicted_HR | 0.180 | 0.000 | 0.000 | Hitting_HR | 0.094 | 0.000 | -0.094 | 0.000 |
| predicted_OBP | 0.317 | 0.400 | 0.250 | Hitting_OBP | 0.337 | 0.200 | 0.063 | 0.200 |
| predicted_R | 0.591 | 1.000 | 1.000 | Hitting_R | 0.630 | 1.000 | 0.370 | 0.000 |
| predicted_RBI | 0.520 | 0.000 | 0.000 | Hitting_RBI | 0.541 | 0.000 | -0.541 | 0.000 |
| predicted_SLG | 0.400 | 0.000 | 0.250 | Hitting_SLG | 0.385 | 0.000 | -0.385 | 0.000 |
| predicted_SO | 0.764 | 1.000 | 1.000 | Hitting_SO | 0.827 | 0.000 | 0.173 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 5 |
| Deboosted Metrics | 6 |
| Better Metrics | 4 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_BB: 0.4820 -> 2.0000 (boost 1.5180, better) |
| Biggest Deboost | predicted_AB: 4.1900 -> 3.0000 (deboost -1.1900, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 5 | 3 | 2 | 4 | 1 | predicted_AVG: 0.1940 -> 0.2149 (boost 0.0209, better) | predicted_AB: 4.1900 -> 3.8553 (deboost -0.3347, 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. |
| 3 | team_form_snapshot | 2 | 1 | 1 | 1 | 1 | predicted_AVG: 0.2149 -> 0.2201 (boost 0.0052, better) | predicted_OBP: 0.3271 -> 0.3094 (deboost -0.0177, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 3 | 4 | 2 | 5 | predicted_SO: 0.6555 -> 1.0000 (boost 0.3445, worse) | predicted_RBI: 0.5148 -> 0.0000 (deboost -0.5148, worse) | AB rounded to 4 (raw=4.19), rates preserved: AVG=0.202 HR/AB=0.041 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6692 -> 1.0000 (boost 0.3308, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2201 -> 0.2500 (boost 0.0299, better) | predicted_SLG: 0.4144 -> 0.2500 (deboost -0.1644, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 1 | 2 | 1 | 2 | predicted_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 |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2500 -> 0.4144 (boost 0.1644, better) | predicted_AVG: 0.2500 -> 0.2201 (deboost -0.0299, worse) | Final player values currently stored in the game 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.164,
"predicted_3B": 0.027,
"predicted_AB": 4.19,
"predicted_AVG": 0.194,
"predicted_BB": 0.482,
"predicted_H": 0.81,
"predicted_HR": 0.18,
"predicted_OBP": 0.317,
"predicted_R": 0.591,
"predicted_RBI": 0.52,
"predicted_SLG": 0.4,
"predicted_SO": 0.764
},
"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.1355,
"predicted_3B": 0.0486,
"predicted_AB": 3.8553,
"predicted_AVG": 0.2149,
"predicted_BB": 0.4898,
"predicted_H": 0.8178,
"predicted_HBP": 0.016,
"predicted_HR": 0.1645,
"predicted_OBP": 0.3271,
"predicted_R": 0.6277,
"predicted_RBI": 0.4829,
"predicted_SLG": 0.4184,
"predicted_SO": 0.6673
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.164,
"after": 0.1355,
"delta": -0.0285,
"percent_delta": -0.1738,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.027,
"after": 0.0486,
"delta": 0.0216,
"percent_delta": 0.8,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.19,
"after": 3.8553,
"delta": -0.3347,
"percent_delta": -0.0799,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.194,
"after": 0.2149,
"delta": 0.0209,
"percent_delta": 0.1077,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.482,
"after": 0.4898,
"delta": 0.0078,
"percent_delta": 0.0162,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.81,
"after": 0.8178,
"delta": 0.0078,
"percent_delta": 0.0096,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.18,
"after": 0.1645,
"delta": -0.0155,
"percent_delta": -0.0861,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.317,
"after": 0.3271,
"delta": 0.0101,
"percent_delta": 0.0319,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.591,
"after": 0.6277,
"delta": 0.0367,
"percent_delta": 0.0621,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.52,
"after": 0.4829,
"delta": -0.0371,
"percent_delta": -0.0713,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4,
"after": 0.4184,
"delta": 0.0184,
"percent_delta": 0.046,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.764,
"after": 0.6673,
"delta": -0.0967,
"percent_delta": -0.1266,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 3,
"deboosted_metrics": 2,
"better_metrics": 4,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.194,
"after": 0.2149,
"delta": 0.0209,
"percent_delta": 0.1077,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.19,
"after": 3.8553,
"delta": -0.3347,
"percent_delta": -0.0799,
"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": 110
}
},
{
"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.1355,
"predicted_3B": 0.0486,
"predicted_AB": 3.8553,
"predicted_AVG": 0.2201,
"predicted_BB": 0.4985,
"predicted_H": 0.8485,
"predicted_HBP": 0.016,
"predicted_HR": 0.1721,
"predicted_OBP": 0.3094,
"predicted_R": 0.6692,
"predicted_RBI": 0.5148,
"predicted_SLG": 0.4144,
"predicted_SO": 0.6555
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1355,
"after": 0.1355,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0486,
"after": 0.0486,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.8553,
"after": 3.8553,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2149,
"after": 0.2201,
"delta": 0.0052,
"percent_delta": 0.0242,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4898,
"after": 0.4985,
"delta": 0.0087,
"percent_delta": 0.0178,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8178,
"after": 0.8485,
"delta": 0.0307,
"percent_delta": 0.0375,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.016,
"after": 0.016,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1645,
"after": 0.1721,
"delta": 0.0076,
"percent_delta": 0.0462,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3271,
"after": 0.3094,
"delta": -0.0177,
"percent_delta": -0.0541,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6277,
"after": 0.6692,
"delta": 0.0415,
"percent_delta": 0.0661,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4829,
"after": 0.5148,
"delta": 0.0319,
"percent_delta": 0.0661,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4184,
"after": 0.4144,
"delta": -0.004,
"percent_delta": -0.0096,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.6673,
"after": 0.6555,
"delta": -0.0118,
"percent_delta": -0.0177,
"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.2149,
"after": 0.2201,
"delta": 0.0052,
"percent_delta": 0.0242,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3271,
"after": 0.3094,
"delta": -0.0177,
"percent_delta": -0.0541,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.19), rates preserved: AVG=0.202 HR/AB=0.041",
"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.1355,
"after": 0.0,
"delta": -0.1355,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0486,
"after": 0.0,
"delta": -0.0486,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.8553,
"after": 4.0,
"delta": 0.1447,
"percent_delta": 0.0375,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4985,
"after": 0.0,
"delta": -0.4985,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8485,
"after": 1.0,
"delta": 0.1515,
"percent_delta": 0.1786,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.016,
"after": 0.0,
"delta": -0.016,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1721,
"after": 0.0,
"delta": -0.1721,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5148,
"after": 0.0,
"delta": -0.5148,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6555,
"after": 1.0,
"delta": 0.3445,
"percent_delta": 0.5256,
"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_SO",
"before": 0.6555,
"after": 1.0,
"delta": 0.3445,
"percent_delta": 0.5256,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.5148,
"after": 0.0,
"delta": -0.5148,
"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.6692,
"after": 1.0,
"delta": 0.3308,
"percent_delta": 0.4943,
"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.6692,
"after": 1.0,
"delta": 0.3308,
"percent_delta": 0.4943,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 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.2201,
"after": 0.25,
"delta": 0.0299,
"percent_delta": 0.1358,
"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.3094,
"after": 0.25,
"delta": -0.0594,
"percent_delta": -0.192,
"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.4144,
"after": 0.25,
"delta": -0.1644,
"percent_delta": -0.3967,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2201,
"after": 0.25,
"delta": 0.0299,
"percent_delta": 0.1358,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4144,
"after": 0.25,
"delta": -0.1644,
"percent_delta": -0.3967,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 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": 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": 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": 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": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2201,
"predicted_BB": 2.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3094,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4144,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2201,
"delta": -0.0299,
"percent_delta": -0.1197,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.3094,
"delta": 0.0594,
"percent_delta": 0.2375,
"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.25,
"after": 0.4144,
"delta": 0.1644,
"percent_delta": 0.6575,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4144,
"delta": 0.1644,
"percent_delta": 0.6575,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2201,
"delta": -0.0299,
"percent_delta": -0.1197,
"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.164,
"after": 0.0,
"delta": -0.164,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.027,
"after": 0.0,
"delta": -0.027,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.19,
"after": 3.0,
"delta": -1.19,
"percent_delta": -0.284,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.194,
"after": 0.2201,
"delta": 0.0261,
"percent_delta": 0.1345,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.482,
"after": 2.0,
"delta": 1.518,
"percent_delta": 3.1494,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.81,
"after": 0.0,
"delta": -0.81,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.18,
"after": 0.0,
"delta": -0.18,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.317,
"after": 0.3094,
"delta": -0.0076,
"percent_delta": -0.024,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.591,
"after": 1.0,
"delta": 0.409,
"percent_delta": 0.692,
"direction": "boost",
"projection_effect": "better",
"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.4,
"after": 0.4144,
"delta": 0.0144,
"percent_delta": 0.036,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.764,
"after": 1.0,
"delta": 0.236,
"percent_delta": 0.3089,
"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.482,
"after": 2.0,
"delta": 1.518,
"percent_delta": 3.1494,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.19,
"after": 3.0,
"delta": -1.19,
"percent_delta": -0.284,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.164 | - |
| predicted_3B | 0.027 | - |
| predicted_AB | 4.190 | - |
| predicted_AVG | 0.194 | - |
| predicted_BB | 0.482 | - |
| predicted_H | 0.810 | - |
| predicted_HR | 0.180 | - |
| predicted_OBP | 0.317 | - |
| predicted_R | 0.591 | - |
| predicted_RBI | 0.520 | - |
| predicted_SLG | 0.400 | - |
| predicted_SO | 0.764 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.136 | -0.028 |
| predicted_3B | 0.049 | 0.022 |
| predicted_AB | 3.855 | -0.335 |
| predicted_AVG | 0.215 | 0.021 |
| predicted_BB | 0.490 | 0.008 |
| predicted_H | 0.818 | 0.008 |
| predicted_HBP | 0.016 | - |
| predicted_HR | 0.165 | -0.015 |
| predicted_OBP | 0.327 | 0.010 |
| predicted_R | 0.628 | 0.037 |
| predicted_RBI | 0.483 | -0.037 |
| predicted_SLG | 0.418 | 0.018 |
| predicted_SO | 0.667 | -0.097 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.136 | 0.000 |
| predicted_3B | 0.049 | 0.000 |
| predicted_AB | 3.855 | 0.000 |
| predicted_AVG | 0.220 | 0.005 |
| predicted_BB | 0.498 | 0.009 |
| predicted_H | 0.849 | 0.031 |
| predicted_HBP | 0.016 | 0.000 |
| predicted_HR | 0.172 | 0.008 |
| predicted_OBP | 0.309 | -0.018 |
| predicted_R | 0.669 | 0.041 |
| predicted_RBI | 0.515 | 0.032 |
| predicted_SLG | 0.414 | -0.004 |
| predicted_SO | 0.655 | -0.012 |
AB rounded to 4 (raw=4.19), rates preserved: AVG=0.202 HR/AB=0.041
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.136 |
| predicted_3B | 0.000 | -0.049 |
| predicted_AB | 4.000 | 0.145 |
| predicted_AVG | 0.250 | 0.030 |
| predicted_BB | 0.000 | -0.498 |
| predicted_H | 1.000 | 0.151 |
| predicted_HR | 0.000 | -0.172 |
| predicted_OBP | 0.250 | -0.059 |
| predicted_R | 1.000 | 0.331 |
| predicted_RBI | 0.000 | -0.515 |
| predicted_SLG | 0.250 | -0.164 |
| predicted_SO | 1.000 | 0.345 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | -1.000 |
| BB | 2.000 | 2.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 1.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 16.000 | 3.000 | 0.000 | 1.000 | 1.000 | 2.000 | 4.000 | 3.000 | 1.000 | 0.1875 | 0.3158 | 0.5000 | 0.1875 | 0.0625 | 0.1250 | 0.1875 | 0.0625 |
| last_10 | 0.20 | 10 | - | 30.000 | 9.000 | 0.000 | 1.000 | 2.000 | 3.000 | 8.000 | 5.000 | 2.000 | 0.3000 | 0.4000 | 0.5667 | 0.3000 | 0.0667 | 0.1000 | 0.1667 | 0.0667 |
| season | 0.60 | 110 | - | 394.000 | 95.000 | 18.000 | 3.000 | 11.000 | 54.000 | 65.000 | 53.000 | 84.000 | 0.2411 | 0.3326 | 0.3858 | 0.2411 | 0.0279 | 0.1371 | 0.1345 | 0.2132 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0980 |
| predicted_3B | 0.0770 |
| predicted_AB | 3.4150 |
| predicted_AVG | 0.2425 |
| predicted_BB | 0.5000 |
| predicted_H | 0.8280 |
| predicted_HBP | 0.0160 |
| predicted_HR | 0.1440 |
| predicted_OBP | 0.3404 |
| predicted_R | 0.6760 |
| predicted_RBI | 0.4340 |
| predicted_SLG | 0.4426 |
| predicted_SO | 0.5400 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1640 | 0.0980 | 0.1355 | model_form_blend |
| predicted_3B | 0.0270 | 0.0770 | 0.0486 | model_form_blend |
| predicted_AB | 4.1900 | 3.4150 | 3.8553 | model_form_blend |
| predicted_AVG | 0.1940 | 0.2425 | 0.2149 | model_form_blend |
| predicted_BB | 0.4820 | 0.5000 | 0.4898 | model_form_blend |
| predicted_H | 0.8100 | 0.8280 | 0.8178 | model_form_blend |
| predicted_HBP | - | 0.0160 | 0.0160 | form_only |
| predicted_HR | 0.1800 | 0.1440 | 0.1645 | model_form_blend |
| predicted_OBP | 0.3170 | 0.3404 | 0.3271 | model_form_blend |
| predicted_R | 0.5910 | 0.6760 | 0.6277 | model_form_blend |
| predicted_RBI | 0.5200 | 0.4340 | 0.4829 | model_form_blend |
| predicted_SLG | 0.4000 | 0.4426 | 0.4184 | model_form_blend |
| predicted_SO | 0.7640 | 0.5400 | 0.6673 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 416 |
| Season rows before report date | 416 |
| Report year | 2026 |
| Profile rows used | 110 |
| Hitter metrics | Hitting_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 Field | Value |
|---|---|
| PA | 5 |
| AB | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 0 |
| BB | 2 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.241 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 1 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 4 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | RF |
| gameID | 20260811_KC@LAD |
| game_type | full |
| mlbID | 663656 |
| playerID | 663656 |
| playerName | Kyle Tucker |
| pos | RF |
| started | True |
| startingPosition | RF |
| team | LAD |
| teamID | 14 |
| game_date | 2026-08-11 |
| sl_k_percent | 18.3 |
| sl_bb_percent | 12.5 |
| sl_woba | 0.322 |
| sl_xwoba | 0.336 |
| sl_xba | 0.262 |
| sl_xslg | 0.395 |
| sl_sweet_spot_percent | 34.3 |
| sl_barrel_batted_rate | 6.3 |
| sl_hard_hit_percent | 38.1 |
| sl_exit_velocity_avg | 88.8 |
| sl_launch_angle_avg | 17.2 |
| sl_whiff_percent | 21.9 |
| sl_swing_percent | 48.6 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.160 | 0.000 | 0.000 | Hitting_2B | 0.152 | 1.000 | -0.152 | -1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.590 | 4.000 | 5.000 | Hitting_AB | 4.101 | 4.000 | -0.101 | 0.000 |
| predicted_AVG | 0.258 | 0.000 | 0.200 | Hitting_AVG | 0.237 | 0.750 | -0.237 | -0.750 |
| predicted_BB | 0.272 | 1.000 | 0.000 | Hitting_BB | 0.290 | 0.000 | 0.710 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.017 | 0.000 | -0.017 | 0.000 |
| predicted_H | 1.180 | 0.000 | 1.000 | Hitting_H | 0.973 | 3.000 | -0.973 | -3.000 |
| predicted_HR | 0.230 | 0.000 | 0.000 | Hitting_HR | 0.209 | 1.000 | -0.209 | -1.000 |
| predicted_OBP | 0.318 | 0.200 | 0.200 | Hitting_OBP | 0.289 | 0.750 | -0.089 | -0.550 |
| predicted_R | 0.556 | 0.000 | 1.000 | Hitting_R | 0.653 | 2.000 | -0.653 | -2.000 |
| predicted_RBI | 0.540 | 0.000 | 1.000 | Hitting_RBI | 0.545 | 2.000 | -0.545 | -2.000 |
| predicted_SLG | 0.455 | 0.000 | 0.200 | Hitting_SLG | 0.427 | 1.750 | -0.427 | -1.750 |
| predicted_SO | 0.481 | 2.000 | 0.000 | Hitting_SO | 0.539 | 0.000 | 1.461 | 2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 7 |
| Better Metrics | 2 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_SO: 0.4810 -> 2.0000 (boost 1.5190, worse) |
| Biggest Deboost | predicted_H: 1.1800 -> 0.0000 (deboost -1.1800, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 5 | 0 | 5 | 0 | 5 | - | predicted_AB: 4.5900 -> 4.2492 (deboost -0.3408, 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. |
| 3 | team_form_snapshot | 2 | 2 | 0 | 2 | 0 | predicted_AVG: 0.2543 -> 0.2636 (boost 0.0093, better) | - | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 2 | 5 | 3 | 4 | predicted_AB: 4.2492 -> 5.0000 (boost 0.7508, better) | predicted_SO: 0.4553 -> 0.0000 (deboost -0.4553, better) | AB rounded to 5 (raw=4.59), rates preserved: AVG=0.244 HR/AB=0.046 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5809 -> 1.0000 (boost 0.4191, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4554 -> 0.2000 (deboost -0.2554, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 6 | 2 | 4 | 1 | 5 | predicted_SO: 0.0000 -> 2.0000 (boost 2.0000, worse) | predicted_AB: 5.0000 -> 4.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2000 -> 0.4554 (boost 0.2554, better) | - | Final player values currently stored in the game 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.16,
"predicted_3B": 0.0,
"predicted_AB": 4.59,
"predicted_AVG": 0.258,
"predicted_BB": 0.272,
"predicted_H": 1.18,
"predicted_HR": 0.23,
"predicted_OBP": 0.318,
"predicted_R": 0.556,
"predicted_RBI": 0.54,
"predicted_SLG": 0.455,
"predicted_SO": 0.481
},
"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.0004,
"predicted_AB": 4.2492,
"predicted_AVG": 0.2543,
"predicted_BB": 0.2763,
"predicted_H": 1.0798,
"predicted_HBP": 0.009,
"predicted_HR": 0.2006,
"predicted_OBP": 0.3113,
"predicted_R": 0.5449,
"predicted_RBI": 0.482,
"predicted_SLG": 0.4463,
"predicted_SO": 0.4635
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.16,
"after": 0.1843,
"delta": 0.0243,
"percent_delta": 0.1519,
"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.59,
"after": 4.2492,
"delta": -0.3408,
"percent_delta": -0.0742,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.258,
"after": 0.2543,
"delta": -0.0037,
"percent_delta": -0.0143,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.272,
"after": 0.2763,
"delta": 0.0043,
"percent_delta": 0.0158,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.18,
"after": 1.0798,
"delta": -0.1002,
"percent_delta": -0.0849,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.23,
"after": 0.2006,
"delta": -0.0294,
"percent_delta": -0.1278,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.318,
"after": 0.3113,
"delta": -0.0067,
"percent_delta": -0.0211,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.556,
"after": 0.5449,
"delta": -0.0111,
"percent_delta": -0.02,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.54,
"after": 0.482,
"delta": -0.058,
"percent_delta": -0.1074,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.455,
"after": 0.4463,
"delta": -0.0087,
"percent_delta": -0.0191,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.481,
"after": 0.4635,
"delta": -0.0175,
"percent_delta": -0.0364,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 0,
"deboosted_metrics": 5,
"better_metrics": 0,
"worse_metrics": 5,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.59,
"after": 4.2492,
"delta": -0.3408,
"percent_delta": -0.0742,
"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": 81
}
},
{
"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.0004,
"predicted_AB": 4.2492,
"predicted_AVG": 0.2636,
"predicted_BB": 0.2812,
"predicted_H": 1.1203,
"predicted_HBP": 0.009,
"predicted_HR": 0.2099,
"predicted_OBP": 0.3094,
"predicted_R": 0.5809,
"predicted_RBI": 0.5139,
"predicted_SLG": 0.4554,
"predicted_SO": 0.4553
},
"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.0004,
"after": 0.0004,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.2492,
"after": 4.2492,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2543,
"after": 0.2636,
"delta": 0.0093,
"percent_delta": 0.0366,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2763,
"after": 0.2812,
"delta": 0.0049,
"percent_delta": 0.0177,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0798,
"after": 1.1203,
"delta": 0.0405,
"percent_delta": 0.0375,
"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.2006,
"after": 0.2099,
"delta": 0.0093,
"percent_delta": 0.0464,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3113,
"after": 0.3094,
"delta": -0.0019,
"percent_delta": -0.0061,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5449,
"after": 0.5809,
"delta": 0.036,
"percent_delta": 0.0661,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.482,
"after": 0.5139,
"delta": 0.0319,
"percent_delta": 0.0662,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4463,
"after": 0.4554,
"delta": 0.0091,
"percent_delta": 0.0204,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.4635,
"after": 0.4553,
"delta": -0.0082,
"percent_delta": -0.0177,
"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.2543,
"after": 0.2636,
"delta": 0.0093,
"percent_delta": 0.0366,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=4.59), rates preserved: AVG=0.244 HR/AB=0.046",
"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.1843,
"after": 0.0,
"delta": -0.1843,
"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.2492,
"after": 5.0,
"delta": 0.7508,
"percent_delta": 0.1767,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2812,
"after": 0.0,
"delta": -0.2812,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.1203,
"after": 1.0,
"delta": -0.1203,
"percent_delta": -0.1074,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.009,
"after": 0.0,
"delta": -0.009,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2099,
"after": 0.0,
"delta": -0.2099,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5139,
"after": 1.0,
"delta": 0.4861,
"percent_delta": 0.9459,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.4553,
"after": 0.0,
"delta": -0.4553,
"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.2492,
"after": 5.0,
"delta": 0.7508,
"percent_delta": 0.1767,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.4553,
"after": 0.0,
"delta": -0.4553,
"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.5809,
"after": 1.0,
"delta": 0.4191,
"percent_delta": 0.7215,
"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.5809,
"after": 1.0,
"delta": 0.4191,
"percent_delta": 0.7215,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_AVG": 0.2,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.2,
"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.2636,
"after": 0.2,
"delta": -0.0636,
"percent_delta": -0.2413,
"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.3094,
"after": 0.2,
"delta": -0.1094,
"percent_delta": -0.3536,
"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.4554,
"after": 0.2,
"delta": -0.2554,
"percent_delta": -0.5608,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4554,
"after": 0.2,
"delta": -0.2554,
"percent_delta": -0.5608,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 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": 0.0,
"after": 2.0,
"delta": 2.0,
"percent_delta": null,
"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.0,
"after": 2.0,
"delta": 2.0,
"percent_delta": null,
"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": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2636,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3094,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4554,
"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": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2,
"after": 0.2636,
"delta": 0.0636,
"percent_delta": 0.3182,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2,
"after": 0.3094,
"delta": 0.1094,
"percent_delta": 0.5468,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.2,
"after": 0.4554,
"delta": 0.2554,
"percent_delta": 1.277,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.2,
"after": 0.4554,
"delta": 0.2554,
"percent_delta": 1.277,
"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.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.59,
"after": 4.0,
"delta": -0.59,
"percent_delta": -0.1285,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.258,
"after": 0.2636,
"delta": 0.0056,
"percent_delta": 0.0217,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.272,
"after": 1.0,
"delta": 0.728,
"percent_delta": 2.6765,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.18,
"after": 0.0,
"delta": -1.18,
"percent_delta": -1.0,
"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.318,
"after": 0.3094,
"delta": -0.0086,
"percent_delta": -0.027,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.556,
"after": 0.0,
"delta": -0.556,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"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.455,
"after": 0.4554,
"delta": 0.0004,
"percent_delta": 0.0009,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.481,
"after": 2.0,
"delta": 1.519,
"percent_delta": 3.158,
"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.481,
"after": 2.0,
"delta": 1.519,
"percent_delta": 3.158,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.18,
"after": 0.0,
"delta": -1.18,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.160 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.590 | - |
| predicted_AVG | 0.258 | - |
| predicted_BB | 0.272 | - |
| predicted_H | 1.180 | - |
| predicted_HR | 0.230 | - |
| predicted_OBP | 0.318 | - |
| predicted_R | 0.556 | - |
| predicted_RBI | 0.540 | - |
| predicted_SLG | 0.455 | - |
| predicted_SO | 0.481 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.184 | 0.024 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 4.249 | -0.341 |
| predicted_AVG | 0.254 | -0.004 |
| predicted_BB | 0.276 | 0.004 |
| predicted_H | 1.080 | -0.100 |
| predicted_HBP | 0.009 | - |
| predicted_HR | 0.201 | -0.029 |
| predicted_OBP | 0.311 | -0.007 |
| predicted_R | 0.545 | -0.011 |
| predicted_RBI | 0.482 | -0.058 |
| predicted_SLG | 0.446 | -0.009 |
| predicted_SO | 0.464 | -0.017 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.184 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 4.249 | 0.000 |
| predicted_AVG | 0.264 | 0.009 |
| predicted_BB | 0.281 | 0.005 |
| predicted_H | 1.120 | 0.040 |
| predicted_HBP | 0.009 | 0.000 |
| predicted_HR | 0.210 | 0.009 |
| predicted_OBP | 0.309 | -0.002 |
| predicted_R | 0.581 | 0.036 |
| predicted_RBI | 0.514 | 0.032 |
| predicted_SLG | 0.455 | 0.009 |
| predicted_SO | 0.455 | -0.008 |
AB rounded to 5 (raw=4.59), rates preserved: AVG=0.244 HR/AB=0.046
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 5.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 0.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 5.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 0.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.184 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 5.000 | 0.751 |
| predicted_AVG | 0.200 | -0.064 |
| predicted_BB | 0.000 | -0.281 |
| predicted_H | 1.000 | -0.120 |
| predicted_HR | 0.000 | -0.210 |
| predicted_OBP | 0.200 | -0.109 |
| predicted_R | 1.000 | 0.419 |
| predicted_RBI | 1.000 | 0.486 |
| predicted_SLG | 0.200 | -0.255 |
| predicted_SO | 0.000 | -0.455 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | -1.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.000 | 2.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 18.000 | 5.000 | 2.000 | 0.000 | 1.000 | 2.000 | 3.000 | 2.000 | 2.000 | 0.2778 | 0.3500 | 0.5556 | 0.2778 | 0.0556 | 0.1111 | 0.1111 | 0.1111 |
| last_10 | 0.20 | 10 | - | 35.000 | 9.000 | 2.000 | 0.000 | 1.000 | 2.000 | 4.000 | 2.000 | 2.000 | 0.2571 | 0.2973 | 0.4000 | 0.2571 | 0.0286 | 0.0571 | 0.0571 | 0.0571 |
| season | 0.60 | 81 | - | 320.000 | 76.000 | 13.000 | 0.000 | 14.000 | 38.000 | 45.000 | 22.000 | 39.000 | 0.2375 | 0.2878 | 0.4094 | 0.2375 | 0.0437 | 0.1187 | 0.0688 | 0.1219 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2170 |
| predicted_3B | 0.0010 |
| predicted_AB | 3.7910 |
| predicted_AVG | 0.2494 |
| predicted_BB | 0.2820 |
| predicted_H | 0.9450 |
| predicted_HBP | 0.0090 |
| predicted_HR | 0.1610 |
| predicted_OBP | 0.3024 |
| predicted_R | 0.5300 |
| predicted_RBI | 0.4040 |
| predicted_SLG | 0.4345 |
| predicted_SO | 0.4400 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1600 | 0.2170 | 0.1843 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.5900 | 3.7910 | 4.2492 | model_form_blend |
| predicted_AVG | 0.2580 | 0.2494 | 0.2543 | model_form_blend |
| predicted_BB | 0.2720 | 0.2820 | 0.2763 | model_form_blend |
| predicted_H | 1.1800 | 0.9450 | 1.0798 | model_form_blend |
| predicted_HBP | - | 0.0090 | 0.0090 | form_only |
| predicted_HR | 0.2300 | 0.1610 | 0.2006 | model_form_blend |
| predicted_OBP | 0.3180 | 0.3024 | 0.3113 | model_form_blend |
| predicted_R | 0.5560 | 0.5300 | 0.5449 | model_form_blend |
| predicted_RBI | 0.5400 | 0.4040 | 0.4820 | model_form_blend |
| predicted_SLG | 0.4550 | 0.4345 | 0.4463 | model_form_blend |
| predicted_SO | 0.4810 | 0.4400 | 0.4635 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 297 |
| Season rows before report date | 297 |
| Report year | 2026 |
| Profile rows used | 81 |
| Hitter metrics | Hitting_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 Field | Value |
|---|---|
| PA | 5 |
| AB | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.238 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 1 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.75 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 3 |
| Hitting_HBP | 0 |
| Hitting_HR | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 2 |
| Hitting_RBI | 2 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 7 |
| Hitting_battingOrder | 6 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | SS |
| gameID | 20260811_KC@LAD |
| game_type | full |
| mlbID | 605141 |
| playerID | 605141 |
| playerName | Mookie Betts |
| pos | SS |
| started | True |
| startingPosition | SS |
| team | LAD |
| teamID | 14 |
| game_date | 2026-08-11 |
| sl_k_percent | 11.7 |
| sl_bb_percent | 7.1 |
| sl_woba | 0.303 |
| sl_xwoba | 0.329 |
| sl_xba | 0.276 |
| sl_xslg | 0.431 |
| sl_sweet_spot_percent | 39.9 |
| sl_barrel_batted_rate | 7.4 |
| sl_hard_hit_percent | 38.5 |
| sl_exit_velocity_avg | 90.5 |
| sl_launch_angle_avg | 18.6 |
| sl_whiff_percent | 12.4 |
| sl_swing_percent | 41.8 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.197 | 0.000 | 0.000 | Hitting_2B | 0.216 | 0.000 | -0.216 | 0.000 |
| predicted_3B | 0.017 | 0.000 | 0.000 | Hitting_3B | 0.013 | 0.000 | -0.013 | 0.000 |
| predicted_AB | 5.040 | 4.000 | 5.000 | Hitting_AB | 3.969 | 4.000 | 0.031 | 0.000 |
| predicted_AVG | 0.262 | 0.000 | 0.200 | Hitting_AVG | 0.270 | 0.250 | -0.270 | -0.250 |
| predicted_BB | 0.368 | 1.000 | 0.000 | Hitting_BB | 0.370 | 1.000 | 0.630 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.057 | 0.000 | -0.057 | 0.000 |
| predicted_H | 1.320 | 0.000 | 1.000 | Hitting_H | 1.073 | 1.000 | -1.073 | -1.000 |
| predicted_HR | 0.180 | 0.000 | 0.000 | Hitting_HR | 0.176 | 0.000 | -0.176 | 0.000 |
| predicted_OBP | 0.349 | 0.200 | 0.200 | Hitting_OBP | 0.336 | 0.400 | -0.136 | -0.200 |
| predicted_R | 0.564 | 0.000 | 1.000 | Hitting_R | 0.656 | 0.000 | -0.656 | 0.000 |
| predicted_RBI | 0.650 | 0.000 | 1.000 | Hitting_RBI | 0.685 | 0.000 | -0.685 | 0.000 |
| predicted_SLG | 0.436 | 0.000 | 0.200 | Hitting_SLG | 0.464 | 0.250 | -0.464 | -0.250 |
| predicted_SO | 0.863 | 3.000 | 1.000 | Hitting_SO | 0.870 | 0.000 | 2.130 | 3.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 4 |
| Deboosted Metrics | 7 |
| Better Metrics | 3 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_SO: 0.8630 -> 3.0000 (boost 2.1370, worse) |
| Biggest Deboost | predicted_H: 1.3200 -> 0.0000 (deboost -1.3200, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 5 | 2 | 3 | 2 | 3 | predicted_SLG: 0.4360 -> 0.4477 (boost 0.0117, better) | predicted_AB: 5.0400 -> 4.5161 (deboost -0.5239, 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. |
| 3 | team_form_snapshot | 2 | 1 | 1 | 1 | 1 | predicted_AVG: 0.2712 -> 0.2798 (boost 0.0086, better) | predicted_OBP: 0.3535 -> 0.3402 (deboost -0.0133, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 3 | 4 | 2 | 5 | predicted_AB: 4.5161 -> 5.0000 (boost 0.4839, better) | predicted_BB: 0.4129 -> 0.0000 (deboost -0.4129, worse) | AB rounded to 5 (raw=5.04), rates preserved: AVG=0.251 HR/AB=0.035 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5348 -> 1.0000 (boost 0.4652, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4478 -> 0.2000 (deboost -0.2478, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 6 | 2 | 4 | 1 | 5 | predicted_SO: 1.0000 -> 3.0000 (boost 2.0000, worse) | predicted_AB: 5.0000 -> 4.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2000 -> 0.4478 (boost 0.2478, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "681624",
"player_name": "Andy Pages",
"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.197,
"predicted_3B": 0.017,
"predicted_AB": 5.04,
"predicted_AVG": 0.262,
"predicted_BB": 0.368,
"predicted_H": 1.32,
"predicted_HR": 0.18,
"predicted_OBP": 0.349,
"predicted_R": 0.564,
"predicted_RBI": 0.65,
"predicted_SLG": 0.436,
"predicted_SO": 0.863
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.197,
"predicted_3B": 0.014,
"predicted_AB": 4.5161,
"predicted_AVG": 0.2712,
"predicted_BB": 0.4057,
"predicted_H": 1.2181,
"predicted_HBP": 0.026,
"predicted_HR": 0.17,
"predicted_OBP": 0.3535,
"predicted_R": 0.5016,
"predicted_RBI": 0.6101,
"predicted_SLG": 0.4477,
"predicted_SO": 0.8782
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.197,
"after": 0.197,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.017,
"after": 0.014,
"delta": -0.003,
"percent_delta": -0.1765,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.04,
"after": 4.5161,
"delta": -0.5239,
"percent_delta": -0.1039,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.262,
"after": 0.2712,
"delta": 0.0092,
"percent_delta": 0.0351,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.368,
"after": 0.4057,
"delta": 0.0377,
"percent_delta": 0.1024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.32,
"after": 1.2181,
"delta": -0.1019,
"percent_delta": -0.0772,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.18,
"after": 0.17,
"delta": -0.01,
"percent_delta": -0.0556,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.349,
"after": 0.3535,
"delta": 0.0045,
"percent_delta": 0.0129,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.564,
"after": 0.5016,
"delta": -0.0624,
"percent_delta": -0.1106,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.65,
"after": 0.6101,
"delta": -0.0399,
"percent_delta": -0.0614,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.436,
"after": 0.4477,
"delta": 0.0117,
"percent_delta": 0.0268,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.863,
"after": 0.8782,
"delta": 0.0152,
"percent_delta": 0.0176,
"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_SLG",
"before": 0.436,
"after": 0.4477,
"delta": 0.0117,
"percent_delta": 0.0268,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 5.04,
"after": 4.5161,
"delta": -0.5239,
"percent_delta": -0.1039,
"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": 117
}
},
{
"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.197,
"predicted_3B": 0.014,
"predicted_AB": 4.5161,
"predicted_AVG": 0.2798,
"predicted_BB": 0.4129,
"predicted_H": 1.2638,
"predicted_HBP": 0.026,
"predicted_HR": 0.1779,
"predicted_OBP": 0.3402,
"predicted_R": 0.5348,
"predicted_RBI": 0.6504,
"predicted_SLG": 0.4478,
"predicted_SO": 0.8627
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.197,
"after": 0.197,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.014,
"after": 0.014,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.5161,
"after": 4.5161,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2712,
"after": 0.2798,
"delta": 0.0086,
"percent_delta": 0.0317,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4057,
"after": 0.4129,
"delta": 0.0072,
"percent_delta": 0.0177,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.2181,
"after": 1.2638,
"delta": 0.0457,
"percent_delta": 0.0375,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.026,
"after": 0.026,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.17,
"after": 0.1779,
"delta": 0.0079,
"percent_delta": 0.0465,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3535,
"after": 0.3402,
"delta": -0.0133,
"percent_delta": -0.0376,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5016,
"after": 0.5348,
"delta": 0.0332,
"percent_delta": 0.0662,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6101,
"after": 0.6504,
"delta": 0.0403,
"percent_delta": 0.0661,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4477,
"after": 0.4478,
"delta": 0.0001,
"percent_delta": 0.0002,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.8782,
"after": 0.8627,
"delta": -0.0155,
"percent_delta": -0.0176,
"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.2712,
"after": 0.2798,
"delta": 0.0086,
"percent_delta": 0.0317,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3535,
"after": 0.3402,
"delta": -0.0133,
"percent_delta": -0.0376,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=5.04), rates preserved: AVG=0.251 HR/AB=0.035",
"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.197,
"after": 0.0,
"delta": -0.197,
"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": 4.5161,
"after": 5.0,
"delta": 0.4839,
"percent_delta": 0.1071,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4129,
"after": 0.0,
"delta": -0.4129,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.2638,
"after": 1.0,
"delta": -0.2638,
"percent_delta": -0.2087,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.026,
"after": 0.0,
"delta": -0.026,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1779,
"after": 0.0,
"delta": -0.1779,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6504,
"after": 1.0,
"delta": 0.3496,
"percent_delta": 0.5375,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8627,
"after": 1.0,
"delta": 0.1373,
"percent_delta": 0.1592,
"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.5161,
"after": 5.0,
"delta": 0.4839,
"percent_delta": 0.1071,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.4129,
"after": 0.0,
"delta": -0.4129,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "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.5348,
"after": 1.0,
"delta": 0.4652,
"percent_delta": 0.8699,
"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.5348,
"after": 1.0,
"delta": 0.4652,
"percent_delta": 0.8699,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_AVG": 0.2,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.2,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2798,
"after": 0.2,
"delta": -0.0798,
"percent_delta": -0.2852,
"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.3402,
"after": 0.2,
"delta": -0.1402,
"percent_delta": -0.4121,
"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.4478,
"after": 0.2,
"delta": -0.2478,
"percent_delta": -0.5534,
"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.4478,
"after": 0.2,
"delta": -0.2478,
"percent_delta": -0.5534,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 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": 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": 3.0,
"delta": 2.0,
"percent_delta": 2.0,
"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": 1.0,
"after": 3.0,
"delta": 2.0,
"percent_delta": 2.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 5.0,
"after": 4.0,
"delta": -1.0,
"percent_delta": -0.2,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2798,
"predicted_BB": 1.0,
"predicted_CF": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3402,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4478,
"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.2,
"after": 0.2798,
"delta": 0.0798,
"percent_delta": 0.3992,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2,
"after": 0.3402,
"delta": 0.1402,
"percent_delta": 0.7008,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.2,
"after": 0.4478,
"delta": 0.2478,
"percent_delta": 1.2391,
"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.2,
"after": 0.4478,
"delta": 0.2478,
"percent_delta": 1.2391,
"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.197,
"after": 0.0,
"delta": -0.197,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.017,
"after": 0.0,
"delta": -0.017,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.04,
"after": 4.0,
"delta": -1.04,
"percent_delta": -0.2063,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.262,
"after": 0.2798,
"delta": 0.0178,
"percent_delta": 0.0679,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.368,
"after": 1.0,
"delta": 0.632,
"percent_delta": 1.7174,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.32,
"after": 0.0,
"delta": -1.32,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.18,
"after": 0.0,
"delta": -0.18,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.349,
"after": 0.3402,
"delta": -0.0088,
"percent_delta": -0.0252,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.564,
"after": 0.0,
"delta": -0.564,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.65,
"after": 0.0,
"delta": -0.65,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.436,
"after": 0.4478,
"delta": 0.0118,
"percent_delta": 0.0271,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.863,
"after": 3.0,
"delta": 2.137,
"percent_delta": 2.4762,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 4,
"deboosted_metrics": 7,
"better_metrics": 3,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.863,
"after": 3.0,
"delta": 2.137,
"percent_delta": 2.4762,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.32,
"after": 0.0,
"delta": -1.32,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.197 | - |
| predicted_3B | 0.017 | - |
| predicted_AB | 5.040 | - |
| predicted_AVG | 0.262 | - |
| predicted_BB | 0.368 | - |
| predicted_H | 1.320 | - |
| predicted_HR | 0.180 | - |
| predicted_OBP | 0.349 | - |
| predicted_R | 0.564 | - |
| predicted_RBI | 0.650 | - |
| predicted_SLG | 0.436 | - |
| predicted_SO | 0.863 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.197 | 0.000 |
| predicted_3B | 0.014 | -0.003 |
| predicted_AB | 4.516 | -0.524 |
| predicted_AVG | 0.271 | 0.009 |
| predicted_BB | 0.406 | 0.038 |
| predicted_H | 1.218 | -0.102 |
| predicted_HBP | 0.026 | - |
| predicted_HR | 0.170 | -0.010 |
| predicted_OBP | 0.353 | 0.005 |
| predicted_R | 0.502 | -0.062 |
| predicted_RBI | 0.610 | -0.040 |
| predicted_SLG | 0.448 | 0.012 |
| predicted_SO | 0.878 | 0.015 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.197 | 0.000 |
| predicted_3B | 0.014 | 0.000 |
| predicted_AB | 4.516 | 0.000 |
| predicted_AVG | 0.280 | 0.009 |
| predicted_BB | 0.413 | 0.007 |
| predicted_H | 1.264 | 0.046 |
| predicted_HBP | 0.026 | 0.000 |
| predicted_HR | 0.178 | 0.008 |
| predicted_OBP | 0.340 | -0.013 |
| predicted_R | 0.535 | 0.033 |
| predicted_RBI | 0.650 | 0.040 |
| predicted_SLG | 0.448 | 0.000 |
| predicted_SO | 0.863 | -0.015 |
AB rounded to 5 (raw=5.04), rates preserved: AVG=0.251 HR/AB=0.035
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 5.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 5.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.197 |
| predicted_3B | 0.000 | -0.014 |
| predicted_AB | 5.000 | 0.484 |
| predicted_AVG | 0.200 | -0.080 |
| predicted_BB | 0.000 | -0.413 |
| predicted_H | 1.000 | -0.264 |
| predicted_HR | 0.000 | -0.178 |
| predicted_OBP | 0.200 | -0.140 |
| predicted_R | 1.000 | 0.465 |
| predicted_RBI | 1.000 | 0.350 |
| predicted_SLG | 0.200 | -0.248 |
| predicted_SO | 1.000 | 0.137 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | -1.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 3.000 | 2.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 18.000 | 6.000 | 1.000 | 0.000 | 1.000 | 2.000 | 1.000 | 4.000 | 5.000 | 0.3333 | 0.4545 | 0.5556 | 0.3333 | 0.0556 | 0.1111 | 0.2222 | 0.2778 |
| last_10 | 0.20 | 10 | - | 39.000 | 11.000 | 2.000 | 0.000 | 1.000 | 5.000 | 2.000 | 4.000 | 9.000 | 0.2821 | 0.3488 | 0.4103 | 0.2821 | 0.0256 | 0.1282 | 0.1026 | 0.2308 |
| season | 0.60 | 117 | - | 455.000 | 123.000 | 23.000 | 2.000 | 19.000 | 75.000 | 66.000 | 43.000 | 101.000 | 0.2703 | 0.3366 | 0.4549 | 0.2703 | 0.0418 | 0.1648 | 0.0945 | 0.2220 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1970 |
| predicted_3B | 0.0100 |
| predicted_AB | 3.8320 |
| predicted_AVG | 0.2832 |
| predicted_BB | 0.4550 |
| predicted_H | 1.0850 |
| predicted_HBP | 0.0260 |
| predicted_HR | 0.1570 |
| predicted_OBP | 0.3594 |
| predicted_R | 0.4200 |
| predicted_RBI | 0.5580 |
| predicted_SLG | 0.4629 |
| predicted_SO | 0.8980 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1970 | 0.1970 | 0.1970 | model_form_blend |
| predicted_3B | 0.0170 | 0.0100 | 0.0140 | model_form_blend |
| predicted_AB | 5.0400 | 3.8320 | 4.5161 | model_form_blend |
| predicted_AVG | 0.2620 | 0.2832 | 0.2712 | model_form_blend |
| predicted_BB | 0.3680 | 0.4550 | 0.4057 | model_form_blend |
| predicted_H | 1.3200 | 1.0850 | 1.2181 | model_form_blend |
| predicted_HBP | - | 0.0260 | 0.0260 | form_only |
| predicted_HR | 0.1800 | 0.1570 | 0.1700 | model_form_blend |
| predicted_OBP | 0.3490 | 0.3594 | 0.3535 | model_form_blend |
| predicted_R | 0.5640 | 0.4200 | 0.5016 | model_form_blend |
| predicted_RBI | 0.6500 | 0.5580 | 0.6101 | model_form_blend |
| predicted_SLG | 0.4360 | 0.4629 | 0.4477 | model_form_blend |
| predicted_SO | 0.8630 | 0.8980 | 0.8782 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 454 |
| Season rows before report date | 454 |
| Report year | 2026 |
| Profile rows used | 117 |
| Hitter metrics | Hitting_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 Field | Value |
|---|---|
| PA | 5 |
| AB | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 3 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.27 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 1 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 3 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | CF |
| gameID | 20260811_KC@LAD |
| game_type | full |
| mlbID | 681624 |
| playerID | 681624 |
| playerName | Andy Pages |
| pos | CF |
| started | True |
| startingPosition | CF |
| team | LAD |
| teamID | 14 |
| game_date | 2026-08-11 |
| sl_k_percent | 20.1 |
| sl_bb_percent | 8.4 |
| sl_woba | 0.344 |
| sl_xwoba | 0.338 |
| sl_xba | 0.268 |
| sl_xslg | 0.437 |
| sl_sweet_spot_percent | 36.3 |
| sl_barrel_batted_rate | 7.8 |
| sl_hard_hit_percent | 42.7 |
| sl_exit_velocity_avg | 89.1 |
| sl_launch_angle_avg | 15.9 |
| sl_whiff_percent | 22.7 |
| sl_swing_percent | 48.3 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.145 | 0.000 | 0.000 | Hitting_2B | 0.127 | 1.000 | -0.127 | -1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.518 | 5.000 | 4.000 | Hitting_AB | 3.655 | 1.000 | 1.345 | 4.000 |
| predicted_AVG | 0.261 | 0.200 | 0.250 | Hitting_AVG | 0.246 | 1.000 | -0.046 | -0.800 |
| predicted_BB | 0.313 | 0.000 | 0.000 | Hitting_BB | 0.366 | 0.000 | -0.366 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.400 | 1.000 | 1.000 | Hitting_H | 0.898 | 1.000 | 0.102 | 0.000 |
| predicted_HR | 0.080 | 0.000 | 0.000 | Hitting_HR | 0.127 | 0.000 | -0.127 | 0.000 |
| predicted_OBP | 0.297 | 0.200 | 0.250 | Hitting_OBP | 0.316 | 1.000 | -0.116 | -0.800 |
| predicted_R | 0.554 | 1.000 | 1.000 | Hitting_R | 0.606 | 0.000 | 0.394 | 1.000 |
| predicted_RBI | 0.260 | 0.000 | 0.000 | Hitting_RBI | 0.574 | 1.000 | -0.574 | -1.000 |
| predicted_SLG | 0.412 | 0.200 | 0.250 | Hitting_SLG | 0.384 | 2.000 | -0.184 | -1.800 |
| predicted_SO | 1.036 | 2.000 | 1.000 | Hitting_SO | 1.116 | 0.000 | 0.884 | 2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 4 |
| Deboosted Metrics | 7 |
| Better Metrics | 3 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_AB: 3.5180 -> 5.0000 (boost 1.4820, better) |
| Biggest Deboost | predicted_BB: 0.3130 -> 0.0000 (deboost -0.3130, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 8 | 2 | 6 | 2 | 6 | predicted_H: 0.4000 -> 0.5590 (boost 0.1590, better) | predicted_AB: 3.5180 -> 3.4321 (deboost -0.0859, 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. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4015 -> 0.3007 (deboost -0.1008, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 2 | 4 | 2 | 4 | predicted_AB: 3.4321 -> 4.0000 (boost 0.5679, better) | predicted_RBI: 0.3479 -> 0.0000 (deboost -0.3479, worse) | AB rounded to 4 (raw=3.52), rates preserved: AVG=0.165 HR/AB=0.029 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=7.0, weight=0.076, BvP AVG=0.143) |
| 6 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5141 -> 1.0000 (boost 0.4859, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.1690 -> 0.2500 (boost 0.0810, better) | predicted_SLG: 0.3007 -> 0.2500 (deboost -0.0507, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 2 | 2 | 0 | 1 | 1 | predicted_AB: 4.0000 -> 5.0000 (boost 1.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2500 -> 0.3007 (boost 0.0507, better) | predicted_AVG: 0.2500 -> 0.1690 (deboost -0.0810, worse) | Final player values currently stored in the game 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.145,
"predicted_3B": 0.0,
"predicted_AB": 3.518,
"predicted_AVG": 0.261,
"predicted_BB": 0.313,
"predicted_H": 0.4,
"predicted_HR": 0.08,
"predicted_OBP": 0.297,
"predicted_R": 0.554,
"predicted_RBI": 0.26,
"predicted_SLG": 0.412,
"predicted_SO": 1.036
},
"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.148,
"predicted_3B": 0.0004,
"predicted_AB": 3.4321,
"predicted_AVG": 0.2492,
"predicted_BB": 0.2573,
"predicted_H": 0.559,
"predicted_HBP": 0.015,
"predicted_HR": 0.0966,
"predicted_OBP": 0.2866,
"predicted_R": 0.4822,
"predicted_RBI": 0.3263,
"predicted_SLG": 0.4015,
"predicted_SO": 1.0024
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.145,
"after": 0.148,
"delta": 0.003,
"percent_delta": 0.0207,
"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.518,
"after": 3.4321,
"delta": -0.0859,
"percent_delta": -0.0244,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.261,
"after": 0.2492,
"delta": -0.0118,
"percent_delta": -0.0452,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.313,
"after": 0.2573,
"delta": -0.0557,
"percent_delta": -0.178,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.4,
"after": 0.559,
"delta": 0.159,
"percent_delta": 0.3975,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.08,
"after": 0.0966,
"delta": 0.0166,
"percent_delta": 0.2075,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.297,
"after": 0.2866,
"delta": -0.0104,
"percent_delta": -0.035,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.554,
"after": 0.4822,
"delta": -0.0718,
"percent_delta": -0.1296,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.26,
"after": 0.3263,
"delta": 0.0663,
"percent_delta": 0.255,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.412,
"after": 0.4015,
"delta": -0.0105,
"percent_delta": -0.0255,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.036,
"after": 1.0024,
"delta": -0.0336,
"percent_delta": -0.0324,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 2,
"deboosted_metrics": 6,
"better_metrics": 2,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.4,
"after": 0.559,
"delta": 0.159,
"percent_delta": 0.3975,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.518,
"after": 3.4321,
"delta": -0.0859,
"percent_delta": -0.0244,
"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": 83
}
},
{
"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.148,
"predicted_3B": 0.0004,
"predicted_AB": 3.4321,
"predicted_AVG": 0.169,
"predicted_BB": 0.2619,
"predicted_H": 0.58,
"predicted_HBP": 0.015,
"predicted_HR": 0.1011,
"predicted_OBP": 0.2279,
"predicted_R": 0.5141,
"predicted_RBI": 0.3479,
"predicted_SLG": 0.3007,
"predicted_SO": 0.9847
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.148,
"after": 0.148,
"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.4321,
"after": 3.4321,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2492,
"after": 0.169,
"delta": -0.0802,
"percent_delta": -0.3218,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2573,
"after": 0.2619,
"delta": 0.0046,
"percent_delta": 0.0179,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.559,
"after": 0.58,
"delta": 0.021,
"percent_delta": 0.0376,
"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.0966,
"after": 0.1011,
"delta": 0.0045,
"percent_delta": 0.0466,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2866,
"after": 0.2279,
"delta": -0.0587,
"percent_delta": -0.2048,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4822,
"after": 0.5141,
"delta": 0.0319,
"percent_delta": 0.0662,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3263,
"after": 0.3479,
"delta": 0.0216,
"percent_delta": 0.0662,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4015,
"after": 0.3007,
"delta": -0.1008,
"percent_delta": -0.2511,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0024,
"after": 0.9847,
"delta": -0.0177,
"percent_delta": -0.0177,
"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.4015,
"after": 0.3007,
"delta": -0.1008,
"percent_delta": -0.2511,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.52), rates preserved: AVG=0.165 HR/AB=0.029",
"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.148,
"after": 0.0,
"delta": -0.148,
"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.4321,
"after": 4.0,
"delta": 0.5679,
"percent_delta": 0.1655,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2619,
"after": 0.0,
"delta": -0.2619,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.58,
"after": 1.0,
"delta": 0.42,
"percent_delta": 0.7241,
"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.1011,
"after": 0.0,
"delta": -0.1011,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3479,
"after": 0.0,
"delta": -0.3479,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9847,
"after": 1.0,
"delta": 0.0153,
"percent_delta": 0.0155,
"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_AB",
"before": 3.4321,
"after": 4.0,
"delta": 0.5679,
"percent_delta": 0.1655,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.3479,
"after": 0.0,
"delta": -0.3479,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=7.0, weight=0.076, BvP AVG=0.143)",
"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.9243,
"bvp": 0.0757
},
"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.5141,
"after": 1.0,
"delta": 0.4859,
"percent_delta": 0.9451,
"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.5141,
"after": 1.0,
"delta": 0.4859,
"percent_delta": 0.9451,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 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.169,
"after": 0.25,
"delta": 0.081,
"percent_delta": 0.4793,
"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.2279,
"after": 0.25,
"delta": 0.0221,
"percent_delta": 0.097,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3007,
"after": 0.25,
"delta": -0.0507,
"percent_delta": -0.1686,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.169,
"after": 0.25,
"delta": 0.081,
"percent_delta": 0.4793,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3007,
"after": 0.25,
"delta": -0.0507,
"percent_delta": -0.1686,
"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": 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": 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": 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.169,
"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.2279,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3007,
"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.25,
"after": 0.169,
"delta": -0.081,
"percent_delta": -0.3241,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.2279,
"delta": -0.0221,
"percent_delta": -0.0884,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3007,
"delta": 0.0507,
"percent_delta": 0.2027,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3007,
"delta": 0.0507,
"percent_delta": 0.2027,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.169,
"delta": -0.081,
"percent_delta": -0.3241,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.145,
"after": 0.0,
"delta": -0.145,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.518,
"after": 5.0,
"delta": 1.482,
"percent_delta": 0.4213,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.261,
"after": 0.169,
"delta": -0.092,
"percent_delta": -0.3525,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.313,
"after": 0.0,
"delta": -0.313,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.4,
"after": 1.0,
"delta": 0.6,
"percent_delta": 1.5,
"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.297,
"after": 0.2279,
"delta": -0.0691,
"percent_delta": -0.2327,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.554,
"after": 1.0,
"delta": 0.446,
"percent_delta": 0.8051,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.26,
"after": 0.0,
"delta": -0.26,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.412,
"after": 0.3007,
"delta": -0.1113,
"percent_delta": -0.2701,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.036,
"after": 2.0,
"delta": 0.964,
"percent_delta": 0.9305,
"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.518,
"after": 5.0,
"delta": 1.482,
"percent_delta": 0.4213,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.313,
"after": 0.0,
"delta": -0.313,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.145 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.518 | - |
| predicted_AVG | 0.261 | - |
| predicted_BB | 0.313 | - |
| predicted_H | 0.400 | - |
| predicted_HR | 0.080 | - |
| predicted_OBP | 0.297 | - |
| predicted_R | 0.554 | - |
| predicted_RBI | 0.260 | - |
| predicted_SLG | 0.412 | - |
| predicted_SO | 1.036 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.148 | 0.003 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.432 | -0.086 |
| predicted_AVG | 0.249 | -0.012 |
| predicted_BB | 0.257 | -0.056 |
| predicted_H | 0.559 | 0.159 |
| predicted_HBP | 0.015 | - |
| predicted_HR | 0.097 | 0.017 |
| predicted_OBP | 0.287 | -0.010 |
| predicted_R | 0.482 | -0.072 |
| predicted_RBI | 0.326 | 0.066 |
| predicted_SLG | 0.402 | -0.010 |
| predicted_SO | 1.002 | -0.034 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.148 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.432 | 0.000 |
| predicted_AVG | 0.169 | -0.080 |
| predicted_BB | 0.262 | 0.005 |
| predicted_H | 0.580 | 0.021 |
| predicted_HBP | 0.015 | 0.000 |
| predicted_HR | 0.101 | 0.004 |
| predicted_OBP | 0.228 | -0.059 |
| predicted_R | 0.514 | 0.032 |
| predicted_RBI | 0.348 | 0.022 |
| predicted_SLG | 0.301 | -0.101 |
| predicted_SO | 0.985 | -0.018 |
AB rounded to 4 (raw=3.52), rates preserved: AVG=0.165 HR/AB=0.029
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=7.0, weight=0.076, BvP AVG=0.143)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.148 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 4.000 | 0.568 |
| predicted_AVG | 0.250 | 0.081 |
| predicted_BB | 0.000 | -0.262 |
| predicted_H | 1.000 | 0.420 |
| predicted_HR | 0.000 | -0.101 |
| predicted_OBP | 0.250 | 0.022 |
| predicted_R | 1.000 | 0.486 |
| predicted_RBI | 0.000 | -0.348 |
| predicted_SLG | 0.250 | -0.051 |
| predicted_SO | 1.000 | 0.015 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 5.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 1.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 14.000 | 2.000 | 1.000 | 0.000 | 0.000 | 1.000 | 0.000 | 0.000 | 5.000 | 0.1429 | 0.1429 | 0.2143 | 0.1429 | 0.0000 | 0.0714 | 0.0000 | 0.3571 |
| last_10 | 0.20 | 10 | - | 30.000 | 8.000 | 1.000 | 0.000 | 2.000 | 4.000 | 3.000 | 0.000 | 7.000 | 0.2667 | 0.2667 | 0.5000 | 0.2667 | 0.0667 | 0.1333 | 0.0000 | 0.2333 |
| season | 0.60 | 83 | - | 292.000 | 73.000 | 12.000 | 0.000 | 11.000 | 41.000 | 46.000 | 26.000 | 86.000 | 0.2500 | 0.3127 | 0.4041 | 0.2500 | 0.0377 | 0.1404 | 0.0890 | 0.2945 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1520 |
| predicted_3B | 0.0010 |
| predicted_AB | 3.3160 |
| predicted_AVG | 0.2333 |
| predicted_BB | 0.1820 |
| predicted_H | 0.7740 |
| predicted_HBP | 0.0150 |
| predicted_HR | 0.1190 |
| predicted_OBP | 0.2726 |
| predicted_R | 0.3850 |
| predicted_RBI | 0.4160 |
| predicted_SLG | 0.3873 |
| predicted_SO | 0.9570 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1450 | 0.1520 | 0.1480 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.5180 | 3.3160 | 3.4321 | model_form_blend |
| predicted_AVG | 0.2610 | 0.2333 | 0.2492 | model_form_blend |
| predicted_BB | 0.3130 | 0.1820 | 0.2573 | model_form_blend |
| predicted_H | 0.4000 | 0.7740 | 0.5590 | model_form_blend |
| predicted_HBP | - | 0.0150 | 0.0150 | form_only |
| predicted_HR | 0.0800 | 0.1190 | 0.0966 | model_form_blend |
| predicted_OBP | 0.2970 | 0.2726 | 0.2866 | model_form_blend |
| predicted_R | 0.5540 | 0.3850 | 0.4822 | model_form_blend |
| predicted_RBI | 0.2600 | 0.4160 | 0.3263 | model_form_blend |
| predicted_SLG | 0.4120 | 0.3873 | 0.4015 | model_form_blend |
| predicted_SO | 1.0360 | 0.9570 | 1.0024 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 284 |
| Season rows before report date | 284 |
| Report year | 2026 |
| Profile rows used | 83 |
| Hitter metrics | Hitting_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 Field | Value |
|---|---|
| PA | 5 |
| AB | 5 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 0 |
| BB | 0 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.25 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 1 |
| Hitting_3B | 0 |
| Hitting_AB | 1 |
| Hitting_AVG | 1.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 2 |
| Hitting_battingOrder | 9 |
| Hitting_substitutionOrder | 1 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | PH |
| gameID | 20260811_KC@LAD |
| game_type | ph |
| mlbID | 606192 |
| note | Doubled for Rortvedt in the 7th. |
| playerID | 606192 |
| playerName | Teoscar Hernández |
| pos | LF |
| started | False |
| startingPosition | PH |
| team | LAD |
| teamID | 14 |
| game_date | 2026-08-11 |
| sl_k_percent | 26.8 |
| sl_bb_percent | 8.2 |
| sl_woba | 0.315 |
| sl_xwoba | 0.315 |
| sl_xba | 0.243 |
| sl_xslg | 0.41 |
| sl_sweet_spot_percent | 30.3 |
| sl_barrel_batted_rate | 9.0 |
| sl_hard_hit_percent | 42.2 |
| sl_exit_velocity_avg | 89.4 |
| sl_launch_angle_avg | 15.3 |
| sl_whiff_percent | 31.4 |
| sl_swing_percent | 47.0 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.148 | 1.000 | 0.000 | Hitting_2B | 0.159 | 0.000 | 0.841 | 1.000 |
| predicted_3B | 0.009 | 0.000 | 0.000 | Hitting_3B | 0.013 | 0.000 | -0.013 | 0.000 |
| predicted_AB | 3.440 | 5.000 | 3.000 | Hitting_AB | 3.538 | 4.000 | 1.462 | 1.000 |
| predicted_AVG | 0.231 | 0.400 | 0.333 | Hitting_AVG | 0.265 | 0.500 | 0.135 | -0.100 |
| predicted_BB | 0.435 | 0.000 | 0.000 | Hitting_BB | 0.492 | 0.000 | -0.492 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.800 | 2.000 | 1.000 | Hitting_H | 0.938 | 2.000 | 1.062 | 0.000 |
| predicted_HR | 0.160 | 1.000 | 0.000 | Hitting_HR | 0.239 | 0.000 | 0.761 | 1.000 |
| predicted_OBP | 0.319 | 0.400 | 0.333 | Hitting_OBP | 0.361 | 0.600 | 0.039 | -0.200 |
| predicted_R | 0.565 | 1.000 | 1.000 | Hitting_R | 0.675 | 0.000 | 0.325 | 1.000 |
| predicted_RBI | 0.640 | 2.000 | 1.000 | Hitting_RBI | 0.581 | 1.000 | 1.419 | 1.000 |
| predicted_SLG | 0.367 | 1.200 | 0.333 | Hitting_SLG | 0.521 | 0.500 | 0.679 | 0.700 |
| predicted_SO | 0.981 | 0.000 | 1.000 | Hitting_SO | 0.970 | 0.000 | -0.970 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 11 |
| Boosted Metrics | 9 |
| Deboosted Metrics | 2 |
| Better Metrics | 10 |
| Worse Metrics | 1 |
| Biggest Boost | predicted_AB: 3.4400 -> 5.0000 (boost 1.5600, better) |
| Biggest Deboost | predicted_SO: 0.9810 -> 0.0000 (deboost -0.9810, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 4 | 2 | 2 | 1 | 3 | predicted_SO: 0.9810 -> 1.0511 (boost 0.0701, worse) | predicted_AB: 3.4400 -> 3.3604 (deboost -0.0796, 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. |
| 3 | team_form_snapshot | 2 | 2 | 0 | 2 | 0 | predicted_SLG: 0.3868 -> 0.4324 (boost 0.0456, better) | - | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 2 | 5 | 2 | 5 | predicted_RBI: 0.6690 -> 1.0000 (boost 0.3310, better) | predicted_BB: 0.4068 -> 0.0000 (deboost -0.4068, worse) | AB rounded to 3 (raw=3.44), rates preserved: AVG=0.237 HR/AB=0.046 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5254 -> 1.0000 (boost 0.4746, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2422 -> 0.3330 (boost 0.0908, better) | predicted_SLG: 0.4324 -> 0.3330 (deboost -0.0994, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 6 | 5 | 1 | 6 | 0 | predicted_AB: 3.0000 -> 5.0000 (boost 2.0000, better) | predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.4324 (boost 0.0994, better) | predicted_AVG: 0.3330 -> 0.2422 (deboost -0.0908, worse) | Final player values currently stored in the game 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.148,
"predicted_3B": 0.009,
"predicted_AB": 3.44,
"predicted_AVG": 0.231,
"predicted_BB": 0.435,
"predicted_H": 0.8,
"predicted_HR": 0.16,
"predicted_OBP": 0.319,
"predicted_R": 0.565,
"predicted_RBI": 0.64,
"predicted_SLG": 0.367,
"predicted_SO": 0.981
},
"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.1497,
"predicted_3B": 0.0077,
"predicted_AB": 3.3604,
"predicted_AVG": 0.2327,
"predicted_BB": 0.3997,
"predicted_H": 0.7845,
"predicted_HBP": 0.082,
"predicted_HR": 0.151,
"predicted_OBP": 0.3216,
"predicted_R": 0.4928,
"predicted_RBI": 0.6275,
"predicted_SLG": 0.3868,
"predicted_SO": 1.0511
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.148,
"after": 0.1497,
"delta": 0.0017,
"percent_delta": 0.0115,
"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": 3.44,
"after": 3.3604,
"delta": -0.0796,
"percent_delta": -0.0231,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.231,
"after": 0.2327,
"delta": 0.0017,
"percent_delta": 0.0074,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.435,
"after": 0.3997,
"delta": -0.0353,
"percent_delta": -0.0811,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8,
"after": 0.7845,
"delta": -0.0155,
"percent_delta": -0.0194,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.16,
"after": 0.151,
"delta": -0.009,
"percent_delta": -0.0563,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.319,
"after": 0.3216,
"delta": 0.0026,
"percent_delta": 0.0082,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.565,
"after": 0.4928,
"delta": -0.0722,
"percent_delta": -0.1278,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.64,
"after": 0.6275,
"delta": -0.0125,
"percent_delta": -0.0195,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"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.981,
"after": 1.0511,
"delta": 0.0701,
"percent_delta": 0.0715,
"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_SO",
"before": 0.981,
"after": 1.0511,
"delta": 0.0701,
"percent_delta": 0.0715,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.44,
"after": 3.3604,
"delta": -0.0796,
"percent_delta": -0.0231,
"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.1497,
"predicted_3B": 0.0077,
"predicted_AB": 3.3604,
"predicted_AVG": 0.2422,
"predicted_BB": 0.4068,
"predicted_H": 0.8139,
"predicted_HBP": 0.082,
"predicted_HR": 0.158,
"predicted_OBP": 0.324,
"predicted_R": 0.5254,
"predicted_RBI": 0.669,
"predicted_SLG": 0.4324,
"predicted_SO": 1.0325
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1497,
"after": 0.1497,
"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": 3.3604,
"after": 3.3604,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2327,
"after": 0.2422,
"delta": 0.0095,
"percent_delta": 0.0408,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3997,
"after": 0.4068,
"delta": 0.0071,
"percent_delta": 0.0178,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.7845,
"after": 0.8139,
"delta": 0.0294,
"percent_delta": 0.0375,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.082,
"after": 0.082,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.151,
"after": 0.158,
"delta": 0.007,
"percent_delta": 0.0464,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3216,
"after": 0.324,
"delta": 0.0024,
"percent_delta": 0.0075,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4928,
"after": 0.5254,
"delta": 0.0326,
"percent_delta": 0.0662,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6275,
"after": 0.669,
"delta": 0.0415,
"percent_delta": 0.0661,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3868,
"after": 0.4324,
"delta": 0.0456,
"percent_delta": 0.1179,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0511,
"after": 1.0325,
"delta": -0.0186,
"percent_delta": -0.0177,
"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.4324,
"delta": 0.0456,
"percent_delta": 0.1179,
"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.44), rates preserved: AVG=0.237 HR/AB=0.046",
"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.1497,
"after": 0.0,
"delta": -0.1497,
"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": 3.3604,
"after": 3.0,
"delta": -0.3604,
"percent_delta": -0.1072,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4068,
"after": 0.0,
"delta": -0.4068,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8139,
"after": 1.0,
"delta": 0.1861,
"percent_delta": 0.2287,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.082,
"after": 0.0,
"delta": -0.082,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.158,
"after": 0.0,
"delta": -0.158,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.669,
"after": 1.0,
"delta": 0.331,
"percent_delta": 0.4948,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0325,
"after": 1.0,
"delta": -0.0325,
"percent_delta": -0.0315,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 2,
"deboosted_metrics": 5,
"better_metrics": 2,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.669,
"after": 1.0,
"delta": 0.331,
"percent_delta": 0.4948,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.4068,
"after": 0.0,
"delta": -0.4068,
"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": 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.5254,
"after": 1.0,
"delta": 0.4746,
"percent_delta": 0.9033,
"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.5254,
"after": 1.0,
"delta": 0.4746,
"percent_delta": 0.9033,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 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.2422,
"after": 0.333,
"delta": 0.0908,
"percent_delta": 0.3749,
"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.324,
"after": 0.333,
"delta": 0.009,
"percent_delta": 0.0278,
"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.4324,
"after": 0.333,
"delta": -0.0994,
"percent_delta": -0.2299,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2422,
"after": 0.333,
"delta": 0.0908,
"percent_delta": 0.3749,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4324,
"after": 0.333,
"delta": -0.0994,
"percent_delta": -0.2299,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_R": 1.0,
"predicted_RBI": 2.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 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": 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": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 5,
"deboosted_metrics": 1,
"better_metrics": 6,
"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": {
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_AVG": 0.2422,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_OBP": 0.324,
"predicted_R": 1.0,
"predicted_RBI": 2.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4324,
"predicted_SO": 0.0,
"predicted_TB": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2422,
"delta": -0.0908,
"percent_delta": -0.2726,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.324,
"delta": -0.009,
"percent_delta": -0.0269,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4324,
"delta": 0.0994,
"percent_delta": 0.2985,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4324,
"delta": 0.0994,
"percent_delta": 0.2985,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2422,
"delta": -0.0908,
"percent_delta": -0.2726,
"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.148,
"after": 1.0,
"delta": 0.852,
"percent_delta": 5.7568,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.009,
"after": 0.0,
"delta": -0.009,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.44,
"after": 5.0,
"delta": 1.56,
"percent_delta": 0.4535,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.231,
"after": 0.2422,
"delta": 0.0112,
"percent_delta": 0.0485,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.435,
"after": 0.0,
"delta": -0.435,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8,
"after": 2.0,
"delta": 1.2,
"percent_delta": 1.5,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.16,
"after": 1.0,
"delta": 0.84,
"percent_delta": 5.25,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.319,
"after": 0.324,
"delta": 0.005,
"percent_delta": 0.0157,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.565,
"after": 1.0,
"delta": 0.435,
"percent_delta": 0.7699,
"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.367,
"after": 0.4324,
"delta": 0.0654,
"percent_delta": 0.1782,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.981,
"after": 0.0,
"delta": -0.981,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 9,
"deboosted_metrics": 2,
"better_metrics": 10,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.44,
"after": 5.0,
"delta": 1.56,
"percent_delta": 0.4535,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.981,
"after": 0.0,
"delta": -0.981,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.148 | - |
| predicted_3B | 0.009 | - |
| predicted_AB | 3.440 | - |
| predicted_AVG | 0.231 | - |
| predicted_BB | 0.435 | - |
| predicted_H | 0.800 | - |
| predicted_HR | 0.160 | - |
| predicted_OBP | 0.319 | - |
| predicted_R | 0.565 | - |
| predicted_RBI | 0.640 | - |
| predicted_SLG | 0.367 | - |
| predicted_SO | 0.981 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.150 | 0.002 |
| predicted_3B | 0.008 | -0.001 |
| predicted_AB | 3.360 | -0.080 |
| predicted_AVG | 0.233 | 0.002 |
| predicted_BB | 0.400 | -0.035 |
| predicted_H | 0.784 | -0.016 |
| predicted_HBP | 0.082 | - |
| predicted_HR | 0.151 | -0.009 |
| predicted_OBP | 0.322 | 0.003 |
| predicted_R | 0.493 | -0.072 |
| predicted_RBI | 0.627 | -0.013 |
| predicted_SLG | 0.387 | 0.020 |
| predicted_SO | 1.051 | 0.070 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.150 | 0.000 |
| predicted_3B | 0.008 | 0.000 |
| predicted_AB | 3.360 | 0.000 |
| predicted_AVG | 0.242 | 0.010 |
| predicted_BB | 0.407 | 0.007 |
| predicted_H | 0.814 | 0.029 |
| predicted_HBP | 0.082 | 0.000 |
| predicted_HR | 0.158 | 0.007 |
| predicted_OBP | 0.324 | 0.002 |
| predicted_R | 0.525 | 0.033 |
| predicted_RBI | 0.669 | 0.042 |
| predicted_SLG | 0.432 | 0.046 |
| predicted_SO | 1.032 | -0.019 |
AB rounded to 3 (raw=3.44), rates preserved: AVG=0.237 HR/AB=0.046
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.150 |
| predicted_3B | 0.000 | -0.008 |
| predicted_AB | 3.000 | -0.360 |
| predicted_AVG | 0.333 | 0.091 |
| predicted_BB | 0.000 | -0.407 |
| predicted_H | 1.000 | 0.186 |
| predicted_HR | 0.000 | -0.158 |
| predicted_OBP | 0.333 | 0.009 |
| predicted_R | 1.000 | 0.475 |
| predicted_RBI | 1.000 | 0.331 |
| predicted_SLG | 0.333 | -0.099 |
| predicted_SO | 1.000 | -0.032 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 1.000 | 1.000 |
| 3B | 0.000 | 0.000 |
| AB | 5.000 | 2.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 2.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 1.000 | 1.000 |
| PA | 5.000 | - |
| R | 1.000 | 0.000 |
| RBI | 2.000 | 1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 15.000 | 3.000 | 1.000 | 0.000 | 0.000 | 4.000 | 0.000 | 1.000 | 7.000 | 0.2000 | 0.2941 | 0.2667 | 0.2000 | 0.0000 | 0.2667 | 0.0667 | 0.4667 |
| last_10 | 0.20 | 10 | - | 31.000 | 7.000 | 1.000 | 0.000 | 1.000 | 7.000 | 3.000 | 3.000 | 14.000 | 0.2258 | 0.3143 | 0.3548 | 0.2258 | 0.0323 | 0.2258 | 0.0968 | 0.4516 |
| season | 0.60 | 108 | - | 359.000 | 89.000 | 16.000 | 1.000 | 22.000 | 56.000 | 61.000 | 47.000 | 106.000 | 0.2479 | 0.3415 | 0.4819 | 0.2479 | 0.0613 | 0.1560 | 0.1309 | 0.2953 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1520 |
| predicted_3B | 0.0060 |
| predicted_AB | 3.2550 |
| predicted_AVG | 0.2349 |
| predicted_BB | 0.3530 |
| predicted_H | 0.7640 |
| predicted_HBP | 0.0820 |
| predicted_HR | 0.1390 |
| predicted_OBP | 0.3251 |
| predicted_R | 0.3970 |
| predicted_RBI | 0.6110 |
| predicted_SLG | 0.4131 |
| predicted_SO | 1.1440 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1480 | 0.1520 | 0.1497 | model_form_blend |
| predicted_3B | 0.0090 | 0.0060 | 0.0077 | model_form_blend |
| predicted_AB | 3.4400 | 3.2550 | 3.3604 | model_form_blend |
| predicted_AVG | 0.2310 | 0.2349 | 0.2327 | model_form_blend |
| predicted_BB | 0.4350 | 0.3530 | 0.3997 | model_form_blend |
| predicted_H | 0.8000 | 0.7640 | 0.7845 | model_form_blend |
| predicted_HBP | - | 0.0820 | 0.0820 | form_only |
| predicted_HR | 0.1600 | 0.1390 | 0.1510 | model_form_blend |
| predicted_OBP | 0.3190 | 0.3251 | 0.3216 | model_form_blend |
| predicted_R | 0.5650 | 0.3970 | 0.4928 | model_form_blend |
| predicted_RBI | 0.6400 | 0.6110 | 0.6275 | model_form_blend |
| predicted_SLG | 0.3670 | 0.4131 | 0.3868 | model_form_blend |
| predicted_SO | 0.9810 | 1.1440 | 1.0511 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 372 |
| Season rows before report date | 372 |
| Report year | 2026 |
| Profile rows used | 108 |
| Hitter metrics | Hitting_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 Field | Value |
|---|---|
| PA | 5 |
| AB | 5 |
| H | 2 |
| 2B | 1 |
| 3B | 0 |
| HR | 1 |
| R | 1 |
| RBI | 2 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.248 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.5 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| Hitting_HBP | 1 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 2 |
| Hitting_battingOrder | 5 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 3B |
| gameID | 20260811_KC@LAD |
| game_type | full |
| mlbID | 571970 |
| playerID | 571970 |
| playerName | Max Muncy |
| pos | 3B |
| started | True |
| startingPosition | 3B |
| team | LAD |
| teamID | 14 |
| game_date | 2026-08-11 |
| sl_k_percent | 25.5 |
| sl_bb_percent | 11.6 |
| sl_woba | 0.359 |
| sl_xwoba | 0.345 |
| sl_xba | 0.238 |
| sl_xslg | 0.465 |
| sl_sweet_spot_percent | 34.2 |
| sl_barrel_batted_rate | 13.2 |
| sl_hard_hit_percent | 45.1 |
| sl_exit_velocity_avg | 90.4 |
| sl_launch_angle_avg | 16.4 |
| sl_whiff_percent | 29.1 |
| sl_swing_percent | 45.2 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.131 | 0.000 | 0.000 | Hitting_2B | 0.143 | 0.000 | -0.143 | 0.000 |
| predicted_3B | 0.016 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.508 | 4.000 | 3.000 | Hitting_AB | 1.714 | 1.000 | 2.286 | 3.000 |
| predicted_AVG | 0.280 | 0.000 | 0.333 | Hitting_AVG | 0.250 | 0.000 | -0.250 | 0.000 |
| predicted_BB | 0.213 | 1.000 | 0.000 | Hitting_BB | 0.143 | 0.000 | 0.857 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.230 | 0.000 | 1.000 | Hitting_H | 0.429 | 0.000 | -0.429 | 0.000 |
| predicted_HR | 0.010 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.293 | 0.200 | 0.333 | Hitting_OBP | 0.308 | 0.000 | -0.108 | 0.200 |
| predicted_R | 0.279 | 0.000 | 0.000 | Hitting_R | 0.286 | 0.000 | -0.286 | 0.000 |
| predicted_RBI | 0.040 | 0.000 | 0.000 | Hitting_RBI | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_SLG | 0.345 | 0.000 | 0.333 | Hitting_SLG | 0.333 | 0.000 | -0.333 | 0.000 |
| predicted_SO | 0.721 | 0.000 | 1.000 | Hitting_SO | 0.000 | 0.000 | 0.000 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 9 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 7 |
| Better Metrics | 3 |
| Worse Metrics | 6 |
| Biggest Boost | predicted_AB: 2.5080 -> 4.0000 (boost 1.4920, better) |
| Biggest Deboost | predicted_SO: 0.7210 -> 0.0000 (deboost -0.7210, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 6 | 4 | 2 | 5 | 1 | predicted_H: 0.2300 -> 0.4061 (boost 0.1761, better) | predicted_SO: 0.7210 -> 0.6395 (deboost -0.0815, 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. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.2667 -> 0.1633 (deboost -0.1034, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 2 | 4 | 1 | 5 | predicted_AB: 2.5794 -> 3.0000 (boost 0.4206, better) | predicted_H: 0.4213 -> 0.0000 (deboost -0.4213, worse) | AB rounded to 3 (raw=2.58), rates preserved: AVG=0.163 HR/AB=0.008 |
| 5 | consistency_constraints | 2 | 1 | 1 | 1 | 1 | predicted_H: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_R: 0.3299 -> 0.0000 (deboost -0.3299, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.1633 -> 0.3330 (boost 0.1697, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 4 | 2 | 2 | 3 | 1 | predicted_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 |
| 8 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.1633 (deboost -0.1697, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "676439",
"player_name": "Hunter Feduccia",
"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.131,
"predicted_3B": 0.016,
"predicted_AB": 2.508,
"predicted_AVG": 0.28,
"predicted_BB": 0.213,
"predicted_H": 0.23,
"predicted_HR": 0.01,
"predicted_OBP": 0.293,
"predicted_R": 0.279,
"predicted_RBI": 0.04,
"predicted_SLG": 0.345,
"predicted_SO": 0.721
},
"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.1521,
"predicted_3B": 0.014,
"predicted_AB": 2.5794,
"predicted_AVG": 0.2667,
"predicted_BB": 0.2081,
"predicted_H": 0.4061,
"predicted_HBP": 0.012,
"predicted_HR": 0.0189,
"predicted_OBP": 0.2967,
"predicted_R": 0.3094,
"predicted_RBI": 0.0919,
"predicted_SLG": 0.3508,
"predicted_SO": 0.6395
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.131,
"after": 0.1521,
"delta": 0.0211,
"percent_delta": 0.1611,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.016,
"after": 0.014,
"delta": -0.002,
"percent_delta": -0.125,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.508,
"after": 2.5794,
"delta": 0.0714,
"percent_delta": 0.0285,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.28,
"after": 0.2667,
"delta": -0.0133,
"percent_delta": -0.0475,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.213,
"after": 0.2081,
"delta": -0.0049,
"percent_delta": -0.023,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.23,
"after": 0.4061,
"delta": 0.1761,
"percent_delta": 0.7657,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.01,
"after": 0.0189,
"delta": 0.0089,
"percent_delta": 0.89,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.293,
"after": 0.2967,
"delta": 0.0037,
"percent_delta": 0.0126,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.279,
"after": 0.3094,
"delta": 0.0304,
"percent_delta": 0.109,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.04,
"after": 0.0919,
"delta": 0.0519,
"percent_delta": 1.2975,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.345,
"after": 0.3508,
"delta": 0.0058,
"percent_delta": 0.0168,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.721,
"after": 0.6395,
"delta": -0.0815,
"percent_delta": -0.113,
"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_H",
"before": 0.23,
"after": 0.4061,
"delta": 0.1761,
"percent_delta": 0.7657,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.721,
"after": 0.6395,
"delta": -0.0815,
"percent_delta": -0.113,
"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": 61
}
},
{
"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.1521,
"predicted_3B": 0.014,
"predicted_AB": 2.5794,
"predicted_AVG": 0.1633,
"predicted_BB": 0.2118,
"predicted_H": 0.4213,
"predicted_HBP": 0.012,
"predicted_HR": 0.0198,
"predicted_OBP": 0.2268,
"predicted_R": 0.3299,
"predicted_RBI": 0.098,
"predicted_SLG": 0.2562,
"predicted_SO": 0.6282
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1521,
"after": 0.1521,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.014,
"after": 0.014,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.5794,
"after": 2.5794,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2667,
"after": 0.1633,
"delta": -0.1034,
"percent_delta": -0.3877,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2081,
"after": 0.2118,
"delta": 0.0037,
"percent_delta": 0.0178,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.4061,
"after": 0.4213,
"delta": 0.0152,
"percent_delta": 0.0374,
"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.0189,
"after": 0.0198,
"delta": 0.0009,
"percent_delta": 0.0476,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2967,
"after": 0.2268,
"delta": -0.0699,
"percent_delta": -0.2356,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3094,
"after": 0.3299,
"delta": 0.0205,
"percent_delta": 0.0663,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0919,
"after": 0.098,
"delta": 0.0061,
"percent_delta": 0.0664,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3508,
"after": 0.2562,
"delta": -0.0946,
"percent_delta": -0.2697,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6395,
"after": 0.6282,
"delta": -0.0113,
"percent_delta": -0.0177,
"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.2667,
"after": 0.1633,
"delta": -0.1034,
"percent_delta": -0.3877,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=2.58), rates preserved: AVG=0.163 HR/AB=0.008",
"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.1521,
"after": 0.0,
"delta": -0.1521,
"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": 2.5794,
"after": 3.0,
"delta": 0.4206,
"percent_delta": 0.1631,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2118,
"after": 0.0,
"delta": -0.2118,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.4213,
"after": 0.0,
"delta": -0.4213,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"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.0198,
"after": 0.0,
"delta": -0.0198,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.098,
"after": 0.0,
"delta": -0.098,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6282,
"after": 1.0,
"delta": 0.3718,
"percent_delta": 0.5918,
"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": 2.5794,
"after": 3.0,
"delta": 0.4206,
"percent_delta": 0.1631,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.4213,
"after": 0.0,
"delta": -0.4213,
"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.3299,
"after": 0.0,
"delta": -0.3299,
"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.3299,
"after": 0.0,
"delta": -0.3299,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1633,
"after": 0.333,
"delta": 0.1697,
"percent_delta": 1.0392,
"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.2268,
"after": 0.333,
"delta": 0.1062,
"percent_delta": 0.4683,
"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.2562,
"after": 0.333,
"delta": 0.0768,
"percent_delta": 0.2998,
"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.1633,
"after": 0.333,
"delta": 0.1697,
"percent_delta": 1.0392,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 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": 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": 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": 2,
"deboosted_metrics": 2,
"better_metrics": 3,
"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": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.1633,
"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.2268,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2562,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1633,
"delta": -0.1697,
"percent_delta": -0.5095,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2268,
"delta": -0.1062,
"percent_delta": -0.3188,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.2562,
"delta": -0.0768,
"percent_delta": -0.2307,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1633,
"delta": -0.1697,
"percent_delta": -0.5095,
"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.131,
"after": 0.0,
"delta": -0.131,
"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": 2.508,
"after": 4.0,
"delta": 1.492,
"percent_delta": 0.5949,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.28,
"after": 0.1633,
"delta": -0.1167,
"percent_delta": -0.4168,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.213,
"after": 1.0,
"delta": 0.787,
"percent_delta": 3.6948,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.23,
"after": 0.0,
"delta": -0.23,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.01,
"after": 0.0,
"delta": -0.01,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.293,
"after": 0.2268,
"delta": -0.0662,
"percent_delta": -0.2259,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.279,
"after": 0.0,
"delta": -0.279,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.04,
"after": 0.0,
"delta": -0.04,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.345,
"after": 0.2562,
"delta": -0.0888,
"percent_delta": -0.2574,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.721,
"after": 0.0,
"delta": -0.721,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 2,
"deboosted_metrics": 7,
"better_metrics": 3,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.508,
"after": 4.0,
"delta": 1.492,
"percent_delta": 0.5949,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.721,
"after": 0.0,
"delta": -0.721,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.131 | - |
| predicted_3B | 0.016 | - |
| predicted_AB | 2.508 | - |
| predicted_AVG | 0.280 | - |
| predicted_BB | 0.213 | - |
| predicted_H | 0.230 | - |
| predicted_HR | 0.010 | - |
| predicted_OBP | 0.293 | - |
| predicted_R | 0.279 | - |
| predicted_RBI | 0.040 | - |
| predicted_SLG | 0.345 | - |
| predicted_SO | 0.721 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.152 | 0.021 |
| predicted_3B | 0.014 | -0.002 |
| predicted_AB | 2.579 | 0.071 |
| predicted_AVG | 0.267 | -0.013 |
| predicted_BB | 0.208 | -0.005 |
| predicted_H | 0.406 | 0.176 |
| predicted_HBP | 0.012 | - |
| predicted_HR | 0.019 | 0.009 |
| predicted_OBP | 0.297 | 0.004 |
| predicted_R | 0.309 | 0.030 |
| predicted_RBI | 0.092 | 0.052 |
| predicted_SLG | 0.351 | 0.006 |
| predicted_SO | 0.639 | -0.082 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.152 | 0.000 |
| predicted_3B | 0.014 | 0.000 |
| predicted_AB | 2.579 | 0.000 |
| predicted_AVG | 0.163 | -0.103 |
| predicted_BB | 0.212 | 0.004 |
| predicted_H | 0.421 | 0.015 |
| predicted_HBP | 0.012 | 0.000 |
| predicted_HR | 0.020 | 0.001 |
| predicted_OBP | 0.227 | -0.070 |
| predicted_R | 0.330 | 0.021 |
| predicted_RBI | 0.098 | 0.006 |
| predicted_SLG | 0.256 | -0.095 |
| predicted_SO | 0.628 | -0.011 |
AB rounded to 3 (raw=2.58), rates preserved: AVG=0.163 HR/AB=0.008
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 0.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.152 |
| predicted_3B | 0.000 | -0.014 |
| predicted_AB | 3.000 | 0.421 |
| predicted_AVG | 0.333 | 0.170 |
| predicted_BB | 0.000 | -0.212 |
| predicted_H | 1.000 | 0.579 |
| predicted_HR | 0.000 | -0.020 |
| predicted_OBP | 0.333 | 0.106 |
| predicted_R | 0.000 | -0.330 |
| predicted_RBI | 0.000 | -0.098 |
| predicted_SLG | 0.333 | 0.077 |
| predicted_SO | 1.000 | 0.372 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 12.000 | 3.000 | 1.000 | 0.000 | 0.000 | 0.000 | 2.000 | 1.000 | 0.000 | 0.2500 | 0.3077 | 0.3333 | 0.2500 | 0.0000 | 0.0000 | 0.0833 | 0.0000 |
| last_10 | 0.20 | 10 | - | 25.000 | 7.000 | 3.000 | 0.000 | 0.000 | 1.000 | 4.000 | 1.000 | 2.000 | 0.2800 | 0.3077 | 0.4000 | 0.2800 | 0.0000 | 0.0400 | 0.0400 | 0.0800 |
| season | 0.60 | 61 | - | 153.000 | 36.000 | 8.000 | 1.000 | 2.000 | 11.000 | 17.000 | 13.000 | 44.000 | 0.2353 | 0.2976 | 0.3399 | 0.2353 | 0.0131 | 0.0719 | 0.0850 | 0.2876 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1830 |
| predicted_3B | 0.0110 |
| predicted_AB | 2.6840 |
| predicted_AVG | 0.2473 |
| predicted_BB | 0.2010 |
| predicted_H | 0.6640 |
| predicted_HBP | 0.0120 |
| predicted_HR | 0.0320 |
| predicted_OBP | 0.3022 |
| predicted_R | 0.3540 |
| predicted_RBI | 0.1680 |
| predicted_SLG | 0.3594 |
| predicted_SO | 0.5200 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1310 | 0.1830 | 0.1521 | model_form_blend |
| predicted_3B | 0.0160 | 0.0110 | 0.0140 | model_form_blend |
| predicted_AB | 2.5080 | 2.6840 | 2.5794 | model_form_blend |
| predicted_AVG | 0.2800 | 0.2473 | 0.2667 | model_form_blend |
| predicted_BB | 0.2130 | 0.2010 | 0.2081 | model_form_blend |
| predicted_H | 0.2300 | 0.6640 | 0.4061 | model_form_blend |
| predicted_HBP | - | 0.0120 | 0.0120 | form_only |
| predicted_HR | 0.0100 | 0.0320 | 0.0189 | model_form_blend |
| predicted_OBP | 0.2930 | 0.3022 | 0.2967 | model_form_blend |
| predicted_R | 0.2790 | 0.3540 | 0.3094 | model_form_blend |
| predicted_RBI | 0.0400 | 0.1680 | 0.0919 | model_form_blend |
| predicted_SLG | 0.3450 | 0.3594 | 0.3508 | model_form_blend |
| predicted_SO | 0.7210 | 0.5200 | 0.6395 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 7 |
| Season rows before report date | 7 |
| Report year | 2026 |
| Profile rows used | 61 |
| Hitter metrics | Hitting_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 Field | Value |
|---|---|
| PA | 5 |
| AB | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.235 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 1 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 9 |
| Hitting_substitutionOrder | 2 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | C |
| gameID | 20260811_KC@LAD |
| game_type | short |
| mlbID | 676439 |
| playerID | 676439 |
| playerName | Hunter Feduccia |
| pos | C |
| started | False |
| startingPosition | C |
| team | LAD |
| teamID | 14 |
| game_date | 2026-08-11 |
| sl_k_percent | 25.4 |
| sl_bb_percent | 8.7 |
| sl_woba | 0.289 |
| sl_xwoba | 0.31 |
| sl_xba | 0.243 |
| sl_xslg | 0.383 |
| sl_sweet_spot_percent | 35.4 |
| sl_barrel_batted_rate | 8.8 |
| sl_hard_hit_percent | 40.2 |
| sl_exit_velocity_avg | 90.6 |
| sl_launch_angle_avg | 16.1 |
| sl_whiff_percent | 22.8 |
| sl_swing_percent | 44.3 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.168 | 1.000 | 0.000 | Hitting_2B | 0.170 | 1.000 | 0.830 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.500 | 5.000 | 3.000 | Hitting_AB | 2.750 | 3.000 | 2.250 | 2.000 |
| predicted_AVG | 0.328 | 0.200 | 0.333 | Hitting_AVG | 0.287 | 0.333 | -0.087 | -0.133 |
| predicted_BB | 0.122 | 0.000 | 0.000 | Hitting_BB | 0.170 | 1.000 | -0.170 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.023 | 0.000 | -0.023 | 0.000 |
| predicted_H | 0.640 | 1.000 | 1.000 | Hitting_H | 0.790 | 1.000 | 0.210 | 0.000 |
| predicted_HR | 0.050 | 0.000 | 0.000 | Hitting_HR | 0.062 | 0.000 | -0.062 | 0.000 |
| predicted_OBP | 0.328 | 0.200 | 0.333 | Hitting_OBP | 0.323 | 0.500 | -0.123 | -0.300 |
| predicted_R | 0.259 | 1.000 | 0.000 | Hitting_R | 0.307 | 1.000 | 0.693 | 0.000 |
| predicted_RBI | 0.200 | 1.000 | 0.000 | Hitting_RBI | 0.347 | 0.000 | 0.653 | 1.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_SLG | 0.420 | 0.400 | 0.333 | Hitting_SLG | 0.417 | 0.667 | -0.017 | -0.267 |
| predicted_SO | 0.290 | 0.000 | 0.000 | Hitting_SO | 0.312 | 0.000 | -0.312 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 11 |
| Boosted Metrics | 5 |
| Deboosted Metrics | 6 |
| Better Metrics | 6 |
| Worse Metrics | 5 |
| Biggest Boost | predicted_AB: 2.5000 -> 5.0000 (boost 2.5000, better) |
| Biggest Deboost | predicted_SO: 0.2900 -> 0.0000 (deboost -0.2900, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 2 | 1 | 1 | 1 | 1 | predicted_H: 0.6400 -> 0.6951 (boost 0.0551, better) | predicted_AVG: 0.3280 -> 0.3154 (deboost -0.0126, 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. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3154 -> 0.2835 (deboost -0.0319, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 2 | 4 | 3 | 3 | predicted_AB: 2.5437 -> 3.0000 (boost 0.4563, better) | predicted_SO: 0.3313 -> 0.0000 (deboost -0.3313, better) | AB rounded to 3 (raw=2.54), rates preserved: AVG=0.284 HR/AB=0.019 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3018 -> 0.0000 (deboost -0.3018, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2835 -> 0.3330 (boost 0.0495, better) | predicted_SLG: 0.4140 -> 0.3330 (deboost -0.0810, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 4 | 4 | 0 | 4 | 0 | predicted_AB: 3.0000 -> 5.0000 (boost 2.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.4140 (boost 0.0810, better) | predicted_AVG: 0.3330 -> 0.2835 (deboost -0.0495, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "500743",
"player_name": "Miguel Rojas",
"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.168,
"predicted_3B": 0.0,
"predicted_AB": 2.5,
"predicted_AVG": 0.328,
"predicted_BB": 0.122,
"predicted_H": 0.64,
"predicted_HR": 0.05,
"predicted_OBP": 0.328,
"predicted_R": 0.259,
"predicted_RBI": 0.2,
"predicted_SLG": 0.42,
"predicted_SO": 0.29
},
"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.1888,
"predicted_3B": 0.0008,
"predicted_AB": 2.5437,
"predicted_AVG": 0.3154,
"predicted_BB": 0.1322,
"predicted_H": 0.6951,
"predicted_HBP": 0.011,
"predicted_HR": 0.0451,
"predicted_OBP": 0.3287,
"predicted_R": 0.2831,
"predicted_RBI": 0.2053,
"predicted_SLG": 0.4223,
"predicted_SO": 0.3373
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.168,
"after": 0.1888,
"delta": 0.0208,
"percent_delta": 0.1238,
"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": 2.5,
"after": 2.5437,
"delta": 0.0437,
"percent_delta": 0.0175,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.328,
"after": 0.3154,
"delta": -0.0126,
"percent_delta": -0.0384,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.122,
"after": 0.1322,
"delta": 0.0102,
"percent_delta": 0.0836,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.64,
"after": 0.6951,
"delta": 0.0551,
"percent_delta": 0.0861,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.05,
"after": 0.0451,
"delta": -0.0049,
"percent_delta": -0.098,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.328,
"after": 0.3287,
"delta": 0.0007,
"percent_delta": 0.0021,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.259,
"after": 0.2831,
"delta": 0.0241,
"percent_delta": 0.0931,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2,
"after": 0.2053,
"delta": 0.0053,
"percent_delta": 0.0265,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.42,
"after": 0.4223,
"delta": 0.0023,
"percent_delta": 0.0055,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.29,
"after": 0.3373,
"delta": 0.0473,
"percent_delta": 0.1631,
"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.64,
"after": 0.6951,
"delta": 0.0551,
"percent_delta": 0.0861,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.328,
"after": 0.3154,
"delta": -0.0126,
"percent_delta": -0.0384,
"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.1888,
"predicted_3B": 0.0008,
"predicted_AB": 2.5437,
"predicted_AVG": 0.2835,
"predicted_BB": 0.1345,
"predicted_H": 0.7212,
"predicted_HBP": 0.011,
"predicted_HR": 0.0472,
"predicted_OBP": 0.3195,
"predicted_R": 0.3018,
"predicted_RBI": 0.2189,
"predicted_SLG": 0.414,
"predicted_SO": 0.3313
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1888,
"after": 0.1888,
"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": 2.5437,
"after": 2.5437,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.3154,
"after": 0.2835,
"delta": -0.0319,
"percent_delta": -0.1011,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1322,
"after": 0.1345,
"delta": 0.0023,
"percent_delta": 0.0174,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.6951,
"after": 0.7212,
"delta": 0.0261,
"percent_delta": 0.0375,
"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.0451,
"after": 0.0472,
"delta": 0.0021,
"percent_delta": 0.0466,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3287,
"after": 0.3195,
"delta": -0.0092,
"percent_delta": -0.028,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.2831,
"after": 0.3018,
"delta": 0.0187,
"percent_delta": 0.0661,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2053,
"after": 0.2189,
"delta": 0.0136,
"percent_delta": 0.0662,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4223,
"after": 0.414,
"delta": -0.0083,
"percent_delta": -0.0197,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.3373,
"after": 0.3313,
"delta": -0.006,
"percent_delta": -0.0178,
"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.3154,
"after": 0.2835,
"delta": -0.0319,
"percent_delta": -0.1011,
"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.284 HR/AB=0.019",
"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": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1888,
"after": 0.0,
"delta": -0.1888,
"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": 2.5437,
"after": 3.0,
"delta": 0.4563,
"percent_delta": 0.1794,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1345,
"after": 0.0,
"delta": -0.1345,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.7212,
"after": 1.0,
"delta": 0.2788,
"percent_delta": 0.3866,
"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.0472,
"after": 0.0,
"delta": -0.0472,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2189,
"after": 0.0,
"delta": -0.2189,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.3313,
"after": 0.0,
"delta": -0.3313,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 2,
"deboosted_metrics": 4,
"better_metrics": 3,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.5437,
"after": 3.0,
"delta": 0.4563,
"percent_delta": 0.1794,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.3313,
"after": 0.0,
"delta": -0.3313,
"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": 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": 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.3018,
"after": 0.0,
"delta": -0.3018,
"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.3018,
"after": 0.0,
"delta": -0.3018,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 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.2835,
"after": 0.333,
"delta": 0.0495,
"percent_delta": 0.1746,
"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.3195,
"after": 0.333,
"delta": 0.0135,
"percent_delta": 0.0423,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.414,
"after": 0.333,
"delta": -0.081,
"percent_delta": -0.1957,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2835,
"after": 0.333,
"delta": 0.0495,
"percent_delta": 0.1746,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.414,
"after": 0.333,
"delta": -0.081,
"percent_delta": -0.1957,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 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": 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": 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": 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": 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": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_AVG": 0.2835,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3195,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.414,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2835,
"delta": -0.0495,
"percent_delta": -0.1486,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3195,
"delta": -0.0135,
"percent_delta": -0.0405,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.414,
"delta": 0.081,
"percent_delta": 0.2433,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.414,
"delta": 0.081,
"percent_delta": 0.2433,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2835,
"delta": -0.0495,
"percent_delta": -0.1486,
"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.168,
"after": 1.0,
"delta": 0.832,
"percent_delta": 4.9524,
"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.5,
"after": 5.0,
"delta": 2.5,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.328,
"after": 0.2835,
"delta": -0.0445,
"percent_delta": -0.1357,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.122,
"after": 0.0,
"delta": -0.122,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.64,
"after": 1.0,
"delta": 0.36,
"percent_delta": 0.5625,
"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.328,
"after": 0.3195,
"delta": -0.0085,
"percent_delta": -0.0259,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.259,
"after": 1.0,
"delta": 0.741,
"percent_delta": 2.861,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.2,
"after": 1.0,
"delta": 0.8,
"percent_delta": 4.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.42,
"after": 0.414,
"delta": -0.006,
"percent_delta": -0.0143,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.29,
"after": 0.0,
"delta": -0.29,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 5,
"deboosted_metrics": 6,
"better_metrics": 6,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.5,
"after": 5.0,
"delta": 2.5,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.29,
"after": 0.0,
"delta": -0.29,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.168 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.500 | - |
| predicted_AVG | 0.328 | - |
| predicted_BB | 0.122 | - |
| predicted_H | 0.640 | - |
| predicted_HR | 0.050 | - |
| predicted_OBP | 0.328 | - |
| predicted_R | 0.259 | - |
| predicted_RBI | 0.200 | - |
| predicted_SLG | 0.420 | - |
| predicted_SO | 0.290 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.189 | 0.021 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 2.544 | 0.044 |
| predicted_AVG | 0.315 | -0.013 |
| predicted_BB | 0.132 | 0.010 |
| predicted_H | 0.695 | 0.055 |
| predicted_HBP | 0.011 | - |
| predicted_HR | 0.045 | -0.005 |
| predicted_OBP | 0.329 | 0.001 |
| predicted_R | 0.283 | 0.024 |
| predicted_RBI | 0.205 | 0.005 |
| predicted_SLG | 0.422 | 0.002 |
| predicted_SO | 0.337 | 0.047 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.189 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 2.544 | 0.000 |
| predicted_AVG | 0.283 | -0.032 |
| predicted_BB | 0.135 | 0.002 |
| predicted_H | 0.721 | 0.026 |
| predicted_HBP | 0.011 | 0.000 |
| predicted_HR | 0.047 | 0.002 |
| predicted_OBP | 0.320 | -0.009 |
| predicted_R | 0.302 | 0.019 |
| predicted_RBI | 0.219 | 0.014 |
| predicted_SLG | 0.414 | -0.008 |
| predicted_SO | 0.331 | -0.006 |
AB rounded to 3 (raw=2.54), rates preserved: AVG=0.284 HR/AB=0.019
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 0.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 0.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.189 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | 0.456 |
| predicted_AVG | 0.333 | 0.050 |
| predicted_BB | 0.000 | -0.135 |
| predicted_H | 1.000 | 0.279 |
| predicted_HR | 0.000 | -0.047 |
| predicted_OBP | 0.333 | 0.014 |
| predicted_R | 0.000 | -0.302 |
| predicted_RBI | 0.000 | -0.219 |
| predicted_SLG | 0.333 | -0.081 |
| predicted_SO | 0.000 | -0.331 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 1.000 | 1.000 |
| 3B | 0.000 | 0.000 |
| AB | 5.000 | 2.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 1.000 | 1.000 |
| RBI | 1.000 | 1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 12.000 | 5.000 | 2.000 | 0.000 | 0.000 | 0.000 | 2.000 | 1.000 | 3.000 | 0.4167 | 0.4615 | 0.5833 | 0.4167 | 0.0000 | 0.0000 | 0.0833 | 0.2500 |
| last_10 | 0.20 | 10 | - | 24.000 | 6.000 | 2.000 | 0.000 | 0.000 | 1.000 | 3.000 | 1.000 | 3.000 | 0.2500 | 0.2692 | 0.3333 | 0.2500 | 0.0000 | 0.0417 | 0.0417 | 0.1250 |
| season | 0.60 | 68 | - | 164.000 | 47.000 | 11.000 | 0.000 | 3.000 | 18.000 | 17.000 | 8.000 | 19.000 | 0.2866 | 0.3128 | 0.4085 | 0.2866 | 0.0183 | 0.1098 | 0.0488 | 0.1158 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2190 |
| predicted_3B | 0.0020 |
| predicted_AB | 2.6070 |
| predicted_AVG | 0.2971 |
| predicted_BB | 0.1470 |
| predicted_H | 0.7750 |
| predicted_HBP | 0.0110 |
| predicted_HR | 0.0380 |
| predicted_OBP | 0.3297 |
| predicted_R | 0.3180 |
| predicted_RBI | 0.2130 |
| predicted_SLG | 0.4256 |
| predicted_SO | 0.4060 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1680 | 0.2190 | 0.1888 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 2.5000 | 2.6070 | 2.5437 | model_form_blend |
| predicted_AVG | 0.3280 | 0.2971 | 0.3154 | model_form_blend |
| predicted_BB | 0.1220 | 0.1470 | 0.1322 | model_form_blend |
| predicted_H | 0.6400 | 0.7750 | 0.6951 | model_form_blend |
| predicted_HBP | - | 0.0110 | 0.0110 | form_only |
| predicted_HR | 0.0500 | 0.0380 | 0.0451 | model_form_blend |
| predicted_OBP | 0.3280 | 0.3297 | 0.3287 | model_form_blend |
| predicted_R | 0.2590 | 0.3180 | 0.2831 | model_form_blend |
| predicted_RBI | 0.2000 | 0.2130 | 0.2053 | model_form_blend |
| predicted_SLG | 0.4200 | 0.4256 | 0.4223 | model_form_blend |
| predicted_SO | 0.2900 | 0.4060 | 0.3373 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 176 |
| Season rows before report date | 176 |
| Report year | 2026 |
| Profile rows used | 68 |
| Hitter metrics | Hitting_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 Field | Value |
|---|---|
| PA | 5 |
| AB | 5 |
| H | 1 |
| 2B | 1 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.287 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 1 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.333 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 2 |
| Hitting_battingOrder | 6 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 2B |
| gameID | 20260810_KC@LAD |
| game_type | full |
| mlbID | 500743 |
| playerID | 500743 |
| playerName | Miguel Rojas |
| pos | 2B |
| started | True |
| startingPosition | 2B |
| team | LAD |
| teamID | 14 |
| game_date | 2026-08-10 |
| sl_k_percent | 10.3 |
| sl_bb_percent | 5.9 |
| sl_woba | 0.32 |
| sl_xwoba | 0.319 |
| sl_xba | 0.289 |
| sl_xslg | 0.404 |
| sl_sweet_spot_percent | 35.9 |
| sl_barrel_batted_rate | 5.9 |
| sl_hard_hit_percent | 36.6 |
| sl_exit_velocity_avg | 87.0 |
| sl_launch_angle_avg | 14.7 |
| sl_whiff_percent | 16.3 |
| sl_swing_percent | 48.3 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 3.000 | 3.000 | 3.000 | Pitching_BB | 1.300 | 0.000 | 1.700 | 3.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 2.300 | 6.000 | -1.300 | -5.000 |
| predicted_H | 6.000 | 6.000 | 6.000 | Pitching_H | 4.900 | 11.000 | 1.100 | -5.000 |
| predicted_IP | 5.100 | 5.100 | 5.100 | Pitching_InningsPitched | 5.450 | 4.000 | -0.350 | 1.100 |
| predicted_SO | 6.000 | 6.000 | 6.000 | Pitching_SO | 3.100 | 1.000 | 2.900 | 5.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 1 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 1 |
| Better Metrics | 0 |
| Worse Metrics | 1 |
| Biggest Boost | - |
| Biggest Deboost | predicted_IP: 5.3333 -> 5.1000 (deboost -0.2333, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 0 | 1 | 0 | 1 | - | predicted_IP: 5.3333 -> 5.1000 (deboost -0.2333, worse) | Final player values currently stored in the game 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": 3.0,
"predicted_ER": 1.0,
"predicted_H": 6.0,
"predicted_HR": 0.0,
"predicted_IP": 5.3333,
"predicted_SO": 6.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 3.0,
"predicted_ER": 1.0,
"predicted_H": 6.0,
"predicted_HR": 0.0,
"predicted_IP": 5.1,
"predicted_R": 1.0,
"predicted_SO": 6.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.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": 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.1,
"delta": -0.2333,
"percent_delta": -0.0438,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 5.3333,
"after": 5.1,
"delta": -0.2333,
"percent_delta": -0.0438,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 3.0,
"after": 3.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": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.3333,
"after": 5.1,
"delta": -0.2333,
"percent_delta": -0.0437,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 5.3333,
"after": 5.1,
"delta": -0.2333,
"percent_delta": -0.0437,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 3.000 | - |
| predicted_ER | 1.000 | - |
| predicted_H | 6.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 5.333 | - |
| predicted_SO | 6.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 27.100 | 15.000 | 31.000 | 5.000 | 15.000 | 6.000 | 4.9390 | 1.3171 | 0.5488 | 1.1341 | 0.1829 | 0.5488 | 0.2195 |
| last_10 | 0.35 | 10 | 55.200 | 23.000 | 49.000 | 13.000 | 31.000 | 11.000 | 3.7186 | 1.1138 | 0.4132 | 0.8802 | 0.2335 | 0.5569 | 0.1976 |
| season | 0.20 | 18 | 92.000 | 50.000 | 87.000 | 29.000 | 57.000 | 22.000 | 4.8913 | 1.2609 | 0.5435 | 0.9456 | 0.3152 | 0.6196 | 0.2391 |
| Metric | Value |
|---|---|
| predicted_BB | 1.3770 |
| predicted_ER | 2.6860 |
| predicted_ERA | 4.4993 |
| predicted_H | 5.3740 |
| predicted_HR | 1.0810 |
| predicted_IP | 5.1000 |
| predicted_SO | 3.4950 |
| predicted_WHIP | 1.2565 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 3.0000 | 1.3770 | 2.0941 | model_form_blend |
| predicted_ER | 1.0000 | 2.6860 | 1.9410 | model_form_blend |
| predicted_ERA | - | 4.4993 | 4.4993 | form_only |
| predicted_H | 6.0000 | 5.3740 | 5.6506 | model_form_blend |
| predicted_HR | 0.0000 | 1.0810 | 0.6034 | model_form_blend |
| predicted_IP | 5.1000 | 5.1000 | 5.1000 | model_form_blend |
| predicted_SO | 6.0000 | 3.4950 | 4.6018 | model_form_blend |
| predicted_WHIP | - | 1.2565 | 1.2565 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 10 |
| Season rows before report date | 10 |
| Report year | 2026 |
| Profile rows used | 18 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 5.1 |
| H | 6 |
| R | 1 |
| ER | 1 |
| BB | 3 |
| SO | 6 |
| HR | 0 |
| BF | 25 |
| Pitches | 109 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 23 |
| Pitching_ER | 6 |
| Pitching_ERA | 4.89 |
| Pitching_Flyouts | 4 |
| Pitching_Groundouts | 3 |
| Pitching_H | 11 |
| Pitching_HBP | 0 |
| Pitching_HR | 2 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 4.0 |
| Pitching_Pitches | 95 |
| Pitching_R | 6 |
| Pitching_SO | 1 |
| Pitching_Strikes | 62 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | L |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260805_LAD@CHC |
| game_type | full |
| mlbID | 641778 |
| playerID | 641778 |
| playerName | Eric Lauer |
| pos | P |
| started | True |
| startingPosition | P |
| team | LAD |
| teamID | 14 |
| game_date | 2026-08-05 |
| sl_k_percent | 14.7 |
| sl_bb_percent | 7.5 |
| sl_woba | 0.338 |
| sl_xwoba | 0.341 |
| sl_sweet_spot_percent | 35.8 |
| sl_barrel_batted_rate | 11.4 |
| sl_hard_hit_percent | 35.5 |
| sl_whiff_percent | 18.1 |
| sl_swing_percent | 51.6 |
| sl_avg_best_speed | 77.949292857 |
| sl_avg_hyper_speed | 93.55719534 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 1.000 | 1.000 | 1.000 | Pitching_BB | 0.528 | 1.000 | 0.472 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.245 | 0.000 | -0.245 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.396 | 0.000 | -0.396 | 0.000 |
| predicted_IP | 1.100 | 1.100 | 1.100 | Pitching_InningsPitched | 0.619 | 1.000 | 0.481 | 0.100 |
| predicted_SO | 2.000 | 2.000 | 2.000 | Pitching_SO | 1.057 | 1.000 | 0.943 | 1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 1 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 0 |
| Better Metrics | 1 |
| Worse Metrics | 0 |
| Biggest Boost | predicted_IP: 1.0000 -> 1.1000 (boost 0.1000, better) |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 1 | 0 | 1 | 0 | predicted_IP: 1.0000 -> 1.1000 (boost 0.1000, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "681911",
"player_name": "Alex Vesia",
"position": "Middle Reliever",
"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": 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.1,
"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.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": 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.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"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 1.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 2.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 4.200 | 2.000 | 2.000 | 3.000 | 4.000 | 0.000 | 3.8571 | 1.0714 | 0.4286 | 0.4286 | 0.6429 | 0.8571 | 0.0000 |
| last_10 | 0.35 | 10 | 9.000 | 5.000 | 4.000 | 6.000 | 11.000 | 2.000 | 5.0000 | 1.1111 | 0.5556 | 0.4444 | 0.6667 | 1.2222 | 0.2222 |
| season | 0.20 | 53 | 41.200 | 13.000 | 21.000 | 28.000 | 56.000 | 2.000 | 2.8080 | 1.1760 | 0.3120 | 0.5040 | 0.6720 | 1.3440 | 0.0480 |
| Metric | Value |
|---|---|
| predicted_BB | 0.5230 |
| predicted_ER | 0.4490 |
| predicted_ERA | 4.2128 |
| predicted_H | 0.6190 |
| predicted_HR | 0.1060 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.9920 |
| predicted_WHIP | 1.1919 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 0.5230 | 0.7655 | model_form_blend |
| predicted_ER | 0.0000 | 0.4490 | 0.2207 | model_form_blend |
| predicted_ERA | - | 4.2128 | 4.2128 | form_only |
| predicted_H | 0.0000 | 0.6190 | 0.3043 | model_form_blend |
| predicted_HR | 0.0000 | 0.1060 | 0.0521 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 2.0000 | 0.9920 | 1.5045 | model_form_blend |
| predicted_WHIP | - | 1.1919 | 1.1919 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 53 |
| Season rows before report date | 53 |
| Report year | 2026 |
| Profile rows used | 53 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.1 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 1 |
| SO | 2 |
| HR | 0 |
| BF | 5 |
| Pitches | 21 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 4 |
| Pitching_ER | 0 |
| Pitching_ERA | 2.81 |
| Pitching_Flyouts | 2 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 21 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 11 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260811_KC@LAD |
| game_type | full |
| mlbID | 681911 |
| playerID | 681911 |
| playerName | Alex Vesia |
| pos | P |
| started | False |
| startingPosition | P |
| team | LAD |
| teamID | 14 |
| game_date | 2026-08-11 |
| sl_k_percent | 32.0 |
| sl_bb_percent | 16.0 |
| sl_woba | 0.236 |
| sl_xwoba | 0.27 |
| sl_sweet_spot_percent | 31.9 |
| sl_barrel_batted_rate | 6.6 |
| sl_hard_hit_percent | 36.3 |
| sl_whiff_percent | 35.5 |
| sl_swing_percent | 46.5 |
| sl_avg_best_speed | 78.283713261 |
| sl_avg_hyper_speed | 92.895329121 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.615 | 0.000 | -0.615 | 0.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 0.923 | 0.000 | 0.077 | 1.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 1.308 | 0.000 | -0.308 | 1.000 |
| predicted_IP | 2.100 | 2.100 | 2.100 | Pitching_InningsPitched | 0.792 | 1.000 | 1.308 | 1.100 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 1.231 | 1.000 | -0.231 | 0.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 1 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 0 |
| Better Metrics | 1 |
| Worse Metrics | 0 |
| Biggest Boost | predicted_IP: 1.0000 -> 2.1000 (boost 1.1000, better) |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 1 | 0 | 1 | 0 | predicted_IP: 1.0000 -> 2.1000 (boost 1.1000, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "621242",
"player_name": "Edwin Díaz",
"position": "Middle Reliever",
"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": 1.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": 0.0,
"predicted_ER": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 2.1,
"predicted_R": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 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": 2.1,
"delta": 1.1,
"percent_delta": 1.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": 2.1,
"delta": 1.1,
"percent_delta": 1.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": 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": 2.1,
"delta": 1.1,
"percent_delta": 1.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": 2.1,
"delta": 1.1,
"percent_delta": 1.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null,
"has_material_change": true,
"dominant_effect": "better"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 1.000 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 1.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 4.000 | 4.000 | 6.000 | 3.000 | 6.000 | 2.000 | 9.0000 | 2.2500 | 1.0000 | 1.5000 | 0.7500 | 1.5000 | 0.5000 |
| last_10 | 0.35 | 10 | 9.000 | 9.000 | 14.000 | 6.000 | 14.000 | 3.000 | 9.0000 | 2.2222 | 1.0000 | 1.5556 | 0.6667 | 1.5556 | 0.3333 |
| season | 0.20 | 12 | 11.000 | 9.000 | 14.000 | 7.000 | 16.000 | 3.000 | 7.3636 | 1.9091 | 0.8182 | 1.2727 | 0.6364 | 1.4546 | 0.2727 |
| Metric | Value |
|---|---|
| predicted_BB | 0.4430 |
| predicted_ER | 0.6110 |
| predicted_ERA | 5.7673 |
| predicted_H | 1.0750 |
| predicted_HR | 0.2140 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.0740 |
| predicted_WHIP | 1.5907 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.4430 | 0.1580 | model_form_blend |
| predicted_ER | 1.0000 | 0.6110 | 0.8613 | model_form_blend |
| predicted_ERA | - | 5.7673 | 5.7673 | form_only |
| predicted_H | 1.0000 | 1.0750 | 1.0267 | model_form_blend |
| predicted_HR | 0.0000 | 0.2140 | 0.0763 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 1.0740 | 1.0264 | model_form_blend |
| predicted_WHIP | - | 1.5907 | 1.5907 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 13 |
| Season rows before report date | 13 |
| Report year | 2026 |
| Profile rows used | 12 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 2.1 |
| H | 1 |
| R | 1 |
| ER | 1 |
| BB | 0 |
| SO | 1 |
| HR | 0 |
| BF | 8 |
| Pitches | 37 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 9.82 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 1 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 12 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 8 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | S |
| Pitching_pitchingOrder | 5 |
| allPositionsPlayed | P |
| gameID | 20260810_KC@LAD |
| game_type | full |
| mlbID | 621242 |
| playerID | 621242 |
| playerName | Edwin Díaz |
| pos | P |
| started | False |
| startingPosition | P |
| team | LAD |
| teamID | 14 |
| game_date | 2026-08-10 |
| sl_k_percent | 27.1 |
| sl_bb_percent | 13.6 |
| sl_woba | 0.45 |
| sl_xwoba | 0.349 |
| sl_sweet_spot_percent | 47.1 |
| sl_barrel_batted_rate | 12.1 |
| sl_hard_hit_percent | 55.9 |
| sl_whiff_percent | 19.8 |
| sl_swing_percent | 46.4 |
| sl_avg_best_speed | 83.802739412 |
| sl_avg_hyper_speed | 95.50134697 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.216 | 1.000 | -0.216 | -1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.235 | 0.000 | -0.235 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.647 | 0.000 | -0.647 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.857 | 1.000 | 0.143 | 0.000 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 1.176 | 0.000 | -0.176 | 1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "656945",
"player_name": "Tanner Scott",
"position": "Middle Reliever",
"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"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 1.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 4.000 | 0.000 | 3.000 | 5.000 | 4.000 | 0.000 | 0.0000 | 2.0000 | 0.0000 | 0.7500 | 1.2500 | 1.0000 | 0.0000 |
| last_10 | 0.35 | 10 | 9.000 | 1.000 | 8.000 | 6.000 | 10.000 | 0.000 | 1.0000 | 1.5556 | 0.1111 | 0.8889 | 0.6667 | 1.1111 | 0.0000 |
| season | 0.20 | 51 | 47.200 | 12.000 | 33.000 | 11.000 | 60.000 | 4.000 | 2.2657 | 0.9231 | 0.2517 | 0.6923 | 0.2308 | 1.2587 | 0.0839 |
| Metric | Value |
|---|---|
| predicted_BB | 0.6100 |
| predicted_ER | 0.2070 |
| predicted_ERA | 2.0706 |
| predicted_H | 0.7680 |
| predicted_HR | 0.0560 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.9420 |
| predicted_WHIP | 1.5279 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.6100 | 0.3079 | model_form_blend |
| predicted_ER | 0.0000 | 0.2070 | 0.1045 | model_form_blend |
| predicted_ERA | - | 2.0706 | 2.0706 | form_only |
| predicted_H | 0.0000 | 0.7680 | 0.3876 | model_form_blend |
| predicted_HR | 0.0000 | 0.0560 | 0.0283 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 0.9420 | 0.9707 | model_form_blend |
| predicted_WHIP | - | 1.5279 | 1.5279 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 51 |
| Season rows before report date | 51 |
| Report year | 2026 |
| Profile rows used | 51 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 1 |
| HR | 0 |
| BF | 3 |
| Pitches | 15 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 2.27 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 2 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 15 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 10 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | H |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260810_KC@LAD |
| game_type | full |
| mlbID | 656945 |
| playerID | 656945 |
| playerName | Tanner Scott |
| pos | P |
| started | False |
| startingPosition | P |
| team | LAD |
| teamID | 14 |
| game_date | 2026-08-10 |
| sl_k_percent | 32.8 |
| sl_bb_percent | 6.0 |
| sl_woba | 0.243 |
| sl_xwoba | 0.276 |
| sl_sweet_spot_percent | 38.7 |
| sl_barrel_batted_rate | 7.2 |
| sl_hard_hit_percent | 33.3 |
| sl_whiff_percent | 36.3 |
| sl_swing_percent | 55.1 |
| sl_avg_best_speed | 78.941802545 |
| sl_avg_hyper_speed | 93.41828055 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.214 | 1.000 | -0.214 | -1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.500 | 2.000 | -0.500 | -2.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.929 | 3.000 | -0.929 | -3.000 |
| predicted_IP | 0.200 | 0.200 | 0.200 | Pitching_InningsPitched | 0.636 | 0.100 | -0.436 | 0.100 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 0.857 | 1.000 | 0.143 | 0.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 1 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 1 |
| Better Metrics | 0 |
| Worse Metrics | 1 |
| Biggest Boost | - |
| Biggest Deboost | predicted_IP: 0.6667 -> 0.2000 (deboost -0.4667, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 0 | 1 | 0 | 1 | - | predicted_IP: 0.6667 -> 0.2000 (deboost -0.4667, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "623465",
"player_name": "Evan Phillips",
"position": "Middle Reliever",
"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": 0.6667,
"predicted_SO": 1.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 0.2,
"predicted_R": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.6667,
"after": 0.2,
"delta": -0.4667,
"percent_delta": -0.7,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 0.6667,
"after": 0.2,
"delta": -0.4667,
"percent_delta": -0.7,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.6667,
"after": 0.2,
"delta": -0.4667,
"percent_delta": -0.7,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 0.6667,
"after": 0.2,
"delta": -0.4667,
"percent_delta": -0.7,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 0.667 | - |
| predicted_SO | 1.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 2.200 | 2.000 | 5.000 | 1.000 | 3.000 | 0.000 | 6.7500 | 2.2500 | 0.7500 | 1.8750 | 0.3750 | 1.1250 | 0.0000 |
| last_10 | 0.35 | 10 | 7.000 | 4.000 | 7.000 | 2.000 | 7.000 | 2.000 | 5.1429 | 1.2857 | 0.5714 | 1.0000 | 0.2857 | 1.0000 | 0.2857 |
| season | 0.20 | 14 | 11.000 | 7.000 | 13.000 | 3.000 | 12.000 | 4.000 | 5.7273 | 1.4545 | 0.6364 | 1.1818 | 0.2727 | 1.0909 | 0.3636 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2330 |
| predicted_ER | 0.3660 |
| predicted_ERA | 4.9453 |
| predicted_H | 0.7420 |
| predicted_HR | 0.1040 |
| predicted_IP | 0.2000 |
| predicted_SO | 0.6610 |
| predicted_WHIP | 1.4628 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.2330 | 0.0831 | model_form_blend |
| predicted_ER | 0.0000 | 0.3660 | 0.1305 | model_form_blend |
| predicted_ERA | - | 4.9453 | 4.9453 | form_only |
| predicted_H | 0.0000 | 0.7420 | 0.2646 | model_form_blend |
| predicted_HR | 0.0000 | 0.1040 | 0.0371 | model_form_blend |
| predicted_IP | 0.2000 | 0.2000 | 0.2000 | model_form_blend |
| predicted_SO | 1.0000 | 0.6610 | 0.8791 | model_form_blend |
| predicted_WHIP | - | 1.4628 | 1.4628 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 14 |
| Season rows before report date | 14 |
| Report year | 2026 |
| Profile rows used | 14 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 0.2 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 1 |
| HR | 0 |
| BF | 3 |
| Pitches | 11 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 5 |
| Pitching_ER | 2 |
| Pitching_ERA | 5.73 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 3 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.1 |
| Pitching_Pitches | 26 |
| Pitching_R | 3 |
| Pitching_SO | 1 |
| Pitching_Strikes | 18 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | BS |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260811_KC@LAD |
| game_type | full |
| mlbID | 623465 |
| playerID | 623465 |
| playerName | Evan Phillips |
| pos | P |
| started | False |
| startingPosition | P |
| team | LAD |
| teamID | 14 |
| game_date | 2026-08-11 |
| sl_k_percent | 24.5 |
| sl_bb_percent | 6.1 |
| sl_woba | 0.374 |
| sl_xwoba | 0.332 |
| sl_sweet_spot_percent | 26.5 |
| sl_barrel_batted_rate | 14.7 |
| sl_hard_hit_percent | 41.2 |
| sl_whiff_percent | 25.3 |
| sl_swing_percent | 44.8 |
| sl_avg_best_speed | 85.123372353 |
| sl_avg_hyper_speed | 95.434417059 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 1.000 | 1.000 | 1.000 | Pitching_BB | 0.280 | 0.000 | 0.720 | 1.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 0.340 | 0.000 | 0.660 | 1.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.700 | 0.000 | 0.300 | 1.000 |
| predicted_IP | 0.100 | 0.100 | 0.100 | Pitching_InningsPitched | 0.824 | 0.200 | -0.724 | -0.100 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 1.120 | 1.000 | -0.120 | 0.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "676263",
"player_name": "Jack Dreyer",
"position": "Middle Reliever",
"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": 1.0,
"predicted_ER": 1.0,
"predicted_H": 1.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": 1.0,
"predicted_ER": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 0.1,
"predicted_R": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.1,
"after": 0.1,
"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": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.1,
"after": 0.1,
"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"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 1.000 | - |
| predicted_ER | 1.000 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 0.100 | - |
| predicted_SO | 1.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 3.100 | 2.000 | 3.000 | 1.000 | 4.000 | 1.000 | 5.4000 | 1.2000 | 0.6000 | 0.9000 | 0.3000 | 1.2000 | 0.3000 |
| last_10 | 0.35 | 10 | 8.100 | 4.000 | 4.000 | 4.000 | 10.000 | 1.000 | 4.3200 | 0.9600 | 0.4800 | 0.4800 | 0.4800 | 1.2000 | 0.1200 |
| season | 0.20 | 50 | 48.200 | 17.000 | 35.000 | 14.000 | 56.000 | 7.000 | 3.1438 | 1.0068 | 0.3493 | 0.7192 | 0.2877 | 1.1507 | 0.1438 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2160 |
| predicted_ER | 0.3020 |
| predicted_ERA | 4.5429 |
| predicted_H | 0.4800 |
| predicted_HR | 0.1120 |
| predicted_IP | 0.2000 |
| predicted_SO | 0.6640 |
| predicted_WHIP | 1.1647 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 0.2160 | 0.6028 | model_form_blend |
| predicted_ER | 1.0000 | 0.3020 | 0.6464 | model_form_blend |
| predicted_ERA | - | 4.5429 | 4.5429 | form_only |
| predicted_H | 1.0000 | 0.4800 | 0.7365 | model_form_blend |
| predicted_HR | 0.0000 | 0.1120 | 0.0567 | model_form_blend |
| predicted_IP | 0.1000 | 0.2000 | 0.2000 | model_form_blend |
| predicted_SO | 1.0000 | 0.6640 | 0.8298 | model_form_blend |
| predicted_WHIP | - | 1.1647 | 1.1647 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 50 |
| Season rows before report date | 50 |
| Report year | 2026 |
| Profile rows used | 50 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 0.1 |
| H | 1 |
| R | 1 |
| ER | 1 |
| BB | 1 |
| SO | 1 |
| HR | 0 |
| BF | 3 |
| Pitches | 13 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 2 |
| Pitching_ER | 0 |
| Pitching_ERA | 3.14 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 2 |
| Pitching_Inherited Runners Scored | 1 |
| Pitching_InningsPitched | 0.2 |
| Pitching_Pitches | 9 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 5 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260811_KC@LAD |
| game_type | full |
| mlbID | 676263 |
| playerID | 676263 |
| playerName | Jack Dreyer |
| pos | P |
| started | False |
| startingPosition | P |
| team | LAD |
| teamID | 14 |
| game_date | 2026-08-11 |
| sl_k_percent | 29.2 |
| sl_bb_percent | 7.3 |
| sl_woba | 0.267 |
| sl_xwoba | 0.284 |
| sl_sweet_spot_percent | 25.6 |
| sl_barrel_batted_rate | 7.5 |
| sl_hard_hit_percent | 41.3 |
| sl_whiff_percent | 28.2 |
| sl_swing_percent | 48.6 |
| sl_avg_best_speed | 77.839201695 |
| sl_avg_hyper_speed | 94.69828812 |
| Layer | Score | Winner | Confidence | Source or usage | Synced or matches |
|---|---|---|---|---|---|
| Shipped prediction | TEX 4 - 3 LAA | TEX | 0.524 | simulation_total_with_model_margin_cap | True |
| Simulation draw | TEX 5 - 3 LAA | TEX | - | same_winner_margin_capped | False |
The shipped score is reconciled to the final simulation score. The original model target remains visible as the pre-simulation audit layer.
This table distinguishes newly generated artifacts from older files. Missing trace data is shown as legacy/unavailable, never inferred.
| Priority | Change | Runtime status | Evidence |
|---|---|---|---|
| P1 | Empirical confidence blend | applied | raw=0.5366; empirical=0.5124; weight=0.5000; final=0.5245 |
| P1 | H2H margin as base feature | available | home net=4; abs=4; home delta=0.0231; away delta=-0.0231 |
| P2 | Wider score distribution | implemented_above_requested_1.4x | variance multiplier=1.6500; floor=2.7500 |
| P2 | Simulation flip control | diagnostic_only_unless_independently_supported | candidate=False; trusted=False; published flip=False |
| P3 | Season edge + recent form | implemented | window=10; season edge=-0.7269; recent edge=-0.3760; blended=- |
| P3 | Continuous calibration audit | trace emitted | Checked by CONFIDENCE_CALIBRATION_APPLIED and bucket_calibration_error in learning reports. |
| Process Layer | What It Does | Stored Field | Observed Value |
|---|---|---|---|
| 1. Historical model | Starts from trained game model output. | score_evolution.steps[historical_ml] | - |
| 2. Variance layer | Applies bounded game variance before enhanced corrections. | score_evolution.steps[variance_applied] | - |
| 3. Recent/team form | Uses latest team form, recent scoring, prevention, and streak state. | enhanced_prediction_analysis.recent_form | True |
| 4. Season quality | Uses season run differential and record quality guardrails. | season_run_differential_adjustment, season_quality_guardrail | True |
| 5. Savant hitters | Applies lineup-level Statcast xwOBA, xBA, xSLG, barrel, hard-hit, sweet-spot, EV, launch-angle, whiff, K and BB quality. | savant_batter_quality_adjustment | True |
| 6. Savant pitchers | Applies starter run prevention, strikeout, walk, HR and regression factors from xwOBA, wOBA, contact quality and whiff/command. | savant_pitcher_quality_adjustment | True |
| 7. Low-score analysis | Controls unrealistic totals and preserves the pre-sync low-score expected total. | low_score_analysis | 7 |
| 8. Probability/governors | Applies win probability calibration, matchup guardrails, margin governor and confidence governor. | win_probability_calibration, margin_governor, confidence_governor | 0.5245 |
| 9. Simulation reconciliation | Reconciles final shipped score with the simulation box score while retaining the pre-simulation target. | simulation_reconciliation | same_winner_margin_capped |
| 10. Score evolution rendered | 7 stored score steps are rendered below. | game.score_evolution.steps | true |
| Step | Layer | Away Runs | Home Runs | Confidence | Description |
|---|---|---|---|---|---|
| 1 | historical_ml | 4.256 | 3.947 | - | Base ML historical model prediction |
| 2 | variance_applied | 4 | 4 | - | Deterministic baseline target (variance factor 1.0) |
| 3 | enhanced_prediction | 4 | 3 | 0.5245 | Enhanced ML with recent form, H2H, low-score analysis (confidence capped by matchup guardrail) |
| 4 | embedded_savant_run_environment | 4 | 3 | - | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| 5 | fundamental_edge_target_review | 4 | 3 | - | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| 6 | capped_target | 4 | 3 | - | Capped at max 12 realistic runs |
| 7 | simulation_result | 5 | 3 | - | Final inning-by-inning simulation result |
{
"low_score_probability": 0.5157562418461539,
"base_low_score_probability": 0.4296180010465725,
"low_score_signal_threshold": 0.5096180010465725,
"low_score_signal_strength": 0.08613824079958138,
"confidence": 0.700249804,
"factors": {
"environmental": 0.9996,
"pitcher_form": 1.1,
"team_form": 1.06,
"situational": 1.03,
"combined": 1.200499608
},
"prediction": "low_scoring",
"expected_total_runs": 9,
"pre_simulation_expected_total_runs": 7.0,
"low_score_model_expected_total_runs": 7.0,
"final_simulation_total_runs": 8,
"score_source": "simulation_total_with_model_margin_cap"
}{
"method": "historical_slate_bin_shrinkage",
"sample_size": 201,
"near_bucket_sample_size": 201,
"medium_bucket_sample_size": 270,
"wide_bucket_sample_size": 315,
"global_sample_size": 488,
"bucket_scope": "near_0.05",
"sparse_bucket": false,
"empirical_hit_rate": 0.5124,
"bayesian_hit_rate": 0.5114,
"sample_weight": 0.6,
"prior_strength": 18.0,
"reliability": 0.9178,
"confidence_cap": 0.78,
"raw_pick_probability": 0.5085,
"calibrated_pick_probability": 0.5092,
"predicted_side": "away"
}{
"method": "empirical_hit_rate_weighted_v1",
"applied": true,
"reason": "raw confidence blended with verified historical bucket hit rate",
"raw_confidence": 0.536577,
"sample_size": 201,
"empirical_hit_rate": 0.5124,
"empirical_weight": 0.5,
"blended_confidence": 0.524489,
"published_confidence": 0.524489,
"published_after_governors": true
}{
"method": "h2h_net_margin_monotonic_v1",
"available": true,
"sample_size": 5,
"sample_weight": 0.0577,
"home_net_margin": 4.0,
"absolute_net_margin": 4.0,
"home_average_margin": 0.8,
"home_run_delta": 0.0231,
"away_run_delta": -0.0231,
"evidence": [
{
"game_id": null,
"home_margin": 1.0
},
{
"game_id": null,
"home_margin": -3.0
},
{
"game_id": null,
"home_margin": -1.0
},
{
"game_id": null,
"home_margin": 12.0
},
{
"game_id": null,
"home_margin": -5.0
}
]
}{
"applied": true,
"home": {
"team": "LAA",
"games": 119,
"wins": 45,
"losses": 74,
"win_pct": 0.37815126050420167,
"runs_scored": 485,
"runs_allowed": 579,
"run_differential": -94,
"run_differential_per_game": -0.7899159663865546,
"available": true
},
"away": {
"team": "TEX",
"games": 119,
"wins": 60,
"losses": 59,
"win_pct": 0.5042016806722689,
"runs_scored": 493,
"runs_allowed": 523,
"run_differential": -30,
"run_differential_per_game": -0.25210084033613445,
"available": true
},
"run_differential_edge_per_game": -0.5378,
"win_pct_edge": -0.1261,
"quality_edge": -0.6041,
"season_quality_edge": -0.7269,
"recent_quality_blend": {
"method": "season_recent10_quality_blend_v1",
"recent_window": 10,
"season_quality_edge": -0.7269,
"recent_quality_edge": -0.376,
"season_weight": 0.65,
"recent_weight": 0.35,
"recent_reliability": 1.0,
"alignment": "aligned",
"blended_quality_edge": -0.6041
},
"margin_adjustment": -0.2537,
"reason": "season-to-date run differential and record moved the score toward the stronger team",
"margin_adjustment_policy": {
"adjustment": -0.2537,
"cap": 1.4,
"scale": 0.42,
"quality_edge": -0.6041,
"season_quality_edge": -0.7269,
"recent_alignment": "aligned",
"large_edge_supported_by_recent_form": false,
"method": "standard_bounded_season_recent_adjustment"
},
"adjusted_score": {
"away_runs": 4.056,
"home_runs": 1.686,
"home_win_probability": 0.2985
}
}{
"most_likely": [
{
"home_runs": 3,
"away_runs": 3,
"probability": 0.037886399563053515
},
{
"home_runs": 2,
"away_runs": 3,
"probability": 0.03536190402477505
},
{
"home_runs": 3,
"away_runs": 2,
"probability": 0.034717615892692455
},
{
"home_runs": 3,
"away_runs": 4,
"probability": 0.033597475209907995
},
{
"home_runs": 4,
"away_runs": 3,
"probability": 0.03274361280444354
}
],
"home_distribution": {
"0": 0.08376925905104463,
"1": 0.1379244416205524,
"2": 0.1831864563901951,
"3": 0.19626418522250255,
"4": 0.16962283464307285,
"5": 0.11825598896772821,
"6": 0.06650549635029757,
"7": 0.030170846868332997,
"8": 0.01104111743136393,
"9": 0.00325937345490987
},
"away_distribution": {
"0": 0.07970976943867221,
"1": 0.13172410690204833,
"2": 0.17689226311633716,
"3": 0.19303776448108512,
"4": 0.17118495242429946,
"5": 0.12336124938494916,
"6": 0.07224067539858174,
"7": 0.034377532543625355,
"8": 0.013294055018685602,
"9": 0.004177631291715964
},
"model": "overdispersed_score_distribution",
"variance_multiplier": 1.65,
"variance_floor": 2.75,
"roadmap_status": "implemented_above_requested_1.4x"
}{
"applied": true,
"confidence_cap": 0.53,
"winner_flipped": false,
"reasons": [
"latest same-matchup result beat the predicted side",
"recent head-to-head is split and volatile",
"a prior same-side pick already missed against the actual result",
"a prior same-side pick missed by 5+ actual runs",
"latest-series reversal condition was suppressed"
],
"signals": {
"predicted_team": "TEX",
"opponent_team": "LAA",
"h2h_net_margin": 3,
"opponent_breakout": false,
"opponent_blowout_win": false,
"split_recent_h2h": true,
"recent_h2h": [
{
"date": "2026-08-11",
"predicted_team_runs": 2,
"opponent_runs": 3,
"margin_for_predicted_team": -1,
"winner": "LAA"
},
{
"date": "2026-08-10",
"predicted_team_runs": 4,
"opponent_runs": 1,
"margin_for_predicted_team": 3,
"winner": "TEX"
},
{
"date": "2026-07-09",
"predicted_team_runs": 7,
"opponent_runs": 6,
"margin_for_predicted_team": 1,
"winner": "TEX"
}
],
"prediction_memory": {
"available": true,
"reason": "verified_prior_matchup_predictions_available",
"verification_policy": "pregame_artifact_matched_to_one_official_final",
"verified_outcome_count": 5,
"consecutive_same_pick_count": 1,
"same_pick_actual_loss_count": 2,
"same_pick_blowout_loss_count": 1,
"prior_predictions": [
{
"date": "20260811",
"away": "TEX",
"home": "LAA",
"game_number": 1,
"predicted_team": "TEX",
"actual_winner": "LAA",
"actual_margin": 1,
"raw_pick_probability": 0.535478,
"artifact": "20260811_TEX@LAA.json",
"verification": "pregame_official_final"
},
{
"date": "20260810",
"away": "TEX",
"home": "LAA",
"game_number": 1,
"predicted_team": "LAA",
"actual_winner": "TEX",
"actual_margin": 3,
"raw_pick_probability": 0.51795,
"artifact": "20260810_TEX@LAA.json",
"verification": "pregame_official_final"
},
{
"date": "20260709",
"away": "LAA",
"home": "TEX",
"game_number": 1,
"predicted_team": "TEX",
"actual_winner": "TEX",
"actual_margin": 1,
"raw_pick_probability": 0.6,
"artifact": "20260709_LAA@TEX.json",
"verification": "pregame_official_final"
},
{
"date": "20260708",
"away": "LAA",
"home": "TEX",
"game_number": 1,
"predicted_team": "TEX",
"actual_winner": "LAA",
"actual_margin": 12,
"raw_pick_probability": 0.5,
"artifact": "20260708_LAA@TEX.json",
"verification": "pregame_official_final"
},
{
"date": "20260707",
"away": "LAA",
"home": "TEX",
"game_number": 1,
"predicted_team": "TEX",
"actual_winner": "TEX",
"actual_margin": 5,
"raw_pick_probability": 0.63,
"artifact": "20260707_LAA@TEX.json",
"verification": "pregame_official_final"
}
]
},
"guardrail_predicted_team": "TEX",
"guardrail_opponent_team": "LAA",
"output_pre_simulation_winner": "TEX",
"output_opponent_team": "LAA",
"simulation_score_winner": "TEX",
"final_score_winner": "TEX",
"pre_simulation_winner": "TEX",
"winner_flipped_by_simulation": false,
"simulation_would_flip_winner": false
},
"hard_flip_suppressed": true,
"final_prediction_sync": {
"pre_simulation_score": {
"away_runs": 4,
"home_runs": 3,
"score_text": "TEX 4 - 3 LAA",
"winner": "TEX"
},
"final_simulation_score": {
"away_runs": 5,
"home_runs": 3,
"score_text": "TEX 5 - 3 LAA",
"winner": "TEX"
},
"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.0781,
"recent_form_edge_home_minus_away": -0.2885,
"winner_direction": "away",
"thresholds": {
"pitcher_matchup": 0.35,
"recent_form": 0.75
}
},
"margin_widening_capped": true,
"simulation_winner_agrees": true,
"away_run_delta": 1,
"home_run_delta": 0,
"total_run_delta": 1,
"score_source": "simulation_total_with_model_margin_cap",
"simulation_usage": "same_winner_margin_capped",
"final_prediction_source": "stable_final_prediction_policy",
"final_decision_policy": {
"policy_version": "model_winner_simulation_score_v1",
"away_runs": 5,
"home_runs": 4,
"winner": "TEX",
"model_winner": "TEX",
"simulation_winner": "TEX",
"simulation_winner_agrees": true,
"simulation_score_enabled": true,
"independent_margin_support": false,
"margin_widening_capped": true,
"model_margin": 1,
"simulation_margin": 2,
"simulation_usage": "same_winner_margin_capped",
"score_source": "simulation_total_with_model_margin_cap",
"model_score": {
"away_runs": 4,
"home_runs": 3
},
"simulation_score": {
"away_runs": 5,
"home_runs": 3
}
},
"final_margin_quality_review": {
"review_required": false,
"pre_margin": 1,
"final_margin": 2,
"winner_quality_edge": 0.6041,
"winner": "TEX",
"reason": "final margin is directionally supported or within review threshold"
}
}
}{
"applied": false,
"confidence_cap": null,
"winner_flipped": false,
"hard_flip_suppressed": false,
"policy": "recency_uncertainty_shrinkage_v2",
"reasons": [],
"signals": {
"home": {
"team": "LAA",
"games": 119,
"wins": 45,
"losses": 74,
"win_pct": 0.37815126050420167,
"runs_scored": 485,
"runs_allowed": 579,
"run_differential": -94,
"run_differential_per_game": -0.7899159663865546,
"available": true
},
"away": {
"team": "TEX",
"games": 119,
"wins": 60,
"losses": 59,
"win_pct": 0.5042016806722689,
"runs_scored": 493,
"runs_allowed": 523,
"run_differential": -30,
"run_differential_per_game": -0.25210084033613445,
"available": true
}
}
}{
"applied": false,
"raw_margin": -0.1,
"final_margin": -0.1,
"margin_cap": 1.5,
"season_quality_edge": 0.6041,
"reason": "raw target margin within supported range"
}{
"applied": false,
"raw_confidence": 0.524489,
"final_confidence": 0.524489,
"confidence_cap": 0.66,
"score_gap": 0.1,
"calibration_sample_size": 201,
"calibration_empirical_hit_rate": 0.5124,
"calibration_bayesian_hit_rate": 0.5114,
"calibration_sparse_bucket": false,
"season_quality_edge": 0.6041,
"reasons": [
"unvalidated probabilities are capped for production display",
"projected score gap is close",
"local calibration sample has at least 30 games",
"local calibration sample has at least 60 games",
"win-probability calibration cap enforced"
]
}{
"pre_simulation_score": {
"away_runs": 4,
"home_runs": 3,
"score_text": "TEX 4 - 3 LAA",
"winner": "TEX"
},
"final_simulation_score": {
"away_runs": 5,
"home_runs": 3,
"score_text": "TEX 5 - 3 LAA",
"winner": "TEX"
},
"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.0781,
"recent_form_edge_home_minus_away": -0.2885,
"winner_direction": "away",
"thresholds": {
"pitcher_matchup": 0.35,
"recent_form": 0.75
}
},
"margin_widening_capped": true,
"simulation_winner_agrees": true,
"away_run_delta": 1,
"home_run_delta": 0,
"total_run_delta": 1,
"score_source": "simulation_total_with_model_margin_cap",
"simulation_usage": "same_winner_margin_capped",
"final_prediction_source": "stable_final_prediction_policy",
"final_decision_policy": {
"policy_version": "model_winner_simulation_score_v1",
"away_runs": 5,
"home_runs": 4,
"winner": "TEX",
"model_winner": "TEX",
"simulation_winner": "TEX",
"simulation_winner_agrees": true,
"simulation_score_enabled": true,
"independent_margin_support": false,
"margin_widening_capped": true,
"model_margin": 1,
"simulation_margin": 2,
"simulation_usage": "same_winner_margin_capped",
"score_source": "simulation_total_with_model_margin_cap",
"model_score": {
"away_runs": 4,
"home_runs": 3
},
"simulation_score": {
"away_runs": 5,
"home_runs": 3
}
},
"final_margin_quality_review": {
"review_required": false,
"pre_margin": 1,
"final_margin": 2,
"winner_quality_edge": 0.6041,
"winner": "TEX",
"reason": "final margin is directionally supported or within review threshold"
}
}{
"away_runs": 5,
"home_runs": 4,
"confidence": 0.524489,
"home_win_probability": 0.475511,
"away_win_probability": 0.524489,
"predicted_score_text": "TEX 5 - 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": "TEX",
"original_runs": 4,
"run_delta": 0.2086,
"adjusted_runs": 4,
"lineup": {
"players_used": 9,
"total_weight": 32.0,
"quality": 0.16568930410062396,
"contact": 0.0715114723243121,
"power": 0.3561736546719387,
"discipline": -0.2288434620445974,
"xwoba": 0.31628125,
"recent_xwoba": 0.31628125,
"barrel": 9.834375,
"ab_hard_contact": 0.12831833153401923,
"ab_bat_speed": 70.36465633664619,
"ab_strikeout_rate": 0.24501037223816205,
"available_players": 9,
"top_players": [
{
"player_id": "607043",
"player_name": "Brandon Nimmo",
"position": "RF",
"weight": 5.0,
"quality": 1.0966664977528149,
"contact": 1.3442202188255086,
"power": 1.2402829293834754,
"discipline": 0.04361564922865228,
"xwoba": 0.373,
"recent_xwoba": 0.373,
"barrel": 11.1,
"ab_hard_contact": 0.5660395400504585,
"ab_bat_speed": 71.0562276524645,
"ab_strikeout_rate": 0.21175438596491228,
"available": 1.0
},
{
"player_id": "670032",
"player_name": "Nicky Lopez",
"position": "2B",
"weight": 3.0,
"quality": -0.6917738858201811,
"contact": -0.9875859984357293,
"power": -1.5503868724230319,
"discipline": -0.0894055473798902,
"xwoba": 0.257,
"recent_xwoba": 0.257,
"barrel": 0.0,
"ab_hard_contact": -1.4839279246511126,
"ab_bat_speed": 62.676705082742316,
"ab_strikeout_rate": 0.15141843971631205,
"available": 1.0
},
{
"player_id": "592626",
"player_name": "Joc Pederson",
"position": "DH",
"weight": 3.0,
"quality": 0.7664932841858108,
"contact": 0.8176834880913698,
"power": 1.044879075445837,
"discipline": 0.17980128184953023,
"xwoba": 0.357,
"recent_xwoba": 0.357,
"barrel": 11.6,
"ab_hard_contact": 0.5764386517738892,
"ab_bat_speed": 70.27926185966811,
"ab_strikeout_rate": 0.23071161048689137,
"available": 1.0
},
{
"player_id": "608369",
"player_name": "Corey Seager",
"position": "SS",
"weight": 4.0,
"quality": 0.5849998333311737,
"contact": 0.2624626551914239,
"power": 1.074256659561137,
"discipline": -0.06551091718738773,
"xwoba": 0.335,
"recent_xwoba": 0.335,
"barrel": 14.4,
"ab_hard_contact": 0.6546570007465541,
"ab_bat_speed": 70.36469952380952,
"ab_strikeout_rate": 0.27266666666666667,
"available": 1.0
},
{
"player_id": "672284",
"player_name": "Jarred Kelenic",
"position": "LF",
"weight": 3.0,
"quality": 0.2444683487789516,
"contact": 0.4127499390009466,
"power": 1.6092096553251427,
"discipline": -0.6725758522523227,
"xwoba": 0.346,
"recent_xwoba": 0.346,
"barrel": 21.6,
"ab_hard_contact": 1.2047645350743035,
"ab_bat_speed": 71.98512626262627,
"ab_strikeout_rate": 0.4053030303030303,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "691946",
"player_name": "George Klassen",
"quality": -0.10785639255530466,
"contact": -1.3784090235481745,
"command": -0.5178800705467372,
"movement": 0.24255893798976508,
"xwoba": 0.411,
"whiff": 32.3,
"faced_est_woba": 0.2673184860119048,
"faced_launch_speed": 83.86666666666667,
"faced_strikeout_rate": 0.23333333333333334,
"faced_run_exp": 0.006702420300892518
}
},
"home": {
"team": "LAA",
"original_runs": 3,
"run_delta": 0.2361,
"adjusted_runs": 3,
"lineup": {
"players_used": 9,
"total_weight": 32.0,
"quality": 0.032542190353608204,
"contact": -0.07201036759868162,
"power": 0.054932023082813225,
"discipline": -0.04700460674036,
"xwoba": 0.31253125,
"recent_xwoba": 0.31253125,
"barrel": 8.10625,
"ab_hard_contact": 0.0580095092753173,
"ab_bat_speed": 70.52246562944143,
"ab_strikeout_rate": 0.24568714193392455,
"available_players": 9,
"top_players": [
{
"player_id": "545361",
"player_name": "Mike Trout",
"position": "CF",
"weight": 4.0,
"quality": 1.2136895321345929,
"contact": 1.0088011798213719,
"power": 1.5459556279048996,
"discipline": 1.0981614867139315,
"xwoba": 0.391,
"recent_xwoba": 0.391,
"barrel": 17.1,
"ab_hard_contact": 0.9297792247646723,
"ab_bat_speed": 73.6088211417097,
"ab_strikeout_rate": 0.26285140562248993,
"available": 1.0
},
{
"player_id": "672724",
"player_name": "Oswald Peraza",
"position": "SS",
"weight": 3.0,
"quality": -0.613443621922928,
"contact": -0.7432782269308572,
"power": -0.36516631368742775,
"discipline": -1.0966505409381226,
"xwoba": 0.271,
"recent_xwoba": 0.271,
"barrel": 7.0,
"ab_hard_contact": -0.6968500832723552,
"ab_bat_speed": 71.0059146090535,
"ab_strikeout_rate": 0.3150205761316872,
"available": 1.0
},
{
"player_id": "694203",
"player_name": "Denzer Guzman",
"position": "3B",
"weight": 4.0,
"quality": -0.330793039728801,
"contact": -0.6809206133800046,
"power": -0.5843319145804429,
"discipline": -0.4128125044889752,
"xwoba": 0.274,
"recent_xwoba": 0.274,
"barrel": 5.3,
"ab_hard_contact": -0.47635257732314085,
"ab_bat_speed": 72.95300753968255,
"ab_strikeout_rate": 0.2711111111111111,
"available": 1.0
},
{
"player_id": "685133",
"player_name": "Wade Meckler",
"position": "LF",
"weight": 3.0,
"quality": -0.2733719164303932,
"contact": -0.2646096758938478,
"power": -0.6639795365141564,
"discipline": 0.05134677937961113,
"xwoba": 0.308,
"recent_xwoba": 0.308,
"barrel": 3.7,
"ab_hard_contact": -0.10740025409264181,
"ab_bat_speed": 66.9659173126615,
"ab_strikeout_rate": 0.24302325581395348,
"available": 1.0
},
{
"player_id": "694208",
"player_name": "Moisés Ballesteros",
"position": "C",
"weight": 3.0,
"quality": 0.21845816619126182,
"contact": 0.22073322348370691,
"power": 0.36435834949701706,
"discipline": -0.03642553130889853,
"xwoba": 0.31,
"recent_xwoba": 0.31,
"barrel": 9.1,
"ab_hard_contact": 0.27192889470222925,
"ab_bat_speed": 71.93142993979201,
"ab_strikeout_rate": 0.2267241379310345,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "615698",
"player_name": "Cal Quantrill",
"quality": -0.2392222072951084,
"contact": 0.051189003786031737,
"command": -0.75173721340388,
"movement": -0.3877294759505331,
"xwoba": 0.324,
"whiff": 18.5,
"faced_est_woba": 0.2673184860119048,
"faced_launch_speed": 83.86666666666667,
"faced_strikeout_rate": 0.23333333333333334,
"faced_run_exp": 0.006702420300892518
}
}
},
"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.6041,
"recent_form_edge_home_minus_away": -0.2885,
"pitcher_matchup_edge_home_minus_away": -0.0781,
"composite_home_edge": -0.7562,
"existing_home_win_probability": 0.4908,
"refreshed_home_win_probability": 0.3,
"winner_support_before_review": 0.7562
},
"reasons": [
"target direction already matched refreshed fundamentals or margin was not fragile"
]
},
"confidence_note": "Calibrated to pre-simulation winner probability with starter-quality caps. Matchup recency guardrail cap enforced after calibration. Production confidence governor cap enforced.",
"pre_simulation_target": {
"away_runs": 4,
"home_runs": 3,
"predicted_score_text": "TEX 4 - 3 LAA",
"confidence": 0.524489,
"source": "enhanced_prediction_before_inning_simulation"
},
"score_source": "simulation_total_with_model_margin_cap",
"final_prediction_synced": true,
"final_prediction_source": "stable_final_prediction_policy",
"simulation_usage": "same_winner_margin_capped",
"simulation_score_matches_prediction": false,
"simulation_reconciliation": {
"pre_simulation_score": {
"away_runs": 4,
"home_runs": 3,
"score_text": "TEX 4 - 3 LAA",
"winner": "TEX"
},
"final_simulation_score": {
"away_runs": 5,
"home_runs": 3,
"score_text": "TEX 5 - 3 LAA",
"winner": "TEX"
},
"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.0781,
"recent_form_edge_home_minus_away": -0.2885,
"winner_direction": "away",
"thresholds": {
"pitcher_matchup": 0.35,
"recent_form": 0.75
}
},
"margin_widening_capped": true,
"simulation_winner_agrees": true,
"away_run_delta": 1,
"home_run_delta": 0,
"total_run_delta": 1,
"score_source": "simulation_total_with_model_margin_cap",
"simulation_usage": "same_winner_margin_capped",
"final_prediction_source": "stable_final_prediction_policy",
"final_decision_policy": {
"policy_version": "model_winner_simulation_score_v1",
"away_runs": 5,
"home_runs": 4,
"winner": "TEX",
"model_winner": "TEX",
"simulation_winner": "TEX",
"simulation_winner_agrees": true,
"simulation_score_enabled": true,
"independent_margin_support": false,
"margin_widening_capped": true,
"model_margin": 1,
"simulation_margin": 2,
"simulation_usage": "same_winner_margin_capped",
"score_source": "simulation_total_with_model_margin_cap",
"model_score": {
"away_runs": 4,
"home_runs": 3
},
"simulation_score": {
"away_runs": 5,
"home_runs": 3
}
},
"final_margin_quality_review": {
"review_required": false,
"pre_margin": 1,
"final_margin": 2,
"winner_quality_edge": 0.6041,
"winner": "TEX",
"reason": "final margin is directionally supported or within review threshold"
}
},
"decision_profile": {
"method": "priced_decision_profile_v2",
"winner": "TEX",
"display_confidence": 0.5245,
"internal_signal_score": 0.6362,
"internal_signal_status": "ranking_signal_not_a_calibrated_fair_probability",
"model_pick_probability": 0.5245,
"confidence_compression_detected": true,
"moneyline_fit": "unavailable_without_market_price",
"betting_status": "price_required_before_betting_analysis",
"market_context": null,
"margin_fit": "moneyline_preferred_over_margin",
"totals_fit": "high_volatility_totals",
"winner_accuracy_and_margin_accuracy_decoupled": true,
"signals": {
"final_margin": 1,
"winner_quality_edge": 0.6041,
"winner_recent_form_edge": 0.376,
"winner_pitcher_matchup_edge": 0.0781,
"winner_simulation_draw_rate": 0.7,
"blowout_draw_rate_margin_4_plus": 0.2,
"high_total_draw_rate_11_plus": 0.1,
"low_total_draw_rate_6_or_less": 0.6,
"total_runs_spread": {
"min": 1,
"median": 4,
"max": 13,
"range": 12
}
},
"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."
}
}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.
| Team | Applied | Offense Factor | Raw Avg Factor | Coverage Weight | Covered | Missing |
|---|---|---|---|---|---|---|
| Away TEX | True | 1.0224 | 1.0224 | 1 | 9 | 0 |
| Home LAA | True | 1.0157 | 1.0157 | 1 | 9 | 0 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 3B | Ezequiel Duran | 42 | 0.9962 | -0.0513 | negative_batter_regression | 0.3050 | 0.2500 | 0.3800 | 6.30 | 36.20 | 88.60 | 11.50 | 26.40 | 23.40 | 7.30 | -0.8857 |
| LF | Jarred Kelenic | 517 | 1.0456 | 0.6083 | positive_batter_regression | 0.3460 | 0.2390 | 0.4710 | 21.60 | 48.60 | 93.10 | 14.50 | 38.90 | 35.70 | 11.40 | 1.7429 |
| RF | Brandon Nimmo | 63 | 1.1131 | 1.5086 | neutral | 0.3730 | 0.2930 | 0.5030 | 11.10 | 52 | 92.20 | 11.50 | 22.20 | 21.60 | 8.10 | 0.7714 |
| DH | Joc Pederson | 91 | 1.0765 | 1.0194 | neutral | 0.3570 | 0.2560 | 0.4660 | 11.60 | 50 | 92 | 14.90 | 29.90 | 22.80 | 11.70 | -0.2571 |
| SS | Corey Seager | 179 | 1.0708 | 0.9435 | positive_batter_regression | 0.3350 | 0.2310 | 0.4510 | 14.40 | 46.30 | 91.40 | 12.80 | 34.90 | 25.50 | 12 | 1.2571 |
| CF | Evan Carter | 102 | 0.9710 | -0.3868 | neutral | 0.2880 | 0.1990 | 0.3220 | 5.70 | 36.30 | 87.50 | 17.50 | 28.80 | 23.70 | 12.40 | 0.0857 |
| C | Elias Díaz | 277 | 0.9739 | -0.3484 | negative_batter_regression | 0.2560 | 0.2240 | 0.3450 | 5.50 | 36.40 | 86.40 | 15.90 | 28.30 | 23.30 | 2.70 | -0.8857 |
| 2B | Nicky Lopez | 461 | 0.9484 | -0.6878 | neutral | 0.2570 | 0.2410 | 0.2890 | 0 | 21.90 | 84.40 | 2.50 | 18.40 | 16.20 | 4.40 | -0.7143 |
| 1B | Jake Burger | 129 | 1.0058 | 0.0768 | neutral | 0.2960 | 0.2260 | 0.3880 | 10.80 | 46.20 | 89.80 | 13.60 | 34.60 | 27 | 7.40 | -0.3714 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| LF | Wade Meckler | 161 | 0.9884 | -0.1551 | negative_batter_regression | 0.3080 | 0.2570 | 0.3630 | 3.70 | 29.40 | 86 | 6.30 | 23.40 | 21.40 | 8.70 | -1.1429 |
| DH | Zach Neto | 68 | 0.9984 | -0.0212 | neutral | 0.2970 | 0.1990 | 0.3890 | 11.70 | 40.10 | 89.40 | 22.90 | 33.50 | 31.90 | 9.40 | -0.6000 |
| C | Moisés Ballesteros | 506 | 1.0274 | 0.3658 | neutral | 0.3100 | 0.2430 | 0.3930 | 9.10 | 47.20 | 90.40 | 10 | 27.10 | 21 | 8.80 | 0.8571 |
| RF | Josh Lowe | 509 | 1.0052 | 0.0696 | neutral | 0.2940 | 0.2190 | 0.3950 | 8.80 | 38.10 | 89.10 | 19.20 | 31.20 | 27.90 | 7.40 | 0.7714 |
| SS | Oswald Peraza | 152 | 0.9676 | -0.4318 | neutral | 0.2710 | 0.2260 | 0.3450 | 7 | 38 | 87.50 | 10.20 | 29.60 | 29.70 | 3.50 | -0.2000 |
| 2B | Vaughn Grissom | 275 | 1.0247 | 0.3295 | neutral | 0.3200 | 0.2570 | 0.3980 | 6.80 | 39.40 | 88.40 | 12.60 | 22.30 | 17.10 | 7 | 0.2571 |
| 1B | Nolan Schanuel | 106 | 1.0223 | 0.2975 | neutral | 0.3310 | 0.2800 | 0.3850 | 2.50 | 32.90 | 87.50 | 11.80 | 16.50 | 13.40 | 9.40 | 0.1143 |
| CF | Mike Trout | 31 | 1.1271 | 1.6940 | positive_batter_regression | 0.3910 | 0.2560 | 0.5120 | 17.10 | 47.80 | 90.30 | 17.50 | 23.70 | 25.70 | 18.20 | 0.8571 |
| 3B | Denzer Guzman | 533 | 0.9804 | -0.2610 | neutral | 0.2740 | 0.2300 | 0.3370 | 5.30 | 32.70 | 87.50 | 10.20 | 23.50 | 25.10 | 6 | -0.1143 |
{
"home": {
"applied": true,
"offense_factor": 1.0157,
"raw_average_factor": 1.0157,
"team_espn_average_rank": 260.11,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "LF",
"player_id": "685133",
"player_name": "Wade Meckler",
"offense_factor": 0.9884,
"quality_score": -0.1551,
"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": 161,
"espn_total_ranked": 633,
"metrics": {
"espn_rank": 161,
"gp_value": 62.0,
"gp_rank": 313,
"ab_value": 177.0,
"ab_rank": 303,
"r_value": 24.0,
"r_rank": 274,
"h_value": 54.0,
"h_rank": 243,
"avg_value": 0.3050847,
"avg_rank": null,
"2b_value": 10.0,
"2b_rank": 233,
"3b_value": 0.0,
"3b_rank": 265,
"hr_value": 3.0,
"hr_rank": 336,
"rbi_value": 20.0,
"rbi_rank": 304,
"tb_value": 73.0,
"tb_rank": 2014,
"bb_value": 17.0,
"bb_rank": 276,
"so_value": 42.0,
"so_rank": 303,
"sb_value": 4.0,
"sb_rank": 180,
"obp_value": 0.3692307,
"obp_rank": "-",
"slg_value": 0.4124293,
"slg_rank": "-",
"ops_value": 0.78166,
"ops_rank": null,
"war_value": 1.27,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 144.0,
"k_percent": 21.4,
"bb_percent": 8.7,
"woba": 0.348,
"xwoba": 0.308,
"xba": 0.257,
"xslg": 0.363,
"sweet_spot_percent": 37.5,
"barrel_batted_rate": 3.7,
"hard_hit_percent": 29.4,
"exit_velocity_avg": 86.0,
"launch_angle_avg": 6.3,
"whiff_percent": 23.4,
"swing_percent": 45.8
},
"components": {
"expected_quality": -0.0895,
"regression_edge": -1.1429,
"xwoba_edge": 0.1714,
"xba_edge": 0.5714,
"xslg_edge": -0.0571,
"barrel_edge": -0.6889,
"hard_hit_edge": -1.1857,
"exit_velocity_edge": -1.04,
"sweet_spot_edge": 0.7,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "DH",
"player_id": "687263",
"player_name": "Zach Neto",
"offense_factor": 0.9984,
"quality_score": -0.0212,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "687263",
"espn_id": 4666100,
"player_name": "Zach Neto",
"team": "LAA",
"role": "batter",
"espn_rank": 68,
"espn_total_ranked": 633,
"metrics": {
"espn_rank": 68,
"gp_value": 117.0,
"gp_rank": 30,
"ab_value": 466.0,
"ab_rank": 6,
"r_value": 75.0,
"r_rank": 10,
"h_value": 105.0,
"h_rank": 70,
"avg_value": 0.2253218,
"avg_rank": 127.0,
"2b_value": 23.0,
"2b_rank": 36,
"3b_value": 3.0,
"3b_rank": 25,
"hr_value": 20.0,
"hr_rank": 37,
"rbi_value": 52.0,
"rbi_rank": 86,
"tb_value": 194.0,
"tb_rank": 267,
"bb_value": 49.0,
"bb_rank": 48,
"so_value": 167.0,
"so_rank": 2,
"sb_value": 15.0,
"sb_rank": 42,
"obp_value": 0.3091603,
"obp_rank": "120",
"slg_value": 0.416309,
"slg_rank": "86",
"ops_value": 0.7254693,
"ops_rank": 34.0,
"war_value": 2.43,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 439.0,
"k_percent": 31.9,
"bb_percent": 9.4,
"woba": 0.318,
"xwoba": 0.297,
"xba": 0.199,
"xslg": 0.389,
"sweet_spot_percent": 34.7,
"barrel_batted_rate": 11.7,
"hard_hit_percent": 40.1,
"exit_velocity_avg": 89.4,
"launch_angle_avg": 22.9,
"whiff_percent": 33.5,
"swing_percent": 51.3
},
"components": {
"expected_quality": 0.073,
"regression_edge": -0.6,
"xwoba_edge": -0.1429,
"xba_edge": -1.0857,
"xslg_edge": 0.3143,
"barrel_edge": 1.0889,
"hard_hit_edge": 0.3429,
"exit_velocity_edge": 0.32,
"sweet_spot_edge": 0.2333,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "C",
"player_id": "694208",
"player_name": "Moisés Ballesteros",
"offense_factor": 1.0274,
"quality_score": 0.3658,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "694208",
"espn_id": 4987418,
"player_name": "Moises Ballesteros",
"team": "LAA",
"role": "batter",
"espn_rank": 506,
"espn_total_ranked": 633,
"metrics": {
"espn_rank": 506,
"gp_value": 67.0,
"gp_rank": 287,
"ab_value": 185.0,
"ab_rank": 288,
"r_value": 16.0,
"r_rank": 355,
"h_value": 40.0,
"h_rank": 303,
"avg_value": 0.2162162,
"avg_rank": null,
"2b_value": 6.0,
"2b_rank": 324,
"3b_value": 0.0,
"3b_rank": 265,
"hr_value": 6.0,
"hr_rank": 241,
"rbi_value": 23.0,
"rbi_rank": 273,
"tb_value": 64.0,
"tb_rank": 1880,
"bb_value": 18.0,
"bb_rank": 258,
"so_value": 43.0,
"so_rank": 297,
"sb_value": 1.0,
"sb_rank": 305,
"obp_value": 0.2829268,
"obp_rank": "-",
"slg_value": 0.3459459,
"slg_rank": "-",
"ops_value": 0.6288727,
"ops_rank": null,
"war_value": -0.23,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 173.0,
"k_percent": 21.0,
"bb_percent": 8.8,
"woba": 0.28,
"xwoba": 0.31,
"xba": 0.243,
"xslg": 0.393,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 9.1,
"hard_hit_percent": 47.2,
"exit_velocity_avg": 90.4,
"launch_angle_avg": 10.0,
"whiff_percent": 27.1,
"swing_percent": 49.1
},
"components": {
"expected_quality": 0.4014,
"regression_edge": 0.8571,
"xwoba_edge": 0.2286,
"xba_edge": 0.1714,
"xslg_edge": 0.3714,
"barrel_edge": 0.5111,
"hard_hit_edge": 1.3571,
"exit_velocity_edge": 0.72,
"sweet_spot_edge": 0.0,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "RF",
"player_id": "666139",
"player_name": "Josh Lowe",
"offense_factor": 1.0052,
"quality_score": 0.0696,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "666139",
"espn_id": 40557,
"player_name": "Josh Lowe",
"team": "LAA",
"role": "batter",
"espn_rank": 509,
"espn_total_ranked": 633,
"metrics": {
"espn_rank": 509,
"gp_value": 76.0,
"gp_rank": 249,
"ab_value": 208.0,
"ab_rank": 264,
"r_value": 19.0,
"r_rank": 325,
"h_value": 42.0,
"h_rank": 290,
"avg_value": 0.201923,
"avg_rank": null,
"2b_value": 5.0,
"2b_rank": 351,
"3b_value": 0.0,
"3b_rank": 265,
"hr_value": 8.0,
"hr_rank": 189,
"rbi_value": 22.0,
"rbi_rank": 281,
"tb_value": 71.0,
"tb_rank": 1738,
"bb_value": 17.0,
"bb_rank": 276,
"so_value": 64.0,
"so_rank": 203,
"sb_value": 4.0,
"sb_rank": 180,
"obp_value": 0.2643171,
"obp_rank": "-",
"slg_value": 0.3413461,
"slg_rank": "-",
"ops_value": 0.6056632,
"ops_rank": null,
"war_value": -0.24,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 192.0,
"k_percent": 27.9,
"bb_percent": 7.4,
"woba": 0.267,
"xwoba": 0.294,
"xba": 0.219,
"xslg": 0.395,
"sweet_spot_percent": 29.9,
"barrel_batted_rate": 8.8,
"hard_hit_percent": 38.1,
"exit_velocity_avg": 89.1,
"launch_angle_avg": 19.2,
"whiff_percent": 31.2,
"swing_percent": 56.9
},
"components": {
"expected_quality": -0.0328,
"regression_edge": 0.7714,
"xwoba_edge": -0.2286,
"xba_edge": -0.5143,
"xslg_edge": 0.4,
"barrel_edge": 0.4444,
"hard_hit_edge": 0.0571,
"exit_velocity_edge": 0.2,
"sweet_spot_edge": -0.5667,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "SS",
"player_id": "672724",
"player_name": "Oswald Peraza",
"offense_factor": 0.9676,
"quality_score": -0.4318,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "672724",
"espn_id": 42479,
"player_name": "Oswald Peraza",
"team": "LAA",
"role": "batter",
"espn_rank": 152,
"espn_total_ranked": 633,
"metrics": {
"espn_rank": 152,
"gp_value": 100.0,
"gp_rank": 145,
"ab_value": 290.0,
"ab_rank": 183,
"r_value": 27.0,
"r_rank": 252,
"h_value": 67.0,
"h_rank": 190,
"avg_value": 0.2310344,
"avg_rank": null,
"2b_value": 11.0,
"2b_rank": 214,
"3b_value": 2.0,
"3b_rank": 56,
"hr_value": 7.0,
"hr_rank": 214,
"rbi_value": 24.0,
"rbi_rank": 268,
"tb_value": 103.0,
"tb_rank": 1158,
"bb_value": 11.0,
"bb_rank": 349,
"so_value": 92.0,
"so_rank": 88,
"sb_value": 12.0,
"sb_rank": 57,
"obp_value": 0.2750809,
"obp_rank": "-",
"slg_value": 0.3551724,
"slg_rank": "-",
"ops_value": 0.6302533,
"ops_rank": null,
"war_value": 1.37,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 280.0,
"k_percent": 29.7,
"bb_percent": 3.5,
"woba": 0.278,
"xwoba": 0.271,
"xba": 0.226,
"xslg": 0.345,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.0,
"hard_hit_percent": 38.0,
"exit_velocity_avg": 87.5,
"launch_angle_avg": 10.2,
"whiff_percent": 29.6,
"swing_percent": 56.4
},
"components": {
"expected_quality": -0.4695,
"regression_edge": -0.2,
"xwoba_edge": -0.8857,
"xba_edge": -0.3143,
"xslg_edge": -0.3143,
"barrel_edge": 0.0444,
"hard_hit_edge": 0.0429,
"exit_velocity_edge": -0.44,
"sweet_spot_edge": -0.05,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "2B",
"player_id": "687093",
"player_name": "Vaughn Grissom",
"offense_factor": 1.0247,
"quality_score": 0.3295,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "687093",
"espn_id": 42503,
"player_name": "Vaughn Grissom",
"team": "LAA",
"role": "batter",
"espn_rank": 275,
"espn_total_ranked": 633,
"metrics": {
"espn_rank": 275,
"gp_value": 78.0,
"gp_rank": 242,
"ab_value": 268.0,
"ab_rank": 202,
"r_value": 29.0,
"r_rank": 233,
"h_value": 68.0,
"h_rank": 184,
"avg_value": 0.2537313,
"avg_rank": null,
"2b_value": 16.0,
"2b_rank": 129,
"3b_value": 0.0,
"3b_rank": 265,
"hr_value": 7.0,
"hr_rank": 214,
"rbi_value": 47.0,
"rbi_rank": 113,
"tb_value": 105.0,
"tb_rank": 1485,
"bb_value": 21.0,
"bb_rank": 230,
"so_value": 51.0,
"so_rank": 252,
"sb_value": 0.0,
"sb_rank": 408,
"obp_value": 0.3154362,
"obp_rank": "-",
"slg_value": 0.391791,
"slg_rank": "-",
"ops_value": 0.7072272,
"ops_rank": null,
"war_value": 0.46,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 227.0,
"k_percent": 17.1,
"bb_percent": 7.0,
"woba": 0.311,
"xwoba": 0.32,
"xba": 0.257,
"xslg": 0.398,
"sweet_spot_percent": 33.5,
"barrel_batted_rate": 6.8,
"hard_hit_percent": 39.4,
"exit_velocity_avg": 88.4,
"launch_angle_avg": 12.6,
"whiff_percent": 22.3,
"swing_percent": 49.2
},
"components": {
"expected_quality": 0.3413,
"regression_edge": 0.2571,
"xwoba_edge": 0.5143,
"xba_edge": 0.5714,
"xslg_edge": 0.4429,
"barrel_edge": 0.0,
"hard_hit_edge": 0.2429,
"exit_velocity_edge": -0.08,
"sweet_spot_edge": 0.0333,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "1B",
"player_id": "694384",
"player_name": "Nolan Schanuel",
"offense_factor": 1.0223,
"quality_score": 0.2975,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "694384",
"espn_id": 4739755,
"player_name": "Nolan Schanuel",
"team": "LAA",
"role": "batter",
"espn_rank": 106,
"espn_total_ranked": 633,
"metrics": {
"espn_rank": 106,
"gp_value": 100.0,
"gp_rank": 145,
"ab_value": 367.0,
"ab_rank": 115,
"r_value": 39.0,
"r_rank": 173,
"h_value": 100.0,
"h_rank": 88,
"avg_value": 0.2724795,
"avg_rank": 39.0,
"2b_value": 21.0,
"2b_rank": 59,
"3b_value": 0.0,
"3b_rank": 265,
"hr_value": 7.0,
"hr_rank": 214,
"rbi_value": 42.0,
"rbi_rank": 143,
"tb_value": 142.0,
"tb_rank": 1143,
"bb_value": 39.0,
"bb_rank": 96,
"so_value": 56.0,
"so_rank": 234,
"sb_value": 1.0,
"sb_rank": 305,
"obp_value": 0.3477218,
"obp_rank": "52",
"slg_value": 0.3869209,
"slg_rank": "116",
"ops_value": 0.7346427,
"ops_rank": 64.0,
"war_value": 1.74,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 337.0,
"k_percent": 13.4,
"bb_percent": 9.4,
"woba": 0.327,
"xwoba": 0.331,
"xba": 0.28,
"xslg": 0.385,
"sweet_spot_percent": 36.1,
"barrel_batted_rate": 2.5,
"hard_hit_percent": 32.9,
"exit_velocity_avg": 87.5,
"launch_angle_avg": 11.8,
"whiff_percent": 16.5,
"swing_percent": 44.7
},
"components": {
"expected_quality": 0.3273,
"regression_edge": 0.1143,
"xwoba_edge": 0.8286,
"xba_edge": 1.2286,
"xslg_edge": 0.2571,
"barrel_edge": -0.9556,
"hard_hit_edge": -0.6857,
"exit_velocity_edge": -0.44,
"sweet_spot_edge": 0.4667,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "CF",
"player_id": "545361",
"player_name": "Mike Trout",
"offense_factor": 1.1271,
"quality_score": 1.694,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "545361",
"espn_id": 30836,
"player_name": "Mike Trout",
"team": "LAA",
"role": "batter",
"espn_rank": 31,
"espn_total_ranked": 633,
"metrics": {
"espn_rank": 31,
"gp_value": 101.0,
"gp_rank": 142,
"ab_value": 362.0,
"ab_rank": 119,
"r_value": 68.0,
"r_rank": 30,
"h_value": 85.0,
"h_rank": 130,
"avg_value": 0.2348066,
"avg_rank": 113.0,
"2b_value": 16.0,
"2b_rank": 129,
"3b_value": 0.0,
"3b_rank": 265,
"hr_value": 20.0,
"hr_rank": 37,
"rbi_value": 42.0,
"rbi_rank": 143,
"tb_value": 161.0,
"tb_rank": 900,
"bb_value": 82.0,
"bb_rank": 4,
"so_value": 116.0,
"so_rank": 38,
"sb_value": 9.0,
"sb_rank": 81,
"obp_value": 0.383592,
"obp_rank": "8",
"slg_value": 0.4447513,
"slg_rank": "58",
"ops_value": 0.8283433,
"ops_rank": 66.0,
"war_value": 3.35,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 363.0,
"k_percent": 25.7,
"bb_percent": 18.2,
"woba": 0.361,
"xwoba": 0.391,
"xba": 0.256,
"xslg": 0.512,
"sweet_spot_percent": 36.8,
"barrel_batted_rate": 17.1,
"hard_hit_percent": 47.8,
"exit_velocity_avg": 90.3,
"launch_angle_avg": 17.5,
"whiff_percent": 23.7,
"swing_percent": 39.4
},
"components": {
"expected_quality": 1.8302,
"regression_edge": 0.8571,
"xwoba_edge": 2.5,
"xba_edge": 0.5429,
"xslg_edge": 2.0714,
"barrel_edge": 2.2889,
"hard_hit_edge": 1.4429,
"exit_velocity_edge": 0.68,
"sweet_spot_edge": 0.5833,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "3B",
"player_id": "694203",
"player_name": "Denzer Guzman",
"offense_factor": 0.9804,
"quality_score": -0.261,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "694203",
"espn_id": 4917822,
"player_name": "Denzer Guzman",
"team": "LAA",
"role": "batter",
"espn_rank": 533,
"espn_total_ranked": 633,
"metrics": {
"espn_rank": 533,
"gp_value": 48.0,
"gp_rank": 371,
"ab_value": 155.0,
"ab_rank": 331,
"r_value": 14.0,
"r_rank": 374,
"h_value": 35.0,
"h_rank": 332,
"avg_value": 0.2258064,
"avg_rank": null,
"2b_value": 4.0,
"2b_rank": 383,
"3b_value": 0.0,
"3b_rank": 265,
"hr_value": 5.0,
"hr_rank": 263,
"rbi_value": 16.0,
"rbi_rank": 338,
"tb_value": 54.0,
"tb_rank": 2034,
"bb_value": 10.0,
"bb_rank": 362,
"so_value": 42.0,
"so_rank": 303,
"sb_value": 2.0,
"sb_rank": 248,
"obp_value": 0.2771084,
"obp_rank": "-",
"slg_value": 0.348387,
"slg_rank": "-",
"ops_value": 0.6254954,
"ops_rank": null,
"war_value": -0.35,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 126.0,
"k_percent": 25.1,
"bb_percent": 6.0,
"woba": 0.278,
"xwoba": 0.274,
"xba": 0.23,
"xslg": 0.337,
"sweet_spot_percent": 33.6,
"barrel_batted_rate": 5.3,
"hard_hit_percent": 32.7,
"exit_velocity_avg": 87.5,
"launch_angle_avg": 10.2,
"whiff_percent": 23.5,
"swing_percent": 52.4
},
"components": {
"expected_quality": -0.5113,
"regression_edge": -0.1143,
"xwoba_edge": -0.8,
"xba_edge": -0.2,
"xslg_edge": -0.4286,
"barrel_edge": -0.3333,
"hard_hit_edge": -0.7143,
"exit_velocity_edge": -0.44,
"sweet_spot_edge": 0.05,
"launch_angle_hr_bonus": 0.0
}
}
],
"source": "all_players_stats.csv embedded Savant batter features"
},
"away": {
"applied": true,
"offense_factor": 1.0224,
"raw_average_factor": 1.0224,
"team_espn_average_rank": 206.78,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "3B",
"player_id": "677649",
"player_name": "Ezequiel Duran",
"offense_factor": 0.9962,
"quality_score": -0.0513,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "677649",
"espn_id": 42457,
"player_name": "Ezequiel Duran",
"team": "TEX",
"role": "batter",
"espn_rank": 42,
"espn_total_ranked": 633,
"metrics": {
"espn_rank": 42,
"gp_value": 111.0,
"gp_rank": 95,
"ab_value": 383.0,
"ab_rank": 101,
"r_value": 54.0,
"r_rank": 90,
"h_value": 104.0,
"h_rank": 77,
"avg_value": 0.2715404,
"avg_rank": 39.0,
"2b_value": 22.0,
"2b_rank": 50,
"3b_value": 3.0,
"3b_rank": 25,
"hr_value": 13.0,
"hr_rank": 104,
"rbi_value": 64.0,
"rbi_rank": 39,
"tb_value": 171.0,
"tb_rank": 489,
"bb_value": 31.0,
"bb_rank": 154,
"so_value": 99.0,
"so_rank": 69,
"sb_value": 9.0,
"sb_rank": 81,
"obp_value": 0.3270142,
"obp_rank": "85",
"slg_value": 0.4464751,
"slg_rank": "56",
"ops_value": 0.7734893,
"ops_rank": 141.0,
"war_value": 2.97,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 339.0,
"k_percent": 23.4,
"bb_percent": 7.3,
"woba": 0.336,
"xwoba": 0.305,
"xba": 0.25,
"xslg": 0.38,
"sweet_spot_percent": 36.2,
"barrel_batted_rate": 6.3,
"hard_hit_percent": 36.2,
"exit_velocity_avg": 88.6,
"launch_angle_avg": 11.5,
"whiff_percent": 26.4,
"swing_percent": 51.6
},
"components": {
"expected_quality": 0.0845,
"regression_edge": -0.8857,
"xwoba_edge": 0.0857,
"xba_edge": 0.3714,
"xslg_edge": 0.1857,
"barrel_edge": -0.1111,
"hard_hit_edge": -0.2143,
"exit_velocity_edge": 0.0,
"sweet_spot_edge": 0.4833,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "LF",
"player_id": "672284",
"player_name": "Jarred Kelenic",
"offense_factor": 1.0456,
"quality_score": 0.6083,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "672284",
"espn_id": 41150,
"player_name": "Jarred Kelenic",
"team": "TEX",
"role": "batter",
"espn_rank": 517,
"espn_total_ranked": 633,
"metrics": {
"espn_rank": 517,
"gp_value": 27.0,
"gp_rank": 452,
"ab_value": 62.0,
"ab_rank": 457,
"r_value": 5.0,
"r_rank": 475,
"h_value": 14.0,
"h_rank": 445,
"avg_value": 0.2258064,
"avg_rank": null,
"2b_value": 2.0,
"2b_rank": 456,
"3b_value": 0.0,
"3b_rank": 265,
"hr_value": 1.0,
"hr_rank": 433,
"rbi_value": 5.0,
"rbi_rank": 468,
"tb_value": 19.0,
"tb_rank": 2730,
"bb_value": 8.0,
"bb_rank": 395,
"so_value": 25.0,
"so_rank": 408,
"sb_value": 0.0,
"sb_rank": 408,
"obp_value": 0.3142857,
"obp_rank": "-",
"slg_value": 0.3064516,
"slg_rank": "-",
"ops_value": 0.6207373,
"ops_rank": null,
"war_value": -0.26,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 65.0,
"k_percent": 35.7,
"bb_percent": 11.4,
"woba": 0.285,
"xwoba": 0.346,
"xba": 0.239,
"xslg": 0.471,
"sweet_spot_percent": 40.5,
"barrel_batted_rate": 21.6,
"hard_hit_percent": 48.6,
"exit_velocity_avg": 93.1,
"launch_angle_avg": 14.5,
"whiff_percent": 38.9,
"swing_percent": 46.0
},
"components": {
"expected_quality": 1.288,
"regression_edge": 1.7429,
"xwoba_edge": 1.2571,
"xba_edge": 0.0571,
"xslg_edge": 1.4857,
"barrel_edge": 2.5,
"hard_hit_edge": 1.5571,
"exit_velocity_edge": 1.8,
"sweet_spot_edge": 1.2,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "RF",
"player_id": "607043",
"player_name": "Brandon Nimmo",
"offense_factor": 1.1131,
"quality_score": 1.5086,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "607043",
"espn_id": 32159,
"player_name": "Brandon Nimmo",
"team": "TEX",
"role": "batter",
"espn_rank": 63,
"espn_total_ranked": 633,
"metrics": {
"espn_rank": 63,
"gp_value": 114.0,
"gp_rank": 64,
"ab_value": 435.0,
"ab_rank": 45,
"r_value": 50.0,
"r_rank": 112,
"h_value": 121.0,
"h_rank": 27,
"avg_value": 0.2781609,
"avg_rank": 31.0,
"2b_value": 27.0,
"2b_rank": 8,
"3b_value": 4.0,
"3b_rank": 15,
"hr_value": 13.0,
"hr_rank": 104,
"rbi_value": 47.0,
"rbi_rank": 113,
"tb_value": 195.0,
"tb_rank": 323,
"bb_value": 39.0,
"bb_rank": 96,
"so_value": 104.0,
"so_rank": 59,
"sb_value": 6.0,
"sb_rank": 134,
"obp_value": 0.3443983,
"obp_rank": "55",
"slg_value": 0.4482758,
"slg_rank": "53",
"ops_value": 0.7926741,
"ops_rank": 2.0,
"war_value": 2.46,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 403.0,
"k_percent": 21.6,
"bb_percent": 8.1,
"woba": 0.346,
"xwoba": 0.373,
"xba": 0.293,
"xslg": 0.503,
"sweet_spot_percent": 37.5,
"barrel_batted_rate": 11.1,
"hard_hit_percent": 52.0,
"exit_velocity_avg": 92.2,
"launch_angle_avg": 11.5,
"whiff_percent": 22.2,
"swing_percent": 50.4
},
"components": {
"expected_quality": 1.6286,
"regression_edge": 0.7714,
"xwoba_edge": 2.0286,
"xba_edge": 1.6,
"xslg_edge": 1.9429,
"barrel_edge": 0.9556,
"hard_hit_edge": 2.0429,
"exit_velocity_edge": 1.44,
"sweet_spot_edge": 0.7,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "DH",
"player_id": "592626",
"player_name": "Joc Pederson",
"offense_factor": 1.0765,
"quality_score": 1.0194,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "592626",
"espn_id": 31392,
"player_name": "Joc Pederson",
"team": "TEX",
"role": "batter",
"espn_rank": 91,
"espn_total_ranked": 633,
"metrics": {
"espn_rank": 91,
"gp_value": 108.0,
"gp_rank": 113,
"ab_value": 311.0,
"ab_rank": 163,
"r_value": 49.0,
"r_rank": 117,
"h_value": 78.0,
"h_rank": 149,
"avg_value": 0.2508038,
"avg_rank": 83.0,
"2b_value": 11.0,
"2b_rank": 214,
"3b_value": 2.0,
"3b_rank": 56,
"hr_value": 22.0,
"hr_rank": 27,
"rbi_value": 45.0,
"rbi_rank": 125,
"tb_value": 159.0,
"tb_rank": 556,
"bb_value": 42.0,
"bb_rank": 83,
"so_value": 82.0,
"so_rank": 122,
"sb_value": 2.0,
"sb_rank": 248,
"obp_value": 0.3426183,
"obp_rank": "56",
"slg_value": 0.511254,
"slg_rank": "15",
"ops_value": 0.8538723,
"ops_rank": 71.0,
"war_value": 2.04,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 300.0,
"k_percent": 22.8,
"bb_percent": 11.7,
"woba": 0.366,
"xwoba": 0.357,
"xba": 0.256,
"xslg": 0.466,
"sweet_spot_percent": 32.8,
"barrel_batted_rate": 11.6,
"hard_hit_percent": 50.0,
"exit_velocity_avg": 92.0,
"launch_angle_avg": 14.9,
"whiff_percent": 29.9,
"swing_percent": 46.2
},
"components": {
"expected_quality": 1.2272,
"regression_edge": -0.2571,
"xwoba_edge": 1.5714,
"xba_edge": 0.5429,
"xslg_edge": 1.4143,
"barrel_edge": 1.0667,
"hard_hit_edge": 1.7571,
"exit_velocity_edge": 1.36,
"sweet_spot_edge": -0.0833,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "SS",
"player_id": "608369",
"player_name": "Corey Seager",
"offense_factor": 1.0708,
"quality_score": 0.9435,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "608369",
"espn_id": 32691,
"player_name": "Corey Seager",
"team": "TEX",
"role": "batter",
"espn_rank": 179,
"espn_total_ranked": 633,
"metrics": {
"espn_rank": 179,
"gp_value": 61.0,
"gp_rank": 317,
"ab_value": 224.0,
"ab_rank": 253,
"r_value": 33.0,
"r_rank": 209,
"h_value": 43.0,
"h_rank": 283,
"avg_value": 0.1919642,
"avg_rank": null,
"2b_value": 7.0,
"2b_rank": 297,
"3b_value": 0.0,
"3b_rank": 265,
"hr_value": 11.0,
"hr_rank": 140,
"rbi_value": 28.0,
"rbi_rank": 236,
"tb_value": 83.0,
"tb_rank": 1530,
"bb_value": 31.0,
"bb_rank": 154,
"so_value": 66.0,
"so_rank": 186,
"sb_value": 1.0,
"sb_rank": 305,
"obp_value": 0.2934362,
"obp_rank": "-",
"slg_value": 0.3705357,
"slg_rank": "-",
"ops_value": 0.6639719,
"ops_rank": null,
"war_value": 1.09,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 217.0,
"k_percent": 25.5,
"bb_percent": 12.0,
"woba": 0.291,
"xwoba": 0.335,
"xba": 0.231,
"xslg": 0.451,
"sweet_spot_percent": 32.5,
"barrel_batted_rate": 14.4,
"hard_hit_percent": 46.3,
"exit_velocity_avg": 91.4,
"launch_angle_avg": 12.8,
"whiff_percent": 34.9,
"swing_percent": 51.7
},
"components": {
"expected_quality": 0.9076,
"regression_edge": 1.2571,
"xwoba_edge": 0.9429,
"xba_edge": -0.1714,
"xslg_edge": 1.2,
"barrel_edge": 1.6889,
"hard_hit_edge": 1.2286,
"exit_velocity_edge": 1.12,
"sweet_spot_edge": -0.1333,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "CF",
"player_id": "694497",
"player_name": "Evan Carter",
"offense_factor": 0.971,
"quality_score": -0.3868,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "694497",
"espn_id": 4917921,
"player_name": "Evan Carter",
"team": "TEX",
"role": "batter",
"espn_rank": 102,
"espn_total_ranked": 633,
"metrics": {
"espn_rank": 102,
"gp_value": 101.0,
"gp_rank": 142,
"ab_value": 284.0,
"ab_rank": 190,
"r_value": 39.0,
"r_rank": 173,
"h_value": 54.0,
"h_rank": 243,
"avg_value": 0.1901408,
"avg_rank": null,
"2b_value": 9.0,
"2b_rank": 256,
"3b_value": 2.0,
"3b_rank": 56,
"hr_value": 8.0,
"hr_rank": 189,
"rbi_value": 31.0,
"rbi_rank": 209,
"tb_value": 91.0,
"tb_rank": 1178,
"bb_value": 42.0,
"bb_rank": 83,
"so_value": 80.0,
"so_rank": 134,
"sb_value": 14.0,
"sb_rank": 48,
"obp_value": 0.3021148,
"obp_rank": "-",
"slg_value": 0.3204225,
"slg_rank": "-",
"ops_value": 0.6225373,
"ops_rank": null,
"war_value": 1.83,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 270.0,
"k_percent": 23.7,
"bb_percent": 12.4,
"woba": 0.285,
"xwoba": 0.288,
"xba": 0.199,
"xslg": 0.322,
"sweet_spot_percent": 27.4,
"barrel_batted_rate": 5.7,
"hard_hit_percent": 36.3,
"exit_velocity_avg": 87.5,
"launch_angle_avg": 17.5,
"whiff_percent": 28.8,
"swing_percent": 40.0
},
"components": {
"expected_quality": -0.4637,
"regression_edge": 0.0857,
"xwoba_edge": -0.4,
"xba_edge": -1.0857,
"xslg_edge": -0.6429,
"barrel_edge": -0.2444,
"hard_hit_edge": -0.2,
"exit_velocity_edge": -0.44,
"sweet_spot_edge": -0.9833,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "C",
"player_id": "553869",
"player_name": "Elias Díaz",
"offense_factor": 0.9739,
"quality_score": -0.3484,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "553869",
"espn_id": 33594,
"player_name": "Elias Diaz",
"team": "TEX",
"role": "batter",
"espn_rank": 277,
"espn_total_ranked": 633,
"metrics": {
"espn_rank": 277,
"gp_value": 56.0,
"gp_rank": 333,
"ab_value": 142.0,
"ab_rank": 347,
"r_value": 14.0,
"r_rank": 374,
"h_value": 34.0,
"h_rank": 339,
"avg_value": 0.2394366,
"avg_rank": null,
"2b_value": 9.0,
"2b_rank": 256,
"3b_value": 0.0,
"3b_rank": 265,
"hr_value": 5.0,
"hr_rank": 263,
"rbi_value": 20.0,
"rbi_rank": 304,
"tb_value": 58.0,
"tb_rank": 1914,
"bb_value": 4.0,
"bb_rank": 461,
"so_value": 35.0,
"so_rank": 346,
"sb_value": 0.0,
"sb_rank": 408,
"obp_value": 0.2635135,
"obp_rank": "-",
"slg_value": 0.4084507,
"slg_rank": "-",
"ops_value": 0.6719642,
"ops_rank": null,
"war_value": 0.45,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 104.0,
"k_percent": 23.3,
"bb_percent": 2.7,
"woba": 0.287,
"xwoba": 0.256,
"xba": 0.224,
"xslg": 0.345,
"sweet_spot_percent": 30.9,
"barrel_batted_rate": 5.5,
"hard_hit_percent": 36.4,
"exit_velocity_avg": 86.4,
"launch_angle_avg": 15.9,
"whiff_percent": 28.3,
"swing_percent": 55.0
},
"components": {
"expected_quality": -0.7129,
"regression_edge": -0.8857,
"xwoba_edge": -1.3143,
"xba_edge": -0.3714,
"xslg_edge": -0.3143,
"barrel_edge": -0.2889,
"hard_hit_edge": -0.1857,
"exit_velocity_edge": -0.88,
"sweet_spot_edge": -0.4,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "2B",
"player_id": "670032",
"player_name": "Nicky Lopez",
"offense_factor": 0.9484,
"quality_score": -0.6878,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "670032",
"espn_id": 38106,
"player_name": "Nicky Lopez",
"team": "TEX",
"role": "batter",
"espn_rank": 461,
"espn_total_ranked": 633,
"metrics": {
"espn_rank": 461,
"gp_value": 67.0,
"gp_rank": 287,
"ab_value": 184.0,
"ab_rank": 289,
"r_value": 19.0,
"r_rank": 325,
"h_value": 50.0,
"h_rank": 256,
"avg_value": 0.2717391,
"avg_rank": null,
"2b_value": 3.0,
"2b_rank": 421,
"3b_value": 1.0,
"3b_rank": 114,
"hr_value": 1.0,
"hr_rank": 433,
"rbi_value": 20.0,
"rbi_rank": 304,
"tb_value": 58.0,
"tb_rank": 2204,
"bb_value": 9.0,
"bb_rank": 381,
"so_value": 33.0,
"so_rank": 358,
"sb_value": 4.0,
"sb_rank": 180,
"obp_value": 0.3112244,
"obp_rank": "-",
"slg_value": 0.3152173,
"slg_rank": "-",
"ops_value": 0.6264417,
"ops_rank": null,
"war_value": -0.11,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 139.0,
"k_percent": 16.2,
"bb_percent": 4.4,
"woba": 0.282,
"xwoba": 0.257,
"xba": 0.241,
"xslg": 0.289,
"sweet_spot_percent": 26.3,
"barrel_batted_rate": 0.0,
"hard_hit_percent": 21.9,
"exit_velocity_avg": 84.4,
"launch_angle_avg": 2.5,
"whiff_percent": 18.4,
"swing_percent": 52.2
},
"components": {
"expected_quality": -1.1495,
"regression_edge": -0.7143,
"xwoba_edge": -1.2857,
"xba_edge": 0.1143,
"xslg_edge": -1.1143,
"barrel_edge": -1.5111,
"hard_hit_edge": -2.2571,
"exit_velocity_edge": -1.68,
"sweet_spot_edge": -1.1667,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "1B",
"player_id": "669394",
"player_name": "Jake Burger",
"offense_factor": 1.0058,
"quality_score": 0.0768,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "669394",
"espn_id": 39882,
"player_name": "Jake Burger",
"team": "TEX",
"role": "batter",
"espn_rank": 129,
"espn_total_ranked": 633,
"metrics": {
"espn_rank": 129,
"gp_value": 115.0,
"gp_rank": 51,
"ab_value": 421.0,
"ab_rank": 71,
"r_value": 49.0,
"r_rank": 117,
"h_value": 99.0,
"h_rank": 89,
"avg_value": 0.2351543,
"avg_rank": 113.0,
"2b_value": 17.0,
"2b_rank": 110,
"3b_value": 0.0,
"3b_rank": 265,
"hr_value": 19.0,
"hr_rank": 48,
"rbi_value": 68.0,
"rbi_rank": 28,
"tb_value": 173.0,
"tb_rank": 873,
"bb_value": 34.0,
"bb_rank": 130,
"so_value": 124.0,
"so_rank": 26,
"sb_value": 2.0,
"sb_rank": 248,
"obp_value": 0.2956521,
"obp_rank": "133",
"slg_value": 0.4109263,
"slg_rank": "90",
"ops_value": 0.7065784,
"ops_rank": 43.0,
"war_value": 1.5,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 388.0,
"k_percent": 27.0,
"bb_percent": 7.4,
"woba": 0.309,
"xwoba": 0.296,
"xba": 0.226,
"xslg": 0.388,
"sweet_spot_percent": 29.1,
"barrel_batted_rate": 10.8,
"hard_hit_percent": 46.2,
"exit_velocity_avg": 89.8,
"launch_angle_avg": 13.6,
"whiff_percent": 34.6,
"swing_percent": 50.7
},
"components": {
"expected_quality": 0.1498,
"regression_edge": -0.3714,
"xwoba_edge": -0.1714,
"xba_edge": -0.3143,
"xslg_edge": 0.3,
"barrel_edge": 0.8889,
"hard_hit_edge": 1.2143,
"exit_velocity_edge": 0.48,
"sweet_spot_edge": -0.7,
"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"
}Source: data/all_players_stats.csv embedded Savant pitcher and movement features. Starter quality modifies opposing run scoring and pitcher strikeout/walk/homer expectations.
| Team | Pitcher | Available | ESPN Rank | Quality | Sample Wt | Run Prev | K Factor | BB Factor | HR Factor | Regression | xwOBA | wOBA | K% | BB% | Whiff% | Barrel% | HardHit% |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Away TEX | True | 269 | -0.2304 | 0.8680 | 1.0196 | 0.9340 | 0.9653 | 1.0080 | neutral | 0.3240 | 0.3000 | 15.60 | 6.90 | 18.50 | 8.20 | 34.10 | |
| Home LAA | True | 651 | -0.4393 | 0.4500 | 1.0373 | 1.0057 | 1.0900 | 1.0701 | neutral | 0.4110 | 0.4200 | 17.30 | 26.90 | 32.30 | 13.80 | 31 |
| Team | Pitcher | Movement Available | Primary Pitch | Pitches | Velo | Spin | Axis | HB | IVB | Drop | Rel X | Rel Z | Extension | Arm Angle | Movement Score |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Away TEX | True | None | 73 | 90.04 | 1987 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.0067 | |
| Home LAA | True | None | 72 | 92.25 | 2145 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.1307 |
| Run Factor | Value |
|---|---|
| away_runs_vs_home_pitcher | 1.0168 |
| home_runs_vs_away_pitcher | 1.0170 |
| home_pitcher_quality_edge | -0.2089 |
{
"applied": true,
"home_pitcher": {
"available": true,
"pitcher_id": "691946",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 32.0,
"k_percent": 17.3,
"bb_percent": 26.9,
"woba": 0.42,
"xwoba": 0.411,
"sweet_spot_percent": 41.4,
"barrel_batted_rate": 13.8,
"hard_hit_percent": 31.0,
"avg_best_speed": 73.859,
"avg_hyper_speed": 93.8342,
"whiff_percent": 32.3,
"swing_percent": 42.1
},
"league_medians": {
"pa": 108.0,
"k_percent": 22.0,
"bb_percent": 8.9,
"woba": 0.3145,
"xwoba": 0.312,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 37.7,
"avg_best_speed": 77.5616,
"avg_hyper_speed": 93.8924,
"whiff_percent": 25.4,
"swing_percent": 47.6
},
"components": {
"contact_quality": -1.5956,
"command_and_miss": -0.4571,
"regression_edge": 0.2571,
"xwoba_edge": -2.5,
"barrel_edge": -1.4889,
"hard_hit_edge": 0.9571,
"whiff_edge": 0.9857,
"bb_edge": -2.5,
"pitch_design_score": 0.1307
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "691946",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 72,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 72,
"pitch_usage": 0.0,
"release_speed": 92.25131278538812,
"release_spin_rate": 2144.8244863013697,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 72,
"pitch_usage": 0.0,
"release_speed": 92.25131278538812,
"release_spin_rate": 2144.8244863013697,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.2513,
"release_spin_rate": 2144.8245,
"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.1307,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.9335,
"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.4393,
"sample_weight": 0.45,
"run_prevention_factor": 1.0373,
"strikeout_factor": 1.0057,
"walk_factor": 1.09,
"homer_factor": 1.0701,
"woba_minus_xwoba": 0.009,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "691946",
"espn_id": 5134517,
"player_name": "George Klassen",
"team": "LAA",
"role": "pitcher",
"espn_rank": 651,
"espn_total_ranked": 804,
"metrics": {
"espn_rank": 651,
"gp_value": 3.0,
"gp_rank": 647,
"gs_value": 3.0,
"gs_rank": 232,
"qs_value": 0.0,
"qs_rank": 202,
"era_value": 7.2692,
"era_rank": null,
"w_value": 0.0,
"w_rank": 480,
"l_value": 1.0,
"l_rank": 382,
"sv_value": 0.0,
"sv_rank": 234,
"hld_value": 0.0,
"hld_rank": 317,
"ip_value": 8.2,
"ip_rank": 593,
"h_value": 11.0,
"h_rank": 565,
"er_value": 7.0,
"er_rank": 548,
"hr_value": 1.0,
"hr_rank": 565,
"bb_value": 14.0,
"bb_rank": 342,
"k_value": 9.0,
"k_rank": 555,
"k_per_9_value": 9.346153,
"k_per_9_rank": 25,
"whip_value": 2.8846,
"whip_rank": null,
"war_value": -0.24,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"away_pitcher": {
"available": true,
"pitcher_id": "615698",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 217.0,
"k_percent": 15.6,
"bb_percent": 6.9,
"woba": 0.3,
"xwoba": 0.324,
"sweet_spot_percent": 31.7,
"barrel_batted_rate": 8.2,
"hard_hit_percent": 34.1,
"avg_best_speed": 77.5452,
"avg_hyper_speed": 93.5295,
"whiff_percent": 18.5,
"swing_percent": 47.8
},
"league_medians": {
"pa": 108.0,
"k_percent": 22.0,
"bb_percent": 8.9,
"woba": 0.3145,
"xwoba": 0.312,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 37.7,
"avg_best_speed": 77.5616,
"avg_hyper_speed": 93.8924,
"whiff_percent": 25.4,
"swing_percent": 47.6
},
"components": {
"contact_quality": -0.0478,
"command_and_miss": -0.6564,
"regression_edge": -0.6857,
"xwoba_edge": -0.3429,
"barrel_edge": -0.2444,
"hard_hit_edge": 0.5143,
"whiff_edge": -0.9857,
"bb_edge": 0.5,
"pitch_design_score": 0.0067
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "615698",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 73,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 73,
"pitch_usage": 0.0,
"release_speed": 90.03786521929474,
"release_spin_rate": 1986.5714728050818,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 73,
"pitch_usage": 0.0,
"release_speed": 90.03786521929474,
"release_spin_rate": 1986.5714728050818,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.0379,
"release_spin_rate": 1986.5715,
"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.0067,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.0482,
"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.2304,
"sample_weight": 0.868,
"run_prevention_factor": 1.0196,
"strikeout_factor": 0.934,
"walk_factor": 0.9653,
"homer_factor": 1.008,
"woba_minus_xwoba": -0.024,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "615698",
"espn_id": 39875,
"player_name": "Cal Quantrill",
"team": "TEX",
"role": "pitcher",
"espn_rank": 269,
"espn_total_ranked": 804,
"metrics": {
"espn_rank": 269,
"gp_value": 24.0,
"gp_rank": 239,
"gs_value": 7.0,
"gs_rank": 182,
"qs_value": 2.0,
"qs_rank": 145,
"era_value": 3.5634,
"era_rank": null,
"w_value": 4.0,
"w_rank": 148,
"l_value": 4.0,
"l_rank": 138,
"sv_value": 0.0,
"sv_rank": 234,
"hld_value": 0.0,
"hld_rank": 317,
"ip_value": 65.2,
"ip_rank": 160,
"h_value": 59.0,
"h_rank": 164,
"er_value": 26.0,
"er_rank": 190,
"hr_value": 9.0,
"hr_rank": 148,
"bb_value": 19.0,
"bb_rank": 254,
"k_value": 43.0,
"k_rank": 282,
"k_per_9_value": 5.893401,
"k_per_9_rank": 47,
"whip_value": 1.1878,
"whip_rank": null,
"war_value": 0.35,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"run_factors": {
"away_runs_vs_home_pitcher": 1.0168,
"home_runs_vs_away_pitcher": 1.017,
"home_pitcher_quality_edge": -0.2089
},
"score_before": {
"away_runs": 4.0,
"home_runs": 2.0
},
"score_after": {
"away_runs": 4.0671,
"home_runs": 2.034,
"home_win_probability": 0.3234
},
"reason": "Baseball Savant xwOBA, barrel, hard-hit, sweet-spot, whiff, K%, and BB% adjusted starter run prevention"
}| Team | Last-10 W-L | Win % | R/G | RA/G | Run Diff | Streak | Offense | Defense |
|---|---|---|---|---|---|---|---|---|
| Away TEX | 5-5 | 0.500 | 3.70 | 3.70 | 0 | 1L | average | average |
| Home LAA | 4-6 | 0.400 | 2.20 | 4 | -18 | 1W | cold | average |
| Team | Record | Win % | Run Diff | RD/Game | Available |
|---|---|---|---|---|---|
| Away TEX | 60-59 | 0.504 | -30 | -0.252 | True |
| Home LAA | 45-74 | 0.378 | -94 | -0.790 | True |
| Signal | - | - | -0.538 | -0.604 | applied=True |
| Date | Matchup | Score | Winner | Margin | Type |
|---|---|---|---|---|---|
| 2026-08-11 | TEX @ LAA | 2 - 3 | LAA | 1 | close |
| 2026-08-10 | TEX @ LAA | 4 - 1 | TEX | 3 | blowout |
| 2026-07-09 | LAA @ TEX | 6 - 7 | TEX | 1 | close |
| 2026-07-08 | LAA @ TEX | 13 - 1 | LAA | 12 | blowout |
| 2026-07-07 | LAA @ TEX | 3 - 8 | TEX | 5 | blowout |
| Layer | AB | H | R | HR | RBI | BB | SO |
|---|---|---|---|---|---|---|---|
| Game target TEX | - | - | 4 | - | - | - | - |
| Game target LAA | - | - | 3 | - | - | - | - |
| Player finalized TEX | 32 | 8 | 2 | 0 | 4 | 0 | 9 |
| Player finalized LAA | 32 | 9 | 2 | 0 | 0 | 1 | 9 |
| Player model fractional TEX | 29.68 | 6.62 | 3.53 | 1.09 | 3.80 | 2.73 | 7.88 |
| Player model fractional LAA | 31.08 | 6.64 | 3.35 | 0.87 | 2.92 | 3.01 | 8.31 |
| Simulation box TEX | 37 | 11 | 5 | 1 | 5 | 2 | 9 |
| Simulation box LAA | 35 | 8 | 3 | 1 | 3 | 2 | 12 |
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.
| Team | Role | Pitcher | Pre IP | Pre ER | Pre SO | Pre H | Pre BB | Weighted ERA | Weighted WHIP | Box Sync |
|---|---|---|---|---|---|---|---|---|---|---|
| Away TEX | Starter | Cal Quantrill | 5 | 0 | 7 | 5 | 2 | 4.22 | 1.26 | True |
| Away TEX | Middle Reliever | Jacob Latz | 1.10 | 0 | 1 | 0 | 0 | 3.06 | 1.25 | True |
| Away TEX | Middle Reliever | Chase Silseth | 1.20 | 3 | 1 | 3 | 0 | 3.54 | 1.55 | True |
| Away TEX | Middle Reliever | Peyton Gray | 1 | 0 | 3 | 0 | 0 | 3.10 | 1.23 | True |
| Home LAA | Starter | George Klassen | 3 | 3 | 6 | 7 | 1 | 5.20 | 1.73 | True |
| Home LAA | Middle Reliever | José Fermin | 2 | 0 | 2 | 1 | 0 | 4.36 | 1.38 | True |
| Home LAA | Middle Reliever | Samy Natera Jr. | 2 | 0 | 0 | 0 | 0 | 2.82 | 1.01 | True |
| Home LAA | Middle Reliever | Ben Joyce | 1 | 0 | 0 | 1 | 0 | 4.01 | 1.26 | True |
| Home LAA | Middle Reliever | Luke Murphy | 1 | 2 | 1 | 2 | 1 | 4.29 | 1.40 | True |
| Side | Team | Role | Pos | Player | Dominant | Changed | Boosted | Deboosted | Better | Worse | Largest Metric | Largest Delta | Direction | Effect |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| home | LAA | batter | RF | Josh Lowe | better | 10 | 7 | 3 | 6 | 4 | predicted_RBI | 2.6900 | boost | better |
| away | TEX | batter | LF | Jarred Kelenic | boosted | 8 | 5 | 3 | 4 | 4 | predicted_AB | 2.4170 | boost | better |
| home | LAA | batter | LF | Wade Meckler | worse | 11 | 2 | 9 | 1 | 10 | predicted_SO | 2.2630 | boost | worse |
| away | TEX | batter | C | Elias Díaz | worse | 11 | 3 | 8 | 4 | 7 | predicted_H | 1.7200 | boost | better |
| away | TEX | batter | 1B | Jake Burger | better | 11 | 6 | 5 | 7 | 4 | predicted_RBI | 1.5100 | boost | better |
| away | TEX | batter | 2B | Nicky Lopez | worse | 8 | 4 | 4 | 3 | 5 | predicted_H | 1.4600 | boost | better |
| home | LAA | batter | 1B | Nolan Schanuel | worse | 11 | 3 | 8 | 2 | 9 | predicted_SO | 1.4340 | boost | worse |
| away | TEX | batter | 3B | Ezequiel Duran | worse | 8 | 4 | 4 | 3 | 5 | predicted_RBI | 1.4130 | boost | better |
| home | LAA | pitcher | Starter | George Klassen | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -1.3333 | deboost | worse |
| away | TEX | batter | CF | Evan Carter | worse | 11 | 3 | 8 | 2 | 9 | predicted_SO | 1.2000 | boost | worse |
| home | LAA | batter | 2B | Vaughn Grissom | worse | 11 | 5 | 6 | 4 | 7 | predicted_H | 1.0100 | boost | better |
| home | LAA | batter | 3B | Denzer Guzman | worse | 10 | 2 | 8 | 3 | 7 | predicted_SO | -1.0000 | deboost | better |
| home | LAA | batter | DH | Zach Neto | worse | 10 | 1 | 9 | 0 | 10 | predicted_H | -0.8970 | deboost | worse |
| home | LAA | batter | CF | Mike Trout | worse | 10 | 3 | 7 | 2 | 8 | predicted_SO | 0.8510 | boost | worse |
| away | TEX | batter | SS | Corey Seager | worse | 10 | 2 | 8 | 3 | 7 | predicted_H | -0.8000 | deboost | worse |
| away | TEX | batter | DH | Joc Pederson | worse | 11 | 3 | 8 | 4 | 7 | predicted_SO | -0.7660 | deboost | better |
| away | TEX | batter | RF | Brandon Nimmo | better | 11 | 7 | 4 | 6 | 5 | predicted_2B | 0.7630 | boost | better |
| home | LAA | batter | C | Moisés Ballesteros | better | 9 | 4 | 5 | 5 | 4 | predicted_R | 0.7580 | boost | better |
| home | LAA | batter | SS | Oswald Peraza | worse | 10 | 1 | 9 | 1 | 9 | predicted_H | -0.7530 | deboost | worse |
| home | LAA | pitcher | Middle Reliever | José Fermin | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.6667 | boost | better |
| home | LAA | pitcher | Middle Reliever | Samy Natera Jr. | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.6667 | boost | better |
| away | TEX | pitcher | Middle Reliever | Jacob Latz | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -0.2333 | deboost | worse |
| away | TEX | pitcher | Middle Reliever | Chase Silseth | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.2000 | boost | better |
This table ranks players whose JSON evolution changed materially. Boost/deboost is numeric movement; better/worse is role-aware.
| Field | Value |
|---|---|
| Pitcher | Cal Quantrill |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | -0.2304 |
| ESPN Rank | 269 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.0067 |
| Avg Velo | 90.0379 |
| Avg Spin | 1986.5715 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 5 |
| Pre ER | 0 |
| Pre H | 5 |
| Pre BB | 2 |
| Pre SO | 7 |
| Season ERA | 3.5635 |
| Season WHIP | 1.1878 |
| Role Avg IP | 4.6190 |
| Recent Avg IP | 5.2670 |
| Last Start IP | 6 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "TEX",
"games": 126,
"wins": 64,
"losses": 62,
"win_pct": 0.5079,
"runs_scored": 526.0,
"runs_allowed": 553.0,
"run_differential": -27.0,
"run_differential_per_game": -0.2143,
"avg_runs_scored": 4.1746,
"avg_runs_allowed": 4.3889,
"offense_index": 0.927,
"defense_index": 1.026,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 3.7,
"avg_runs_allowed": 3.7,
"run_differential": 0.0
},
"available": true,
"quality_score": -0.0195
},
"opponent": {
"team": "LAA",
"games": 127,
"wins": 51,
"losses": 76,
"win_pct": 0.4016,
"runs_scored": 522.0,
"runs_allowed": 614.0,
"run_differential": -92.0,
"run_differential_per_game": -0.7244,
"avg_runs_scored": 4.1102,
"avg_runs_allowed": 4.8346,
"offense_index": 0.9128,
"defense_index": 0.9314,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 2.2,
"avg_runs_allowed": 4.0,
"run_differential": -18.0
},
"available": true,
"quality_score": -0.2071
},
"edges": {
"quality_edge": 0.1876,
"offense_edge": -0.073,
"opponent_offense_edge": -0.0872,
"defense_strength": 0.026,
"opponent_defense_weakness": 0.0686,
"recent_win_pct_edge": 0.1
},
"player_factors": {
"ip": 1.0118,
"run_prevention": 0.9741,
"strikeout": 1.0126
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "615698",
"profile": {
"available": true,
"pitcher_id": "615698",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 217.0,
"k_percent": 15.6,
"bb_percent": 6.9,
"woba": 0.3,
"xwoba": 0.324,
"sweet_spot_percent": 31.7,
"barrel_batted_rate": 8.2,
"hard_hit_percent": 34.1,
"avg_best_speed": 77.5452,
"avg_hyper_speed": 93.5295,
"whiff_percent": 18.5,
"swing_percent": 47.8
},
"league_medians": {
"pa": 108.0,
"k_percent": 22.0,
"bb_percent": 8.9,
"woba": 0.3145,
"xwoba": 0.312,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 37.7,
"avg_best_speed": 77.5616,
"avg_hyper_speed": 93.8924,
"whiff_percent": 25.4,
"swing_percent": 47.6
},
"components": {
"contact_quality": -0.0478,
"command_and_miss": -0.6564,
"regression_edge": -0.6857,
"xwoba_edge": -0.3429,
"barrel_edge": -0.2444,
"hard_hit_edge": 0.5143,
"whiff_edge": -0.9857,
"bb_edge": 0.5,
"pitch_design_score": 0.0067
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "615698",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 73,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 73,
"pitch_usage": 0.0,
"release_speed": 90.03786521929474,
"release_spin_rate": 1986.5714728050818,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 73,
"pitch_usage": 0.0,
"release_speed": 90.03786521929474,
"release_spin_rate": 1986.5714728050818,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.0379,
"release_spin_rate": 1986.5715,
"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.0067,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.0482,
"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.2304,
"sample_weight": 0.868,
"run_prevention_factor": 1.0196,
"strikeout_factor": 0.934,
"walk_factor": 0.9653,
"homer_factor": 1.008,
"woba_minus_xwoba": -0.024,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "615698",
"espn_id": 39875,
"player_name": "Cal Quantrill",
"team": "TEX",
"role": "pitcher",
"espn_rank": 269,
"espn_total_ranked": 804,
"metrics": {
"espn_rank": 269,
"gp_value": 24.0,
"gp_rank": 239,
"gs_value": 7.0,
"gs_rank": 182,
"qs_value": 2.0,
"qs_rank": 145,
"era_value": 3.5634,
"era_rank": null,
"w_value": 4.0,
"w_rank": 148,
"l_value": 4.0,
"l_rank": 138,
"sv_value": 0.0,
"sv_rank": 234,
"hld_value": 0.0,
"hld_rank": 317,
"ip_value": 65.2,
"ip_rank": 160,
"h_value": 59.0,
"h_rank": 164,
"er_value": 26.0,
"er_rank": 190,
"hr_value": 9.0,
"hr_rank": 148,
"bb_value": 19.0,
"bb_rank": 254,
"k_value": 43.0,
"k_rank": 282,
"k_per_9_value": 5.893401,
"k_per_9_rank": 47,
"whip_value": 1.1878,
"whip_rank": null,
"war_value": 0.35,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 2.0,
"factor": 1.017,
"adjusted": 2
},
"predicted_H": {
"original": 5.0,
"factor": 1.017,
"adjusted": 5
},
"predicted_BB": {
"original": 1.0,
"factor": 0.9699,
"adjusted": 1
},
"predicted_HR": {
"original": 1.0,
"factor": 1.0069,
"adjusted": 1
},
"predicted_SO": {
"original": 3.0,
"factor": 0.9427,
"adjusted": 3
}
}
}
}{
"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": 38.1,
"ER": 16,
"H": 36,
"BB": 9,
"SO": 25,
"HR": 7,
"ERA": 3.7565217391304353,
"WHIP": 1.173913043478261,
"K9": 5.869565217391305,
"HR9": 1.6434782608695655,
"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-08T00:00:00"
}{
"available": true,
"pitcher_id": "615698",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 73,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 73,
"pitch_usage": 0.0,
"release_speed": 90.03786521929474,
"release_spin_rate": 1986.5714728050818,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 73,
"pitch_usage": 0.0,
"release_speed": 90.03786521929474,
"release_spin_rate": 1986.5714728050818,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.0379,
"release_spin_rate": 1986.5715,
"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.0067,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.0482,
"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."
}{
"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.139,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.7243,
"prior_weight": 0.2757
},
"role": "pitcher",
"player_id": "615698",
"report_date": "20260812",
"season_year": 2026,
"rows_used": 24,
"reference_playing_time": 5.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 19.1,
"ER": 10.0,
"R": 12.0,
"H": 19.0,
"BB": 6.0,
"SO": 15.0,
"HR": 3.0,
"BF": 83.0,
"Pitches": 307.0
},
"per_game": {
"IP": 4.0,
"ER": 2.0,
"R": 2.4,
"H": 3.8,
"BB": 1.2,
"SO": 3.0,
"HR": 0.6,
"BF": 16.6,
"Pitches": 61.4
},
"rates": {
"ERA": 4.6552,
"WHIP": 1.2931,
"ER_per_IP": 0.51724,
"H_per_IP": 0.98276,
"BB_per_IP": 0.31034,
"SO_per_IP": 0.77586,
"HR_per_IP": 0.15517
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 38.1,
"ER": 16.0,
"R": 19.0,
"H": 36.0,
"BB": 9.0,
"SO": 25.0,
"HR": 7.0,
"BF": 161.0,
"Pitches": 577.0
},
"per_game": {
"IP": 4.0,
"ER": 1.6,
"R": 1.9,
"H": 3.6,
"BB": 0.9,
"SO": 2.5,
"HR": 0.7,
"BF": 16.1,
"Pitches": 57.7
},
"rates": {
"ERA": 3.7565,
"WHIP": 1.1739,
"ER_per_IP": 0.41739,
"H_per_IP": 0.93913,
"BB_per_IP": 0.23478,
"SO_per_IP": 0.65217,
"HR_per_IP": 0.18261
}
},
"season": {
"games": 24,
"totals": {
"IP": 65.2,
"ER": 26.0,
"R": 32.0,
"H": 59.0,
"BB": 19.0,
"SO": 43.0,
"HR": 9.0,
"BF": 276.0,
"Pitches": 1039.0
},
"per_game": {
"IP": 2.2,
"ER": 1.0833,
"R": 1.3333,
"H": 2.4583,
"BB": 0.7917,
"SO": 1.7917,
"HR": 0.375,
"BF": 11.5,
"Pitches": 43.2917
},
"rates": {
"ERA": 3.5635,
"WHIP": 1.1878,
"ER_per_IP": 0.39594,
"H_per_IP": 0.89848,
"BB_per_IP": 0.28934,
"SO_per_IP": 0.65482,
"HR_per_IP": 0.13706
}
}
},
"blend_segments": {},
"weighted_prediction": {
"predicted_IP": 4.0,
"predicted_ER": 1.916,
"predicted_H": 3.907,
"predicted_BB": 1.233,
"predicted_SO": 3.171,
"predicted_HR": 0.644,
"predicted_ERA": 4.2233,
"predicted_WHIP": 1.2591
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.4665,
"form_weight": 0.5335,
"form_reliability": 0.7243,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 13.139,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.7243,
"prior_weight": 0.2757
},
"applied_metrics": {
"predicted_IP": {
"model": 5.0,
"form": 4.0,
"final": 4.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 1.916,
"final": 1.0222,
"source": "model_form_blend"
},
"predicted_H": {
"model": 5.0,
"form": 3.907,
"final": 4.4169,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 2.0,
"form": 1.233,
"final": 1.5908,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 7.0,
"form": 3.171,
"final": 4.9572,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.644,
"final": 0.3436,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.2233,
"final": 4.2233,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2591,
"final": 1.2591,
"source": "form_only"
}
}
}{
"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."
}| Field | Value |
|---|---|
| Pitcher | Jacob Latz |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.4934 |
| ESPN Rank | 40 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1.1000 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 1 |
| Season ERA | 1.3333 |
| Season WHIP | 0.6667 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "TEX",
"games": 126,
"wins": 64,
"losses": 62,
"win_pct": 0.5079,
"runs_scored": 526.0,
"runs_allowed": 553.0,
"run_differential": -27.0,
"run_differential_per_game": -0.2143,
"avg_runs_scored": 4.1746,
"avg_runs_allowed": 4.3889,
"offense_index": 0.927,
"defense_index": 1.026,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 3.7,
"avg_runs_allowed": 3.7,
"run_differential": 0.0
},
"available": true,
"quality_score": -0.0195
},
"opponent": {
"team": "LAA",
"games": 127,
"wins": 51,
"losses": 76,
"win_pct": 0.4016,
"runs_scored": 522.0,
"runs_allowed": 614.0,
"run_differential": -92.0,
"run_differential_per_game": -0.7244,
"avg_runs_scored": 4.1102,
"avg_runs_allowed": 4.8346,
"offense_index": 0.9128,
"defense_index": 0.9314,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 2.2,
"avg_runs_allowed": 4.0,
"run_differential": -18.0
},
"available": true,
"quality_score": -0.2071
},
"edges": {
"quality_edge": 0.1876,
"offense_edge": -0.073,
"opponent_offense_edge": -0.0872,
"defense_strength": 0.026,
"opponent_defense_weakness": 0.0686,
"recent_win_pct_edge": 0.1
},
"player_factors": {
"ip": 1.0118,
"run_prevention": 0.9741,
"strikeout": 1.0126
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "656641",
"profile": {
"available": true,
"pitcher_id": "656641",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 160.0,
"k_percent": 28.0,
"bb_percent": 7.0,
"woba": 0.195,
"xwoba": 0.245,
"sweet_spot_percent": 25.4,
"barrel_batted_rate": 5.4,
"hard_hit_percent": 38.5,
"avg_best_speed": 78.6339,
"avg_hyper_speed": 93.6343,
"whiff_percent": 29.0,
"swing_percent": 53.1
},
"league_medians": {
"pa": 108.0,
"k_percent": 22.0,
"bb_percent": 8.9,
"woba": 0.3145,
"xwoba": 0.312,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 37.7,
"avg_best_speed": 77.5616,
"avg_hyper_speed": 93.8924,
"whiff_percent": 25.4,
"swing_percent": 47.6
},
"components": {
"contact_quality": 1.3249,
"command_and_miss": 0.6607,
"regression_edge": -1.4286,
"xwoba_edge": 1.9143,
"barrel_edge": 0.3778,
"hard_hit_edge": -0.1143,
"whiff_edge": 0.5143,
"bb_edge": 0.475,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "656641",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.4934,
"sample_weight": 0.64,
"run_prevention_factor": 0.9581,
"strikeout_factor": 1.0351,
"walk_factor": 0.9757,
"homer_factor": 0.9468,
"woba_minus_xwoba": -0.05,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "656641",
"espn_id": 3210625,
"player_name": "Jacob Latz",
"team": "TEX",
"role": "pitcher",
"espn_rank": 40,
"espn_total_ranked": 804,
"metrics": {
"espn_rank": 40,
"gp_value": 43.0,
"gp_rank": 99,
"gs_value": 1.0,
"gs_rank": 281,
"qs_value": 0.0,
"qs_rank": 202,
"era_value": 1.8333,
"era_rank": null,
"w_value": 3.0,
"w_rank": 208,
"l_value": 1.0,
"l_rank": 382,
"sv_value": 23.0,
"sv_rank": 11,
"hld_value": 2.0,
"hld_rank": 207,
"ip_value": 54.0,
"ip_rank": 207,
"h_value": 26.0,
"h_rank": 406,
"er_value": 11.0,
"er_rank": 443,
"hr_value": 3.0,
"hr_rank": 389,
"bb_value": 14.0,
"bb_rank": 342,
"k_value": 56.0,
"k_rank": 190,
"k_per_9_value": 9.333333,
"k_per_9_rank": 24,
"whip_value": 0.7407,
"whip_rank": null,
"war_value": 2.31,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9732,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9732,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9844,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.966,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0225,
"adjusted": 2
}
}
}
}{
"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": 3,
"H": 9,
"BB": 5,
"SO": 13,
"HR": 0,
"ERA": 2.2500000000000004,
"WHIP": 1.1666666666666667,
"K9": 9.750000000000002,
"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-10T00:00:00"
}{
"available": false,
"pitcher_id": "656641",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"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.805,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6836,
"prior_weight": 0.3164
},
"role": "pitcher",
"player_id": "656641",
"report_date": "20260812",
"season_year": 2026,
"rows_used": 42,
"reference_playing_time": 1.333,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 6.0,
"ER": 2.0,
"R": 3.0,
"H": 6.0,
"BB": 3.0,
"SO": 7.0,
"HR": 0.0,
"BF": 26.0,
"Pitches": 112.0
},
"per_game": {
"IP": 1.1,
"ER": 0.4,
"R": 0.6,
"H": 1.2,
"BB": 0.6,
"SO": 1.4,
"HR": 0.0,
"BF": 5.2,
"Pitches": 22.4
},
"rates": {
"ERA": 3.0,
"WHIP": 1.5,
"ER_per_IP": 0.33333,
"H_per_IP": 1.0,
"BB_per_IP": 0.5,
"SO_per_IP": 1.16667,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 12.0,
"ER": 3.0,
"R": 4.0,
"H": 9.0,
"BB": 5.0,
"SO": 13.0,
"HR": 0.0,
"BF": 48.0,
"Pitches": 212.0
},
"per_game": {
"IP": 1.1,
"ER": 0.3,
"R": 0.4,
"H": 0.9,
"BB": 0.5,
"SO": 1.3,
"HR": 0.0,
"BF": 4.8,
"Pitches": 21.2
},
"rates": {
"ERA": 2.25,
"WHIP": 1.1667,
"ER_per_IP": 0.25,
"H_per_IP": 0.75,
"BB_per_IP": 0.41667,
"SO_per_IP": 1.08333,
"HR_per_IP": 0.0
}
},
"season": {
"games": 42,
"totals": {
"IP": 54.0,
"ER": 8.0,
"R": 9.0,
"H": 23.0,
"BB": 13.0,
"SO": 56.0,
"HR": 3.0,
"BF": 196.0,
"Pitches": 823.0
},
"per_game": {
"IP": 1.1,
"ER": 0.1905,
"R": 0.2143,
"H": 0.5476,
"BB": 0.3095,
"SO": 1.3333,
"HR": 0.0714,
"BF": 4.6667,
"Pitches": 19.5952
},
"rates": {
"ERA": 1.3333,
"WHIP": 0.6667,
"ER_per_IP": 0.14815,
"H_per_IP": 0.42593,
"BB_per_IP": 0.24074,
"SO_per_IP": 1.03704,
"HR_per_IP": 0.05556
}
}
},
"blend_segments": {},
"weighted_prediction": {
"predicted_IP": 1.1,
"predicted_ER": 0.454,
"predicted_H": 1.138,
"predicted_BB": 0.534,
"predicted_SO": 1.416,
"predicted_HR": 0.073,
"predicted_ERA": 3.0637,
"predicted_WHIP": 1.2541
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.4837,
"form_weight": 0.5163,
"form_reliability": 0.6836,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 10.805,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6836,
"prior_weight": 0.3164
},
"applied_metrics": {
"predicted_IP": {
"model": 1.1,
"form": 1.1,
"final": 1.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.454,
"final": 0.2344,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 1.138,
"final": 0.5876,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.534,
"final": 0.2757,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 1.416,
"final": 1.2148,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.073,
"final": 0.0377,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.0637,
"final": 3.0637,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2541,
"final": 1.2541,
"source": "form_only"
}
}
}{
"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."
}| Field | Value |
|---|---|
| Pitcher | Chase Silseth |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.0544 |
| ESPN Rank | 133 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1.2000 |
| Pre ER | 3 |
| Pre H | 3 |
| Pre BB | 0 |
| Pre SO | 1 |
| Season ERA | 2.7794 |
| Season WHIP | 1.4559 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "TEX",
"games": 126,
"wins": 64,
"losses": 62,
"win_pct": 0.5079,
"runs_scored": 526.0,
"runs_allowed": 553.0,
"run_differential": -27.0,
"run_differential_per_game": -0.2143,
"avg_runs_scored": 4.1746,
"avg_runs_allowed": 4.3889,
"offense_index": 0.927,
"defense_index": 1.026,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 3.7,
"avg_runs_allowed": 3.7,
"run_differential": 0.0
},
"available": true,
"quality_score": -0.0195
},
"opponent": {
"team": "LAA",
"games": 127,
"wins": 51,
"losses": 76,
"win_pct": 0.4016,
"runs_scored": 522.0,
"runs_allowed": 614.0,
"run_differential": -92.0,
"run_differential_per_game": -0.7244,
"avg_runs_scored": 4.1102,
"avg_runs_allowed": 4.8346,
"offense_index": 0.9128,
"defense_index": 0.9314,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 2.2,
"avg_runs_allowed": 4.0,
"run_differential": -18.0
},
"available": true,
"quality_score": -0.2071
},
"edges": {
"quality_edge": 0.1876,
"offense_edge": -0.073,
"opponent_offense_edge": -0.0872,
"defense_strength": 0.026,
"opponent_defense_weakness": 0.0686,
"recent_win_pct_edge": 0.1
},
"player_factors": {
"ip": 1.0118,
"run_prevention": 0.9741,
"strikeout": 1.0126
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "681217",
"profile": {
"available": true,
"pitcher_id": "681217",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 156.0,
"k_percent": 26.4,
"bb_percent": 13.4,
"woba": 0.308,
"xwoba": 0.312,
"sweet_spot_percent": 42.9,
"barrel_batted_rate": 9.2,
"hard_hit_percent": 31.9,
"avg_best_speed": 74.9201,
"avg_hyper_speed": 93.4232,
"whiff_percent": 32.6,
"swing_percent": 47.4
},
"league_medians": {
"pa": 108.0,
"k_percent": 22.0,
"bb_percent": 8.9,
"woba": 0.3145,
"xwoba": 0.312,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 37.7,
"avg_best_speed": 77.5616,
"avg_hyper_speed": 93.8924,
"whiff_percent": 25.4,
"swing_percent": 47.6
},
"components": {
"contact_quality": -0.0179,
"command_and_miss": 0.4179,
"regression_edge": -0.1143,
"xwoba_edge": 0.0,
"barrel_edge": -0.4667,
"hard_hit_edge": 0.8286,
"whiff_edge": 1.0286,
"bb_edge": -1.125,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "681217",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.0544,
"sample_weight": 0.624,
"run_prevention_factor": 0.9954,
"strikeout_factor": 1.0414,
"walk_factor": 1.0562,
"homer_factor": 1.0026,
"woba_minus_xwoba": -0.004,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "681217",
"espn_id": 4413990,
"player_name": "Chase Silseth",
"team": "TEX",
"role": "pitcher",
"espn_rank": 133,
"espn_total_ranked": 804,
"metrics": {
"espn_rank": 133,
"gp_value": 53.0,
"gp_rank": 23,
"gs_value": 0.0,
"gs_rank": 337,
"qs_value": 0.0,
"qs_rank": 202,
"era_value": 2.7794,
"era_rank": null,
"w_value": 3.0,
"w_rank": 208,
"l_value": 2.0,
"l_rank": 282,
"sv_value": 0.0,
"sv_rank": 234,
"hld_value": 10.0,
"hld_rank": 62,
"ip_value": 45.1,
"ip_rank": 274,
"h_value": 39.0,
"h_rank": 272,
"er_value": 14.0,
"er_rank": 367,
"hr_value": 4.0,
"hr_rank": 321,
"bb_value": 27.0,
"bb_rank": 146,
"k_value": 53.0,
"k_rank": 209,
"k_per_9_value": 10.522059,
"k_per_9_rank": 20,
"whip_value": 1.4558,
"whip_rank": null,
"war_value": 1.15,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9971,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9971,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0351,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0016,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0258,
"adjusted": 2
}
}
}
}{
"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": 2,
"H": 8,
"BB": 7,
"SO": 8,
"HR": 1,
"ERA": 2.076923076923077,
"WHIP": 1.7307692307692308,
"K9": 8.307692307692308,
"HR9": 1.0384615384615385,
"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-11T00:00:00"
}{
"available": false,
"pitcher_id": "681217",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"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.07,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6446,
"prior_weight": 0.3554
},
"role": "pitcher",
"player_id": "681217",
"report_date": "20260812",
"season_year": 2026,
"rows_used": 53,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.2,
"ER": 2.0,
"R": 2.0,
"H": 4.0,
"BB": 4.0,
"SO": 3.0,
"HR": 1.0,
"BF": 21.0,
"Pitches": 68.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 0.8,
"BB": 0.8,
"SO": 0.6,
"HR": 0.2,
"BF": 4.2,
"Pitches": 13.6
},
"rates": {
"ERA": 3.8571,
"WHIP": 1.7143,
"ER_per_IP": 0.42857,
"H_per_IP": 0.85714,
"BB_per_IP": 0.85714,
"SO_per_IP": 0.64286,
"HR_per_IP": 0.21429
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 8.2,
"ER": 2.0,
"R": 3.0,
"H": 8.0,
"BB": 7.0,
"SO": 8.0,
"HR": 1.0,
"BF": 41.0,
"Pitches": 148.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.3,
"H": 0.8,
"BB": 0.7,
"SO": 0.8,
"HR": 0.1,
"BF": 4.1,
"Pitches": 14.8
},
"rates": {
"ERA": 2.0769,
"WHIP": 1.7308,
"ER_per_IP": 0.23077,
"H_per_IP": 0.92308,
"BB_per_IP": 0.80769,
"SO_per_IP": 0.92308,
"HR_per_IP": 0.11538
}
},
"season": {
"games": 53,
"totals": {
"IP": 45.1,
"ER": 14.0,
"R": 16.0,
"H": 39.0,
"BB": 27.0,
"SO": 53.0,
"HR": 4.0,
"BF": 201.0,
"Pitches": 817.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2642,
"R": 0.3019,
"H": 0.7358,
"BB": 0.5094,
"SO": 1.0,
"HR": 0.0755,
"BF": 3.7925,
"Pitches": 15.4151
},
"rates": {
"ERA": 2.7794,
"WHIP": 1.4559,
"ER_per_IP": 0.30882,
"H_per_IP": 0.86029,
"BB_per_IP": 0.59559,
"SO_per_IP": 1.16912,
"HR_per_IP": 0.08824
}
}
},
"blend_segments": {},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.393,
"predicted_H": 0.914,
"predicted_BB": 0.636,
"predicted_SO": 0.885,
"predicted_HR": 0.153,
"predicted_ERA": 3.541,
"predicted_WHIP": 1.5499
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5002,
"form_weight": 0.4998,
"form_reliability": 0.6446,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 9.07,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6446,
"prior_weight": 0.3554
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 3.0,
"form": 0.393,
"final": 1.6969,
"source": "model_form_blend"
},
"predicted_H": {
"model": 3.0,
"form": 0.914,
"final": 1.9573,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.636,
"final": 0.3179,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.885,
"final": 0.9425,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 1.0,
"form": 0.153,
"final": 0.5766,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.541,
"final": 3.541,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.5499,
"final": 1.5499,
"source": "form_only"
}
}
}{
"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."
}| Field | Value |
|---|---|
| Pitcher | Peyton Gray |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.3226 |
| ESPN Rank | 322 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 3 |
| Season ERA | 3.3022 |
| Season WHIP | 1.2086 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "TEX",
"games": 126,
"wins": 64,
"losses": 62,
"win_pct": 0.5079,
"runs_scored": 526.0,
"runs_allowed": 553.0,
"run_differential": -27.0,
"run_differential_per_game": -0.2143,
"avg_runs_scored": 4.1746,
"avg_runs_allowed": 4.3889,
"offense_index": 0.927,
"defense_index": 1.026,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 3.7,
"avg_runs_allowed": 3.7,
"run_differential": 0.0
},
"available": true,
"quality_score": -0.0195
},
"opponent": {
"team": "LAA",
"games": 127,
"wins": 51,
"losses": 76,
"win_pct": 0.4016,
"runs_scored": 522.0,
"runs_allowed": 614.0,
"run_differential": -92.0,
"run_differential_per_game": -0.7244,
"avg_runs_scored": 4.1102,
"avg_runs_allowed": 4.8346,
"offense_index": 0.9128,
"defense_index": 0.9314,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 2.2,
"avg_runs_allowed": 4.0,
"run_differential": -18.0
},
"available": true,
"quality_score": -0.2071
},
"edges": {
"quality_edge": 0.1876,
"offense_edge": -0.073,
"opponent_offense_edge": -0.0872,
"defense_strength": 0.026,
"opponent_defense_weakness": 0.0686,
"recent_win_pct_edge": 0.1
},
"player_factors": {
"ip": 1.0118,
"run_prevention": 0.9741,
"strikeout": 1.0126
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "682608",
"profile": {
"available": true,
"pitcher_id": "682608",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 154.0,
"k_percent": 24.0,
"bb_percent": 7.0,
"woba": 0.293,
"xwoba": 0.275,
"sweet_spot_percent": 32.6,
"barrel_batted_rate": 5.3,
"hard_hit_percent": 32.6,
"avg_best_speed": 74.8958,
"avg_hyper_speed": 92.8019,
"whiff_percent": 26.7,
"swing_percent": 49.5
},
"league_medians": {
"pa": 108.0,
"k_percent": 22.0,
"bb_percent": 8.9,
"woba": 0.3145,
"xwoba": 0.312,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 37.7,
"avg_best_speed": 77.5616,
"avg_hyper_speed": 93.8924,
"whiff_percent": 25.4,
"swing_percent": 47.6
},
"components": {
"contact_quality": 0.7095,
"command_and_miss": 0.2886,
"regression_edge": 0.5143,
"xwoba_edge": 1.0571,
"barrel_edge": 0.4,
"hard_hit_edge": 0.7286,
"whiff_edge": 0.1857,
"bb_edge": 0.475,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "682608",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.3226,
"sample_weight": 0.616,
"run_prevention_factor": 0.9726,
"strikeout_factor": 1.0116,
"walk_factor": 0.9766,
"homer_factor": 0.9428,
"woba_minus_xwoba": 0.018,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "682608",
"espn_id": 4187628,
"player_name": "Peyton Gray",
"team": "TEX",
"role": "pitcher",
"espn_rank": 322,
"espn_total_ranked": 804,
"metrics": {
"espn_rank": 322,
"gp_value": 39.0,
"gp_rank": 128,
"gs_value": 0.0,
"gs_rank": 337,
"qs_value": 0.0,
"qs_rank": 202,
"era_value": 3.3021,
"era_rank": null,
"w_value": 6.0,
"w_rank": 78,
"l_value": 0.0,
"l_rank": 533,
"sv_value": 0.0,
"sv_rank": 234,
"hld_value": 8.0,
"hld_rank": 88,
"ip_value": 46.1,
"ip_rank": 263,
"h_value": 42.0,
"h_rank": 244,
"er_value": 17.0,
"er_rank": 318,
"hr_value": 5.0,
"hr_rank": 274,
"bb_value": 14.0,
"bb_rank": 342,
"k_value": 48.0,
"k_rank": 247,
"k_per_9_value": 9.323741,
"k_per_9_rank": 25,
"whip_value": 1.2086,
"whip_rank": null,
"war_value": 0.2,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9831,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9831,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9856,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9648,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0071,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 10.2,
"ER": 3,
"H": 10,
"BB": 2,
"SO": 10,
"HR": 2,
"ERA": 2.53125,
"WHIP": 1.125,
"K9": 8.4375,
"HR9": 1.6875,
"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-10T00:00:00"
}{
"available": false,
"pitcher_id": "682608",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"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.271,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6496,
"prior_weight": 0.3504
},
"role": "pitcher",
"player_id": "682608",
"report_date": "20260812",
"season_year": 2026,
"rows_used": 39,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.0,
"ER": 1.0,
"R": 1.0,
"H": 4.0,
"BB": 2.0,
"SO": 4.0,
"HR": 1.0,
"BF": 21.0,
"Pitches": 65.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 0.8,
"BB": 0.4,
"SO": 0.8,
"HR": 0.2,
"BF": 4.2,
"Pitches": 13.0
},
"rates": {
"ERA": 1.8,
"WHIP": 1.2,
"ER_per_IP": 0.2,
"H_per_IP": 0.8,
"BB_per_IP": 0.4,
"SO_per_IP": 0.8,
"HR_per_IP": 0.2
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.2,
"ER": 3.0,
"R": 3.0,
"H": 10.0,
"BB": 2.0,
"SO": 10.0,
"HR": 2.0,
"BF": 44.0,
"Pitches": 157.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3,
"R": 0.3,
"H": 1.0,
"BB": 0.2,
"SO": 1.0,
"HR": 0.2,
"BF": 4.4,
"Pitches": 15.7
},
"rates": {
"ERA": 2.5312,
"WHIP": 1.125,
"ER_per_IP": 0.28125,
"H_per_IP": 0.9375,
"BB_per_IP": 0.1875,
"SO_per_IP": 0.9375,
"HR_per_IP": 0.1875
}
},
"season": {
"games": 39,
"totals": {
"IP": 46.1,
"ER": 17.0,
"R": 21.0,
"H": 42.0,
"BB": 14.0,
"SO": 48.0,
"HR": 5.0,
"BF": 200.0,
"Pitches": 757.0
},
"per_game": {
"IP": 1.1,
"ER": 0.4359,
"R": 0.5385,
"H": 1.0769,
"BB": 0.359,
"SO": 1.2308,
"HR": 0.1282,
"BF": 5.1282,
"Pitches": 19.4103
},
"rates": {
"ERA": 3.3022,
"WHIP": 1.2086,
"ER_per_IP": 0.36691,
"H_per_IP": 0.90647,
"BB_per_IP": 0.30216,
"SO_per_IP": 1.03597,
"HR_per_IP": 0.10791
}
}
},
"blend_segments": {},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.36,
"predicted_H": 0.945,
"predicted_BB": 0.339,
"predicted_SO": 0.956,
"predicted_HR": 0.175,
"predicted_ERA": 3.1035,
"predicted_WHIP": 1.2313
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.498,
"form_weight": 0.502,
"form_reliability": 0.6496,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 9.271,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6496,
"prior_weight": 0.3504
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.36,
"final": 0.1807,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.945,
"final": 0.4743,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.339,
"final": 0.1702,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 3.0,
"form": 0.956,
"final": 1.974,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.175,
"final": 0.0878,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.1035,
"final": 3.1035,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2313,
"final": 1.2313,
"source": "form_only"
}
}
}{
"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."
}| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.202 | 0.000 | 0.000 | Hitting_2B | 0.227 | 0.000 | -0.227 | 0.000 |
| predicted_3B | 0.028 | 0.000 | 0.000 | Hitting_3B | 0.027 | 0.000 | -0.027 | 0.000 |
| predicted_AB | 3.514 | 4.000 | 4.000 | Hitting_AB | 3.620 | 3.000 | 0.380 | 1.000 |
| predicted_AVG | 0.272 | 0.250 | 0.250 | Hitting_AVG | 0.282 | 0.333 | -0.032 | -0.083 |
| predicted_BB | 0.284 | 0.000 | 0.000 | Hitting_BB | 0.314 | 1.000 | -0.314 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.016 | 0.000 | -0.016 | 0.000 |
| predicted_H | 0.954 | 1.000 | 1.000 | Hitting_H | 1.019 | 1.000 | -0.019 | 0.000 |
| predicted_HR | 0.119 | 0.000 | 0.000 | Hitting_HR | 0.109 | 0.000 | -0.109 | 0.000 |
| predicted_OBP | 0.326 | 0.200 | 0.250 | Hitting_OBP | 0.338 | 0.500 | -0.138 | -0.300 |
| predicted_R | 0.495 | 1.000 | 1.000 | Hitting_R | 0.500 | 0.000 | 0.500 | 1.000 |
| predicted_RBI | 0.587 | 2.000 | 1.000 | Hitting_RBI | 0.612 | 0.000 | 1.388 | 2.000 |
| predicted_SLG | 0.446 | 0.250 | 0.250 | Hitting_SLG | 0.450 | 0.333 | -0.200 | -0.083 |
| predicted_SO | 0.908 | 2.000 | 1.000 | Hitting_SO | 0.932 | 2.000 | 1.068 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 8 |
| Boosted Metrics | 4 |
| Deboosted Metrics | 4 |
| Better Metrics | 3 |
| Worse Metrics | 5 |
| Biggest Boost | predicted_RBI: 0.5870 -> 2.0000 (boost 1.4130, better) |
| Biggest Deboost | predicted_BB: 0.2840 -> 0.0000 (deboost -0.2840, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.4460 -> 0.4245 (deboost -0.0215, 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. |
| 3 | team_form_snapshot | 0 | 0 | 0 | 0 | 0 | - | - | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 4 | 3 | 3 | 4 | predicted_AB: 3.5278 -> 4.0000 (boost 0.4722, better) | predicted_BB: 0.3202 -> 0.0000 (deboost -0.3202, worse) | AB rounded to 4 (raw=3.53), rates preserved: AVG=0.268 HR/AB=0.031 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5129 -> 1.0000 (boost 0.4871, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4280 -> 0.2500 (deboost -0.1780, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 3 | 0 | 1 | 1 | predicted_RBI: 1.0000 -> 2.0000 (boost 1.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2500 -> 0.4280 (boost 0.1780, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "677649",
"player_name": "Ezequiel Duran",
"position": "3B",
"team": "TEX",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.202,
"predicted_3B": 0.028,
"predicted_AB": 3.514,
"predicted_AVG": 0.272,
"predicted_BB": 0.284,
"predicted_H": 0.954,
"predicted_HR": 0.119,
"predicted_OBP": 0.326,
"predicted_R": 0.495,
"predicted_RBI": 0.587,
"predicted_SLG": 0.446,
"predicted_SO": 0.908
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1921,
"predicted_3B": 0.0233,
"predicted_AB": 3.5278,
"predicted_AVG": 0.2655,
"predicted_BB": 0.3193,
"predicted_H": 0.9359,
"predicted_HBP": 0.018,
"predicted_HR": 0.1082,
"predicted_OBP": 0.3268,
"predicted_R": 0.5045,
"predicted_RBI": 0.5607,
"predicted_SLG": 0.4245,
"predicted_SO": 0.9463
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.202,
"after": 0.1921,
"delta": -0.0099,
"percent_delta": -0.049,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.028,
"after": 0.0233,
"delta": -0.0047,
"percent_delta": -0.1679,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.514,
"after": 3.5278,
"delta": 0.0138,
"percent_delta": 0.0039,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.272,
"after": 0.2655,
"delta": -0.0065,
"percent_delta": -0.0239,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.284,
"after": 0.3193,
"delta": 0.0353,
"percent_delta": 0.1243,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.954,
"after": 0.9359,
"delta": -0.0181,
"percent_delta": -0.019,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.119,
"after": 0.1082,
"delta": -0.0108,
"percent_delta": -0.0908,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.326,
"after": 0.3268,
"delta": 0.0008,
"percent_delta": 0.0025,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.495,
"after": 0.5045,
"delta": 0.0095,
"percent_delta": 0.0192,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.587,
"after": 0.5607,
"delta": -0.0263,
"percent_delta": -0.0448,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.446,
"after": 0.4245,
"delta": -0.0215,
"percent_delta": -0.0482,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.908,
"after": 0.9463,
"delta": 0.0383,
"percent_delta": 0.0422,
"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.446,
"after": 0.4245,
"delta": -0.0215,
"percent_delta": -0.0482,
"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.1921,
"predicted_3B": 0.0233,
"predicted_AB": 3.5278,
"predicted_AVG": 0.2676,
"predicted_BB": 0.3202,
"predicted_H": 0.944,
"predicted_HBP": 0.018,
"predicted_HR": 0.109,
"predicted_OBP": 0.3285,
"predicted_R": 0.5129,
"predicted_RBI": 0.57,
"predicted_SLG": 0.428,
"predicted_SO": 0.9437
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1921,
"after": 0.1921,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0233,
"after": 0.0233,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.5278,
"after": 3.5278,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2655,
"after": 0.2676,
"delta": 0.0021,
"percent_delta": 0.0079,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3193,
"after": 0.3202,
"delta": 0.0009,
"percent_delta": 0.0028,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9359,
"after": 0.944,
"delta": 0.0081,
"percent_delta": 0.0087,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.018,
"after": 0.018,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1082,
"after": 0.109,
"delta": 0.0008,
"percent_delta": 0.0074,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3268,
"after": 0.3285,
"delta": 0.0017,
"percent_delta": 0.0052,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5045,
"after": 0.5129,
"delta": 0.0084,
"percent_delta": 0.0167,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5607,
"after": 0.57,
"delta": 0.0093,
"percent_delta": 0.0166,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4245,
"after": 0.428,
"delta": 0.0035,
"percent_delta": 0.0082,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.9463,
"after": 0.9437,
"delta": -0.0026,
"percent_delta": -0.0027,
"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.53), rates preserved: AVG=0.268 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": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1921,
"after": 0.0,
"delta": -0.1921,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0233,
"after": 0.0,
"delta": -0.0233,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.5278,
"after": 4.0,
"delta": 0.4722,
"percent_delta": 0.1339,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3202,
"after": 0.0,
"delta": -0.3202,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.944,
"after": 1.0,
"delta": 0.056,
"percent_delta": 0.0593,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.018,
"after": 0.0,
"delta": -0.018,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.109,
"after": 0.0,
"delta": -0.109,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.57,
"after": 1.0,
"delta": 0.43,
"percent_delta": 0.7544,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9437,
"after": 1.0,
"delta": 0.0563,
"percent_delta": 0.0597,
"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.5278,
"after": 4.0,
"delta": 0.4722,
"percent_delta": 0.1339,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.3202,
"after": 0.0,
"delta": -0.3202,
"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.5129,
"after": 1.0,
"delta": 0.4871,
"percent_delta": 0.9497,
"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.5129,
"after": 1.0,
"delta": 0.4871,
"percent_delta": 0.9497,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 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.2676,
"after": 0.25,
"delta": -0.0176,
"percent_delta": -0.0658,
"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.3285,
"after": 0.25,
"delta": -0.0785,
"percent_delta": -0.239,
"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.428,
"after": 0.25,
"delta": -0.178,
"percent_delta": -0.4159,
"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.428,
"after": 0.25,
"delta": -0.178,
"percent_delta": -0.4159,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 2.0,
"predicted_SB": 0.0,
"predicted_SF": 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": 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": 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": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "higher",
"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": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2676,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3285,
"predicted_R": 1.0,
"predicted_RBI": 2.0,
"predicted_SB": 0.0,
"predicted_SF": 1.0,
"predicted_SLG": 0.428,
"predicted_SO": 2.0,
"predicted_TB": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2676,
"delta": 0.0176,
"percent_delta": 0.0704,
"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.25,
"after": 0.3285,
"delta": 0.0785,
"percent_delta": 0.3142,
"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": 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.25,
"after": 0.428,
"delta": 0.178,
"percent_delta": 0.7119,
"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.25,
"after": 0.428,
"delta": 0.178,
"percent_delta": 0.7119,
"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": 3.514,
"after": 4.0,
"delta": 0.486,
"percent_delta": 0.1383,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.272,
"after": 0.2676,
"delta": -0.0044,
"percent_delta": -0.0162,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.284,
"after": 0.0,
"delta": -0.284,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.954,
"after": 1.0,
"delta": 0.046,
"percent_delta": 0.0482,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.119,
"after": 0.0,
"delta": -0.119,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.326,
"after": 0.3285,
"delta": 0.0025,
"percent_delta": 0.0077,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.495,
"after": 1.0,
"delta": 0.505,
"percent_delta": 1.0202,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.587,
"after": 2.0,
"delta": 1.413,
"percent_delta": 2.4072,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.446,
"after": 0.428,
"delta": -0.018,
"percent_delta": -0.0404,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.908,
"after": 2.0,
"delta": 1.092,
"percent_delta": 1.2026,
"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.587,
"after": 2.0,
"delta": 1.413,
"percent_delta": 2.4072,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.284,
"after": 0.0,
"delta": -0.284,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.202 | - |
| predicted_3B | 0.028 | - |
| predicted_AB | 3.514 | - |
| predicted_AVG | 0.272 | - |
| predicted_BB | 0.284 | - |
| predicted_H | 0.954 | - |
| predicted_HR | 0.119 | - |
| predicted_OBP | 0.326 | - |
| predicted_R | 0.495 | - |
| predicted_RBI | 0.587 | - |
| predicted_SLG | 0.446 | - |
| predicted_SO | 0.908 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.192 | -0.010 |
| predicted_3B | 0.023 | -0.005 |
| predicted_AB | 3.528 | 0.014 |
| predicted_AVG | 0.266 | -0.007 |
| predicted_BB | 0.319 | 0.035 |
| predicted_H | 0.936 | -0.018 |
| predicted_HBP | 0.018 | - |
| predicted_HR | 0.108 | -0.011 |
| predicted_OBP | 0.327 | 0.001 |
| predicted_R | 0.504 | 0.009 |
| predicted_RBI | 0.561 | -0.026 |
| predicted_SLG | 0.424 | -0.022 |
| predicted_SO | 0.946 | 0.038 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.192 | 0.000 |
| predicted_3B | 0.023 | 0.000 |
| predicted_AB | 3.528 | 0.000 |
| predicted_AVG | 0.268 | 0.002 |
| predicted_BB | 0.320 | 0.001 |
| predicted_H | 0.944 | 0.008 |
| predicted_HBP | 0.018 | 0.000 |
| predicted_HR | 0.109 | 0.001 |
| predicted_OBP | 0.329 | 0.002 |
| predicted_R | 0.513 | 0.008 |
| predicted_RBI | 0.570 | 0.009 |
| predicted_SLG | 0.428 | 0.004 |
| predicted_SO | 0.944 | -0.003 |
AB rounded to 4 (raw=3.53), rates preserved: AVG=0.268 HR/AB=0.031
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.192 |
| predicted_3B | 0.000 | -0.023 |
| predicted_AB | 4.000 | 0.472 |
| predicted_AVG | 0.250 | -0.018 |
| predicted_BB | 0.000 | -0.320 |
| predicted_H | 1.000 | 0.056 |
| predicted_HR | 0.000 | -0.109 |
| predicted_OBP | 0.250 | -0.079 |
| predicted_R | 1.000 | 0.487 |
| predicted_RBI | 1.000 | 0.430 |
| predicted_SLG | 0.250 | -0.178 |
| predicted_SO | 1.000 | 0.056 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 1.000 | 0.000 |
| RBI | 2.000 | 1.000 |
| SB | 0.000 | 0.000 |
| SF | 1.000 | 1.000 |
| SO | 2.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 17.000 | 3.000 | 0.000 | 0.000 | 0.000 | 1.000 | 3.000 | 3.000 | 6.000 | 0.1765 | 0.3000 | 0.1765 | 0.1765 | 0.0000 | 0.0588 | 0.1765 | 0.3529 |
| last_10 | 0.20 | 10 | - | 37.000 | 11.000 | 3.000 | 0.000 | 1.000 | 7.000 | 5.000 | 4.000 | 11.000 | 0.2973 | 0.3659 | 0.4595 | 0.2973 | 0.0270 | 0.1892 | 0.1081 | 0.2973 |
| season | 0.60 | 109 | - | 383.000 | 104.000 | 22.000 | 3.000 | 13.000 | 64.000 | 54.000 | 31.000 | 99.000 | 0.2715 | 0.3270 | 0.4465 | 0.2715 | 0.0339 | 0.1671 | 0.0809 | 0.2585 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1790 |
| predicted_3B | 0.0170 |
| predicted_AB | 3.5460 |
| predicted_AVG | 0.2570 |
| predicted_BB | 0.3660 |
| predicted_H | 0.9120 |
| predicted_HBP | 0.0180 |
| predicted_HR | 0.0940 |
| predicted_OBP | 0.3278 |
| predicted_R | 0.5170 |
| predicted_RBI | 0.5260 |
| predicted_SLG | 0.3960 |
| predicted_SO | 0.9970 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2020 | 0.1790 | 0.1921 | model_form_blend |
| predicted_3B | 0.0280 | 0.0170 | 0.0233 | model_form_blend |
| predicted_AB | 3.5140 | 3.5460 | 3.5278 | model_form_blend |
| predicted_AVG | 0.2720 | 0.2570 | 0.2655 | model_form_blend |
| predicted_BB | 0.2840 | 0.3660 | 0.3193 | model_form_blend |
| predicted_H | 0.9540 | 0.9120 | 0.9359 | model_form_blend |
| predicted_HBP | - | 0.0180 | 0.0180 | form_only |
| predicted_HR | 0.1190 | 0.0940 | 0.1082 | model_form_blend |
| predicted_OBP | 0.3260 | 0.3278 | 0.3268 | model_form_blend |
| predicted_R | 0.4950 | 0.5170 | 0.5045 | model_form_blend |
| predicted_RBI | 0.5870 | 0.5260 | 0.5607 | model_form_blend |
| predicted_SLG | 0.4460 | 0.3960 | 0.4245 | model_form_blend |
| predicted_SO | 0.9080 | 0.9970 | 0.9463 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 366 |
| Season rows before report date | 366 |
| Report year | 2026 |
| Profile rows used | 109 |
| Hitter metrics | Hitting_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 Field | Value |
|---|---|
| PA | 5 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 2 |
| BB | 0 |
| SO | 2 |
| SF | 1 |
| HBP | 0 |
| season_avg | 0.272 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.333 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 5 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 3B |
| gameID | 20260811_TEX@LAA |
| game_type | full |
| mlbID | 677649 |
| playerID | 677649 |
| playerName | Ezequiel Duran |
| pos | SS |
| started | True |
| startingPosition | 3B |
| team | TEX |
| teamID | 28 |
| game_date | 2026-08-11 |
| sl_k_percent | 23.4 |
| sl_bb_percent | 7.3 |
| sl_woba | 0.336 |
| sl_xwoba | 0.305 |
| sl_xba | 0.25 |
| sl_xslg | 0.38 |
| sl_sweet_spot_percent | 36.2 |
| sl_barrel_batted_rate | 6.3 |
| sl_hard_hit_percent | 36.2 |
| sl_exit_velocity_avg | 88.6 |
| sl_launch_angle_avg | 11.5 |
| sl_whiff_percent | 26.4 |
| sl_swing_percent | 51.6 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.083 | 0.000 | 0.000 | Hitting_2B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.583 | 5.000 | 3.000 | Hitting_AB | 1.786 | 1.000 | 3.214 | 4.000 |
| predicted_AVG | 0.226 | 0.400 | 0.333 | Hitting_AVG | 0.160 | 1.000 | 0.240 | -0.600 |
| predicted_BB | 0.333 | 0.000 | 0.000 | Hitting_BB | 0.429 | 0.000 | -0.429 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.071 | 0.000 | -0.071 | 0.000 |
| predicted_H | 0.583 | 2.000 | 1.000 | Hitting_H | 0.286 | 1.000 | 1.714 | 1.000 |
| predicted_HR | 0.042 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.314 | 0.400 | 0.333 | Hitting_OBP | 0.323 | 1.000 | 0.077 | -0.600 |
| predicted_R | 0.167 | 1.000 | 0.000 | Hitting_R | 0.286 | 0.000 | 0.714 | 1.000 |
| predicted_RBI | 0.208 | 0.000 | 0.000 | Hitting_RBI | 0.071 | 1.000 | -0.071 | -1.000 |
| predicted_SLG | 0.306 | 0.400 | 0.333 | Hitting_SLG | 0.160 | 1.000 | 0.240 | -0.600 |
| predicted_SO | 1.042 | 2.000 | 1.000 | Hitting_SO | 0.929 | 0.000 | 1.071 | 2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | boosted |
| Changed Metrics | 8 |
| Boosted Metrics | 5 |
| Deboosted Metrics | 3 |
| Better Metrics | 4 |
| Worse Metrics | 4 |
| Biggest Boost | predicted_AB: 2.5830 -> 5.0000 (boost 2.4170, better) |
| Biggest Deboost | predicted_BB: 0.3330 -> 0.0000 (deboost -0.3330, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 1 | 1 | 0 | 1 | 0 | predicted_AB: 2.5830 -> 2.6616 (boost 0.0786, 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. |
| 3 | team_form_snapshot | 0 | 0 | 0 | 0 | 0 | - | - | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 2 | 4 | 3 | 3 | predicted_H: 0.6111 -> 1.0000 (boost 0.3889, better) | predicted_BB: 0.3393 -> 0.0000 (deboost -0.3393, worse) | AB rounded to 3 (raw=2.66), rates preserved: AVG=0.230 HR/AB=0.017 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.2055 -> 0.0000 (deboost -0.2055, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.2296 -> 0.3330 (boost 0.1034, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 4 | 4 | 0 | 3 | 1 | predicted_AB: 3.0000 -> 5.0000 (boost 2.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.2296 (deboost -0.1034, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "672284",
"player_name": "Jarred Kelenic",
"position": "LF",
"team": "TEX",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.083,
"predicted_3B": 0.0,
"predicted_AB": 2.583,
"predicted_AVG": 0.226,
"predicted_BB": 0.333,
"predicted_H": 0.583,
"predicted_HR": 0.042,
"predicted_OBP": 0.314,
"predicted_R": 0.167,
"predicted_RBI": 0.208,
"predicted_SLG": 0.306,
"predicted_SO": 1.042
},
"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.0873,
"predicted_3B": 0.0011,
"predicted_AB": 2.6616,
"predicted_AVG": 0.2277,
"predicted_BB": 0.3384,
"predicted_H": 0.6058,
"predicted_HBP": 0.007,
"predicted_HR": 0.0442,
"predicted_OBP": 0.3153,
"predicted_R": 0.2021,
"predicted_RBI": 0.2276,
"predicted_SLG": 0.3107,
"predicted_SO": 1.0634
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.083,
"after": 0.0873,
"delta": 0.0043,
"percent_delta": 0.0518,
"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.583,
"after": 2.6616,
"delta": 0.0786,
"percent_delta": 0.0304,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.226,
"after": 0.2277,
"delta": 0.0017,
"percent_delta": 0.0075,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.333,
"after": 0.3384,
"delta": 0.0054,
"percent_delta": 0.0162,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.583,
"after": 0.6058,
"delta": 0.0228,
"percent_delta": 0.0391,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.042,
"after": 0.0442,
"delta": 0.0022,
"percent_delta": 0.0524,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.314,
"after": 0.3153,
"delta": 0.0013,
"percent_delta": 0.0041,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.167,
"after": 0.2021,
"delta": 0.0351,
"percent_delta": 0.2102,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.208,
"after": 0.2276,
"delta": 0.0196,
"percent_delta": 0.0942,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.306,
"after": 0.3107,
"delta": 0.0047,
"percent_delta": 0.0154,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.042,
"after": 1.0634,
"delta": 0.0214,
"percent_delta": 0.0205,
"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": 2.583,
"after": 2.6616,
"delta": 0.0786,
"percent_delta": 0.0304,
"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": 24
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.0873,
"predicted_3B": 0.0011,
"predicted_AB": 2.6616,
"predicted_AVG": 0.2296,
"predicted_BB": 0.3393,
"predicted_H": 0.6111,
"predicted_HBP": 0.007,
"predicted_HR": 0.0445,
"predicted_OBP": 0.3167,
"predicted_R": 0.2055,
"predicted_RBI": 0.2314,
"predicted_SLG": 0.3134,
"predicted_SO": 1.0605
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0873,
"after": 0.0873,
"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.6616,
"after": 2.6616,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2277,
"after": 0.2296,
"delta": 0.0019,
"percent_delta": 0.0083,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3384,
"after": 0.3393,
"delta": 0.0009,
"percent_delta": 0.0027,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.6058,
"after": 0.6111,
"delta": 0.0053,
"percent_delta": 0.0087,
"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.0442,
"after": 0.0445,
"delta": 0.0003,
"percent_delta": 0.0068,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3153,
"after": 0.3167,
"delta": 0.0014,
"percent_delta": 0.0044,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.2021,
"after": 0.2055,
"delta": 0.0034,
"percent_delta": 0.0168,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2276,
"after": 0.2314,
"delta": 0.0038,
"percent_delta": 0.0167,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3107,
"after": 0.3134,
"delta": 0.0027,
"percent_delta": 0.0087,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0634,
"after": 1.0605,
"delta": -0.0029,
"percent_delta": -0.0027,
"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 3 (raw=2.66), rates preserved: AVG=0.230 HR/AB=0.017",
"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.0873,
"after": 0.0,
"delta": -0.0873,
"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.6616,
"after": 3.0,
"delta": 0.3384,
"percent_delta": 0.1271,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3393,
"after": 0.0,
"delta": -0.3393,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.6111,
"after": 1.0,
"delta": 0.3889,
"percent_delta": 0.6364,
"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.0445,
"after": 0.0,
"delta": -0.0445,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2314,
"after": 0.0,
"delta": -0.2314,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0605,
"after": 1.0,
"delta": -0.0605,
"percent_delta": -0.057,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 2,
"deboosted_metrics": 4,
"better_metrics": 3,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.6111,
"after": 1.0,
"delta": 0.3889,
"percent_delta": 0.6364,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.3393,
"after": 0.0,
"delta": -0.3393,
"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.2055,
"after": 0.0,
"delta": -0.2055,
"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.2055,
"after": 0.0,
"delta": -0.2055,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2296,
"after": 0.333,
"delta": 0.1034,
"percent_delta": 0.4503,
"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.3167,
"after": 0.333,
"delta": 0.0163,
"percent_delta": 0.0515,
"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.3134,
"after": 0.333,
"delta": 0.0196,
"percent_delta": 0.0625,
"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.2296,
"after": 0.333,
"delta": 0.1034,
"percent_delta": 0.4503,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 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": 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": 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": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 4,
"deboosted_metrics": 0,
"better_metrics": 3,
"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": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_AVG": 0.2296,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_LF": 0.0,
"predicted_OBP": 0.3167,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3134,
"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.333,
"after": 0.2296,
"delta": -0.1034,
"percent_delta": -0.3105,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3167,
"delta": -0.0163,
"percent_delta": -0.049,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3134,
"delta": -0.0196,
"percent_delta": -0.0588,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2296,
"delta": -0.1034,
"percent_delta": -0.3105,
"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.083,
"after": 0.0,
"delta": -0.083,
"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.583,
"after": 5.0,
"delta": 2.417,
"percent_delta": 0.9357,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.226,
"after": 0.2296,
"delta": 0.0036,
"percent_delta": 0.0159,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.333,
"after": 0.0,
"delta": -0.333,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.583,
"after": 2.0,
"delta": 1.417,
"percent_delta": 2.4305,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.042,
"after": 0.0,
"delta": -0.042,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.314,
"after": 0.3167,
"delta": 0.0027,
"percent_delta": 0.0086,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.167,
"after": 1.0,
"delta": 0.833,
"percent_delta": 4.988,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.208,
"after": 0.0,
"delta": -0.208,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.306,
"after": 0.3134,
"delta": 0.0074,
"percent_delta": 0.0242,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.042,
"after": 2.0,
"delta": 0.958,
"percent_delta": 0.9194,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 5,
"deboosted_metrics": 3,
"better_metrics": 4,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.583,
"after": 5.0,
"delta": 2.417,
"percent_delta": 0.9357,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.333,
"after": 0.0,
"delta": -0.333,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "boosted"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.083 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.583 | - |
| predicted_AVG | 0.226 | - |
| predicted_BB | 0.333 | - |
| predicted_H | 0.583 | - |
| predicted_HR | 0.042 | - |
| predicted_OBP | 0.314 | - |
| predicted_R | 0.167 | - |
| predicted_RBI | 0.208 | - |
| predicted_SLG | 0.306 | - |
| predicted_SO | 1.042 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.087 | 0.004 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 2.662 | 0.079 |
| predicted_AVG | 0.228 | 0.002 |
| predicted_BB | 0.338 | 0.005 |
| predicted_H | 0.606 | 0.023 |
| predicted_HBP | 0.007 | - |
| predicted_HR | 0.044 | 0.002 |
| predicted_OBP | 0.315 | 0.001 |
| predicted_R | 0.202 | 0.035 |
| predicted_RBI | 0.228 | 0.020 |
| predicted_SLG | 0.311 | 0.005 |
| predicted_SO | 1.063 | 0.021 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.087 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 2.662 | 0.000 |
| predicted_AVG | 0.230 | 0.002 |
| predicted_BB | 0.339 | 0.001 |
| predicted_H | 0.611 | 0.005 |
| predicted_HBP | 0.007 | 0.000 |
| predicted_HR | 0.044 | 0.000 |
| predicted_OBP | 0.317 | 0.001 |
| predicted_R | 0.205 | 0.003 |
| predicted_RBI | 0.231 | 0.004 |
| predicted_SLG | 0.313 | 0.003 |
| predicted_SO | 1.060 | -0.003 |
AB rounded to 3 (raw=2.66), rates preserved: AVG=0.230 HR/AB=0.017
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.087 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | 0.338 |
| predicted_AVG | 0.333 | 0.103 |
| predicted_BB | 0.000 | -0.339 |
| predicted_H | 1.000 | 0.389 |
| predicted_HR | 0.000 | -0.044 |
| predicted_OBP | 0.333 | 0.016 |
| predicted_R | 0.000 | -0.205 |
| predicted_RBI | 0.000 | -0.231 |
| predicted_SLG | 0.333 | 0.020 |
| predicted_SO | 1.000 | -0.060 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 5.000 | 2.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 2.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 1.000 | 1.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 9.000 | 2.000 | 0.000 | 0.000 | 0.000 | 1.000 | 1.000 | 2.000 | 5.000 | 0.2222 | 0.3636 | 0.2222 | 0.2222 | 0.0000 | 0.1111 | 0.2222 | 0.5556 |
| last_10 | 0.20 | 10 | - | 23.000 | 5.000 | 1.000 | 0.000 | 0.000 | 1.000 | 2.000 | 3.000 | 13.000 | 0.2174 | 0.3077 | 0.2609 | 0.2174 | 0.0000 | 0.0435 | 0.1304 | 0.5652 |
| season | 0.60 | 24 | - | 62.000 | 14.000 | 2.000 | 0.000 | 1.000 | 5.000 | 4.000 | 8.000 | 25.000 | 0.2258 | 0.3143 | 0.3065 | 0.2258 | 0.0161 | 0.0806 | 0.1290 | 0.4032 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0950 |
| predicted_3B | 0.0030 |
| predicted_AB | 2.8000 |
| predicted_AVG | 0.2308 |
| predicted_BB | 0.3480 |
| predicted_H | 0.6460 |
| predicted_HBP | 0.0070 |
| predicted_HR | 0.0480 |
| predicted_OBP | 0.3176 |
| predicted_R | 0.2640 |
| predicted_RBI | 0.2620 |
| predicted_SLG | 0.3190 |
| predicted_SO | 1.1010 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0830 | 0.0950 | 0.0873 | model_form_blend |
| predicted_3B | 0.0000 | 0.0030 | 0.0011 | model_form_blend |
| predicted_AB | 2.5830 | 2.8000 | 2.6616 | model_form_blend |
| predicted_AVG | 0.2260 | 0.2308 | 0.2277 | model_form_blend |
| predicted_BB | 0.3330 | 0.3480 | 0.3384 | model_form_blend |
| predicted_H | 0.5830 | 0.6460 | 0.6058 | model_form_blend |
| predicted_HBP | - | 0.0070 | 0.0070 | form_only |
| predicted_HR | 0.0420 | 0.0480 | 0.0442 | model_form_blend |
| predicted_OBP | 0.3140 | 0.3176 | 0.3153 | model_form_blend |
| predicted_R | 0.1670 | 0.2640 | 0.2021 | model_form_blend |
| predicted_RBI | 0.2080 | 0.2620 | 0.2276 | model_form_blend |
| predicted_SLG | 0.3060 | 0.3190 | 0.3107 | model_form_blend |
| predicted_SO | 1.0420 | 1.1010 | 1.0634 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 14 |
| Season rows before report date | 14 |
| Report year | 2026 |
| Profile rows used | 24 |
| Hitter metrics | Hitting_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 Field | Value |
|---|---|
| PA | 5 |
| AB | 5 |
| H | 2 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 0 |
| BB | 0 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.226 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 1 |
| Hitting_AVG | 1.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 8 |
| Hitting_substitutionOrder | 1 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | PH |
| gameID | 20260811_TEX@LAA |
| game_type | ph |
| mlbID | 672284 |
| note | Singled for Wynns, A in the 6th. |
| playerID | 672284 |
| playerName | Jarred Kelenic |
| pos | RF |
| started | False |
| startingPosition | PH |
| team | TEX |
| teamID | 28 |
| game_date | 2026-08-11 |
| sl_k_percent | 35.7 |
| sl_bb_percent | 11.4 |
| sl_woba | 0.285 |
| sl_xwoba | 0.346 |
| sl_xba | 0.239 |
| sl_xslg | 0.471 |
| sl_sweet_spot_percent | 40.5 |
| sl_barrel_batted_rate | 21.6 |
| sl_hard_hit_percent | 48.6 |
| sl_exit_velocity_avg | 93.1 |
| sl_launch_angle_avg | 14.5 |
| sl_whiff_percent | 38.9 |
| sl_swing_percent | 46.0 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.237 | 1.000 | 0.000 | Hitting_2B | 0.233 | 0.000 | 0.767 | 1.000 |
| predicted_3B | 0.035 | 0.000 | 0.000 | Hitting_3B | 0.045 | 0.000 | -0.045 | 0.000 |
| predicted_AB | 4.560 | 5.000 | 5.000 | Hitting_AB | 3.969 | 4.000 | 1.031 | 1.000 |
| predicted_AVG | 0.275 | 0.200 | 0.200 | Hitting_AVG | 0.274 | 0.500 | -0.074 | -0.300 |
| predicted_BB | 0.342 | 0.000 | 0.000 | Hitting_BB | 0.336 | 0.000 | -0.336 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.007 | 0.000 | -0.007 | 0.000 |
| predicted_H | 1.250 | 1.000 | 1.000 | Hitting_H | 1.087 | 2.000 | -0.087 | -1.000 |
| predicted_HR | 0.220 | 0.000 | 0.000 | Hitting_HR | 0.113 | 0.000 | -0.113 | 0.000 |
| predicted_OBP | 0.368 | 0.200 | 0.200 | Hitting_OBP | 0.339 | 0.500 | -0.139 | -0.300 |
| predicted_R | 0.439 | 1.000 | 0.000 | Hitting_R | 0.452 | 1.000 | 0.548 | 0.000 |
| predicted_RBI | 0.770 | 1.000 | 1.000 | Hitting_RBI | 0.447 | 0.000 | 0.553 | 1.000 |
| predicted_SLG | 0.488 | 0.400 | 0.200 | Hitting_SLG | 0.440 | 0.500 | -0.040 | -0.100 |
| predicted_SO | 0.912 | 1.000 | 1.000 | Hitting_SO | 0.962 | 1.000 | 0.038 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 11 |
| Boosted Metrics | 7 |
| Deboosted Metrics | 4 |
| Better Metrics | 6 |
| Worse Metrics | 5 |
| Biggest Boost | predicted_2B: 0.2370 -> 1.0000 (boost 0.7630, better) |
| Biggest Deboost | predicted_BB: 0.3420 -> 0.0000 (deboost -0.3420, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 5 | 3 | 2 | 3 | 2 | predicted_AVG: 0.2750 -> 0.2955 (boost 0.0205, better) | predicted_AB: 4.5600 -> 4.2267 (deboost -0.3333, 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. |
| 3 | team_form_snapshot | 1 | 0 | 1 | 0 | 1 | - | predicted_OBP: 0.3730 -> 0.3471 (deboost -0.0259, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 3 | 4 | 2 | 5 | predicted_AB: 4.2267 -> 5.0000 (boost 0.7733, better) | predicted_BB: 0.3342 -> 0.0000 (deboost -0.3342, worse) | AB rounded to 5 (raw=4.56), rates preserved: AVG=0.274 HR/AB=0.044 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4582 -> 0.0000 (deboost -0.4582, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4985 -> 0.2000 (deboost -0.2985, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 2 | 0 | 2 | 0 | predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2000 -> 0.4985 (boost 0.2985, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "607043",
"player_name": "Brandon Nimmo",
"position": "RF",
"team": "TEX",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.237,
"predicted_3B": 0.035,
"predicted_AB": 4.56,
"predicted_AVG": 0.275,
"predicted_BB": 0.342,
"predicted_H": 1.25,
"predicted_HR": 0.22,
"predicted_OBP": 0.368,
"predicted_R": 0.439,
"predicted_RBI": 0.77,
"predicted_SLG": 0.488,
"predicted_SO": 0.912
},
"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.205,
"predicted_3B": 0.0289,
"predicted_AB": 4.2267,
"predicted_AVG": 0.2955,
"predicted_BB": 0.3333,
"predicted_H": 1.2379,
"predicted_HBP": 0.031,
"predicted_HR": 0.1971,
"predicted_OBP": 0.373,
"predicted_R": 0.4507,
"predicted_RBI": 0.6808,
"predicted_SLG": 0.4969,
"predicted_SO": 0.9085
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.237,
"after": 0.205,
"delta": -0.032,
"percent_delta": -0.135,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.035,
"after": 0.0289,
"delta": -0.0061,
"percent_delta": -0.1743,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.56,
"after": 4.2267,
"delta": -0.3333,
"percent_delta": -0.0731,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.275,
"after": 0.2955,
"delta": 0.0205,
"percent_delta": 0.0745,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.342,
"after": 0.3333,
"delta": -0.0087,
"percent_delta": -0.0254,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.25,
"after": 1.2379,
"delta": -0.0121,
"percent_delta": -0.0097,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.22,
"after": 0.1971,
"delta": -0.0229,
"percent_delta": -0.1041,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.368,
"after": 0.373,
"delta": 0.005,
"percent_delta": 0.0136,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.439,
"after": 0.4507,
"delta": 0.0117,
"percent_delta": 0.0267,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.77,
"after": 0.6808,
"delta": -0.0892,
"percent_delta": -0.1158,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.488,
"after": 0.4969,
"delta": 0.0089,
"percent_delta": 0.0182,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.912,
"after": 0.9085,
"delta": -0.0035,
"percent_delta": -0.0038,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 3,
"deboosted_metrics": 2,
"better_metrics": 3,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.275,
"after": 0.2955,
"delta": 0.0205,
"percent_delta": 0.0745,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.56,
"after": 4.2267,
"delta": -0.3333,
"percent_delta": -0.0731,
"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": 114
}
},
{
"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.205,
"predicted_3B": 0.0289,
"predicted_AB": 4.2267,
"predicted_AVG": 0.2954,
"predicted_BB": 0.3342,
"predicted_H": 1.2487,
"predicted_HBP": 0.031,
"predicted_HR": 0.1986,
"predicted_OBP": 0.3471,
"predicted_R": 0.4582,
"predicted_RBI": 0.6921,
"predicted_SLG": 0.4985,
"predicted_SO": 0.906
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.205,
"after": 0.205,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0289,
"after": 0.0289,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.2267,
"after": 4.2267,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2955,
"after": 0.2954,
"delta": -0.0001,
"percent_delta": -0.0003,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3333,
"after": 0.3342,
"delta": 0.0009,
"percent_delta": 0.0027,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.2379,
"after": 1.2487,
"delta": 0.0108,
"percent_delta": 0.0087,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.031,
"after": 0.031,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1971,
"after": 0.1986,
"delta": 0.0015,
"percent_delta": 0.0076,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.373,
"after": 0.3471,
"delta": -0.0259,
"percent_delta": -0.0694,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4507,
"after": 0.4582,
"delta": 0.0075,
"percent_delta": 0.0166,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6808,
"after": 0.6921,
"delta": 0.0113,
"percent_delta": 0.0166,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4969,
"after": 0.4985,
"delta": 0.0016,
"percent_delta": 0.0032,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.9085,
"after": 0.906,
"delta": -0.0025,
"percent_delta": -0.0028,
"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.373,
"after": 0.3471,
"delta": -0.0259,
"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.56), rates preserved: AVG=0.274 HR/AB=0.044",
"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.205,
"after": 0.0,
"delta": -0.205,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0289,
"after": 0.0,
"delta": -0.0289,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.2267,
"after": 5.0,
"delta": 0.7733,
"percent_delta": 0.183,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3342,
"after": 0.0,
"delta": -0.3342,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.2487,
"after": 1.0,
"delta": -0.2487,
"percent_delta": -0.1992,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.031,
"after": 0.0,
"delta": -0.031,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1986,
"after": 0.0,
"delta": -0.1986,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6921,
"after": 1.0,
"delta": 0.3079,
"percent_delta": 0.4449,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.906,
"after": 1.0,
"delta": 0.094,
"percent_delta": 0.1038,
"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.2267,
"after": 5.0,
"delta": 0.7733,
"percent_delta": 0.183,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.3342,
"after": 0.0,
"delta": -0.3342,
"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": 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.4582,
"after": 0.0,
"delta": -0.4582,
"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.4582,
"after": 0.0,
"delta": -0.4582,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_AVG": 0.2,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.2,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2954,
"after": 0.2,
"delta": -0.0954,
"percent_delta": -0.323,
"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.3471,
"after": 0.2,
"delta": -0.1471,
"percent_delta": -0.4238,
"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.4985,
"after": 0.2,
"delta": -0.2985,
"percent_delta": -0.5988,
"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.4985,
"after": 0.2,
"delta": -0.2985,
"percent_delta": -0.5988,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 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": 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": 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": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_AVG": 0.2954,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3471,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4985,
"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.2,
"after": 0.2954,
"delta": 0.0954,
"percent_delta": 0.4771,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2,
"after": 0.3471,
"delta": 0.1471,
"percent_delta": 0.7353,
"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.2,
"after": 0.4985,
"delta": 0.2985,
"percent_delta": 1.4927,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.2,
"after": 0.4985,
"delta": 0.2985,
"percent_delta": 1.4927,
"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.237,
"after": 1.0,
"delta": 0.763,
"percent_delta": 3.2194,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.035,
"after": 0.0,
"delta": -0.035,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.56,
"after": 5.0,
"delta": 0.44,
"percent_delta": 0.0965,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.275,
"after": 0.2954,
"delta": 0.0204,
"percent_delta": 0.0742,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.342,
"after": 0.0,
"delta": -0.342,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.25,
"after": 1.0,
"delta": -0.25,
"percent_delta": -0.2,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.22,
"after": 0.0,
"delta": -0.22,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.368,
"after": 0.3471,
"delta": -0.0209,
"percent_delta": -0.0568,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.439,
"after": 1.0,
"delta": 0.561,
"percent_delta": 1.2779,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.77,
"after": 1.0,
"delta": 0.23,
"percent_delta": 0.2987,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.488,
"after": 0.4985,
"delta": 0.0105,
"percent_delta": 0.0215,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.912,
"after": 1.0,
"delta": 0.088,
"percent_delta": 0.0965,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 7,
"deboosted_metrics": 4,
"better_metrics": 6,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.237,
"after": 1.0,
"delta": 0.763,
"percent_delta": 3.2194,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.342,
"after": 0.0,
"delta": -0.342,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.237 | - |
| predicted_3B | 0.035 | - |
| predicted_AB | 4.560 | - |
| predicted_AVG | 0.275 | - |
| predicted_BB | 0.342 | - |
| predicted_H | 1.250 | - |
| predicted_HR | 0.220 | - |
| predicted_OBP | 0.368 | - |
| predicted_R | 0.439 | - |
| predicted_RBI | 0.770 | - |
| predicted_SLG | 0.488 | - |
| predicted_SO | 0.912 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.205 | -0.032 |
| predicted_3B | 0.029 | -0.006 |
| predicted_AB | 4.227 | -0.333 |
| predicted_AVG | 0.295 | 0.020 |
| predicted_BB | 0.333 | -0.009 |
| predicted_H | 1.238 | -0.012 |
| predicted_HBP | 0.031 | - |
| predicted_HR | 0.197 | -0.023 |
| predicted_OBP | 0.373 | 0.005 |
| predicted_R | 0.451 | 0.012 |
| predicted_RBI | 0.681 | -0.089 |
| predicted_SLG | 0.497 | 0.009 |
| predicted_SO | 0.908 | -0.004 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.205 | 0.000 |
| predicted_3B | 0.029 | 0.000 |
| predicted_AB | 4.227 | 0.000 |
| predicted_AVG | 0.295 | -0.000 |
| predicted_BB | 0.334 | 0.001 |
| predicted_H | 1.249 | 0.011 |
| predicted_HBP | 0.031 | 0.000 |
| predicted_HR | 0.199 | 0.002 |
| predicted_OBP | 0.347 | -0.026 |
| predicted_R | 0.458 | 0.008 |
| predicted_RBI | 0.692 | 0.011 |
| predicted_SLG | 0.498 | 0.002 |
| predicted_SO | 0.906 | -0.002 |
AB rounded to 5 (raw=4.56), rates preserved: AVG=0.274 HR/AB=0.044
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 5.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 5.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.205 |
| predicted_3B | 0.000 | -0.029 |
| predicted_AB | 5.000 | 0.773 |
| predicted_AVG | 0.200 | -0.095 |
| predicted_BB | 0.000 | -0.334 |
| predicted_H | 1.000 | -0.249 |
| predicted_HR | 0.000 | -0.199 |
| predicted_OBP | 0.200 | -0.147 |
| predicted_R | 0.000 | -0.458 |
| predicted_RBI | 1.000 | 0.308 |
| predicted_SLG | 0.200 | -0.298 |
| predicted_SO | 1.000 | 0.094 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 1.000 | 1.000 |
| 3B | 0.000 | 0.000 |
| AB | 5.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 1.000 | 1.000 |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 19.000 | 7.000 | 0.000 | 0.000 | 1.000 | 4.000 | 2.000 | 1.000 | 5.000 | 0.3684 | 0.4000 | 0.5263 | 0.3684 | 0.0526 | 0.2105 | 0.0526 | 0.2632 |
| last_10 | 0.20 | 10 | - | 37.000 | 16.000 | 1.000 | 0.000 | 3.000 | 8.000 | 6.000 | 4.000 | 8.000 | 0.4324 | 0.4878 | 0.7027 | 0.4324 | 0.0811 | 0.2162 | 0.1081 | 0.2162 |
| season | 0.60 | 114 | - | 435.000 | 121.000 | 27.000 | 4.000 | 13.000 | 47.000 | 50.000 | 39.000 | 104.000 | 0.2782 | 0.3444 | 0.4483 | 0.2782 | 0.0299 | 0.1080 | 0.0897 | 0.2391 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1630 |
| predicted_3B | 0.0210 |
| predicted_AB | 3.7900 |
| predicted_AVG | 0.3224 |
| predicted_BB | 0.3220 |
| predicted_H | 1.2220 |
| predicted_HBP | 0.0310 |
| predicted_HR | 0.1670 |
| predicted_OBP | 0.3796 |
| predicted_R | 0.4660 |
| predicted_RBI | 0.5640 |
| predicted_SLG | 0.5086 |
| predicted_SO | 0.9040 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2370 | 0.1630 | 0.2050 | model_form_blend |
| predicted_3B | 0.0350 | 0.0210 | 0.0289 | model_form_blend |
| predicted_AB | 4.5600 | 3.7900 | 4.2267 | model_form_blend |
| predicted_AVG | 0.2750 | 0.3224 | 0.2955 | model_form_blend |
| predicted_BB | 0.3420 | 0.3220 | 0.3333 | model_form_blend |
| predicted_H | 1.2500 | 1.2220 | 1.2379 | model_form_blend |
| predicted_HBP | - | 0.0310 | 0.0310 | form_only |
| predicted_HR | 0.2200 | 0.1670 | 0.1971 | model_form_blend |
| predicted_OBP | 0.3680 | 0.3796 | 0.3730 | model_form_blend |
| predicted_R | 0.4390 | 0.4660 | 0.4507 | model_form_blend |
| predicted_RBI | 0.7700 | 0.5640 | 0.6808 | model_form_blend |
| predicted_SLG | 0.4880 | 0.5086 | 0.4969 | model_form_blend |
| predicted_SO | 0.9120 | 0.9040 | 0.9085 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 425 |
| Season rows before report date | 425 |
| Report year | 2026 |
| Profile rows used | 114 |
| Hitter metrics | Hitting_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 Field | Value |
|---|---|
| PA | 5 |
| AB | 5 |
| H | 1 |
| 2B | 1 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.278 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.5 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 2 |
| Hitting_battingOrder | 4 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | RF |
| gameID | 20260811_TEX@LAA |
| game_type | full |
| mlbID | 607043 |
| playerID | 607043 |
| playerName | Brandon Nimmo |
| pos | RF |
| started | True |
| startingPosition | RF |
| team | TEX |
| teamID | 28 |
| game_date | 2026-08-11 |
| sl_k_percent | 21.6 |
| sl_bb_percent | 8.1 |
| sl_woba | 0.346 |
| sl_xwoba | 0.373 |
| sl_xba | 0.293 |
| sl_xslg | 0.503 |
| sl_sweet_spot_percent | 37.5 |
| sl_barrel_batted_rate | 11.1 |
| sl_hard_hit_percent | 52.0 |
| sl_exit_velocity_avg | 92.2 |
| sl_launch_angle_avg | 11.5 |
| sl_whiff_percent | 22.2 |
| sl_swing_percent | 50.4 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.103 | 0.000 | 0.000 | Hitting_2B | 0.118 | 0.000 | -0.118 | 0.000 |
| predicted_3B | 0.019 | 0.000 | 0.000 | Hitting_3B | 0.031 | 0.000 | -0.031 | 0.000 |
| predicted_AB | 2.907 | 3.000 | 3.000 | Hitting_AB | 3.304 | 1.000 | -0.304 | 2.000 |
| predicted_AVG | 0.333 | 0.333 | 0.333 | Hitting_AVG | 0.257 | 1.000 | 0.077 | -0.667 |
| predicted_BB | 0.383 | 1.000 | 0.000 | Hitting_BB | 0.429 | 3.000 | 0.571 | -2.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.810 | 1.000 | 1.000 | Hitting_H | 0.848 | 1.000 | 0.152 | 0.000 |
| predicted_HR | 0.320 | 0.000 | 0.000 | Hitting_HR | 0.236 | 1.000 | -0.236 | -1.000 |
| predicted_OBP | 0.403 | 0.600 | 0.333 | Hitting_OBP | 0.346 | 1.000 | 0.254 | -0.400 |
| predicted_R | 0.458 | 0.000 | 0.000 | Hitting_R | 0.519 | 1.000 | -0.519 | -1.000 |
| predicted_RBI | 0.510 | 0.000 | 1.000 | Hitting_RBI | 0.484 | 1.000 | -0.484 | -1.000 |
| predicted_SLG | 1.003 | 0.333 | 0.333 | Hitting_SLG | 0.525 | 4.000 | -0.192 | -3.667 |
| predicted_SO | 0.766 | 0.000 | 1.000 | Hitting_SO | 0.879 | 0.000 | -0.879 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 8 |
| Better Metrics | 4 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_BB: 0.3830 -> 1.0000 (boost 0.6170, better) |
| Biggest Deboost | predicted_SO: 0.7660 -> 0.0000 (deboost -0.7660, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 4 | 0 | 4 | 0 | 4 | - | predicted_SLG: 1.0030 -> 0.8207 (deboost -0.1823, 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. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.8207 -> 0.6283 (deboost -0.1924, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 4 | 3 | 3 | 4 | predicted_RBI: 0.5011 -> 1.0000 (boost 0.4989, better) | predicted_BB: 0.4251 -> 0.0000 (deboost -0.4251, worse) | AB rounded to 3 (raw=2.91), rates preserved: AVG=0.265 HR/AB=0.103 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4599 -> 0.0000 (deboost -0.4599, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2702 -> 0.3330 (boost 0.0628, better) | predicted_SLG: 0.6283 -> 0.3330 (deboost -0.2953, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 4 | 2 | 2 | 3 | 1 | predicted_BB: 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 |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.3330 -> 0.6283 (boost 0.2953, better) | predicted_AVG: 0.3330 -> 0.2702 (deboost -0.0628, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "592626",
"player_name": "Joc Pederson",
"position": "DH",
"team": "TEX",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.103,
"predicted_3B": 0.019,
"predicted_AB": 2.907,
"predicted_AVG": 0.333,
"predicted_BB": 0.383,
"predicted_H": 0.81,
"predicted_HR": 0.32,
"predicted_OBP": 0.403,
"predicted_R": 0.458,
"predicted_RBI": 0.51,
"predicted_SLG": 1.003,
"predicted_SO": 0.766
},
"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.0863,
"predicted_3B": 0.0156,
"predicted_AB": 2.8484,
"predicted_AVG": 0.2986,
"predicted_BB": 0.424,
"predicted_H": 0.763,
"predicted_HBP": 0.017,
"predicted_HR": 0.2986,
"predicted_OBP": 0.3858,
"predicted_R": 0.4524,
"predicted_RBI": 0.4929,
"predicted_SLG": 0.8207,
"predicted_SO": 0.7528
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.103,
"after": 0.0863,
"delta": -0.0167,
"percent_delta": -0.1621,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.019,
"after": 0.0156,
"delta": -0.0034,
"percent_delta": -0.1789,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.907,
"after": 2.8484,
"delta": -0.0586,
"percent_delta": -0.0202,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2986,
"delta": -0.0344,
"percent_delta": -0.1033,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.383,
"after": 0.424,
"delta": 0.041,
"percent_delta": 0.107,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.81,
"after": 0.763,
"delta": -0.047,
"percent_delta": -0.058,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.32,
"after": 0.2986,
"delta": -0.0214,
"percent_delta": -0.0669,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.403,
"after": 0.3858,
"delta": -0.0172,
"percent_delta": -0.0427,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.458,
"after": 0.4524,
"delta": -0.0056,
"percent_delta": -0.0122,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.51,
"after": 0.4929,
"delta": -0.0171,
"percent_delta": -0.0335,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 1.003,
"after": 0.8207,
"delta": -0.1823,
"percent_delta": -0.1818,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.766,
"after": 0.7528,
"delta": -0.0132,
"percent_delta": -0.0172,
"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_SLG",
"before": 1.003,
"after": 0.8207,
"delta": -0.1823,
"percent_delta": -0.1818,
"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": 107
}
},
{
"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.0863,
"predicted_3B": 0.0156,
"predicted_AB": 2.8484,
"predicted_AVG": 0.2702,
"predicted_BB": 0.4251,
"predicted_H": 0.7696,
"predicted_HBP": 0.017,
"predicted_HR": 0.3008,
"predicted_OBP": 0.365,
"predicted_R": 0.4599,
"predicted_RBI": 0.5011,
"predicted_SLG": 0.6283,
"predicted_SO": 0.7508
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0863,
"after": 0.0863,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0156,
"after": 0.0156,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.8484,
"after": 2.8484,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2986,
"after": 0.2702,
"delta": -0.0284,
"percent_delta": -0.0951,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.424,
"after": 0.4251,
"delta": 0.0011,
"percent_delta": 0.0026,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.763,
"after": 0.7696,
"delta": 0.0066,
"percent_delta": 0.0087,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.017,
"after": 0.017,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2986,
"after": 0.3008,
"delta": 0.0022,
"percent_delta": 0.0074,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3858,
"after": 0.365,
"delta": -0.0208,
"percent_delta": -0.0539,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4524,
"after": 0.4599,
"delta": 0.0075,
"percent_delta": 0.0166,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4929,
"after": 0.5011,
"delta": 0.0082,
"percent_delta": 0.0166,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.8207,
"after": 0.6283,
"delta": -0.1924,
"percent_delta": -0.2344,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7528,
"after": 0.7508,
"delta": -0.002,
"percent_delta": -0.0027,
"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.8207,
"after": 0.6283,
"delta": -0.1924,
"percent_delta": -0.2344,
"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.265 HR/AB=0.103",
"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.0863,
"after": 0.0,
"delta": -0.0863,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0156,
"after": 0.0,
"delta": -0.0156,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.8484,
"after": 3.0,
"delta": 0.1516,
"percent_delta": 0.0532,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4251,
"after": 0.0,
"delta": -0.4251,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.7696,
"after": 1.0,
"delta": 0.2304,
"percent_delta": 0.2994,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.017,
"after": 0.0,
"delta": -0.017,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.3008,
"after": 0.0,
"delta": -0.3008,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5011,
"after": 1.0,
"delta": 0.4989,
"percent_delta": 0.9956,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7508,
"after": 1.0,
"delta": 0.2492,
"percent_delta": 0.3319,
"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.5011,
"after": 1.0,
"delta": 0.4989,
"percent_delta": 0.9956,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.4251,
"after": 0.0,
"delta": -0.4251,
"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.4599,
"after": 0.0,
"delta": -0.4599,
"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.4599,
"after": 0.0,
"delta": -0.4599,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 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.2702,
"after": 0.333,
"delta": 0.0628,
"percent_delta": 0.2324,
"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.365,
"after": 0.333,
"delta": -0.032,
"percent_delta": -0.0877,
"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.6283,
"after": 0.333,
"delta": -0.2953,
"percent_delta": -0.47,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2702,
"after": 0.333,
"delta": 0.0628,
"percent_delta": 0.2324,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.6283,
"after": 0.333,
"delta": -0.2953,
"percent_delta": -0.47,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 1.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 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": 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": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 2,
"deboosted_metrics": 2,
"better_metrics": 3,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_BB",
"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": "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.2702,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.365,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.6283,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2702,
"delta": -0.0628,
"percent_delta": -0.1886,
"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": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.365,
"delta": 0.032,
"percent_delta": 0.096,
"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.6283,
"delta": 0.2953,
"percent_delta": 0.8868,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.6283,
"delta": 0.2953,
"percent_delta": 0.8868,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2702,
"delta": -0.0628,
"percent_delta": -0.1886,
"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.103,
"after": 0.0,
"delta": -0.103,
"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": 2.907,
"after": 3.0,
"delta": 0.093,
"percent_delta": 0.032,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2702,
"delta": -0.0628,
"percent_delta": -0.1886,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.383,
"after": 1.0,
"delta": 0.617,
"percent_delta": 1.611,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.81,
"after": 1.0,
"delta": 0.19,
"percent_delta": 0.2346,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.32,
"after": 0.0,
"delta": -0.32,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.403,
"after": 0.365,
"delta": -0.038,
"percent_delta": -0.0943,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.458,
"after": 0.0,
"delta": -0.458,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.51,
"after": 0.0,
"delta": -0.51,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 1.003,
"after": 0.6283,
"delta": -0.3747,
"percent_delta": -0.3736,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.766,
"after": 0.0,
"delta": -0.766,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 3,
"deboosted_metrics": 8,
"better_metrics": 4,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.383,
"after": 1.0,
"delta": 0.617,
"percent_delta": 1.611,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.766,
"after": 0.0,
"delta": -0.766,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.103 | - |
| predicted_3B | 0.019 | - |
| predicted_AB | 2.907 | - |
| predicted_AVG | 0.333 | - |
| predicted_BB | 0.383 | - |
| predicted_H | 0.810 | - |
| predicted_HR | 0.320 | - |
| predicted_OBP | 0.403 | - |
| predicted_R | 0.458 | - |
| predicted_RBI | 0.510 | - |
| predicted_SLG | 1.003 | - |
| predicted_SO | 0.766 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.086 | -0.017 |
| predicted_3B | 0.016 | -0.003 |
| predicted_AB | 2.848 | -0.059 |
| predicted_AVG | 0.299 | -0.034 |
| predicted_BB | 0.424 | 0.041 |
| predicted_H | 0.763 | -0.047 |
| predicted_HBP | 0.017 | - |
| predicted_HR | 0.299 | -0.021 |
| predicted_OBP | 0.386 | -0.017 |
| predicted_R | 0.452 | -0.006 |
| predicted_RBI | 0.493 | -0.017 |
| predicted_SLG | 0.821 | -0.182 |
| predicted_SO | 0.753 | -0.013 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.086 | 0.000 |
| predicted_3B | 0.016 | 0.000 |
| predicted_AB | 2.848 | 0.000 |
| predicted_AVG | 0.270 | -0.028 |
| predicted_BB | 0.425 | 0.001 |
| predicted_H | 0.770 | 0.007 |
| predicted_HBP | 0.017 | 0.000 |
| predicted_HR | 0.301 | 0.002 |
| predicted_OBP | 0.365 | -0.021 |
| predicted_R | 0.460 | 0.007 |
| predicted_RBI | 0.501 | 0.008 |
| predicted_SLG | 0.628 | -0.192 |
| predicted_SO | 0.751 | -0.002 |
AB rounded to 3 (raw=2.91), rates preserved: AVG=0.265 HR/AB=0.103
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.086 |
| predicted_3B | 0.000 | -0.016 |
| predicted_AB | 3.000 | 0.152 |
| predicted_AVG | 0.333 | 0.063 |
| predicted_BB | 0.000 | -0.425 |
| predicted_H | 1.000 | 0.230 |
| predicted_HR | 0.000 | -0.301 |
| predicted_OBP | 0.333 | -0.032 |
| predicted_R | 0.000 | -0.460 |
| predicted_RBI | 1.000 | 0.499 |
| predicted_SLG | 0.333 | -0.295 |
| predicted_SO | 1.000 | 0.249 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 1.000 | 1.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 11.000 | 3.000 | 0.000 | 0.000 | 2.000 | 3.000 | 2.000 | 3.000 | 3.000 | 0.2727 | 0.4286 | 0.8182 | 0.2727 | 0.1818 | 0.2727 | 0.2727 | 0.2727 |
| last_10 | 0.20 | 10 | - | 25.000 | 6.000 | 0.000 | 0.000 | 3.000 | 4.000 | 4.000 | 6.000 | 7.000 | 0.2400 | 0.3871 | 0.6000 | 0.2400 | 0.1200 | 0.1600 | 0.2400 | 0.2800 |
| season | 0.60 | 107 | - | 311.000 | 78.000 | 11.000 | 2.000 | 22.000 | 45.000 | 49.000 | 41.000 | 82.000 | 0.2508 | 0.3408 | 0.5113 | 0.2508 | 0.0707 | 0.1447 | 0.1318 | 0.2637 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0640 |
| predicted_3B | 0.0110 |
| predicted_AB | 2.7700 |
| predicted_AVG | 0.2526 |
| predicted_BB | 0.4790 |
| predicted_H | 0.7000 |
| predicted_HBP | 0.0170 |
| predicted_HR | 0.2700 |
| predicted_OBP | 0.3628 |
| predicted_R | 0.4450 |
| predicted_RBI | 0.4700 |
| predicted_SLG | 0.5764 |
| predicted_SO | 0.7350 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1030 | 0.0640 | 0.0863 | model_form_blend |
| predicted_3B | 0.0190 | 0.0110 | 0.0156 | model_form_blend |
| predicted_AB | 2.9070 | 2.7700 | 2.8484 | model_form_blend |
| predicted_AVG | 0.3330 | 0.2526 | 0.2986 | model_form_blend |
| predicted_BB | 0.3830 | 0.4790 | 0.4240 | model_form_blend |
| predicted_H | 0.8100 | 0.7000 | 0.7630 | model_form_blend |
| predicted_HBP | - | 0.0170 | 0.0170 | form_only |
| predicted_HR | 0.3200 | 0.2700 | 0.2986 | model_form_blend |
| predicted_OBP | 0.4030 | 0.3628 | 0.3858 | model_form_blend |
| predicted_R | 0.4580 | 0.4450 | 0.4524 | model_form_blend |
| predicted_RBI | 0.5100 | 0.4700 | 0.4929 | model_form_blend |
| predicted_SLG | 1.0030 | 0.5764 | 0.8207 | model_form_blend |
| predicted_SO | 0.7660 | 0.7350 | 0.7528 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 322 |
| Season rows before report date | 322 |
| Report year | 2026 |
| Profile rows used | 107 |
| Hitter metrics | Hitting_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 Field | Value |
|---|---|
| PA | 5 |
| AB | 3 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 0 |
| SF | 0 |
| HBP | 1 |
| season_avg | 0.251 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 1 |
| Hitting_AVG | 1.0 |
| Hitting_BB | 3 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 4 |
| Hitting_battingOrder | 1 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | DH |
| gameID | 20260811_TEX@LAA |
| game_type | full |
| mlbID | 592626 |
| playerID | 592626 |
| playerName | Joc Pederson |
| pos | DH |
| started | True |
| startingPosition | DH |
| team | TEX |
| teamID | 28 |
| game_date | 2026-08-11 |
| sl_k_percent | 22.8 |
| sl_bb_percent | 11.7 |
| sl_woba | 0.366 |
| sl_xwoba | 0.357 |
| sl_xba | 0.256 |
| sl_xslg | 0.466 |
| sl_sweet_spot_percent | 32.8 |
| sl_barrel_batted_rate | 11.6 |
| sl_hard_hit_percent | 50.0 |
| sl_exit_velocity_avg | 92.0 |
| sl_launch_angle_avg | 14.9 |
| sl_whiff_percent | 29.9 |
| sl_swing_percent | 46.2 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.117 | 0.000 | 0.000 | Hitting_2B | 0.130 | 0.000 | -0.130 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.090 | 4.000 | 4.000 | Hitting_AB | 3.743 | 4.000 | 0.257 | 0.000 |
| predicted_AVG | 0.195 | 0.000 | 0.250 | Hitting_AVG | 0.184 | 0.000 | -0.184 | 0.000 |
| predicted_BB | 0.517 | 1.000 | 0.000 | Hitting_BB | 0.591 | 0.000 | 0.409 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.800 | 0.000 | 1.000 | Hitting_H | 0.687 | 0.000 | -0.687 | 0.000 |
| predicted_HR | 0.190 | 0.000 | 0.000 | Hitting_HR | 0.200 | 0.000 | -0.200 | 0.000 |
| predicted_OBP | 0.257 | 0.200 | 0.250 | Hitting_OBP | 0.299 | 0.000 | -0.099 | 0.200 |
| predicted_R | 0.550 | 0.000 | 1.000 | Hitting_R | 0.570 | 0.000 | -0.570 | 0.000 |
| predicted_RBI | 0.470 | 0.000 | 0.000 | Hitting_RBI | 0.491 | 0.000 | -0.491 | 0.000 |
| predicted_SLG | 0.400 | 0.000 | 0.250 | Hitting_SLG | 0.379 | 0.000 | -0.379 | 0.000 |
| predicted_SO | 1.100 | 1.000 | 1.000 | Hitting_SO | 1.161 | 1.000 | -0.161 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 8 |
| Better Metrics | 3 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_BB: 0.5170 -> 1.0000 (boost 0.4830, better) |
| Biggest Deboost | predicted_H: 0.8000 -> 0.0000 (deboost -0.8000, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 4 | 0 | 4 | 1 | 3 | - | predicted_AB: 4.0900 -> 3.9608 (deboost -0.1292, 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. |
| 3 | team_form_snapshot | 2 | 1 | 1 | 1 | 1 | predicted_OBP: 0.2588 -> 0.2779 (boost 0.0191, better) | predicted_SLG: 0.3788 -> 0.3606 (deboost -0.0182, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 5 | 1 | 4 | 1 | 4 | predicted_H: 0.7731 -> 1.0000 (boost 0.2269, better) | predicted_RBI: 0.4739 -> 0.0000 (deboost -0.4739, worse) | AB rounded to 4 (raw=4.09), rates preserved: AVG=0.189 HR/AB=0.044 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5425 -> 1.0000 (boost 0.4575, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.1952 -> 0.2500 (boost 0.0548, better) | predicted_SLG: 0.3606 -> 0.2500 (deboost -0.1106, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 1 | 2 | 1 | 2 | predicted_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 |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2500 -> 0.3606 (boost 0.1106, better) | predicted_AVG: 0.2500 -> 0.1952 (deboost -0.0548, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "608369",
"player_name": "Corey Seager",
"position": "SS",
"team": "TEX",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.117,
"predicted_3B": 0.0,
"predicted_AB": 4.09,
"predicted_AVG": 0.195,
"predicted_BB": 0.517,
"predicted_H": 0.8,
"predicted_HR": 0.19,
"predicted_OBP": 0.257,
"predicted_R": 0.55,
"predicted_RBI": 0.47,
"predicted_SLG": 0.4,
"predicted_SO": 1.1
},
"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.0008,
"predicted_AB": 3.9608,
"predicted_AVG": 0.1931,
"predicted_BB": 0.4528,
"predicted_H": 0.7664,
"predicted_HBP": 0.022,
"predicted_HR": 0.1799,
"predicted_OBP": 0.2588,
"predicted_R": 0.5336,
"predicted_RBI": 0.4662,
"predicted_SLG": 0.3788,
"predicted_SO": 1.0089
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.117,
"after": 0.1099,
"delta": -0.0071,
"percent_delta": -0.0607,
"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": 4.09,
"after": 3.9608,
"delta": -0.1292,
"percent_delta": -0.0316,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.195,
"after": 0.1931,
"delta": -0.0019,
"percent_delta": -0.0097,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.517,
"after": 0.4528,
"delta": -0.0642,
"percent_delta": -0.1242,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8,
"after": 0.7664,
"delta": -0.0336,
"percent_delta": -0.042,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.19,
"after": 0.1799,
"delta": -0.0101,
"percent_delta": -0.0532,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.257,
"after": 0.2588,
"delta": 0.0018,
"percent_delta": 0.007,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.55,
"after": 0.5336,
"delta": -0.0164,
"percent_delta": -0.0298,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.47,
"after": 0.4662,
"delta": -0.0038,
"percent_delta": -0.0081,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4,
"after": 0.3788,
"delta": -0.0212,
"percent_delta": -0.053,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1,
"after": 1.0089,
"delta": -0.0911,
"percent_delta": -0.0828,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 0,
"deboosted_metrics": 4,
"better_metrics": 1,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.09,
"after": 3.9608,
"delta": -0.1292,
"percent_delta": -0.0316,
"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": 60
}
},
{
"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.0008,
"predicted_AB": 3.9608,
"predicted_AVG": 0.1952,
"predicted_BB": 0.454,
"predicted_H": 0.7731,
"predicted_HBP": 0.022,
"predicted_HR": 0.1812,
"predicted_OBP": 0.2779,
"predicted_R": 0.5425,
"predicted_RBI": 0.4739,
"predicted_SLG": 0.3606,
"predicted_SO": 1.0062
},
"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.0008,
"after": 0.0008,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.9608,
"after": 3.9608,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1931,
"after": 0.1952,
"delta": 0.0021,
"percent_delta": 0.0109,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.4528,
"after": 0.454,
"delta": 0.0012,
"percent_delta": 0.0027,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.7664,
"after": 0.7731,
"delta": 0.0067,
"percent_delta": 0.0087,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.022,
"after": 0.022,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1799,
"after": 0.1812,
"delta": 0.0013,
"percent_delta": 0.0072,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2588,
"after": 0.2779,
"delta": 0.0191,
"percent_delta": 0.0738,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5336,
"after": 0.5425,
"delta": 0.0089,
"percent_delta": 0.0167,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4662,
"after": 0.4739,
"delta": 0.0077,
"percent_delta": 0.0165,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3788,
"after": 0.3606,
"delta": -0.0182,
"percent_delta": -0.048,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0089,
"after": 1.0062,
"delta": -0.0027,
"percent_delta": -0.0027,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.2588,
"after": 0.2779,
"delta": 0.0191,
"percent_delta": 0.0738,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3788,
"after": 0.3606,
"delta": -0.0182,
"percent_delta": -0.048,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.09), rates preserved: AVG=0.189 HR/AB=0.044",
"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.1099,
"after": 0.0,
"delta": -0.1099,
"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.9608,
"after": 4.0,
"delta": 0.0392,
"percent_delta": 0.0099,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.454,
"after": 0.0,
"delta": -0.454,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.7731,
"after": 1.0,
"delta": 0.2269,
"percent_delta": 0.2935,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.022,
"after": 0.0,
"delta": -0.022,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1812,
"after": 0.0,
"delta": -0.1812,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4739,
"after": 0.0,
"delta": -0.4739,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0062,
"after": 1.0,
"delta": -0.0062,
"percent_delta": -0.0062,
"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.7731,
"after": 1.0,
"delta": 0.2269,
"percent_delta": 0.2935,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4739,
"after": 0.0,
"delta": -0.4739,
"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.5425,
"after": 1.0,
"delta": 0.4575,
"percent_delta": 0.8433,
"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.5425,
"after": 1.0,
"delta": 0.4575,
"percent_delta": 0.8433,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 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.1952,
"after": 0.25,
"delta": 0.0548,
"percent_delta": 0.2807,
"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.2779,
"after": 0.25,
"delta": -0.0279,
"percent_delta": -0.1004,
"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.3606,
"after": 0.25,
"delta": -0.1106,
"percent_delta": -0.3067,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.1952,
"after": 0.25,
"delta": 0.0548,
"percent_delta": 0.2807,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3606,
"after": 0.25,
"delta": -0.1106,
"percent_delta": -0.3067,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 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": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.1952,
"predicted_BB": 1.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.3606,
"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.25,
"after": 0.1952,
"delta": -0.0548,
"percent_delta": -0.2193,
"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.25,
"after": 0.2779,
"delta": 0.0279,
"percent_delta": 0.1118,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3606,
"delta": 0.1106,
"percent_delta": 0.4425,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3606,
"delta": 0.1106,
"percent_delta": 0.4425,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.1952,
"delta": -0.0548,
"percent_delta": -0.2193,
"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.117,
"after": 0.0,
"delta": -0.117,
"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.09,
"after": 4.0,
"delta": -0.09,
"percent_delta": -0.022,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.195,
"after": 0.1952,
"delta": 0.0002,
"percent_delta": 0.001,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.517,
"after": 1.0,
"delta": 0.483,
"percent_delta": 0.9342,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8,
"after": 0.0,
"delta": -0.8,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.19,
"after": 0.0,
"delta": -0.19,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.257,
"after": 0.2779,
"delta": 0.0209,
"percent_delta": 0.0813,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.55,
"after": 0.0,
"delta": -0.55,
"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.4,
"after": 0.3606,
"delta": -0.0394,
"percent_delta": -0.0985,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1,
"after": 1.0,
"delta": -0.1,
"percent_delta": -0.0909,
"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.517,
"after": 1.0,
"delta": 0.483,
"percent_delta": 0.9342,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.8,
"after": 0.0,
"delta": -0.8,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.117 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.090 | - |
| predicted_AVG | 0.195 | - |
| predicted_BB | 0.517 | - |
| predicted_H | 0.800 | - |
| predicted_HR | 0.190 | - |
| predicted_OBP | 0.257 | - |
| predicted_R | 0.550 | - |
| predicted_RBI | 0.470 | - |
| predicted_SLG | 0.400 | - |
| predicted_SO | 1.100 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.110 | -0.007 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 3.961 | -0.129 |
| predicted_AVG | 0.193 | -0.002 |
| predicted_BB | 0.453 | -0.064 |
| predicted_H | 0.766 | -0.034 |
| predicted_HBP | 0.022 | - |
| predicted_HR | 0.180 | -0.010 |
| predicted_OBP | 0.259 | 0.002 |
| predicted_R | 0.534 | -0.016 |
| predicted_RBI | 0.466 | -0.004 |
| predicted_SLG | 0.379 | -0.021 |
| predicted_SO | 1.009 | -0.091 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.110 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 3.961 | 0.000 |
| predicted_AVG | 0.195 | 0.002 |
| predicted_BB | 0.454 | 0.001 |
| predicted_H | 0.773 | 0.007 |
| predicted_HBP | 0.022 | 0.000 |
| predicted_HR | 0.181 | 0.001 |
| predicted_OBP | 0.278 | 0.019 |
| predicted_R | 0.542 | 0.009 |
| predicted_RBI | 0.474 | 0.008 |
| predicted_SLG | 0.361 | -0.018 |
| predicted_SO | 1.006 | -0.003 |
AB rounded to 4 (raw=4.09), rates preserved: AVG=0.189 HR/AB=0.044
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.110 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 4.000 | 0.039 |
| predicted_AVG | 0.250 | 0.055 |
| predicted_BB | 0.000 | -0.454 |
| predicted_H | 1.000 | 0.227 |
| predicted_HR | 0.000 | -0.181 |
| predicted_OBP | 0.250 | -0.028 |
| predicted_R | 1.000 | 0.458 |
| predicted_RBI | 0.000 | -0.474 |
| predicted_SLG | 0.250 | -0.111 |
| predicted_SO | 1.000 | -0.006 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 20.000 | 2.000 | 0.000 | 0.000 | 1.000 | 3.000 | 2.000 | 0.000 | 2.000 | 0.1000 | 0.1000 | 0.2500 | 0.1000 | 0.0500 | 0.1500 | 0.0000 | 0.1000 |
| last_10 | 0.20 | 10 | - | 37.000 | 9.000 | 1.000 | 0.000 | 1.000 | 3.000 | 5.000 | 3.000 | 7.000 | 0.2432 | 0.3000 | 0.3514 | 0.2432 | 0.0270 | 0.0811 | 0.0811 | 0.1892 |
| season | 0.60 | 60 | - | 224.000 | 43.000 | 7.000 | 0.000 | 11.000 | 28.000 | 33.000 | 31.000 | 66.000 | 0.1920 | 0.2934 | 0.3705 | 0.1920 | 0.0491 | 0.1250 | 0.1384 | 0.2946 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1000 |
| predicted_3B | 0.0020 |
| predicted_AB | 3.7820 |
| predicted_AVG | 0.1905 |
| predicted_BB | 0.3640 |
| predicted_H | 0.7200 |
| predicted_HBP | 0.0220 |
| predicted_HR | 0.1660 |
| predicted_OBP | 0.2612 |
| predicted_R | 0.5110 |
| predicted_RBI | 0.4610 |
| predicted_SLG | 0.3494 |
| predicted_SO | 0.8830 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1170 | 0.1000 | 0.1099 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 4.0900 | 3.7820 | 3.9608 | model_form_blend |
| predicted_AVG | 0.1950 | 0.1905 | 0.1931 | model_form_blend |
| predicted_BB | 0.5170 | 0.3640 | 0.4528 | model_form_blend |
| predicted_H | 0.8000 | 0.7200 | 0.7664 | model_form_blend |
| predicted_HBP | - | 0.0220 | 0.0220 | form_only |
| predicted_HR | 0.1900 | 0.1660 | 0.1799 | model_form_blend |
| predicted_OBP | 0.2570 | 0.2612 | 0.2588 | model_form_blend |
| predicted_R | 0.5500 | 0.5110 | 0.5336 | model_form_blend |
| predicted_RBI | 0.4700 | 0.4610 | 0.4662 | model_form_blend |
| predicted_SLG | 0.4000 | 0.3494 | 0.3788 | model_form_blend |
| predicted_SO | 1.1000 | 0.8830 | 1.0089 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 230 |
| Season rows before report date | 230 |
| Report year | 2026 |
| Profile rows used | 60 |
| Hitter metrics | Hitting_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 Field | Value |
|---|---|
| PA | 5 |
| AB | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.192 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 3 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | SS |
| gameID | 20260811_TEX@LAA |
| game_type | full |
| mlbID | 608369 |
| playerID | 608369 |
| playerName | Corey Seager |
| pos | SS |
| started | True |
| startingPosition | SS |
| team | TEX |
| teamID | 28 |
| game_date | 2026-08-11 |
| sl_k_percent | 25.5 |
| sl_bb_percent | 12.0 |
| sl_woba | 0.291 |
| sl_xwoba | 0.335 |
| sl_xba | 0.231 |
| sl_xslg | 0.451 |
| sl_sweet_spot_percent | 32.5 |
| sl_barrel_batted_rate | 14.4 |
| sl_hard_hit_percent | 46.3 |
| sl_exit_velocity_avg | 91.4 |
| sl_launch_angle_avg | 12.8 |
| sl_whiff_percent | 34.9 |
| sl_swing_percent | 51.7 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.090 | 0.000 | 0.000 | Hitting_2B | 0.104 | 0.000 | -0.104 | 0.000 |
| predicted_3B | 0.020 | 0.000 | 0.000 | Hitting_3B | 0.020 | 0.000 | -0.020 | 0.000 |
| predicted_AB | 2.970 | 4.000 | 3.000 | Hitting_AB | 3.111 | 4.000 | 0.889 | 0.000 |
| predicted_AVG | 0.160 | 0.000 | 0.000 | Hitting_AVG | 0.201 | 0.000 | -0.201 | 0.000 |
| predicted_BB | 0.400 | 0.000 | 0.000 | Hitting_BB | 0.478 | 0.000 | -0.478 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.017 | 0.000 | -0.017 | 0.000 |
| predicted_H | 0.470 | 0.000 | 0.000 | Hitting_H | 0.626 | 0.000 | -0.626 | 0.000 |
| predicted_HR | 0.050 | 0.000 | 0.000 | Hitting_HR | 0.108 | 0.000 | -0.108 | 0.000 |
| predicted_OBP | 0.234 | 0.000 | 0.000 | Hitting_OBP | 0.316 | 0.000 | -0.316 | 0.000 |
| predicted_R | 0.380 | 0.000 | 0.000 | Hitting_R | 0.448 | 0.000 | -0.448 | 0.000 |
| predicted_RBI | 0.300 | 0.000 | 0.000 | Hitting_RBI | 0.340 | 0.000 | -0.340 | 0.000 |
| predicted_SLG | 0.288 | 0.000 | 0.000 | Hitting_SLG | 0.352 | 0.000 | -0.352 | 0.000 |
| predicted_SO | 0.800 | 2.000 | 1.000 | Hitting_SO | 0.859 | 1.000 | 1.141 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 8 |
| Better Metrics | 2 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_SO: 0.8000 -> 2.0000 (boost 1.2000, worse) |
| Biggest Deboost | predicted_H: 0.4700 -> 0.0000 (deboost -0.4700, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 4 | 0 | 4 | 0 | 4 | - | predicted_AB: 2.9700 -> 2.9113 (deboost -0.0587, 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. |
| 3 | team_form_snapshot | 2 | 1 | 1 | 1 | 1 | predicted_OBP: 0.2251 -> 0.2410 (boost 0.0159, better) | predicted_SLG: 0.2577 -> 0.2395 (deboost -0.0182, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 2 | 5 | 1 | 6 | predicted_SO: 0.8297 -> 1.0000 (boost 0.1703, worse) | predicted_H: 0.4324 -> 0.0000 (deboost -0.4324, worse) | AB rounded to 3 (raw=2.97), rates preserved: AVG=0.146 HR/AB=0.017 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3604 -> 0.0000 (deboost -0.3604, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_OBP: 0.2410 -> 0.0000 (deboost -0.2410, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 2 | 0 | 1 | 1 | predicted_AB: 3.0000 -> 4.0000 (boost 1.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_OBP: 0.0000 -> 0.2410 (boost 0.2410, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "694497",
"player_name": "Evan Carter",
"position": "CF",
"team": "TEX",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.09,
"predicted_3B": 0.02,
"predicted_AB": 2.97,
"predicted_AVG": 0.16,
"predicted_BB": 0.4,
"predicted_H": 0.47,
"predicted_HR": 0.05,
"predicted_OBP": 0.234,
"predicted_R": 0.38,
"predicted_RBI": 0.3,
"predicted_SLG": 0.288,
"predicted_SO": 0.8
},
"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.0777,
"predicted_3B": 0.0166,
"predicted_AB": 2.9113,
"predicted_AVG": 0.148,
"predicted_BB": 0.3536,
"predicted_H": 0.4287,
"predicted_HBP": 0.024,
"predicted_HR": 0.0509,
"predicted_OBP": 0.2251,
"predicted_R": 0.3545,
"predicted_RBI": 0.2915,
"predicted_SLG": 0.2577,
"predicted_SO": 0.8319
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.09,
"after": 0.0777,
"delta": -0.0123,
"percent_delta": -0.1367,
"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": 2.97,
"after": 2.9113,
"delta": -0.0587,
"percent_delta": -0.0198,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.16,
"after": 0.148,
"delta": -0.012,
"percent_delta": -0.075,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4,
"after": 0.3536,
"delta": -0.0464,
"percent_delta": -0.116,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.47,
"after": 0.4287,
"delta": -0.0413,
"percent_delta": -0.0879,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.05,
"after": 0.0509,
"delta": 0.0009,
"percent_delta": 0.018,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.234,
"after": 0.2251,
"delta": -0.0089,
"percent_delta": -0.038,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.38,
"after": 0.3545,
"delta": -0.0255,
"percent_delta": -0.0671,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3,
"after": 0.2915,
"delta": -0.0085,
"percent_delta": -0.0283,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.288,
"after": 0.2577,
"delta": -0.0303,
"percent_delta": -0.1052,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8,
"after": 0.8319,
"delta": 0.0319,
"percent_delta": 0.0399,
"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": 2.97,
"after": 2.9113,
"delta": -0.0587,
"percent_delta": -0.0198,
"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": 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.0777,
"predicted_3B": 0.0166,
"predicted_AB": 2.9113,
"predicted_AVG": 0.1485,
"predicted_BB": 0.3546,
"predicted_H": 0.4324,
"predicted_HBP": 0.024,
"predicted_HR": 0.0513,
"predicted_OBP": 0.241,
"predicted_R": 0.3604,
"predicted_RBI": 0.2963,
"predicted_SLG": 0.2395,
"predicted_SO": 0.8297
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0777,
"after": 0.0777,
"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": 2.9113,
"after": 2.9113,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.148,
"after": 0.1485,
"delta": 0.0005,
"percent_delta": 0.0034,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3536,
"after": 0.3546,
"delta": 0.001,
"percent_delta": 0.0028,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.4287,
"after": 0.4324,
"delta": 0.0037,
"percent_delta": 0.0086,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.024,
"after": 0.024,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0509,
"after": 0.0513,
"delta": 0.0004,
"percent_delta": 0.0079,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2251,
"after": 0.241,
"delta": 0.0159,
"percent_delta": 0.0706,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3545,
"after": 0.3604,
"delta": 0.0059,
"percent_delta": 0.0166,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2915,
"after": 0.2963,
"delta": 0.0048,
"percent_delta": 0.0165,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.2577,
"after": 0.2395,
"delta": -0.0182,
"percent_delta": -0.0706,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8319,
"after": 0.8297,
"delta": -0.0022,
"percent_delta": -0.0026,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.2251,
"after": 0.241,
"delta": 0.0159,
"percent_delta": 0.0706,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.2577,
"after": 0.2395,
"delta": -0.0182,
"percent_delta": -0.0706,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=2.97), rates preserved: AVG=0.146 HR/AB=0.017",
"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.0777,
"after": 0.0,
"delta": -0.0777,
"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": 2.9113,
"after": 3.0,
"delta": 0.0887,
"percent_delta": 0.0305,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3546,
"after": 0.0,
"delta": -0.3546,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.4324,
"after": 0.0,
"delta": -0.4324,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.024,
"after": 0.0,
"delta": -0.024,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0513,
"after": 0.0,
"delta": -0.0513,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.2963,
"after": 0.0,
"delta": -0.2963,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8297,
"after": 1.0,
"delta": 0.1703,
"percent_delta": 0.2053,
"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.8297,
"after": 1.0,
"delta": 0.1703,
"percent_delta": 0.2053,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.4324,
"after": 0.0,
"delta": -0.4324,
"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.3604,
"after": 0.0,
"delta": -0.3604,
"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.3604,
"after": 0.0,
"delta": -0.3604,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.0,
"predicted_BB": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1485,
"after": 0.0,
"delta": -0.1485,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.241,
"after": 0.0,
"delta": -0.241,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.2395,
"after": 0.0,
"delta": -0.2395,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.241,
"after": 0.0,
"delta": -0.241,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 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": 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": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 1,
"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": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.1485,
"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.241,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2395,
"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.0,
"after": 0.1485,
"delta": 0.1485,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.0,
"after": 0.241,
"delta": 0.241,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.0,
"after": 0.2395,
"delta": 0.2395,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.0,
"after": 0.241,
"delta": 0.241,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.09,
"after": 0.0,
"delta": -0.09,
"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": 2.97,
"after": 4.0,
"delta": 1.03,
"percent_delta": 0.3468,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.16,
"after": 0.1485,
"delta": -0.0115,
"percent_delta": -0.0719,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4,
"after": 0.0,
"delta": -0.4,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.47,
"after": 0.0,
"delta": -0.47,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.05,
"after": 0.0,
"delta": -0.05,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.234,
"after": 0.241,
"delta": 0.007,
"percent_delta": 0.0299,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"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": 0.3,
"after": 0.0,
"delta": -0.3,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.288,
"after": 0.2395,
"delta": -0.0485,
"percent_delta": -0.1684,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8,
"after": 2.0,
"delta": 1.2,
"percent_delta": 1.5,
"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.8,
"after": 2.0,
"delta": 1.2,
"percent_delta": 1.5,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.47,
"after": 0.0,
"delta": -0.47,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.090 | - |
| predicted_3B | 0.020 | - |
| predicted_AB | 2.970 | - |
| predicted_AVG | 0.160 | - |
| predicted_BB | 0.400 | - |
| predicted_H | 0.470 | - |
| predicted_HR | 0.050 | - |
| predicted_OBP | 0.234 | - |
| predicted_R | 0.380 | - |
| predicted_RBI | 0.300 | - |
| predicted_SLG | 0.288 | - |
| predicted_SO | 0.800 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.078 | -0.012 |
| predicted_3B | 0.017 | -0.003 |
| predicted_AB | 2.911 | -0.059 |
| predicted_AVG | 0.148 | -0.012 |
| predicted_BB | 0.354 | -0.046 |
| predicted_H | 0.429 | -0.041 |
| predicted_HBP | 0.024 | - |
| predicted_HR | 0.051 | 0.001 |
| predicted_OBP | 0.225 | -0.009 |
| predicted_R | 0.354 | -0.026 |
| predicted_RBI | 0.291 | -0.009 |
| predicted_SLG | 0.258 | -0.030 |
| predicted_SO | 0.832 | 0.032 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.078 | 0.000 |
| predicted_3B | 0.017 | 0.000 |
| predicted_AB | 2.911 | 0.000 |
| predicted_AVG | 0.148 | 0.001 |
| predicted_BB | 0.355 | 0.001 |
| predicted_H | 0.432 | 0.004 |
| predicted_HBP | 0.024 | 0.000 |
| predicted_HR | 0.051 | 0.000 |
| predicted_OBP | 0.241 | 0.016 |
| predicted_R | 0.360 | 0.006 |
| predicted_RBI | 0.296 | 0.005 |
| predicted_SLG | 0.239 | -0.018 |
| predicted_SO | 0.830 | -0.002 |
AB rounded to 3 (raw=2.97), rates preserved: AVG=0.146 HR/AB=0.017
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 0.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 0.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.078 |
| predicted_3B | 0.000 | -0.017 |
| predicted_AB | 3.000 | 0.089 |
| predicted_AVG | 0.000 | -0.148 |
| predicted_BB | 0.000 | -0.355 |
| predicted_H | 0.000 | -0.432 |
| predicted_HR | 0.000 | -0.051 |
| predicted_OBP | 0.000 | -0.241 |
| predicted_R | 0.000 | -0.360 |
| predicted_RBI | 0.000 | -0.296 |
| predicted_SLG | 0.000 | -0.239 |
| predicted_SO | 1.000 | 0.170 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 12.000 | 0.000 | 0.000 | 0.000 | 0.000 | 1.000 | 1.000 | 0.000 | 5.000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0833 | 0.0000 | 0.4167 |
| last_10 | 0.20 | 10 | - | 28.000 | 1.000 | 0.000 | 0.000 | 0.000 | 2.000 | 2.000 | 3.000 | 9.000 | 0.0357 | 0.1290 | 0.0357 | 0.0357 | 0.0000 | 0.0714 | 0.1071 | 0.3214 |
| season | 0.60 | 100 | - | 284.000 | 54.000 | 9.000 | 2.000 | 8.000 | 31.000 | 38.000 | 40.000 | 80.000 | 0.1901 | 0.2979 | 0.3204 | 0.1901 | 0.0282 | 0.1091 | 0.1409 | 0.2817 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0610 |
| predicted_3B | 0.0120 |
| predicted_AB | 2.8320 |
| predicted_AVG | 0.1318 |
| predicted_BB | 0.2910 |
| predicted_H | 0.3730 |
| predicted_HBP | 0.0240 |
| predicted_HR | 0.0520 |
| predicted_OBP | 0.2130 |
| predicted_R | 0.3200 |
| predicted_RBI | 0.2800 |
| predicted_SLG | 0.2169 |
| predicted_SO | 0.8750 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0900 | 0.0610 | 0.0777 | model_form_blend |
| predicted_3B | 0.0200 | 0.0120 | 0.0166 | model_form_blend |
| predicted_AB | 2.9700 | 2.8320 | 2.9113 | model_form_blend |
| predicted_AVG | 0.1600 | 0.1318 | 0.1480 | model_form_blend |
| predicted_BB | 0.4000 | 0.2910 | 0.3536 | model_form_blend |
| predicted_H | 0.4700 | 0.3730 | 0.4287 | model_form_blend |
| predicted_HBP | - | 0.0240 | 0.0240 | form_only |
| predicted_HR | 0.0500 | 0.0520 | 0.0509 | model_form_blend |
| predicted_OBP | 0.2340 | 0.2130 | 0.2251 | model_form_blend |
| predicted_R | 0.3800 | 0.3200 | 0.3545 | model_form_blend |
| predicted_RBI | 0.3000 | 0.2800 | 0.2915 | model_form_blend |
| predicted_SLG | 0.2880 | 0.2169 | 0.2577 | model_form_blend |
| predicted_SO | 0.8000 | 0.8750 | 0.8319 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 297 |
| Season rows before report date | 297 |
| Report year | 2026 |
| Profile rows used | 100 |
| Hitter metrics | Hitting_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 Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.19 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 6 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | CF |
| gameID | 20260811_TEX@LAA |
| game_type | full |
| mlbID | 694497 |
| playerID | 694497 |
| playerName | Evan Carter |
| pos | CF |
| started | True |
| startingPosition | CF |
| team | TEX |
| teamID | 28 |
| game_date | 2026-08-11 |
| sl_k_percent | 23.7 |
| sl_bb_percent | 12.4 |
| sl_woba | 0.285 |
| sl_xwoba | 0.288 |
| sl_xba | 0.199 |
| sl_xslg | 0.322 |
| sl_sweet_spot_percent | 27.4 |
| sl_barrel_batted_rate | 5.7 |
| sl_hard_hit_percent | 36.3 |
| sl_exit_velocity_avg | 87.5 |
| sl_launch_angle_avg | 17.5 |
| sl_whiff_percent | 28.8 |
| sl_swing_percent | 40.0 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.191 | 0.000 | 0.000 | Hitting_2B | 0.190 | 0.000 | -0.190 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.021 | 4.000 | 3.000 | Hitting_AB | 3.219 | 1.000 | 0.781 | 3.000 |
| predicted_AVG | 0.240 | 0.500 | 0.333 | Hitting_AVG | 0.257 | 0.000 | 0.243 | 0.500 |
| predicted_BB | 0.064 | 0.000 | 0.000 | Hitting_BB | 0.067 | 0.000 | -0.067 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.280 | 2.000 | 1.000 | Hitting_H | 0.829 | 0.000 | 1.171 | 2.000 |
| predicted_HR | 0.050 | 0.000 | 0.000 | Hitting_HR | 0.095 | 0.000 | -0.095 | 0.000 |
| predicted_OBP | 0.246 | 0.500 | 0.333 | Hitting_OBP | 0.271 | 0.000 | 0.229 | 0.500 |
| predicted_R | 0.277 | 1.000 | 0.000 | Hitting_R | 0.276 | 0.000 | 0.724 | 1.000 |
| predicted_RBI | 0.160 | 0.000 | 0.000 | Hitting_RBI | 0.448 | 0.000 | -0.448 | 0.000 |
| predicted_SLG | 0.347 | 0.500 | 0.333 | Hitting_SLG | 0.405 | 0.000 | 0.095 | 0.500 |
| predicted_SO | 0.745 | 0.000 | 1.000 | Hitting_SO | 0.714 | 1.000 | -0.714 | -1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 8 |
| Better Metrics | 4 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_H: 0.2800 -> 2.0000 (boost 1.7200, better) |
| Biggest Deboost | predicted_SO: 0.7450 -> 0.0000 (deboost -0.7450, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 6 | 6 | 0 | 5 | 1 | predicted_H: 0.2800 -> 0.4686 (boost 0.1886, 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. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.2384 -> 0.1532 (deboost -0.0852, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 1 | 6 | 0 | 7 | predicted_SO: 0.7993 -> 1.0000 (boost 0.2007, worse) | predicted_H: 0.4727 -> 0.0000 (deboost -0.4727, worse) | AB rounded to 3 (raw=3.08), rates preserved: AVG=0.153 HR/AB=0.022 |
| 5 | consistency_constraints | 2 | 1 | 1 | 1 | 1 | predicted_H: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_R: 0.2849 -> 0.0000 (deboost -0.2849, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.1532 -> 0.3330 (boost 0.1798, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 4 | 3 | 1 | 4 | 0 | predicted_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 |
| 8 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.1532 (deboost -0.1798, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "553869",
"player_name": "Elias Díaz",
"position": "C",
"team": "TEX",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.191,
"predicted_3B": 0.0,
"predicted_AB": 3.021,
"predicted_AVG": 0.24,
"predicted_BB": 0.064,
"predicted_H": 0.28,
"predicted_HR": 0.05,
"predicted_OBP": 0.246,
"predicted_R": 0.277,
"predicted_RBI": 0.16,
"predicted_SLG": 0.347,
"predicted_SO": 0.745
},
"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.1926,
"predicted_3B": 0.0008,
"predicted_AB": 3.0847,
"predicted_AVG": 0.2384,
"predicted_BB": 0.0744,
"predicted_H": 0.4686,
"predicted_HBP": 0.016,
"predicted_HR": 0.0676,
"predicted_OBP": 0.2515,
"predicted_R": 0.2802,
"predicted_RBI": 0.2677,
"predicted_SLG": 0.363,
"predicted_SO": 0.8015
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.191,
"after": 0.1926,
"delta": 0.0016,
"percent_delta": 0.0084,
"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.021,
"after": 3.0847,
"delta": 0.0637,
"percent_delta": 0.0211,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.24,
"after": 0.2384,
"delta": -0.0016,
"percent_delta": -0.0067,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.064,
"after": 0.0744,
"delta": 0.0104,
"percent_delta": 0.1625,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.28,
"after": 0.4686,
"delta": 0.1886,
"percent_delta": 0.6736,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.05,
"after": 0.0676,
"delta": 0.0176,
"percent_delta": 0.352,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.246,
"after": 0.2515,
"delta": 0.0055,
"percent_delta": 0.0224,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.277,
"after": 0.2802,
"delta": 0.0032,
"percent_delta": 0.0116,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.16,
"after": 0.2677,
"delta": 0.1077,
"percent_delta": 0.6731,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.347,
"after": 0.363,
"delta": 0.016,
"percent_delta": 0.0461,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.745,
"after": 0.8015,
"delta": 0.0565,
"percent_delta": 0.0758,
"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_H",
"before": 0.28,
"after": 0.4686,
"delta": 0.1886,
"percent_delta": 0.6736,
"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": 47
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1926,
"predicted_3B": 0.0008,
"predicted_AB": 3.0847,
"predicted_AVG": 0.1532,
"predicted_BB": 0.0746,
"predicted_H": 0.4727,
"predicted_HBP": 0.016,
"predicted_HR": 0.0681,
"predicted_OBP": 0.1732,
"predicted_R": 0.2849,
"predicted_RBI": 0.2721,
"predicted_SLG": 0.2824,
"predicted_SO": 0.7993
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1926,
"after": 0.1926,
"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.0847,
"after": 3.0847,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2384,
"after": 0.1532,
"delta": -0.0852,
"percent_delta": -0.3574,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0744,
"after": 0.0746,
"delta": 0.0002,
"percent_delta": 0.0027,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.4686,
"after": 0.4727,
"delta": 0.0041,
"percent_delta": 0.0087,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.016,
"after": 0.016,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0676,
"after": 0.0681,
"delta": 0.0005,
"percent_delta": 0.0074,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2515,
"after": 0.1732,
"delta": -0.0783,
"percent_delta": -0.3113,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.2802,
"after": 0.2849,
"delta": 0.0047,
"percent_delta": 0.0168,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2677,
"after": 0.2721,
"delta": 0.0044,
"percent_delta": 0.0164,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.363,
"after": 0.2824,
"delta": -0.0806,
"percent_delta": -0.222,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8015,
"after": 0.7993,
"delta": -0.0022,
"percent_delta": -0.0027,
"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.2384,
"after": 0.1532,
"delta": -0.0852,
"percent_delta": -0.3574,
"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.153 HR/AB=0.022",
"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.1926,
"after": 0.0,
"delta": -0.1926,
"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.0847,
"after": 3.0,
"delta": -0.0847,
"percent_delta": -0.0275,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0746,
"after": 0.0,
"delta": -0.0746,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.4727,
"after": 0.0,
"delta": -0.4727,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.016,
"after": 0.0,
"delta": -0.016,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0681,
"after": 0.0,
"delta": -0.0681,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.2721,
"after": 0.0,
"delta": -0.2721,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7993,
"after": 1.0,
"delta": 0.2007,
"percent_delta": 0.2511,
"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.7993,
"after": 1.0,
"delta": 0.2007,
"percent_delta": 0.2511,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.4727,
"after": 0.0,
"delta": -0.4727,
"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.2849,
"after": 0.0,
"delta": -0.2849,
"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.2849,
"after": 0.0,
"delta": -0.2849,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1532,
"after": 0.333,
"delta": 0.1798,
"percent_delta": 1.1736,
"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.1732,
"after": 0.333,
"delta": 0.1598,
"percent_delta": 0.9226,
"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.2824,
"after": 0.333,
"delta": 0.0506,
"percent_delta": 0.1792,
"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.1532,
"after": 0.333,
"delta": 0.1798,
"percent_delta": 1.1736,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 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": 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": 4,
"boosted_metrics": 3,
"deboosted_metrics": 1,
"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": {
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.1532,
"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.1732,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2824,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1532,
"delta": -0.1798,
"percent_delta": -0.5398,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.1732,
"delta": -0.1598,
"percent_delta": -0.4798,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.2824,
"delta": -0.0506,
"percent_delta": -0.1519,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1532,
"delta": -0.1798,
"percent_delta": -0.5398,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.191,
"after": 0.0,
"delta": -0.191,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.021,
"after": 4.0,
"delta": 0.979,
"percent_delta": 0.3241,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.24,
"after": 0.1532,
"delta": -0.0868,
"percent_delta": -0.3617,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.064,
"after": 0.0,
"delta": -0.064,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.28,
"after": 2.0,
"delta": 1.72,
"percent_delta": 6.1429,
"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.246,
"after": 0.1732,
"delta": -0.0728,
"percent_delta": -0.2959,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.277,
"after": 1.0,
"delta": 0.723,
"percent_delta": 2.6101,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.16,
"after": 0.0,
"delta": -0.16,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.347,
"after": 0.2824,
"delta": -0.0646,
"percent_delta": -0.1862,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.745,
"after": 0.0,
"delta": -0.745,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 3,
"deboosted_metrics": 8,
"better_metrics": 4,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.28,
"after": 2.0,
"delta": 1.72,
"percent_delta": 6.1429,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.745,
"after": 0.0,
"delta": -0.745,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.191 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.021 | - |
| predicted_AVG | 0.240 | - |
| predicted_BB | 0.064 | - |
| predicted_H | 0.280 | - |
| predicted_HR | 0.050 | - |
| predicted_OBP | 0.246 | - |
| predicted_R | 0.277 | - |
| predicted_RBI | 0.160 | - |
| predicted_SLG | 0.347 | - |
| predicted_SO | 0.745 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.193 | 0.002 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 3.085 | 0.064 |
| predicted_AVG | 0.238 | -0.002 |
| predicted_BB | 0.074 | 0.010 |
| predicted_H | 0.469 | 0.189 |
| predicted_HBP | 0.016 | - |
| predicted_HR | 0.068 | 0.018 |
| predicted_OBP | 0.252 | 0.006 |
| predicted_R | 0.280 | 0.003 |
| predicted_RBI | 0.268 | 0.108 |
| predicted_SLG | 0.363 | 0.016 |
| predicted_SO | 0.801 | 0.056 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.193 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 3.085 | 0.000 |
| predicted_AVG | 0.153 | -0.085 |
| predicted_BB | 0.075 | 0.000 |
| predicted_H | 0.473 | 0.004 |
| predicted_HBP | 0.016 | 0.000 |
| predicted_HR | 0.068 | 0.001 |
| predicted_OBP | 0.173 | -0.078 |
| predicted_R | 0.285 | 0.005 |
| predicted_RBI | 0.272 | 0.004 |
| predicted_SLG | 0.282 | -0.081 |
| predicted_SO | 0.799 | -0.002 |
AB rounded to 3 (raw=3.08), rates preserved: AVG=0.153 HR/AB=0.022
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 0.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.193 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | -0.085 |
| predicted_AVG | 0.333 | 0.180 |
| predicted_BB | 0.000 | -0.075 |
| predicted_H | 1.000 | 0.527 |
| predicted_HR | 0.000 | -0.068 |
| predicted_OBP | 0.333 | 0.160 |
| predicted_R | 0.000 | -0.285 |
| predicted_RBI | 0.000 | -0.272 |
| predicted_SLG | 0.333 | 0.051 |
| predicted_SO | 1.000 | 0.201 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 2.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 1.000 | 1.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 17.000 | 4.000 | 1.000 | 0.000 | 0.000 | 2.000 | 1.000 | 0.000 | 6.000 | 0.2353 | 0.2353 | 0.2941 | 0.2353 | 0.0000 | 0.1177 | 0.0000 | 0.3529 |
| last_10 | 0.20 | 10 | - | 28.000 | 6.000 | 2.000 | 0.000 | 1.000 | 4.000 | 2.000 | 1.000 | 10.000 | 0.2143 | 0.2414 | 0.3929 | 0.2143 | 0.0357 | 0.1429 | 0.0357 | 0.3571 |
| season | 0.60 | 47 | - | 142.000 | 34.000 | 9.000 | 0.000 | 5.000 | 20.000 | 13.000 | 3.000 | 35.000 | 0.2394 | 0.2585 | 0.4085 | 0.2394 | 0.0352 | 0.1409 | 0.0211 | 0.2465 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1950 |
| predicted_3B | 0.0020 |
| predicted_AB | 3.1800 |
| predicted_AVG | 0.2360 |
| predicted_BB | 0.0900 |
| predicted_H | 0.7510 |
| predicted_HBP | 0.0160 |
| predicted_HR | 0.0940 |
| predicted_OBP | 0.2597 |
| predicted_R | 0.2850 |
| predicted_RBI | 0.4290 |
| predicted_SLG | 0.3869 |
| predicted_SO | 0.8860 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1910 | 0.1950 | 0.1926 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 3.0210 | 3.1800 | 3.0847 | model_form_blend |
| predicted_AVG | 0.2400 | 0.2360 | 0.2384 | model_form_blend |
| predicted_BB | 0.0640 | 0.0900 | 0.0744 | model_form_blend |
| predicted_H | 0.2800 | 0.7510 | 0.4686 | model_form_blend |
| predicted_HBP | - | 0.0160 | 0.0160 | form_only |
| predicted_HR | 0.0500 | 0.0940 | 0.0676 | model_form_blend |
| predicted_OBP | 0.2460 | 0.2597 | 0.2515 | model_form_blend |
| predicted_R | 0.2770 | 0.2850 | 0.2802 | model_form_blend |
| predicted_RBI | 0.1600 | 0.4290 | 0.2677 | model_form_blend |
| predicted_SLG | 0.3470 | 0.3869 | 0.3630 | model_form_blend |
| predicted_SO | 0.7450 | 0.8860 | 0.8015 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 105 |
| Season rows before report date | 105 |
| Report year | 2026 |
| Profile rows used | 47 |
| Hitter metrics | Hitting_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 Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 2 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 0 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.239 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 1 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 8 |
| Hitting_substitutionOrder | 2 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | C |
| gameID | 20260811_TEX@LAA |
| game_type | short |
| mlbID | 553869 |
| playerID | 553869 |
| playerName | Elias Díaz |
| pos | C |
| started | False |
| startingPosition | C |
| team | TEX |
| teamID | 28 |
| game_date | 2026-08-11 |
| sl_k_percent | 23.3 |
| sl_bb_percent | 2.7 |
| sl_woba | 0.287 |
| sl_xwoba | 0.256 |
| sl_xba | 0.224 |
| sl_xslg | 0.345 |
| sl_sweet_spot_percent | 30.9 |
| sl_barrel_batted_rate | 5.5 |
| sl_hard_hit_percent | 36.4 |
| sl_exit_velocity_avg | 86.4 |
| sl_launch_angle_avg | 15.9 |
| sl_whiff_percent | 28.3 |
| sl_swing_percent | 55.0 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.046 | 0.000 | 0.000 | Hitting_2B | 0.069 | 0.000 | -0.069 | 0.000 |
| predicted_3B | 0.015 | 0.000 | 0.000 | Hitting_3B | 0.006 | 0.000 | -0.006 | 0.000 |
| predicted_AB | 2.831 | 4.000 | 3.000 | Hitting_AB | 3.181 | 3.000 | 0.819 | 1.000 |
| predicted_AVG | 0.201 | 0.500 | 0.333 | Hitting_AVG | 0.308 | 0.000 | 0.192 | 0.500 |
| predicted_BB | 0.138 | 0.000 | 0.000 | Hitting_BB | 0.125 | 0.000 | -0.125 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.019 | 0.000 | -0.019 | 0.000 |
| predicted_H | 0.540 | 2.000 | 1.000 | Hitting_H | 0.981 | 0.000 | 1.019 | 2.000 |
| predicted_HR | 0.040 | 0.000 | 0.000 | Hitting_HR | 0.025 | 0.000 | -0.025 | 0.000 |
| predicted_OBP | 0.224 | 0.500 | 0.333 | Hitting_OBP | 0.345 | 0.000 | 0.155 | 0.500 |
| predicted_R | 0.292 | 0.000 | 0.000 | Hitting_R | 0.369 | 0.000 | -0.369 | 0.000 |
| predicted_RBI | 0.250 | 0.000 | 0.000 | Hitting_RBI | 0.350 | 0.000 | -0.350 | 0.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.100 | 0.000 | -0.100 | 0.000 |
| predicted_SLG | 0.319 | 0.500 | 0.333 | Hitting_SLG | 0.358 | 0.000 | 0.142 | 0.500 |
| predicted_SO | 0.508 | 1.000 | 1.000 | Hitting_SO | 0.500 | 1.000 | 0.500 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 8 |
| Boosted Metrics | 4 |
| Deboosted Metrics | 4 |
| Better Metrics | 3 |
| Worse Metrics | 5 |
| Biggest Boost | predicted_H: 0.5400 -> 2.0000 (boost 1.4600, better) |
| Biggest Deboost | predicted_R: 0.2920 -> 0.0000 (deboost -0.2920, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 2 | 2 | 0 | 2 | 0 | predicted_OBP: 0.2240 -> 0.2337 (boost 0.0097, 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. |
| 3 | team_form_snapshot | 1 | 0 | 1 | 0 | 1 | - | predicted_SLG: 0.3161 -> 0.2831 (deboost -0.0330, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 5 | 3 | 2 | 2 | 3 | predicted_SO: 0.5394 -> 1.0000 (boost 0.4606, worse) | predicted_RBI: 0.2704 -> 0.0000 (deboost -0.2704, worse) | AB rounded to 3 (raw=2.83), rates preserved: AVG=0.202 HR/AB=0.011 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3127 -> 0.0000 (deboost -0.3127, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.2041 -> 0.3330 (boost 0.1289, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 2 | 0 | 2 | 0 | predicted_AB: 3.0000 -> 4.0000 (boost 1.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.2041 (deboost -0.1289, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "670032",
"player_name": "Nicky Lopez",
"position": "2B",
"team": "TEX",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.046,
"predicted_3B": 0.015,
"predicted_AB": 2.831,
"predicted_AVG": 0.201,
"predicted_BB": 0.138,
"predicted_H": 0.54,
"predicted_HR": 0.04,
"predicted_OBP": 0.224,
"predicted_R": 0.292,
"predicted_RBI": 0.25,
"predicted_SLG": 0.319,
"predicted_SO": 0.508
},
"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.0439,
"predicted_3B": 0.0401,
"predicted_AB": 2.801,
"predicted_AVG": 0.2086,
"predicted_BB": 0.1207,
"predicted_H": 0.5667,
"predicted_HBP": 0.019,
"predicted_HR": 0.0322,
"predicted_OBP": 0.2337,
"predicted_R": 0.3076,
"predicted_RBI": 0.266,
"predicted_SLG": 0.3161,
"predicted_SO": 0.5409
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.046,
"after": 0.0439,
"delta": -0.0021,
"percent_delta": -0.0457,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.015,
"after": 0.0401,
"delta": 0.0251,
"percent_delta": 1.6733,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.831,
"after": 2.801,
"delta": -0.03,
"percent_delta": -0.0106,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.201,
"after": 0.2086,
"delta": 0.0076,
"percent_delta": 0.0378,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.138,
"after": 0.1207,
"delta": -0.0173,
"percent_delta": -0.1254,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.54,
"after": 0.5667,
"delta": 0.0267,
"percent_delta": 0.0494,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.04,
"after": 0.0322,
"delta": -0.0078,
"percent_delta": -0.195,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.224,
"after": 0.2337,
"delta": 0.0097,
"percent_delta": 0.0433,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.292,
"after": 0.3076,
"delta": 0.0156,
"percent_delta": 0.0534,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.25,
"after": 0.266,
"delta": 0.016,
"percent_delta": 0.064,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.319,
"after": 0.3161,
"delta": -0.0029,
"percent_delta": -0.0091,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.508,
"after": 0.5409,
"delta": 0.0329,
"percent_delta": 0.0648,
"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.224,
"after": 0.2337,
"delta": 0.0097,
"percent_delta": 0.0433,
"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": 65
}
},
{
"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.0439,
"predicted_3B": 0.0401,
"predicted_AB": 2.801,
"predicted_AVG": 0.2041,
"predicted_BB": 0.121,
"predicted_H": 0.5716,
"predicted_HBP": 0.019,
"predicted_HR": 0.0324,
"predicted_OBP": 0.237,
"predicted_R": 0.3127,
"predicted_RBI": 0.2704,
"predicted_SLG": 0.2831,
"predicted_SO": 0.5394
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0439,
"after": 0.0439,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0401,
"after": 0.0401,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.801,
"after": 2.801,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2086,
"after": 0.2041,
"delta": -0.0045,
"percent_delta": -0.0216,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.1207,
"after": 0.121,
"delta": 0.0003,
"percent_delta": 0.0025,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.5667,
"after": 0.5716,
"delta": 0.0049,
"percent_delta": 0.0086,
"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.0322,
"after": 0.0324,
"delta": 0.0002,
"percent_delta": 0.0062,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2337,
"after": 0.237,
"delta": 0.0033,
"percent_delta": 0.0141,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3076,
"after": 0.3127,
"delta": 0.0051,
"percent_delta": 0.0166,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.266,
"after": 0.2704,
"delta": 0.0044,
"percent_delta": 0.0165,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3161,
"after": 0.2831,
"delta": -0.033,
"percent_delta": -0.1044,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5409,
"after": 0.5394,
"delta": -0.0015,
"percent_delta": -0.0028,
"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.3161,
"after": 0.2831,
"delta": -0.033,
"percent_delta": -0.1044,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=2.83), rates preserved: AVG=0.202 HR/AB=0.011",
"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.0439,
"after": 0.0,
"delta": -0.0439,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0401,
"after": 0.0,
"delta": -0.0401,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.801,
"after": 3.0,
"delta": 0.199,
"percent_delta": 0.071,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.121,
"after": 0.0,
"delta": -0.121,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.5716,
"after": 1.0,
"delta": 0.4284,
"percent_delta": 0.7495,
"direction": "boost",
"projection_effect": "better",
"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.0324,
"after": 0.0,
"delta": -0.0324,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2704,
"after": 0.0,
"delta": -0.2704,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5394,
"after": 1.0,
"delta": 0.4606,
"percent_delta": 0.8539,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 3,
"deboosted_metrics": 2,
"better_metrics": 2,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.5394,
"after": 1.0,
"delta": 0.4606,
"percent_delta": 0.8539,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.2704,
"after": 0.0,
"delta": -0.2704,
"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.3127,
"after": 0.0,
"delta": -0.3127,
"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.3127,
"after": 0.0,
"delta": -0.3127,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2041,
"after": 0.333,
"delta": 0.1289,
"percent_delta": 0.6316,
"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.237,
"after": 0.333,
"delta": 0.096,
"percent_delta": 0.4051,
"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.2831,
"after": 0.333,
"delta": 0.0499,
"percent_delta": 0.1763,
"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.2041,
"after": 0.333,
"delta": 0.1289,
"percent_delta": 0.6316,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 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": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"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": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2041,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.237,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2831,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2041,
"delta": -0.1289,
"percent_delta": -0.3871,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.237,
"delta": -0.096,
"percent_delta": -0.2881,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.2831,
"delta": -0.0499,
"percent_delta": -0.1498,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2041,
"delta": -0.1289,
"percent_delta": -0.3871,
"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.046,
"after": 0.0,
"delta": -0.046,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"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": 2.831,
"after": 4.0,
"delta": 1.169,
"percent_delta": 0.4129,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.201,
"after": 0.2041,
"delta": 0.0031,
"percent_delta": 0.0154,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.138,
"after": 0.0,
"delta": -0.138,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.54,
"after": 2.0,
"delta": 1.46,
"percent_delta": 2.7037,
"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.224,
"after": 0.237,
"delta": 0.013,
"percent_delta": 0.058,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.292,
"after": 0.0,
"delta": -0.292,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.25,
"after": 0.0,
"delta": -0.25,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.319,
"after": 0.2831,
"delta": -0.0359,
"percent_delta": -0.1125,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.508,
"after": 1.0,
"delta": 0.492,
"percent_delta": 0.9685,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 4,
"deboosted_metrics": 4,
"better_metrics": 3,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.54,
"after": 2.0,
"delta": 1.46,
"percent_delta": 2.7037,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.292,
"after": 0.0,
"delta": -0.292,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.046 | - |
| predicted_3B | 0.015 | - |
| predicted_AB | 2.831 | - |
| predicted_AVG | 0.201 | - |
| predicted_BB | 0.138 | - |
| predicted_H | 0.540 | - |
| predicted_HR | 0.040 | - |
| predicted_OBP | 0.224 | - |
| predicted_R | 0.292 | - |
| predicted_RBI | 0.250 | - |
| predicted_SLG | 0.319 | - |
| predicted_SO | 0.508 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.044 | -0.002 |
| predicted_3B | 0.040 | 0.025 |
| predicted_AB | 2.801 | -0.030 |
| predicted_AVG | 0.209 | 0.008 |
| predicted_BB | 0.121 | -0.017 |
| predicted_H | 0.567 | 0.027 |
| predicted_HBP | 0.019 | - |
| predicted_HR | 0.032 | -0.008 |
| predicted_OBP | 0.234 | 0.010 |
| predicted_R | 0.308 | 0.016 |
| predicted_RBI | 0.266 | 0.016 |
| predicted_SLG | 0.316 | -0.003 |
| predicted_SO | 0.541 | 0.033 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.044 | 0.000 |
| predicted_3B | 0.040 | 0.000 |
| predicted_AB | 2.801 | 0.000 |
| predicted_AVG | 0.204 | -0.005 |
| predicted_BB | 0.121 | 0.000 |
| predicted_H | 0.572 | 0.005 |
| predicted_HBP | 0.019 | 0.000 |
| predicted_HR | 0.032 | 0.000 |
| predicted_OBP | 0.237 | 0.003 |
| predicted_R | 0.313 | 0.005 |
| predicted_RBI | 0.270 | 0.004 |
| predicted_SLG | 0.283 | -0.033 |
| predicted_SO | 0.539 | -0.002 |
AB rounded to 3 (raw=2.83), rates preserved: AVG=0.202 HR/AB=0.011
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.044 |
| predicted_3B | 0.000 | -0.040 |
| predicted_AB | 3.000 | 0.199 |
| predicted_AVG | 0.333 | 0.129 |
| predicted_BB | 0.000 | -0.121 |
| predicted_H | 1.000 | 0.428 |
| predicted_HR | 0.000 | -0.032 |
| predicted_OBP | 0.333 | 0.096 |
| predicted_R | 0.000 | -0.313 |
| predicted_RBI | 0.000 | -0.270 |
| predicted_SLG | 0.333 | 0.050 |
| predicted_SO | 1.000 | 0.461 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 2.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 10.000 | 1.000 | 0.000 | 1.000 | 0.000 | 1.000 | 2.000 | 0.000 | 2.000 | 0.1000 | 0.1000 | 0.3000 | 0.1000 | 0.0000 | 0.1000 | 0.0000 | 0.2000 |
| last_10 | 0.20 | 10 | - | 25.000 | 4.000 | 0.000 | 1.000 | 0.000 | 2.000 | 2.000 | 0.000 | 8.000 | 0.1600 | 0.1600 | 0.2400 | 0.1600 | 0.0000 | 0.0800 | 0.0000 | 0.3200 |
| season | 0.60 | 65 | - | 184.000 | 50.000 | 3.000 | 1.000 | 1.000 | 20.000 | 19.000 | 9.000 | 33.000 | 0.2717 | 0.3112 | 0.3152 | 0.2717 | 0.0054 | 0.1087 | 0.0489 | 0.1794 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0410 |
| predicted_3B | 0.0760 |
| predicted_AB | 2.7580 |
| predicted_AVG | 0.2194 |
| predicted_BB | 0.0960 |
| predicted_H | 0.6050 |
| predicted_HBP | 0.0190 |
| predicted_HR | 0.0210 |
| predicted_OBP | 0.2476 |
| predicted_R | 0.3300 |
| predicted_RBI | 0.2890 |
| predicted_SLG | 0.3119 |
| predicted_SO | 0.5880 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0460 | 0.0410 | 0.0439 | model_form_blend |
| predicted_3B | 0.0150 | 0.0760 | 0.0401 | model_form_blend |
| predicted_AB | 2.8310 | 2.7580 | 2.8010 | model_form_blend |
| predicted_AVG | 0.2010 | 0.2194 | 0.2086 | model_form_blend |
| predicted_BB | 0.1380 | 0.0960 | 0.1207 | model_form_blend |
| predicted_H | 0.5400 | 0.6050 | 0.5667 | model_form_blend |
| predicted_HBP | - | 0.0190 | 0.0190 | form_only |
| predicted_HR | 0.0400 | 0.0210 | 0.0322 | model_form_blend |
| predicted_OBP | 0.2240 | 0.2476 | 0.2337 | model_form_blend |
| predicted_R | 0.2920 | 0.3300 | 0.3076 | model_form_blend |
| predicted_RBI | 0.2500 | 0.2890 | 0.2660 | model_form_blend |
| predicted_SLG | 0.3190 | 0.3119 | 0.3161 | model_form_blend |
| predicted_SO | 0.5080 | 0.5880 | 0.5409 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 160 |
| Season rows before report date | 160 |
| Report year | 2026 |
| Profile rows used | 65 |
| Hitter metrics | Hitting_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 Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 2 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.272 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 9 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 2B |
| gameID | 20260811_TEX@LAA |
| game_type | full |
| mlbID | 670032 |
| playerID | 670032 |
| playerName | Nicky Lopez |
| pos | 2B |
| started | True |
| startingPosition | 2B |
| team | TEX |
| teamID | 28 |
| game_date | 2026-08-11 |
| sl_k_percent | 16.2 |
| sl_bb_percent | 4.4 |
| sl_woba | 0.282 |
| sl_xwoba | 0.257 |
| sl_xba | 0.241 |
| sl_xslg | 0.289 |
| sl_sweet_spot_percent | 26.3 |
| sl_barrel_batted_rate | 0.0 |
| sl_hard_hit_percent | 21.9 |
| sl_exit_velocity_avg | 84.4 |
| sl_launch_angle_avg | 2.5 |
| sl_whiff_percent | 18.4 |
| sl_swing_percent | 52.2 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.148 | 0.000 | 0.000 | Hitting_2B | 0.163 | 0.000 | -0.163 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.760 | 4.000 | 4.000 | Hitting_AB | 3.771 | 4.000 | 0.229 | 0.000 |
| predicted_AVG | 0.210 | 0.500 | 0.250 | Hitting_AVG | 0.241 | 0.000 | 0.259 | 0.500 |
| predicted_BB | 0.296 | 0.000 | 0.000 | Hitting_BB | 0.316 | 0.000 | -0.316 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.790 | 2.000 | 1.000 | Hitting_H | 0.908 | 0.000 | 1.092 | 2.000 |
| predicted_HR | 0.110 | 1.000 | 0.000 | Hitting_HR | 0.163 | 0.000 | 0.837 | 1.000 |
| predicted_OBP | 0.288 | 0.500 | 0.250 | Hitting_OBP | 0.303 | 0.000 | 0.197 | 0.500 |
| predicted_R | 0.426 | 1.000 | 0.000 | Hitting_R | 0.440 | 0.000 | 0.560 | 1.000 |
| predicted_RBI | 0.490 | 2.000 | 1.000 | Hitting_RBI | 0.628 | 0.000 | 1.372 | 2.000 |
| predicted_SLG | 0.347 | 1.250 | 0.250 | Hitting_SLG | 0.414 | 0.000 | 0.836 | 1.250 |
| predicted_SO | 1.078 | 0.000 | 1.000 | Hitting_SO | 1.109 | 2.000 | -1.109 | -2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 11 |
| Boosted Metrics | 6 |
| Deboosted Metrics | 5 |
| Better Metrics | 7 |
| Worse Metrics | 4 |
| Biggest Boost | predicted_RBI: 0.4900 -> 2.0000 (boost 1.5100, better) |
| Biggest Deboost | predicted_SO: 1.0780 -> 0.0000 (deboost -1.0780, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 2 | 1 | 1 | 1 | 1 | predicted_AVG: 0.2100 -> 0.2157 (boost 0.0057, better) | predicted_AB: 3.7600 -> 3.6541 (deboost -0.1059, 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. |
| 3 | team_form_snapshot | 1 | 0 | 1 | 0 | 1 | - | predicted_OBP: 0.2888 -> 0.2777 (deboost -0.0111, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 3 | 3 | 3 | 3 | predicted_RBI: 0.4881 -> 1.0000 (boost 0.5119, better) | predicted_BB: 0.3054 -> 0.0000 (deboost -0.3054, worse) | AB rounded to 4 (raw=3.76), rates preserved: AVG=0.211 HR/AB=0.028 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3971 -> 0.0000 (deboost -0.3971, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2174 -> 0.2500 (boost 0.0326, better) | predicted_SLG: 0.3401 -> 0.2500 (deboost -0.0901, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 5 | 4 | 1 | 5 | 0 | predicted_H: 1.0000 -> 2.0000 (boost 1.0000, better) | predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2500 -> 0.3401 (boost 0.0901, better) | predicted_AVG: 0.2500 -> 0.2174 (deboost -0.0326, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "669394",
"player_name": "Jake Burger",
"position": "1B",
"team": "TEX",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.148,
"predicted_3B": 0.0,
"predicted_AB": 3.76,
"predicted_AVG": 0.21,
"predicted_BB": 0.296,
"predicted_H": 0.79,
"predicted_HR": 0.11,
"predicted_OBP": 0.288,
"predicted_R": 0.426,
"predicted_RBI": 0.49,
"predicted_SLG": 0.347,
"predicted_SO": 1.078
},
"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.132,
"predicted_3B": 0.0004,
"predicted_AB": 3.6541,
"predicted_AVG": 0.2157,
"predicted_BB": 0.3046,
"predicted_H": 0.7874,
"predicted_HBP": 0.016,
"predicted_HR": 0.1044,
"predicted_OBP": 0.2888,
"predicted_R": 0.3906,
"predicted_RBI": 0.4801,
"predicted_SLG": 0.3432,
"predicted_SO": 1.0516
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.148,
"after": 0.132,
"delta": -0.016,
"percent_delta": -0.1081,
"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.76,
"after": 3.6541,
"delta": -0.1059,
"percent_delta": -0.0282,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.21,
"after": 0.2157,
"delta": 0.0057,
"percent_delta": 0.0271,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.296,
"after": 0.3046,
"delta": 0.0086,
"percent_delta": 0.0291,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.79,
"after": 0.7874,
"delta": -0.0026,
"percent_delta": -0.0033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 0.1044,
"delta": -0.0056,
"percent_delta": -0.0509,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.288,
"after": 0.2888,
"delta": 0.0008,
"percent_delta": 0.0028,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.426,
"after": 0.3906,
"delta": -0.0354,
"percent_delta": -0.0831,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.49,
"after": 0.4801,
"delta": -0.0099,
"percent_delta": -0.0202,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.347,
"after": 0.3432,
"delta": -0.0038,
"percent_delta": -0.011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.078,
"after": 1.0516,
"delta": -0.0264,
"percent_delta": -0.0245,
"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.21,
"after": 0.2157,
"delta": 0.0057,
"percent_delta": 0.0271,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.76,
"after": 3.6541,
"delta": -0.1059,
"percent_delta": -0.0282,
"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.132,
"predicted_3B": 0.0004,
"predicted_AB": 3.6541,
"predicted_AVG": 0.2174,
"predicted_BB": 0.3054,
"predicted_H": 0.7943,
"predicted_HBP": 0.016,
"predicted_HR": 0.1052,
"predicted_OBP": 0.2777,
"predicted_R": 0.3971,
"predicted_RBI": 0.4881,
"predicted_SLG": 0.3401,
"predicted_SO": 1.0488
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.132,
"after": 0.132,
"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.6541,
"after": 3.6541,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2157,
"after": 0.2174,
"delta": 0.0017,
"percent_delta": 0.0079,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3046,
"after": 0.3054,
"delta": 0.0008,
"percent_delta": 0.0026,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.7874,
"after": 0.7943,
"delta": 0.0069,
"percent_delta": 0.0088,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.016,
"after": 0.016,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1044,
"after": 0.1052,
"delta": 0.0008,
"percent_delta": 0.0077,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2888,
"after": 0.2777,
"delta": -0.0111,
"percent_delta": -0.0384,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3906,
"after": 0.3971,
"delta": 0.0065,
"percent_delta": 0.0166,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4801,
"after": 0.4881,
"delta": 0.008,
"percent_delta": 0.0167,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3432,
"after": 0.3401,
"delta": -0.0031,
"percent_delta": -0.009,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0516,
"after": 1.0488,
"delta": -0.0028,
"percent_delta": -0.0027,
"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.2888,
"after": 0.2777,
"delta": -0.0111,
"percent_delta": -0.0384,
"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.211 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.132,
"after": 0.0,
"delta": -0.132,
"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.6541,
"after": 4.0,
"delta": 0.3459,
"percent_delta": 0.0947,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3054,
"after": 0.0,
"delta": -0.3054,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.7943,
"after": 1.0,
"delta": 0.2057,
"percent_delta": 0.259,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.016,
"after": 0.0,
"delta": -0.016,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1052,
"after": 0.0,
"delta": -0.1052,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4881,
"after": 1.0,
"delta": 0.5119,
"percent_delta": 1.0488,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0488,
"after": 1.0,
"delta": -0.0488,
"percent_delta": -0.0465,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 3,
"deboosted_metrics": 3,
"better_metrics": 3,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.4881,
"after": 1.0,
"delta": 0.5119,
"percent_delta": 1.0488,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.3054,
"after": 0.0,
"delta": -0.3054,
"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.3971,
"after": 0.0,
"delta": -0.3971,
"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.3971,
"after": 0.0,
"delta": -0.3971,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 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.2174,
"after": 0.25,
"delta": 0.0326,
"percent_delta": 0.15,
"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.2777,
"after": 0.25,
"delta": -0.0277,
"percent_delta": -0.0997,
"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.3401,
"after": 0.25,
"delta": -0.0901,
"percent_delta": -0.2649,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2174,
"after": 0.25,
"delta": 0.0326,
"percent_delta": 0.15,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3401,
"after": 0.25,
"delta": -0.0901,
"percent_delta": -0.2649,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 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": 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": 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": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 4,
"deboosted_metrics": 1,
"better_metrics": 5,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_H",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2174,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_FB": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_OBP": 0.2777,
"predicted_R": 1.0,
"predicted_RBI": 2.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3401,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2174,
"delta": -0.0326,
"percent_delta": -0.1306,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.2777,
"delta": 0.0277,
"percent_delta": 0.1109,
"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.25,
"after": 0.3401,
"delta": 0.0901,
"percent_delta": 0.3602,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3401,
"delta": 0.0901,
"percent_delta": 0.3602,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2174,
"delta": -0.0326,
"percent_delta": -0.1306,
"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.148,
"after": 0.0,
"delta": -0.148,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.76,
"after": 4.0,
"delta": 0.24,
"percent_delta": 0.0638,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.21,
"after": 0.2174,
"delta": 0.0074,
"percent_delta": 0.0352,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.296,
"after": 0.0,
"delta": -0.296,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.79,
"after": 2.0,
"delta": 1.21,
"percent_delta": 1.5316,
"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.288,
"after": 0.2777,
"delta": -0.0103,
"percent_delta": -0.0358,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.426,
"after": 1.0,
"delta": 0.574,
"percent_delta": 1.3474,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.49,
"after": 2.0,
"delta": 1.51,
"percent_delta": 3.0816,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.347,
"after": 0.3401,
"delta": -0.0069,
"percent_delta": -0.0199,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.078,
"after": 0.0,
"delta": -1.078,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 6,
"deboosted_metrics": 5,
"better_metrics": 7,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.49,
"after": 2.0,
"delta": 1.51,
"percent_delta": 3.0816,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.078,
"after": 0.0,
"delta": -1.078,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.148 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.760 | - |
| predicted_AVG | 0.210 | - |
| predicted_BB | 0.296 | - |
| predicted_H | 0.790 | - |
| predicted_HR | 0.110 | - |
| predicted_OBP | 0.288 | - |
| predicted_R | 0.426 | - |
| predicted_RBI | 0.490 | - |
| predicted_SLG | 0.347 | - |
| predicted_SO | 1.078 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.132 | -0.016 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.654 | -0.106 |
| predicted_AVG | 0.216 | 0.006 |
| predicted_BB | 0.305 | 0.009 |
| predicted_H | 0.787 | -0.003 |
| predicted_HBP | 0.016 | - |
| predicted_HR | 0.104 | -0.006 |
| predicted_OBP | 0.289 | 0.001 |
| predicted_R | 0.391 | -0.035 |
| predicted_RBI | 0.480 | -0.010 |
| predicted_SLG | 0.343 | -0.004 |
| predicted_SO | 1.052 | -0.026 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.132 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.654 | 0.000 |
| predicted_AVG | 0.217 | 0.002 |
| predicted_BB | 0.305 | 0.001 |
| predicted_H | 0.794 | 0.007 |
| predicted_HBP | 0.016 | 0.000 |
| predicted_HR | 0.105 | 0.001 |
| predicted_OBP | 0.278 | -0.011 |
| predicted_R | 0.397 | 0.007 |
| predicted_RBI | 0.488 | 0.008 |
| predicted_SLG | 0.340 | -0.003 |
| predicted_SO | 1.049 | -0.003 |
AB rounded to 4 (raw=3.76), rates preserved: AVG=0.211 HR/AB=0.028
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.132 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 4.000 | 0.346 |
| predicted_AVG | 0.250 | 0.033 |
| predicted_BB | 0.000 | -0.305 |
| predicted_H | 1.000 | 0.206 |
| predicted_HR | 0.000 | -0.105 |
| predicted_OBP | 0.250 | -0.028 |
| predicted_R | 0.000 | -0.397 |
| predicted_RBI | 1.000 | 0.512 |
| predicted_SLG | 0.250 | -0.090 |
| predicted_SO | 1.000 | -0.049 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 2.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 1.000 | 1.000 |
| PA | 4.000 | - |
| R | 1.000 | 1.000 |
| RBI | 2.000 | 1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 17.000 | 3.000 | 0.000 | 0.000 | 0.000 | 2.000 | 0.000 | 2.000 | 5.000 | 0.1765 | 0.2632 | 0.1765 | 0.1765 | 0.0000 | 0.1177 | 0.1177 | 0.2941 |
| last_10 | 0.20 | 10 | - | 31.000 | 7.000 | 1.000 | 0.000 | 0.000 | 2.000 | 4.000 | 3.000 | 9.000 | 0.2258 | 0.2941 | 0.2581 | 0.2258 | 0.0000 | 0.0645 | 0.0968 | 0.2903 |
| season | 0.60 | 115 | - | 421.000 | 99.000 | 17.000 | 0.000 | 19.000 | 68.000 | 49.000 | 34.000 | 124.000 | 0.2352 | 0.2957 | 0.4109 | 0.2351 | 0.0451 | 0.1615 | 0.0808 | 0.2945 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1110 |
| predicted_3B | 0.0010 |
| predicted_AB | 3.5150 |
| predicted_AVG | 0.2232 |
| predicted_BB | 0.3160 |
| predicted_H | 0.7840 |
| predicted_HBP | 0.0160 |
| predicted_HR | 0.0970 |
| predicted_OBP | 0.2899 |
| predicted_R | 0.3440 |
| predicted_RBI | 0.4670 |
| predicted_SLG | 0.3381 |
| predicted_SO | 1.0170 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1480 | 0.1110 | 0.1320 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.7600 | 3.5150 | 3.6541 | model_form_blend |
| predicted_AVG | 0.2100 | 0.2232 | 0.2157 | model_form_blend |
| predicted_BB | 0.2960 | 0.3160 | 0.3046 | model_form_blend |
| predicted_H | 0.7900 | 0.7840 | 0.7874 | model_form_blend |
| predicted_HBP | - | 0.0160 | 0.0160 | form_only |
| predicted_HR | 0.1100 | 0.0970 | 0.1044 | model_form_blend |
| predicted_OBP | 0.2880 | 0.2899 | 0.2888 | model_form_blend |
| predicted_R | 0.4260 | 0.3440 | 0.3906 | model_form_blend |
| predicted_RBI | 0.4900 | 0.4670 | 0.4801 | model_form_blend |
| predicted_SLG | 0.3470 | 0.3381 | 0.3432 | model_form_blend |
| predicted_SO | 1.0780 | 1.0170 | 1.0516 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 411 |
| Season rows before report date | 411 |
| Report year | 2026 |
| Profile rows used | 115 |
| Hitter metrics | Hitting_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 Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 2 |
| 2B | 0 |
| 3B | 0 |
| HR | 1 |
| R | 1 |
| RBI | 2 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.235 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 7 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 1B |
| gameID | 20260811_TEX@LAA |
| game_type | full |
| mlbID | 669394 |
| playerID | 669394 |
| playerName | Jake Burger |
| pos | 1B |
| started | True |
| startingPosition | 1B |
| team | TEX |
| teamID | 28 |
| game_date | 2026-08-11 |
| sl_k_percent | 27.0 |
| sl_bb_percent | 7.4 |
| sl_woba | 0.309 |
| sl_xwoba | 0.296 |
| sl_xba | 0.226 |
| sl_xslg | 0.388 |
| sl_sweet_spot_percent | 29.1 |
| sl_barrel_batted_rate | 10.8 |
| sl_hard_hit_percent | 46.2 |
| sl_exit_velocity_avg | 89.8 |
| sl_launch_angle_avg | 13.6 |
| sl_whiff_percent | 34.6 |
| sl_swing_percent | 50.7 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 2.000 | 2.000 | 2.000 | Pitching_BB | 0.792 | 0.000 | 1.208 | 2.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 1.083 | 0.000 | -1.083 | 0.000 |
| predicted_H | 5.000 | 5.000 | 5.000 | Pitching_H | 2.458 | 0.000 | 2.542 | 5.000 |
| predicted_IP | 5.000 | 5.000 | 5.000 | Pitching_InningsPitched | 2.658 | 1.000 | 2.342 | 4.000 |
| predicted_SO | 7.000 | 7.000 | 7.000 | Pitching_SO | 1.792 | 0.000 | 5.208 | 7.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "615698",
"player_name": "Cal Quantrill",
"position": "Starter",
"team": "TEX",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 0.0,
"predicted_H": 5.0,
"predicted_HR": 0.0,
"predicted_IP": 5.0,
"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": 2.0,
"predicted_ER": 0.0,
"predicted_H": 5.0,
"predicted_HR": 0.0,
"predicted_IP": 5.0,
"predicted_R": 0.0,
"predicted_SO": 7.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 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": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 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": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 2.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 5.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 5.000 | - |
| predicted_SO | 7.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 19.100 | 10.000 | 19.000 | 6.000 | 15.000 | 3.000 | 4.6552 | 1.2931 | 0.5172 | 0.9828 | 0.3103 | 0.7759 | 0.1552 |
| last_10 | 0.35 | 10 | 38.100 | 16.000 | 36.000 | 9.000 | 25.000 | 7.000 | 3.7565 | 1.1739 | 0.4174 | 0.9391 | 0.2348 | 0.6522 | 0.1826 |
| season | 0.20 | 24 | 65.200 | 26.000 | 59.000 | 19.000 | 43.000 | 9.000 | 3.5635 | 1.1878 | 0.3959 | 0.8985 | 0.2893 | 0.6548 | 0.1371 |
| Metric | Value |
|---|---|
| predicted_BB | 1.2330 |
| predicted_ER | 1.9160 |
| predicted_ERA | 4.2233 |
| predicted_H | 3.9070 |
| predicted_HR | 0.6440 |
| predicted_IP | 4.0000 |
| predicted_SO | 3.1710 |
| predicted_WHIP | 1.2591 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 2.0000 | 1.2330 | 1.5908 | model_form_blend |
| predicted_ER | 0.0000 | 1.9160 | 1.0222 | model_form_blend |
| predicted_ERA | - | 4.2233 | 4.2233 | form_only |
| predicted_H | 5.0000 | 3.9070 | 4.4169 | model_form_blend |
| predicted_HR | 0.0000 | 0.6440 | 0.3436 | model_form_blend |
| predicted_IP | 5.0000 | 4.0000 | 4.1000 | model_form_blend |
| predicted_SO | 7.0000 | 3.1710 | 4.9572 | model_form_blend |
| predicted_WHIP | - | 1.2591 | 1.2591 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 24 |
| Season rows before report date | 24 |
| Report year | 2026 |
| Profile rows used | 24 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 5.0 |
| H | 5 |
| R | 0 |
| ER | 0 |
| BB | 2 |
| SO | 7 |
| HR | 0 |
| BF | 22 |
| Pitches | 93 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 3.56 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 1 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 10 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 7 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260808_BAL@TEX |
| game_type | full |
| mlbID | 615698 |
| playerID | 615698 |
| playerName | Cal Quantrill |
| pos | P |
| started | False |
| startingPosition | P |
| team | TEX |
| teamID | 28 |
| game_date | 2026-08-08 |
| sl_k_percent | 15.6 |
| sl_bb_percent | 6.9 |
| sl_woba | 0.3 |
| sl_xwoba | 0.324 |
| sl_sweet_spot_percent | 31.7 |
| sl_barrel_batted_rate | 8.2 |
| sl_hard_hit_percent | 34.1 |
| sl_whiff_percent | 18.5 |
| sl_swing_percent | 47.8 |
| sl_avg_best_speed | 77.545239423 |
| sl_avg_hyper_speed | 93.52946343 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.326 | 1.000 | -0.326 | -1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.256 | 0.000 | -0.256 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.605 | 0.000 | -0.605 | 0.000 |
| predicted_IP | 1.100 | 1.100 | 1.100 | Pitching_InningsPitched | 1.191 | 1.000 | -0.091 | 0.100 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 1.302 | 1.000 | -0.302 | 0.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 1 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 1 |
| Better Metrics | 0 |
| Worse Metrics | 1 |
| Biggest Boost | - |
| Biggest Deboost | predicted_IP: 1.3333 -> 1.1000 (deboost -0.2333, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 0 | 1 | 0 | 1 | - | predicted_IP: 1.3333 -> 1.1000 (deboost -0.2333, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "656641",
"player_name": "Jacob Latz",
"position": "Middle Reliever",
"team": "TEX",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.3333,
"predicted_SO": 1.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.1,
"predicted_R": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.3333,
"after": 1.1,
"delta": -0.2333,
"percent_delta": -0.175,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 1.3333,
"after": 1.1,
"delta": -0.2333,
"percent_delta": -0.175,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.3333,
"after": 1.1,
"delta": -0.2333,
"percent_delta": -0.175,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 1.3333,
"after": 1.1,
"delta": -0.2333,
"percent_delta": -0.175,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.333 | - |
| predicted_SO | 1.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 6.000 | 2.000 | 6.000 | 3.000 | 7.000 | 0.000 | 3.0000 | 1.5000 | 0.3333 | 1.0000 | 0.5000 | 1.1667 | 0.0000 |
| last_10 | 0.35 | 10 | 12.000 | 3.000 | 9.000 | 5.000 | 13.000 | 0.000 | 2.2500 | 1.1667 | 0.2500 | 0.7500 | 0.4167 | 1.0833 | 0.0000 |
| season | 0.20 | 42 | 54.000 | 8.000 | 23.000 | 13.000 | 56.000 | 3.000 | 1.3333 | 0.6667 | 0.1482 | 0.4259 | 0.2407 | 1.0370 | 0.0556 |
| Metric | Value |
|---|---|
| predicted_BB | 0.5340 |
| predicted_ER | 0.4540 |
| predicted_ERA | 3.0637 |
| predicted_H | 1.1380 |
| predicted_HR | 0.0730 |
| predicted_IP | 1.1000 |
| predicted_SO | 1.4160 |
| predicted_WHIP | 1.2541 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.5340 | 0.2757 | model_form_blend |
| predicted_ER | 0.0000 | 0.4540 | 0.2344 | model_form_blend |
| predicted_ERA | - | 3.0637 | 3.0637 | form_only |
| predicted_H | 0.0000 | 1.1380 | 0.5876 | model_form_blend |
| predicted_HR | 0.0000 | 0.0730 | 0.0377 | model_form_blend |
| predicted_IP | 1.1000 | 1.1000 | 1.1000 | model_form_blend |
| predicted_SO | 1.0000 | 1.4160 | 1.2148 | model_form_blend |
| predicted_WHIP | - | 1.2541 | 1.2541 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 43 |
| Season rows before report date | 43 |
| Report year | 2026 |
| Profile rows used | 42 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.1 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 1 |
| HR | 0 |
| BF | 4 |
| Pitches | 21 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 4 |
| Pitching_ER | 0 |
| Pitching_ERA | 1.83 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 1 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 24 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 15 |
| Pitching_Wild Pitch | 1 |
| Pitching_decision | S |
| Pitching_pitchingOrder | 6 |
| allPositionsPlayed | P |
| gameID | 20260810_TEX@LAA |
| game_type | full |
| mlbID | 656641 |
| playerID | 656641 |
| playerName | Jacob Latz |
| pos | P |
| started | False |
| startingPosition | P |
| team | TEX |
| teamID | 28 |
| game_date | 2026-08-10 |
| sl_k_percent | 28.0 |
| sl_bb_percent | 7.0 |
| sl_woba | 0.195 |
| sl_xwoba | 0.245 |
| sl_sweet_spot_percent | 25.4 |
| sl_barrel_batted_rate | 5.4 |
| sl_hard_hit_percent | 38.5 |
| sl_whiff_percent | 29.0 |
| sl_swing_percent | 53.1 |
| sl_avg_best_speed | 78.6339425 |
| sl_avg_hyper_speed | 93.634256929 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.833 | 0.000 | -0.833 | 0.000 |
| predicted_ER | 3.000 | 3.000 | 3.000 | Pitching_ER | 0.333 | 0.000 | 2.667 | 3.000 |
| predicted_H | 3.000 | 3.000 | 3.000 | Pitching_H | 0.833 | 0.000 | 2.167 | 3.000 |
| predicted_IP | 1.200 | 1.200 | 1.200 | Pitching_InningsPitched | 0.750 | 1.000 | 0.450 | 0.200 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 0.833 | 2.000 | 0.167 | -1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 1 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 0 |
| Better Metrics | 1 |
| Worse Metrics | 0 |
| Biggest Boost | predicted_IP: 1.0000 -> 1.2000 (boost 0.2000, better) |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 1 | 0 | 1 | 0 | predicted_IP: 1.0000 -> 1.2000 (boost 0.2000, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "681217",
"player_name": "Chase Silseth",
"position": "Middle Reliever",
"team": "TEX",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 3.0,
"predicted_H": 3.0,
"predicted_HR": 1.0,
"predicted_IP": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 3.0,
"predicted_H": 3.0,
"predicted_HR": 1.0,
"predicted_IP": 1.2,
"predicted_R": 3.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": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.2,
"delta": 0.2,
"percent_delta": 0.2,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 1.0,
"after": 1.2,
"delta": 0.2,
"percent_delta": 0.2,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.2,
"delta": 0.2,
"percent_delta": 0.2,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 1.0,
"after": 1.2,
"delta": 0.2,
"percent_delta": 0.2,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null,
"has_material_change": true,
"dominant_effect": "better"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 3.000 | - |
| predicted_H | 3.000 | - |
| predicted_HR | 1.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 1.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 4.200 | 2.000 | 4.000 | 4.000 | 3.000 | 1.000 | 3.8571 | 1.7143 | 0.4286 | 0.8571 | 0.8571 | 0.6429 | 0.2143 |
| last_10 | 0.35 | 10 | 8.200 | 2.000 | 8.000 | 7.000 | 8.000 | 1.000 | 2.0769 | 1.7308 | 0.2308 | 0.9231 | 0.8077 | 0.9231 | 0.1154 |
| season | 0.20 | 53 | 45.100 | 14.000 | 39.000 | 27.000 | 53.000 | 4.000 | 2.7794 | 1.4559 | 0.3088 | 0.8603 | 0.5956 | 1.1691 | 0.0882 |
| Metric | Value |
|---|---|
| predicted_BB | 0.6360 |
| predicted_ER | 0.3930 |
| predicted_ERA | 3.5410 |
| predicted_H | 0.9140 |
| predicted_HR | 0.1530 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.8850 |
| predicted_WHIP | 1.5499 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.6360 | 0.3179 | model_form_blend |
| predicted_ER | 3.0000 | 0.3930 | 1.6969 | model_form_blend |
| predicted_ERA | - | 3.5410 | 3.5410 | form_only |
| predicted_H | 3.0000 | 0.9140 | 1.9573 | model_form_blend |
| predicted_HR | 1.0000 | 0.1530 | 0.5766 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 0.8850 | 0.9425 | model_form_blend |
| predicted_WHIP | - | 1.5499 | 1.5499 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 6 |
| Season rows before report date | 6 |
| Report year | 2026 |
| Profile rows used | 53 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.2 |
| H | 3 |
| R | 3 |
| ER | 3 |
| BB | 0 |
| SO | 1 |
| HR | 1 |
| BF | 8 |
| Pitches | 30 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 2.78 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 1 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 11 |
| Pitching_R | 0 |
| Pitching_SO | 2 |
| Pitching_Strikes | 8 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260811_TEX@LAA |
| game_type | full |
| mlbID | 681217 |
| playerID | 681217 |
| playerName | Chase Silseth |
| pos | P |
| started | False |
| startingPosition | P |
| team | TEX |
| teamID | 28 |
| game_date | 2026-08-11 |
| sl_k_percent | 26.4 |
| sl_bb_percent | 13.4 |
| sl_woba | 0.308 |
| sl_xwoba | 0.312 |
| sl_sweet_spot_percent | 42.9 |
| sl_barrel_batted_rate | 9.2 |
| sl_hard_hit_percent | 31.9 |
| sl_whiff_percent | 32.6 |
| sl_swing_percent | 47.4 |
| sl_avg_best_speed | 74.92013431 |
| sl_avg_hyper_speed | 93.4231725 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.359 | 0.000 | -0.359 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.436 | 0.000 | -0.436 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 1.077 | 0.000 | -1.077 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 1.038 | 1.000 | -0.038 | 0.000 |
| predicted_SO | 3.000 | 3.000 | 3.000 | Pitching_SO | 1.231 | 1.000 | 1.769 | 2.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "682608",
"player_name": "Peyton Gray",
"position": "Middle Reliever",
"team": "TEX",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 3.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 3.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 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": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 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": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 3.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.000 | 1.000 | 4.000 | 2.000 | 4.000 | 1.000 | 1.8000 | 1.2000 | 0.2000 | 0.8000 | 0.4000 | 0.8000 | 0.2000 |
| last_10 | 0.35 | 10 | 10.200 | 3.000 | 10.000 | 2.000 | 10.000 | 2.000 | 2.5312 | 1.1250 | 0.2812 | 0.9375 | 0.1875 | 0.9375 | 0.1875 |
| season | 0.20 | 39 | 46.100 | 17.000 | 42.000 | 14.000 | 48.000 | 5.000 | 3.3022 | 1.2086 | 0.3669 | 0.9065 | 0.3022 | 1.0360 | 0.1079 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3390 |
| predicted_ER | 0.3600 |
| predicted_ERA | 3.1035 |
| predicted_H | 0.9450 |
| predicted_HR | 0.1750 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.9560 |
| predicted_WHIP | 1.2313 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.3390 | 0.1702 | model_form_blend |
| predicted_ER | 0.0000 | 0.3600 | 0.1807 | model_form_blend |
| predicted_ERA | - | 3.1035 | 3.1035 | form_only |
| predicted_H | 0.0000 | 0.9450 | 0.4743 | model_form_blend |
| predicted_HR | 0.0000 | 0.1750 | 0.0878 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 3.0000 | 0.9560 | 1.9740 | model_form_blend |
| predicted_WHIP | - | 1.2313 | 1.2313 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 39 |
| Season rows before report date | 39 |
| Report year | 2026 |
| Profile rows used | 39 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 3 |
| HR | 0 |
| BF | 3 |
| Pitches | 16 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 3.30 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 1 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 7 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 6 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | W |
| Pitching_pitchingOrder | 5 |
| allPositionsPlayed | P |
| gameID | 20260810_TEX@LAA |
| game_type | full |
| mlbID | 682608 |
| playerID | 682608 |
| playerName | Peyton Gray |
| pos | P |
| started | False |
| startingPosition | P |
| team | TEX |
| teamID | 28 |
| game_date | 2026-08-10 |
| sl_k_percent | 24.0 |
| sl_bb_percent | 7.0 |
| sl_woba | 0.293 |
| sl_xwoba | 0.275 |
| sl_sweet_spot_percent | 32.6 |
| sl_barrel_batted_rate | 5.3 |
| sl_hard_hit_percent | 32.6 |
| sl_whiff_percent | 26.7 |
| sl_swing_percent | 49.5 |
| sl_avg_best_speed | 74.895772273 |
| sl_avg_hyper_speed | 92.801897576 |
| Field | Value |
|---|---|
| Pitcher | George Klassen |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | -0.4393 |
| ESPN Rank | 651 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.1307 |
| Avg Velo | 92.2513 |
| Avg Spin | 2144.8245 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 3 |
| Pre ER | 3 |
| Pre H | 7 |
| Pre BB | 1 |
| Pre SO | 6 |
| Season ERA | 7.2692 |
| Season WHIP | 2.8846 |
| Role Avg IP | 2.8890 |
| Recent Avg IP | 2.8890 |
| Last Start IP | 4 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "LAA",
"games": 127,
"wins": 51,
"losses": 76,
"win_pct": 0.4016,
"runs_scored": 522.0,
"runs_allowed": 614.0,
"run_differential": -92.0,
"run_differential_per_game": -0.7244,
"avg_runs_scored": 4.1102,
"avg_runs_allowed": 4.8346,
"offense_index": 0.9128,
"defense_index": 0.9314,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 2.2,
"avg_runs_allowed": 4.0,
"run_differential": -18.0
},
"available": true,
"quality_score": -0.2071
},
"opponent": {
"team": "TEX",
"games": 126,
"wins": 64,
"losses": 62,
"win_pct": 0.5079,
"runs_scored": 526.0,
"runs_allowed": 553.0,
"run_differential": -27.0,
"run_differential_per_game": -0.2143,
"avg_runs_scored": 4.1746,
"avg_runs_allowed": 4.3889,
"offense_index": 0.927,
"defense_index": 1.026,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 3.7,
"avg_runs_allowed": 3.7,
"run_differential": 0.0
},
"available": true,
"quality_score": -0.0195
},
"edges": {
"quality_edge": -0.1876,
"offense_edge": -0.0872,
"opponent_offense_edge": -0.073,
"defense_strength": -0.0686,
"opponent_defense_weakness": -0.026,
"recent_win_pct_edge": -0.1
},
"player_factors": {
"ip": 0.9934,
"run_prevention": 1.0046,
"strikeout": 1.0002
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "691946",
"profile": {
"available": true,
"pitcher_id": "691946",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 32.0,
"k_percent": 17.3,
"bb_percent": 26.9,
"woba": 0.42,
"xwoba": 0.411,
"sweet_spot_percent": 41.4,
"barrel_batted_rate": 13.8,
"hard_hit_percent": 31.0,
"avg_best_speed": 73.859,
"avg_hyper_speed": 93.8342,
"whiff_percent": 32.3,
"swing_percent": 42.1
},
"league_medians": {
"pa": 108.0,
"k_percent": 22.0,
"bb_percent": 8.9,
"woba": 0.3145,
"xwoba": 0.312,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 37.7,
"avg_best_speed": 77.5616,
"avg_hyper_speed": 93.8924,
"whiff_percent": 25.4,
"swing_percent": 47.6
},
"components": {
"contact_quality": -1.5956,
"command_and_miss": -0.4571,
"regression_edge": 0.2571,
"xwoba_edge": -2.5,
"barrel_edge": -1.4889,
"hard_hit_edge": 0.9571,
"whiff_edge": 0.9857,
"bb_edge": -2.5,
"pitch_design_score": 0.1307
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "691946",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 72,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 72,
"pitch_usage": 0.0,
"release_speed": 92.25131278538812,
"release_spin_rate": 2144.8244863013697,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 72,
"pitch_usage": 0.0,
"release_speed": 92.25131278538812,
"release_spin_rate": 2144.8244863013697,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.2513,
"release_spin_rate": 2144.8245,
"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.1307,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.9335,
"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.4393,
"sample_weight": 0.45,
"run_prevention_factor": 1.0373,
"strikeout_factor": 1.0057,
"walk_factor": 1.09,
"homer_factor": 1.0701,
"woba_minus_xwoba": 0.009,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "691946",
"espn_id": 5134517,
"player_name": "George Klassen",
"team": "LAA",
"role": "pitcher",
"espn_rank": 651,
"espn_total_ranked": 804,
"metrics": {
"espn_rank": 651,
"gp_value": 3.0,
"gp_rank": 647,
"gs_value": 3.0,
"gs_rank": 232,
"qs_value": 0.0,
"qs_rank": 202,
"era_value": 7.2692,
"era_rank": null,
"w_value": 0.0,
"w_rank": 480,
"l_value": 1.0,
"l_rank": 382,
"sv_value": 0.0,
"sv_rank": 234,
"hld_value": 0.0,
"hld_rank": 317,
"ip_value": 8.2,
"ip_rank": 593,
"h_value": 11.0,
"h_rank": 565,
"er_value": 7.0,
"er_rank": 548,
"hr_value": 1.0,
"hr_rank": 565,
"bb_value": 14.0,
"bb_rank": 342,
"k_value": 9.0,
"k_rank": 555,
"k_per_9_value": 9.346153,
"k_per_9_rank": 25,
"whip_value": 2.8846,
"whip_rank": null,
"war_value": -0.24,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 3.0,
"factor": 1.0168,
"adjusted": 3
},
"predicted_H": {
"original": 5.0,
"factor": 1.0168,
"adjusted": 5
},
"predicted_BB": {
"original": 6.0,
"factor": 1.0405,
"adjusted": 6
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0315,
"adjusted": 0
},
"predicted_SO": {
"original": 4.0,
"factor": 1.0026,
"adjusted": 4
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "insufficient_data"
},
"pitching": {
"IP": 8.2,
"ER": 7,
"H": 11,
"BB": 14,
"SO": 9,
"HR": 1,
"ERA": 7.26923076923077,
"WHIP": 2.884615384615385,
"K9": 9.346153846153847,
"HR9": 1.0384615384615385,
"games_pitched": 3,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": true
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 3,
"error_prone": false
},
"games_count": 3,
"latest_game_date": "2026-08-07T00:00:00"
}{
"available": true,
"pitcher_id": "691946",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 72,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 72,
"pitch_usage": 0.0,
"release_speed": 92.25131278538812,
"release_spin_rate": 2144.8244863013697,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 72,
"pitch_usage": 0.0,
"release_speed": 92.25131278538812,
"release_spin_rate": 2144.8244863013697,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.2513,
"release_spin_rate": 2144.8245,
"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.1307,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.9335,
"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."
}{
"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": 1.734,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.2575,
"prior_weight": 0.7425
},
"role": "pitcher",
"player_id": "691946",
"report_date": "20260812",
"season_year": 2026,
"rows_used": 3,
"reference_playing_time": 4.333,
"windows": {
"last_5": {
"games": 3,
"totals": {
"IP": 8.2,
"ER": 7.0,
"R": 8.0,
"H": 11.0,
"BB": 14.0,
"SO": 9.0,
"HR": 1.0,
"BF": 52.0,
"Pitches": 228.0
},
"per_game": {
"IP": 3.0,
"ER": 2.3333,
"R": 2.6667,
"H": 3.6667,
"BB": 4.6667,
"SO": 3.0,
"HR": 0.3333,
"BF": 17.3333,
"Pitches": 76.0
},
"rates": {
"ERA": 7.2692,
"WHIP": 2.8846,
"ER_per_IP": 0.80769,
"H_per_IP": 1.26923,
"BB_per_IP": 1.61538,
"SO_per_IP": 1.03846,
"HR_per_IP": 0.11538
}
},
"last_10": {
"games": 3,
"totals": {
"IP": 8.2,
"ER": 7.0,
"R": 8.0,
"H": 11.0,
"BB": 14.0,
"SO": 9.0,
"HR": 1.0,
"BF": 52.0,
"Pitches": 228.0
},
"per_game": {
"IP": 3.0,
"ER": 2.3333,
"R": 2.6667,
"H": 3.6667,
"BB": 4.6667,
"SO": 3.0,
"HR": 0.3333,
"BF": 17.3333,
"Pitches": 76.0
},
"rates": {
"ERA": 7.2692,
"WHIP": 2.8846,
"ER_per_IP": 0.80769,
"H_per_IP": 1.26923,
"BB_per_IP": 1.61538,
"SO_per_IP": 1.03846,
"HR_per_IP": 0.11538
}
},
"season": {
"games": 3,
"totals": {
"IP": 8.2,
"ER": 7.0,
"R": 8.0,
"H": 11.0,
"BB": 14.0,
"SO": 9.0,
"HR": 1.0,
"BF": 52.0,
"Pitches": 228.0
},
"per_game": {
"IP": 3.0,
"ER": 2.3333,
"R": 2.6667,
"H": 3.6667,
"BB": 4.6667,
"SO": 3.0,
"HR": 0.3333,
"BF": 17.3333,
"Pitches": 76.0
},
"rates": {
"ERA": 7.2692,
"WHIP": 2.8846,
"ER_per_IP": 0.80769,
"H_per_IP": 1.26923,
"BB_per_IP": 1.61538,
"SO_per_IP": 1.03846,
"HR_per_IP": 0.11538
}
}
},
"blend_segments": {},
"weighted_prediction": {
"predicted_IP": 4.0,
"predicted_ER": 2.307,
"predicted_H": 4.189,
"predicted_BB": 2.729,
"predicted_SO": 3.899,
"predicted_HR": 0.561,
"predicted_ERA": 5.2046,
"predicted_WHIP": 1.7339
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.6637,
"form_weight": 0.3363,
"form_reliability": 0.2575,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 1.734,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.2575,
"prior_weight": 0.7425
},
"applied_metrics": {
"predicted_IP": {
"model": 4.1,
"form": 4.0,
"final": 4.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 3.0,
"form": 2.307,
"final": 2.7669,
"source": "model_form_blend"
},
"predicted_H": {
"model": 7.0,
"form": 4.189,
"final": 6.0547,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 2.729,
"final": 1.5815,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 6.0,
"form": 3.899,
"final": 5.2934,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 1.0,
"form": 0.561,
"final": 0.8524,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 5.2046,
"final": 5.2046,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.7339,
"final": 1.7339,
"source": "form_only"
}
}
}{
"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."
}| Field | Value |
|---|---|
| Pitcher | José Fermin |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.0155 |
| ESPN Rank | 244 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 2 |
| Pre ER | 0 |
| Pre H | 1 |
| Pre BB | 0 |
| Pre SO | 2 |
| Season ERA | 3.1240 |
| Season WHIP | 1.2645 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "LAA",
"games": 127,
"wins": 51,
"losses": 76,
"win_pct": 0.4016,
"runs_scored": 522.0,
"runs_allowed": 614.0,
"run_differential": -92.0,
"run_differential_per_game": -0.7244,
"avg_runs_scored": 4.1102,
"avg_runs_allowed": 4.8346,
"offense_index": 0.9128,
"defense_index": 0.9314,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 2.2,
"avg_runs_allowed": 4.0,
"run_differential": -18.0
},
"available": true,
"quality_score": -0.2071
},
"opponent": {
"team": "TEX",
"games": 126,
"wins": 64,
"losses": 62,
"win_pct": 0.5079,
"runs_scored": 526.0,
"runs_allowed": 553.0,
"run_differential": -27.0,
"run_differential_per_game": -0.2143,
"avg_runs_scored": 4.1746,
"avg_runs_allowed": 4.3889,
"offense_index": 0.927,
"defense_index": 1.026,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 3.7,
"avg_runs_allowed": 3.7,
"run_differential": 0.0
},
"available": true,
"quality_score": -0.0195
},
"edges": {
"quality_edge": -0.1876,
"offense_edge": -0.0872,
"opponent_offense_edge": -0.073,
"defense_strength": -0.0686,
"opponent_defense_weakness": -0.026,
"recent_win_pct_edge": -0.1
},
"player_factors": {
"ip": 0.9934,
"run_prevention": 1.0046,
"strikeout": 1.0002
},
"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": 132.0,
"k_percent": 27.6,
"bb_percent": 11.5,
"woba": 0.301,
"xwoba": 0.314,
"sweet_spot_percent": 28.4,
"barrel_batted_rate": 8.8,
"hard_hit_percent": 43.1,
"avg_best_speed": 81.3625,
"avg_hyper_speed": 94.403,
"whiff_percent": 31.4,
"swing_percent": 49.2
},
"league_medians": {
"pa": 108.0,
"k_percent": 22.0,
"bb_percent": 8.9,
"woba": 0.3145,
"xwoba": 0.312,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 37.7,
"avg_best_speed": 77.5616,
"avg_hyper_speed": 93.8924,
"whiff_percent": 25.4,
"swing_percent": 47.6
},
"components": {
"contact_quality": -0.1273,
"command_and_miss": 0.53,
"regression_edge": -0.3714,
"xwoba_edge": -0.0571,
"barrel_edge": -0.3778,
"hard_hit_edge": -0.7714,
"whiff_edge": 0.8571,
"bb_edge": -0.65,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "820862",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.0155,
"sample_weight": 0.528,
"run_prevention_factor": 0.9987,
"strikeout_factor": 1.035,
"walk_factor": 1.0275,
"homer_factor": 1.0332,
"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": 244,
"espn_total_ranked": 804,
"metrics": {
"espn_rank": 244,
"gp_value": 37.0,
"gp_rank": 141,
"gs_value": 0.0,
"gs_rank": 337,
"qs_value": 0.0,
"qs_rank": 202,
"era_value": 3.1239,
"era_rank": null,
"w_value": 4.0,
"w_rank": 148,
"l_value": 2.0,
"l_rank": 282,
"sv_value": 1.0,
"sv_rank": 116,
"hld_value": 5.0,
"hld_rank": 148,
"ip_value": 40.1,
"ip_rank": 314,
"h_value": 31.0,
"h_rank": 351,
"er_value": 14.0,
"er_rank": 367,
"hr_value": 5.0,
"hr_rank": 274,
"bb_value": 20.0,
"bb_rank": 231,
"k_value": 48.0,
"k_rank": 247,
"k_per_9_value": 10.710744,
"k_per_9_rank": 21,
"whip_value": 1.2644,
"whip_rank": null,
"war_value": 0.46,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 0.9993,
"adjusted": 1
},
"predicted_H": {
"original": 0.0,
"factor": 0.9993,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0145,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0175,
"adjusted": 0
},
"predicted_SO": {
"original": 3.0,
"factor": 1.0185,
"adjusted": 3
}
}
}
}{
"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": 4,
"H": 10,
"BB": 4,
"SO": 16,
"HR": 2,
"ERA": 3.483870967741936,
"WHIP": 1.3548387096774195,
"K9": 13.935483870967744,
"HR9": 1.741935483870968,
"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-11T00:00:00"
}{
"available": false,
"pitcher_id": "820862",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"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": 8.07,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6174,
"prior_weight": 0.3826
},
"role": "pitcher",
"player_id": "820862",
"report_date": "20260812",
"season_year": 2026,
"rows_used": 37,
"reference_playing_time": 1.333,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 6.2,
"ER": 4.0,
"R": 4.0,
"H": 8.0,
"BB": 2.0,
"SO": 10.0,
"HR": 2.0,
"BF": 30.0,
"Pitches": 111.0
},
"per_game": {
"IP": 1.1,
"ER": 0.8,
"R": 0.8,
"H": 1.6,
"BB": 0.4,
"SO": 2.0,
"HR": 0.4,
"BF": 6.0,
"Pitches": 22.2
},
"rates": {
"ERA": 5.4,
"WHIP": 1.5,
"ER_per_IP": 0.6,
"H_per_IP": 1.2,
"BB_per_IP": 0.3,
"SO_per_IP": 1.5,
"HR_per_IP": 0.3
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.1,
"ER": 4.0,
"R": 7.0,
"H": 10.0,
"BB": 4.0,
"SO": 16.0,
"HR": 2.0,
"BF": 47.0,
"Pitches": 188.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.7,
"H": 1.0,
"BB": 0.4,
"SO": 1.6,
"HR": 0.2,
"BF": 4.7,
"Pitches": 18.8
},
"rates": {
"ERA": 3.4839,
"WHIP": 1.3548,
"ER_per_IP": 0.3871,
"H_per_IP": 0.96774,
"BB_per_IP": 0.3871,
"SO_per_IP": 1.54839,
"HR_per_IP": 0.19355
}
},
"season": {
"games": 37,
"totals": {
"IP": 40.1,
"ER": 14.0,
"R": 17.0,
"H": 31.0,
"BB": 20.0,
"SO": 48.0,
"HR": 5.0,
"BF": 174.0,
"Pitches": 720.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3784,
"R": 0.4595,
"H": 0.8378,
"BB": 0.5405,
"SO": 1.2973,
"HR": 0.1351,
"BF": 4.7027,
"Pitches": 19.4595
},
"rates": {
"ERA": 3.124,
"WHIP": 1.2645,
"ER_per_IP": 0.34711,
"H_per_IP": 0.7686,
"BB_per_IP": 0.49587,
"SO_per_IP": 1.19008,
"HR_per_IP": 0.12397
}
}
},
"blend_segments": {},
"weighted_prediction": {
"predicted_IP": 1.1,
"predicted_ER": 0.591,
"predicted_H": 1.232,
"predicted_BB": 0.447,
"predicted_SO": 1.542,
"predicted_HR": 0.241,
"predicted_ERA": 4.3562,
"predicted_WHIP": 1.3764
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5116,
"form_weight": 0.4884,
"form_reliability": 0.6174,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 8.07,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6174,
"prior_weight": 0.3826
},
"applied_metrics": {
"predicted_IP": {
"model": 1.1,
"form": 1.1,
"final": 1.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.591,
"final": 0.2886,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 1.232,
"final": 1.1133,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.447,
"final": 0.2183,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 2.0,
"form": 1.542,
"final": 1.7763,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.241,
"final": 0.1177,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.3562,
"final": 4.3562,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.3764,
"final": 1.3764,
"source": "form_only"
}
}
}{
"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."
}| Field | Value |
|---|---|
| Pitcher | Samy Natera Jr. |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.6005 |
| ESPN Rank | 144 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 2 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 2 |
| Season WHIP | 0.8148 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "LAA",
"games": 127,
"wins": 51,
"losses": 76,
"win_pct": 0.4016,
"runs_scored": 522.0,
"runs_allowed": 614.0,
"run_differential": -92.0,
"run_differential_per_game": -0.7244,
"avg_runs_scored": 4.1102,
"avg_runs_allowed": 4.8346,
"offense_index": 0.9128,
"defense_index": 0.9314,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 2.2,
"avg_runs_allowed": 4.0,
"run_differential": -18.0
},
"available": true,
"quality_score": -0.2071
},
"opponent": {
"team": "TEX",
"games": 126,
"wins": 64,
"losses": 62,
"win_pct": 0.5079,
"runs_scored": 526.0,
"runs_allowed": 553.0,
"run_differential": -27.0,
"run_differential_per_game": -0.2143,
"avg_runs_scored": 4.1746,
"avg_runs_allowed": 4.3889,
"offense_index": 0.927,
"defense_index": 1.026,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 3.7,
"avg_runs_allowed": 3.7,
"run_differential": 0.0
},
"available": true,
"quality_score": -0.0195
},
"edges": {
"quality_edge": -0.1876,
"offense_edge": -0.0872,
"opponent_offense_edge": -0.073,
"defense_strength": -0.0686,
"opponent_defense_weakness": -0.026,
"recent_win_pct_edge": -0.1
},
"player_factors": {
"ip": 0.9934,
"run_prevention": 1.0046,
"strikeout": 1.0002
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "696519",
"profile": {
"available": true,
"pitcher_id": "696519",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 73.0,
"k_percent": 40.4,
"bb_percent": 9.6,
"woba": 0.214,
"xwoba": 0.219,
"sweet_spot_percent": 27.5,
"barrel_batted_rate": 5.9,
"hard_hit_percent": 31.4,
"avg_best_speed": 77.7623,
"avg_hyper_speed": 92.9409,
"whiff_percent": 37.3,
"swing_percent": 47.6
},
"league_medians": {
"pa": 108.0,
"k_percent": 22.0,
"bb_percent": 8.9,
"woba": 0.3145,
"xwoba": 0.312,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 37.7,
"avg_best_speed": 77.5616,
"avg_hyper_speed": 93.8924,
"whiff_percent": 25.4,
"swing_percent": 47.6
},
"components": {
"contact_quality": 1.6263,
"command_and_miss": 1.685,
"regression_edge": -0.1429,
"xwoba_edge": 2.5,
"barrel_edge": 0.2667,
"hard_hit_edge": 0.9,
"whiff_edge": 1.7,
"bb_edge": -0.175,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "696519",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.6005,
"sample_weight": 0.45,
"run_prevention_factor": 0.949,
"strikeout_factor": 1.0756,
"walk_factor": 1.0063,
"homer_factor": 0.9405,
"woba_minus_xwoba": -0.005,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "696519",
"espn_id": 5207461,
"player_name": "Samy Natera Jr.",
"team": "LAA",
"role": "pitcher",
"espn_rank": 144,
"espn_total_ranked": 804,
"metrics": {
"espn_rank": 144,
"gp_value": 23.0,
"gp_rank": 264,
"gs_value": 0.0,
"gs_rank": 337,
"qs_value": 0.0,
"qs_rank": 202,
"era_value": 2.0,
"era_rank": null,
"w_value": 1.0,
"w_rank": 368,
"l_value": 1.0,
"l_rank": 382,
"sv_value": 3.0,
"sv_rank": 57,
"hld_value": 4.0,
"hld_rank": 168,
"ip_value": 27.0,
"ip_rank": 415,
"h_value": 13.0,
"h_rank": 543,
"er_value": 6.0,
"er_rank": 578,
"hr_value": 1.0,
"hr_rank": 565,
"bb_value": 10.0,
"bb_rank": 441,
"k_value": 42.0,
"k_rank": 292,
"k_per_9_value": 14.0,
"k_per_9_rank": 18,
"whip_value": 0.8518,
"whip_rank": null,
"war_value": 1.09,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.977,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.977,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0028,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9732,
"adjusted": 0
},
"predicted_SO": {
"original": 3.0,
"factor": 1.034,
"adjusted": 3
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 11.2,
"ER": 1,
"H": 5,
"BB": 2,
"SO": 20,
"HR": 0,
"ERA": 0.7714285714285715,
"WHIP": 0.6,
"K9": 15.428571428571429,
"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-11T00:00:00"
}{
"available": false,
"pitcher_id": "696519",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"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": 5.402,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5193,
"prior_weight": 0.4807
},
"role": "pitcher",
"player_id": "696519",
"report_date": "20260812",
"season_year": 2026,
"rows_used": 22,
"reference_playing_time": 1.333,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 6.2,
"ER": 1.0,
"R": 1.0,
"H": 4.0,
"BB": 1.0,
"SO": 12.0,
"HR": 0.0,
"BF": 24.0,
"Pitches": 113.0
},
"per_game": {
"IP": 1.1,
"ER": 0.2,
"R": 0.2,
"H": 0.8,
"BB": 0.2,
"SO": 2.4,
"HR": 0.0,
"BF": 4.8,
"Pitches": 22.6
},
"rates": {
"ERA": 1.35,
"WHIP": 0.75,
"ER_per_IP": 0.15,
"H_per_IP": 0.6,
"BB_per_IP": 0.15,
"SO_per_IP": 1.8,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 11.2,
"ER": 1.0,
"R": 1.0,
"H": 5.0,
"BB": 2.0,
"SO": 20.0,
"HR": 0.0,
"BF": 41.0,
"Pitches": 192.0
},
"per_game": {
"IP": 1.1,
"ER": 0.1,
"R": 0.1,
"H": 0.5,
"BB": 0.2,
"SO": 2.0,
"HR": 0.0,
"BF": 4.1,
"Pitches": 19.2
},
"rates": {
"ERA": 0.7714,
"WHIP": 0.6,
"ER_per_IP": 0.08571,
"H_per_IP": 0.42857,
"BB_per_IP": 0.17143,
"SO_per_IP": 1.71429,
"HR_per_IP": 0.0
}
},
"season": {
"games": 22,
"totals": {
"IP": 27.0,
"ER": 6.0,
"R": 6.0,
"H": 13.0,
"BB": 9.0,
"SO": 42.0,
"HR": 1.0,
"BF": 103.0,
"Pitches": 457.0
},
"per_game": {
"IP": 1.1,
"ER": 0.2727,
"R": 0.2727,
"H": 0.5909,
"BB": 0.4091,
"SO": 1.9091,
"HR": 0.0455,
"BF": 4.6818,
"Pitches": 20.7727
},
"rates": {
"ERA": 2.0,
"WHIP": 0.8148,
"ER_per_IP": 0.22222,
"H_per_IP": 0.48148,
"BB_per_IP": 0.33333,
"SO_per_IP": 1.55556,
"HR_per_IP": 0.03704
}
}
},
"blend_segments": {},
"weighted_prediction": {
"predicted_IP": 1.1,
"predicted_ER": 0.418,
"predicted_H": 0.982,
"predicted_BB": 0.366,
"predicted_SO": 1.804,
"predicted_HR": 0.101,
"predicted_ERA": 2.8211,
"predicted_WHIP": 1.0106
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5531,
"form_weight": 0.4469,
"form_reliability": 0.5193,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.402,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5193,
"prior_weight": 0.4807
},
"applied_metrics": {
"predicted_IP": {
"model": 1.1,
"form": 1.1,
"final": 1.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.418,
"final": 0.1868,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.982,
"final": 0.4389,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.366,
"final": 0.1636,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 1.804,
"final": 0.8062,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.101,
"final": 0.0451,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.8211,
"final": 2.8211,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.0106,
"final": 1.0106,
"source": "form_only"
}
}
}{
"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."
}| Field | Value |
|---|---|
| Pitcher | Ben Joyce |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.5846 |
| ESPN Rank | 319 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 1 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 0 |
| Season WHIP | 0.6667 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "LAA",
"games": 127,
"wins": 51,
"losses": 76,
"win_pct": 0.4016,
"runs_scored": 522.0,
"runs_allowed": 614.0,
"run_differential": -92.0,
"run_differential_per_game": -0.7244,
"avg_runs_scored": 4.1102,
"avg_runs_allowed": 4.8346,
"offense_index": 0.9128,
"defense_index": 0.9314,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 2.2,
"avg_runs_allowed": 4.0,
"run_differential": -18.0
},
"available": true,
"quality_score": -0.2071
},
"opponent": {
"team": "TEX",
"games": 126,
"wins": 64,
"losses": 62,
"win_pct": 0.5079,
"runs_scored": 526.0,
"runs_allowed": 553.0,
"run_differential": -27.0,
"run_differential_per_game": -0.2143,
"avg_runs_scored": 4.1746,
"avg_runs_allowed": 4.3889,
"offense_index": 0.927,
"defense_index": 1.026,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 3.7,
"avg_runs_allowed": 3.7,
"run_differential": 0.0
},
"available": true,
"quality_score": -0.0195
},
"edges": {
"quality_edge": -0.1876,
"offense_edge": -0.0872,
"opponent_offense_edge": -0.073,
"defense_strength": -0.0686,
"opponent_defense_weakness": -0.026,
"recent_win_pct_edge": -0.1
},
"player_factors": {
"ip": 0.9934,
"run_prevention": 1.0046,
"strikeout": 1.0002
},
"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": 0.0,
"k_percent": 30.0,
"bb_percent": 10.0,
"woba": 0.159,
"xwoba": 0.19,
"sweet_spot_percent": 16.7,
"barrel_batted_rate": 0.0,
"hard_hit_percent": 33.3,
"avg_best_speed": 65.9185,
"avg_hyper_speed": 92.7139,
"whiff_percent": 35.0,
"swing_percent": 43.5
},
"league_medians": {
"pa": 108.0,
"k_percent": 22.0,
"bb_percent": 8.9,
"woba": 0.3145,
"xwoba": 0.312,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 37.7,
"avg_best_speed": 77.5616,
"avg_hyper_speed": 93.8924,
"whiff_percent": 25.4,
"swing_percent": 47.6
},
"components": {
"contact_quality": 2.0417,
"command_and_miss": 0.9393,
"regression_edge": -0.8857,
"xwoba_edge": 2.5,
"barrel_edge": 1.5778,
"hard_hit_edge": 0.6286,
"whiff_edge": 1.3714,
"bb_edge": -0.275,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "690829",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.5846,
"sample_weight": 0.45,
"run_prevention_factor": 0.9503,
"strikeout_factor": 1.0453,
"walk_factor": 1.0099,
"homer_factor": 0.8981,
"woba_minus_xwoba": -0.031,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "690829",
"espn_id": 4867388,
"player_name": "Ben Joyce",
"team": "LAA",
"role": "pitcher",
"espn_rank": 319,
"espn_total_ranked": 804,
"metrics": {
"espn_rank": 319,
"gp_value": 3.0,
"gp_rank": 647,
"gs_value": 0.0,
"gs_rank": 337,
"qs_value": 0.0,
"qs_rank": 202,
"era_value": 0.0,
"era_rank": null,
"w_value": 0.0,
"w_rank": 480,
"l_value": 0.0,
"l_rank": 533,
"sv_value": 0.0,
"sv_rank": 234,
"hld_value": 1.0,
"hld_rank": 242,
"ip_value": 3.0,
"ip_rank": 712,
"h_value": 1.0,
"h_rank": 772,
"er_value": 0.0,
"er_rank": 768,
"hr_value": 0.0,
"hr_rank": 690,
"bb_value": 1.0,
"bb_rank": 718,
"k_value": 3.0,
"k_rank": 675,
"k_per_9_value": 9.0,
"k_per_9_rank": 25,
"whip_value": 0.6666,
"whip_rank": null,
"war_value": 0.21,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9776,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9776,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0045,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9541,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0204,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "insufficient_data"
},
"pitching": {
"IP": 3.0,
"ER": 0,
"H": 1,
"BB": 1,
"SO": 3,
"HR": 0,
"ERA": 0.0,
"WHIP": 0.6666666666666666,
"K9": 9.0,
"HR9": 0.0,
"games_pitched": 3,
"quality_starts": 0,
"dominant_form": true,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 3,
"error_prone": false
},
"games_count": 3,
"latest_game_date": "2026-08-10T00:00:00"
}{
"available": false,
"pitcher_id": "690829",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"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": 0.6,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.1072,
"prior_weight": 0.8928
},
"role": "pitcher",
"player_id": "690829",
"report_date": "20260812",
"season_year": 2026,
"rows_used": 3,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 3,
"totals": {
"IP": 3.0,
"ER": 0.0,
"R": 0.0,
"H": 1.0,
"BB": 1.0,
"SO": 3.0,
"HR": 0.0,
"BF": 10.0,
"Pitches": 46.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.3333,
"BB": 0.3333,
"SO": 1.0,
"HR": 0.0,
"BF": 3.3333,
"Pitches": 15.3333
},
"rates": {
"ERA": 0.0,
"WHIP": 0.6667,
"ER_per_IP": 0.0,
"H_per_IP": 0.33333,
"BB_per_IP": 0.33333,
"SO_per_IP": 1.0,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 3,
"totals": {
"IP": 3.0,
"ER": 0.0,
"R": 0.0,
"H": 1.0,
"BB": 1.0,
"SO": 3.0,
"HR": 0.0,
"BF": 10.0,
"Pitches": 46.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.3333,
"BB": 0.3333,
"SO": 1.0,
"HR": 0.0,
"BF": 3.3333,
"Pitches": 15.3333
},
"rates": {
"ERA": 0.0,
"WHIP": 0.6667,
"ER_per_IP": 0.0,
"H_per_IP": 0.33333,
"BB_per_IP": 0.33333,
"SO_per_IP": 1.0,
"HR_per_IP": 0.0
}
},
"season": {
"games": 3,
"totals": {
"IP": 3.0,
"ER": 0.0,
"R": 0.0,
"H": 1.0,
"BB": 1.0,
"SO": 3.0,
"HR": 0.0,
"BF": 10.0,
"Pitches": 46.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.3333,
"BB": 0.3333,
"SO": 1.0,
"HR": 0.0,
"BF": 3.3333,
"Pitches": 15.3333
},
"rates": {
"ERA": 0.0,
"WHIP": 0.6667,
"ER_per_IP": 0.0,
"H_per_IP": 0.33333,
"BB_per_IP": 0.33333,
"SO_per_IP": 1.0,
"HR_per_IP": 0.0
}
}
},
"blend_segments": {},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.445,
"predicted_H": 0.905,
"predicted_BB": 0.358,
"predicted_SO": 0.961,
"predicted_HR": 0.133,
"predicted_ERA": 4.0074,
"predicted_WHIP": 1.2632
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.7272,
"form_weight": 0.2728,
"form_reliability": 0.1072,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 0.6,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.1072,
"prior_weight": 0.8928
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.445,
"final": 0.1214,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.905,
"final": 0.9741,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.358,
"final": 0.0977,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.961,
"final": 0.2622,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.133,
"final": 0.0363,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.0074,
"final": 4.0074,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2632,
"final": 1.2632,
"source": "form_only"
}
}
}{
"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."
}| Field | Value |
|---|---|
| Pitcher | Luke Murphy |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.0239 |
| ESPN Rank | 393 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 2 |
| Pre H | 2 |
| Pre BB | 1 |
| Pre SO | 1 |
| Season ERA | 3.3750 |
| Season WHIP | 1.6875 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "LAA",
"games": 127,
"wins": 51,
"losses": 76,
"win_pct": 0.4016,
"runs_scored": 522.0,
"runs_allowed": 614.0,
"run_differential": -92.0,
"run_differential_per_game": -0.7244,
"avg_runs_scored": 4.1102,
"avg_runs_allowed": 4.8346,
"offense_index": 0.9128,
"defense_index": 0.9314,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 2.2,
"avg_runs_allowed": 4.0,
"run_differential": -18.0
},
"available": true,
"quality_score": -0.2071
},
"opponent": {
"team": "TEX",
"games": 126,
"wins": 64,
"losses": 62,
"win_pct": 0.5079,
"runs_scored": 526.0,
"runs_allowed": 553.0,
"run_differential": -27.0,
"run_differential_per_game": -0.2143,
"avg_runs_scored": 4.1746,
"avg_runs_allowed": 4.3889,
"offense_index": 0.927,
"defense_index": 1.026,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 3.7,
"avg_runs_allowed": 3.7,
"run_differential": 0.0
},
"available": true,
"quality_score": -0.0195
},
"edges": {
"quality_edge": -0.1876,
"offense_edge": -0.0872,
"opponent_offense_edge": -0.073,
"defense_strength": -0.0686,
"opponent_defense_weakness": -0.026,
"recent_win_pct_edge": -0.1
},
"player_factors": {
"ip": 0.9934,
"run_prevention": 1.0046,
"strikeout": 1.0002
},
"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": 0.0,
"k_percent": 16.7,
"bb_percent": 25.0,
"woba": 0.286,
"xwoba": 0.291,
"sweet_spot_percent": 42.9,
"barrel_batted_rate": 0.0,
"hard_hit_percent": 28.6,
"avg_best_speed": 77.4051,
"avg_hyper_speed": 92.2952,
"whiff_percent": 21.1,
"swing_percent": 38.0
},
"league_medians": {
"pa": 108.0,
"k_percent": 22.0,
"bb_percent": 8.9,
"woba": 0.3145,
"xwoba": 0.312,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 37.7,
"avg_best_speed": 77.5616,
"avg_hyper_speed": 93.8924,
"whiff_percent": 25.4,
"swing_percent": 47.6
},
"components": {
"contact_quality": 0.6107,
"command_and_miss": -1.0557,
"regression_edge": -0.1429,
"xwoba_edge": 0.6,
"barrel_edge": 1.5778,
"hard_hit_edge": 1.3,
"whiff_edge": -0.6143,
"bb_edge": -2.5,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "684665",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.0239,
"sample_weight": 0.45,
"run_prevention_factor": 0.998,
"strikeout_factor": 0.9753,
"walk_factor": 1.09,
"homer_factor": 0.9117,
"woba_minus_xwoba": -0.005,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "684665",
"espn_id": 4424061,
"player_name": "Luke Murphy",
"team": "LAA",
"role": "pitcher",
"espn_rank": 393,
"espn_total_ranked": 804,
"metrics": {
"espn_rank": 393,
"gp_value": 5.0,
"gp_rank": 582,
"gs_value": 0.0,
"gs_rank": 337,
"qs_value": 0.0,
"qs_rank": 202,
"era_value": 3.375,
"era_rank": null,
"w_value": 0.0,
"w_rank": 480,
"l_value": 1.0,
"l_rank": 382,
"sv_value": 0.0,
"sv_rank": 234,
"hld_value": 3.0,
"hld_rank": 189,
"ip_value": 5.1,
"ip_rank": 655,
"h_value": 3.0,
"h_rank": 727,
"er_value": 2.0,
"er_rank": 689,
"hr_value": 0.0,
"hr_rank": 690,
"bb_value": 6.0,
"bb_rank": 537,
"k_value": 4.0,
"k_rank": 646,
"k_per_9_value": 6.75,
"k_per_9_rank": 26,
"whip_value": 1.6875,
"whip_rank": null,
"war_value": 0.07,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9991,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9991,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0405,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9603,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.9889,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "insufficient_data"
},
"pitching": {
"IP": 5.1,
"ER": 2,
"H": 3,
"BB": 6,
"SO": 4,
"HR": 0,
"ERA": 3.375,
"WHIP": 1.6875,
"K9": 6.75,
"HR9": 0.0,
"games_pitched": 5,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": true
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 5,
"error_prone": false
},
"games_count": 5,
"latest_game_date": "2026-08-11T00:00:00"
}{
"available": false,
"pitcher_id": "684665",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"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": 1.067,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.1759,
"prior_weight": 0.8241
},
"role": "pitcher",
"player_id": "684665",
"report_date": "20260812",
"season_year": 2026,
"rows_used": 5,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.1,
"ER": 2.0,
"R": 3.0,
"H": 3.0,
"BB": 6.0,
"SO": 4.0,
"HR": 0.0,
"BF": 24.0,
"Pitches": 100.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.6,
"H": 0.6,
"BB": 1.2,
"SO": 0.8,
"HR": 0.0,
"BF": 4.8,
"Pitches": 20.0
},
"rates": {
"ERA": 3.375,
"WHIP": 1.6875,
"ER_per_IP": 0.375,
"H_per_IP": 0.5625,
"BB_per_IP": 1.125,
"SO_per_IP": 0.75,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 5,
"totals": {
"IP": 5.1,
"ER": 2.0,
"R": 3.0,
"H": 3.0,
"BB": 6.0,
"SO": 4.0,
"HR": 0.0,
"BF": 24.0,
"Pitches": 100.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.6,
"H": 0.6,
"BB": 1.2,
"SO": 0.8,
"HR": 0.0,
"BF": 4.8,
"Pitches": 20.0
},
"rates": {
"ERA": 3.375,
"WHIP": 1.6875,
"ER_per_IP": 0.375,
"H_per_IP": 0.5625,
"BB_per_IP": 1.125,
"SO_per_IP": 0.75,
"HR_per_IP": 0.0
}
},
"season": {
"games": 5,
"totals": {
"IP": 5.1,
"ER": 2.0,
"R": 3.0,
"H": 3.0,
"BB": 6.0,
"SO": 4.0,
"HR": 0.0,
"BF": 24.0,
"Pitches": 100.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.6,
"H": 0.6,
"BB": 1.2,
"SO": 0.8,
"HR": 0.0,
"BF": 4.8,
"Pitches": 20.0
},
"rates": {
"ERA": 3.375,
"WHIP": 1.6875,
"ER_per_IP": 0.375,
"H_per_IP": 0.5625,
"BB_per_IP": 1.125,
"SO_per_IP": 0.75,
"HR_per_IP": 0.0
}
}
},
"blend_segments": {},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.477,
"predicted_H": 0.901,
"predicted_BB": 0.495,
"predicted_SO": 0.92,
"predicted_HR": 0.123,
"predicted_ERA": 4.2927,
"predicted_WHIP": 1.3969
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.6982,
"form_weight": 0.3018,
"form_reliability": 0.1759,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 1.067,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.1759,
"prior_weight": 0.8241
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 2.0,
"form": 0.477,
"final": 1.5403,
"source": "model_form_blend"
},
"predicted_H": {
"model": 2.0,
"form": 0.901,
"final": 1.6683,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 0.495,
"final": 0.8476,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.92,
"final": 0.9759,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.123,
"final": 0.0371,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.2927,
"final": 4.2927,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.3969,
"final": 1.3969,
"source": "form_only"
}
}
}{
"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."
}| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.175 | 0.000 | 0.000 | Hitting_2B | 0.230 | 0.000 | -0.230 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.105 | 5.000 | 3.000 | Hitting_AB | 3.273 | 3.000 | 1.727 | 2.000 |
| predicted_AVG | 0.305 | 0.000 | 0.333 | Hitting_AVG | 0.319 | 0.333 | -0.319 | -0.333 |
| predicted_BB | 0.281 | 0.000 | 0.000 | Hitting_BB | 0.388 | 0.000 | -0.388 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.947 | 0.000 | 1.000 | Hitting_H | 1.042 | 1.000 | -1.042 | -1.000 |
| predicted_HR | 0.053 | 0.000 | 0.000 | Hitting_HR | 0.055 | 0.000 | -0.055 | 0.000 |
| predicted_OBP | 0.363 | 0.000 | 0.333 | Hitting_OBP | 0.392 | 0.333 | -0.392 | -0.333 |
| predicted_R | 0.421 | 0.000 | 0.000 | Hitting_R | 0.527 | 1.000 | -0.527 | -1.000 |
| predicted_RBI | 0.351 | 0.000 | 0.000 | Hitting_RBI | 0.436 | 0.000 | -0.436 | 0.000 |
| predicted_SLG | 0.412 | 0.000 | 0.333 | Hitting_SLG | 0.439 | 0.333 | -0.439 | -0.333 |
| predicted_SO | 0.737 | 3.000 | 1.000 | Hitting_SO | 0.764 | 0.000 | 2.236 | 3.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 9 |
| Better Metrics | 1 |
| Worse Metrics | 10 |
| Biggest Boost | predicted_SO: 0.7370 -> 3.0000 (boost 2.2630, worse) |
| Biggest Deboost | predicted_H: 0.9470 -> 0.0000 (deboost -0.9470, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 2 | 1 | 1 | 1 | 1 | predicted_AB: 3.1050 -> 3.1999 (boost 0.0949, better) | predicted_OBP: 0.3630 -> 0.3566 (deboost -0.0064, 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. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4091 -> 0.4017 (deboost -0.0074, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 2 | 5 | 1 | 6 | predicted_SO: 0.7453 -> 1.0000 (boost 0.2547, worse) | predicted_RBI: 0.3205 -> 0.0000 (deboost -0.3205, worse) | AB rounded to 3 (raw=3.20), rates preserved: AVG=0.295 HR/AB=0.017 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4149 -> 0.0000 (deboost -0.4149, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2951 -> 0.3330 (boost 0.0379, better) | predicted_SLG: 0.4017 -> 0.3330 (deboost -0.0687, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 2 | 1 | 1 | 2 | predicted_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 |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.3330 -> 0.4017 (boost 0.0687, better) | predicted_AVG: 0.3330 -> 0.2951 (deboost -0.0379, worse) | Final player values currently stored in the game 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.175,
"predicted_3B": 0.0,
"predicted_AB": 3.105,
"predicted_AVG": 0.305,
"predicted_BB": 0.281,
"predicted_H": 0.947,
"predicted_HR": 0.053,
"predicted_OBP": 0.363,
"predicted_R": 0.421,
"predicted_RBI": 0.351,
"predicted_SLG": 0.412,
"predicted_SO": 0.737
},
"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.1721,
"predicted_3B": 0.0008,
"predicted_AB": 3.1999,
"predicted_AVG": 0.3017,
"predicted_BB": 0.2699,
"predicted_H": 0.9647,
"predicted_HBP": 0.004,
"predicted_HR": 0.0571,
"predicted_OBP": 0.3566,
"predicted_R": 0.4309,
"predicted_RBI": 0.3329,
"predicted_SLG": 0.4091,
"predicted_SO": 0.7386
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.175,
"after": 0.1721,
"delta": -0.0029,
"percent_delta": -0.0166,
"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.105,
"after": 3.1999,
"delta": 0.0949,
"percent_delta": 0.0306,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.305,
"after": 0.3017,
"delta": -0.0033,
"percent_delta": -0.0108,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.281,
"after": 0.2699,
"delta": -0.0111,
"percent_delta": -0.0395,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.947,
"after": 0.9647,
"delta": 0.0177,
"percent_delta": 0.0187,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.053,
"after": 0.0571,
"delta": 0.0041,
"percent_delta": 0.0774,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.363,
"after": 0.3566,
"delta": -0.0064,
"percent_delta": -0.0176,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.421,
"after": 0.4309,
"delta": 0.0099,
"percent_delta": 0.0235,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.351,
"after": 0.3329,
"delta": -0.0181,
"percent_delta": -0.0516,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.412,
"after": 0.4091,
"delta": -0.0029,
"percent_delta": -0.007,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.737,
"after": 0.7386,
"delta": 0.0016,
"percent_delta": 0.0022,
"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_AB",
"before": 3.105,
"after": 3.1999,
"delta": 0.0949,
"percent_delta": 0.0306,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.363,
"after": 0.3566,
"delta": -0.0064,
"percent_delta": -0.0176,
"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": 57
}
},
{
"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.1721,
"predicted_3B": 0.0008,
"predicted_AB": 3.1999,
"predicted_AVG": 0.2951,
"predicted_BB": 0.2674,
"predicted_H": 0.9442,
"predicted_HBP": 0.004,
"predicted_HR": 0.0558,
"predicted_OBP": 0.3494,
"predicted_R": 0.4149,
"predicted_RBI": 0.3205,
"predicted_SLG": 0.4017,
"predicted_SO": 0.7453
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1721,
"after": 0.1721,
"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.1999,
"after": 3.1999,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.3017,
"after": 0.2951,
"delta": -0.0066,
"percent_delta": -0.0219,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2699,
"after": 0.2674,
"delta": -0.0025,
"percent_delta": -0.0093,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9647,
"after": 0.9442,
"delta": -0.0205,
"percent_delta": -0.0213,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.004,
"after": 0.004,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0571,
"after": 0.0558,
"delta": -0.0013,
"percent_delta": -0.0228,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3566,
"after": 0.3494,
"delta": -0.0072,
"percent_delta": -0.0202,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4309,
"after": 0.4149,
"delta": -0.016,
"percent_delta": -0.0371,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3329,
"after": 0.3205,
"delta": -0.0124,
"percent_delta": -0.0372,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4091,
"after": 0.4017,
"delta": -0.0074,
"percent_delta": -0.0181,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7386,
"after": 0.7453,
"delta": 0.0067,
"percent_delta": 0.0091,
"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.4091,
"after": 0.4017,
"delta": -0.0074,
"percent_delta": -0.0181,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.20), rates preserved: AVG=0.295 HR/AB=0.017",
"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.1721,
"after": 0.0,
"delta": -0.1721,
"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.1999,
"after": 3.0,
"delta": -0.1999,
"percent_delta": -0.0625,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2674,
"after": 0.0,
"delta": -0.2674,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9442,
"after": 1.0,
"delta": 0.0558,
"percent_delta": 0.0591,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.004,
"after": 0.0,
"delta": -0.004,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0558,
"after": 0.0,
"delta": -0.0558,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3205,
"after": 0.0,
"delta": -0.3205,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7453,
"after": 1.0,
"delta": 0.2547,
"percent_delta": 0.3417,
"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.7453,
"after": 1.0,
"delta": 0.2547,
"percent_delta": 0.3417,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.3205,
"after": 0.0,
"delta": -0.3205,
"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.4149,
"after": 0.0,
"delta": -0.4149,
"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.4149,
"after": 0.0,
"delta": -0.4149,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2951,
"after": 0.333,
"delta": 0.0379,
"percent_delta": 0.1284,
"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.3494,
"after": 0.333,
"delta": -0.0164,
"percent_delta": -0.0469,
"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.4017,
"after": 0.333,
"delta": -0.0687,
"percent_delta": -0.171,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2951,
"after": 0.333,
"delta": 0.0379,
"percent_delta": 0.1284,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4017,
"after": 0.333,
"delta": -0.0687,
"percent_delta": -0.171,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 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": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_AVG": 0.2951,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_LF": 0.0,
"predicted_OBP": 0.3494,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4017,
"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.333,
"after": 0.2951,
"delta": -0.0379,
"percent_delta": -0.1139,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3494,
"delta": 0.0164,
"percent_delta": 0.0493,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4017,
"delta": 0.0687,
"percent_delta": 0.2062,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4017,
"delta": 0.0687,
"percent_delta": 0.2062,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2951,
"delta": -0.0379,
"percent_delta": -0.1139,
"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.175,
"after": 0.0,
"delta": -0.175,
"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.105,
"after": 5.0,
"delta": 1.895,
"percent_delta": 0.6103,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.305,
"after": 0.2951,
"delta": -0.0099,
"percent_delta": -0.0325,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.281,
"after": 0.0,
"delta": -0.281,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.947,
"after": 0.0,
"delta": -0.947,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.053,
"after": 0.0,
"delta": -0.053,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.363,
"after": 0.3494,
"delta": -0.0136,
"percent_delta": -0.0375,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.421,
"after": 0.0,
"delta": -0.421,
"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_SLG",
"before": 0.412,
"after": 0.4017,
"delta": -0.0103,
"percent_delta": -0.025,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.737,
"after": 3.0,
"delta": 2.263,
"percent_delta": 3.0706,
"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.737,
"after": 3.0,
"delta": 2.263,
"percent_delta": 3.0706,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.947,
"after": 0.0,
"delta": -0.947,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.175 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.105 | - |
| predicted_AVG | 0.305 | - |
| predicted_BB | 0.281 | - |
| predicted_H | 0.947 | - |
| predicted_HR | 0.053 | - |
| predicted_OBP | 0.363 | - |
| predicted_R | 0.421 | - |
| predicted_RBI | 0.351 | - |
| predicted_SLG | 0.412 | - |
| predicted_SO | 0.737 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.172 | -0.003 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 3.200 | 0.095 |
| predicted_AVG | 0.302 | -0.003 |
| predicted_BB | 0.270 | -0.011 |
| predicted_H | 0.965 | 0.018 |
| predicted_HBP | 0.004 | - |
| predicted_HR | 0.057 | 0.004 |
| predicted_OBP | 0.357 | -0.006 |
| predicted_R | 0.431 | 0.010 |
| predicted_RBI | 0.333 | -0.018 |
| predicted_SLG | 0.409 | -0.003 |
| predicted_SO | 0.739 | 0.002 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.172 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 3.200 | 0.000 |
| predicted_AVG | 0.295 | -0.007 |
| predicted_BB | 0.267 | -0.002 |
| predicted_H | 0.944 | -0.020 |
| predicted_HBP | 0.004 | 0.000 |
| predicted_HR | 0.056 | -0.001 |
| predicted_OBP | 0.349 | -0.007 |
| predicted_R | 0.415 | -0.016 |
| predicted_RBI | 0.321 | -0.012 |
| predicted_SLG | 0.402 | -0.007 |
| predicted_SO | 0.745 | 0.007 |
AB rounded to 3 (raw=3.20), rates preserved: AVG=0.295 HR/AB=0.017
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.172 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | -0.200 |
| predicted_AVG | 0.333 | 0.038 |
| predicted_BB | 0.000 | -0.267 |
| predicted_H | 1.000 | 0.056 |
| predicted_HR | 0.000 | -0.056 |
| predicted_OBP | 0.333 | -0.016 |
| predicted_R | 0.000 | -0.415 |
| predicted_RBI | 0.000 | -0.321 |
| predicted_SLG | 0.333 | -0.069 |
| predicted_SO | 1.000 | 0.255 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 5.000 | 2.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 3.000 | 2.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 19.000 | 5.000 | 1.000 | 0.000 | 0.000 | 0.000 | 2.000 | 1.000 | 4.000 | 0.2632 | 0.3000 | 0.3158 | 0.2632 | 0.0000 | 0.0000 | 0.0526 | 0.2105 |
| last_10 | 0.20 | 10 | - | 32.000 | 11.000 | 1.000 | 0.000 | 1.000 | 3.000 | 5.000 | 2.000 | 6.000 | 0.3438 | 0.3824 | 0.4688 | 0.3438 | 0.0312 | 0.0938 | 0.0625 | 0.1875 |
| season | 0.60 | 57 | - | 177.000 | 54.000 | 10.000 | 0.000 | 3.000 | 20.000 | 24.000 | 16.000 | 42.000 | 0.3051 | 0.3627 | 0.4124 | 0.3051 | 0.0169 | 0.1130 | 0.0904 | 0.2373 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1680 |
| predicted_3B | 0.0020 |
| predicted_AB | 3.3360 |
| predicted_AVG | 0.2969 |
| predicted_BB | 0.2540 |
| predicted_H | 0.9900 |
| predicted_HBP | 0.0040 |
| predicted_HR | 0.0630 |
| predicted_OBP | 0.3475 |
| predicted_R | 0.4450 |
| predicted_RBI | 0.3070 |
| predicted_SLG | 0.4049 |
| predicted_SO | 0.7410 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1750 | 0.1680 | 0.1721 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 3.1050 | 3.3360 | 3.1999 | model_form_blend |
| predicted_AVG | 0.3050 | 0.2969 | 0.3017 | model_form_blend |
| predicted_BB | 0.2810 | 0.2540 | 0.2699 | model_form_blend |
| predicted_H | 0.9470 | 0.9900 | 0.9647 | model_form_blend |
| predicted_HBP | - | 0.0040 | 0.0040 | form_only |
| predicted_HR | 0.0530 | 0.0630 | 0.0571 | model_form_blend |
| predicted_OBP | 0.3630 | 0.3475 | 0.3566 | model_form_blend |
| predicted_R | 0.4210 | 0.4450 | 0.4309 | model_form_blend |
| predicted_RBI | 0.3510 | 0.3070 | 0.3329 | model_form_blend |
| predicted_SLG | 0.4120 | 0.4049 | 0.4091 | model_form_blend |
| predicted_SO | 0.7370 | 0.7410 | 0.7386 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 165 |
| Season rows before report date | 165 |
| Report year | 2026 |
| Profile rows used | 57 |
| Hitter metrics | Hitting_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 Field | Value |
|---|---|
| PA | 5 |
| AB | 5 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 3 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.305 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.333 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 8 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | RF |
| gameID | 20260811_TEX@LAA |
| game_type | full |
| mlbID | 685133 |
| playerID | 685133 |
| playerName | Wade Meckler |
| pos | OF |
| started | True |
| startingPosition | RF |
| team | LAA |
| teamID | 13 |
| game_date | 2026-08-11 |
| sl_k_percent | 21.4 |
| sl_bb_percent | 8.7 |
| sl_woba | 0.348 |
| sl_xwoba | 0.308 |
| sl_xba | 0.257 |
| sl_xslg | 0.363 |
| sl_sweet_spot_percent | 37.5 |
| sl_barrel_batted_rate | 3.7 |
| sl_hard_hit_percent | 29.4 |
| sl_exit_velocity_avg | 86.0 |
| sl_launch_angle_avg | 6.3 |
| sl_whiff_percent | 23.4 |
| sl_swing_percent | 45.8 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.197 | 0.000 | 0.000 | Hitting_2B | 0.223 | 1.000 | -0.223 | -1.000 |
| predicted_3B | 0.026 | 0.000 | 0.000 | Hitting_3B | 0.024 | 0.000 | -0.024 | 0.000 |
| predicted_AB | 3.983 | 4.000 | 4.000 | Hitting_AB | 4.024 | 4.000 | -0.024 | 0.000 |
| predicted_AVG | 0.225 | 0.000 | 0.250 | Hitting_AVG | 0.241 | 0.500 | -0.241 | -0.500 |
| predicted_BB | 0.419 | 0.000 | 0.000 | Hitting_BB | 0.471 | 0.000 | -0.471 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.087 | 0.000 | -0.087 | 0.000 |
| predicted_H | 0.897 | 0.000 | 1.000 | Hitting_H | 0.970 | 2.000 | -0.970 | -2.000 |
| predicted_HR | 0.171 | 0.000 | 0.000 | Hitting_HR | 0.193 | 0.000 | -0.193 | 0.000 |
| predicted_OBP | 0.299 | 0.000 | 0.250 | Hitting_OBP | 0.330 | 0.500 | -0.330 | -0.500 |
| predicted_R | 0.641 | 0.000 | 1.000 | Hitting_R | 0.727 | 1.000 | -0.727 | -1.000 |
| predicted_RBI | 0.444 | 0.000 | 0.000 | Hitting_RBI | 0.495 | 1.000 | -0.495 | -1.000 |
| predicted_SLG | 0.416 | 0.000 | 0.250 | Hitting_SLG | 0.452 | 0.750 | -0.452 | -0.750 |
| predicted_SO | 1.427 | 2.000 | 1.000 | Hitting_SO | 1.440 | 1.000 | 0.560 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 9 |
| Better Metrics | 0 |
| Worse Metrics | 10 |
| Biggest Boost | predicted_SO: 1.4270 -> 2.0000 (boost 0.5730, worse) |
| Biggest Deboost | predicted_H: 0.8970 -> 0.0000 (deboost -0.8970, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 6 | 1 | 5 | 1 | 5 | predicted_AB: 3.9830 -> 4.0473 (boost 0.0643, better) | predicted_R: 0.6410 -> 0.5702 (deboost -0.0708, 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. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.3886 -> 0.3813 (deboost -0.0073, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 1 | 5 | 2 | 4 | predicted_H: 0.8431 -> 1.0000 (boost 0.1569, better) | predicted_SO: 1.4383 -> 1.0000 (deboost -0.4383, better) | AB rounded to 4 (raw=4.05), rates preserved: AVG=0.208 HR/AB=0.037 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=7.0, weight=0.076, BvP AVG=0.143) |
| 6 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5490 -> 1.0000 (boost 0.4510, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2083 -> 0.2500 (boost 0.0417, better) | predicted_SLG: 0.3813 -> 0.2500 (deboost -0.1313, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 3 | 1 | 2 | 0 | 3 | predicted_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 |
| 9 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2500 -> 0.3813 (boost 0.1313, better) | predicted_AVG: 0.2500 -> 0.2083 (deboost -0.0417, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "687263",
"player_name": "Zach Neto",
"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.197,
"predicted_3B": 0.026,
"predicted_AB": 3.983,
"predicted_AVG": 0.225,
"predicted_BB": 0.419,
"predicted_H": 0.897,
"predicted_HR": 0.171,
"predicted_OBP": 0.299,
"predicted_R": 0.641,
"predicted_RBI": 0.444,
"predicted_SLG": 0.416,
"predicted_SO": 1.427
},
"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.2126,
"predicted_3B": 0.0217,
"predicted_AB": 4.0473,
"predicted_AVG": 0.2129,
"predicted_BB": 0.3508,
"predicted_H": 0.8614,
"predicted_HBP": 0.042,
"predicted_HR": 0.1515,
"predicted_OBP": 0.2768,
"predicted_R": 0.5702,
"predicted_RBI": 0.4544,
"predicted_SLG": 0.3886,
"predicted_SO": 1.4253
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.197,
"after": 0.2126,
"delta": 0.0156,
"percent_delta": 0.0792,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.026,
"after": 0.0217,
"delta": -0.0043,
"percent_delta": -0.1654,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.983,
"after": 4.0473,
"delta": 0.0643,
"percent_delta": 0.0161,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.225,
"after": 0.2129,
"delta": -0.0121,
"percent_delta": -0.0538,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.419,
"after": 0.3508,
"delta": -0.0682,
"percent_delta": -0.1628,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.897,
"after": 0.8614,
"delta": -0.0356,
"percent_delta": -0.0397,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.171,
"after": 0.1515,
"delta": -0.0195,
"percent_delta": -0.114,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.299,
"after": 0.2768,
"delta": -0.0222,
"percent_delta": -0.0742,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.641,
"after": 0.5702,
"delta": -0.0708,
"percent_delta": -0.1105,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.444,
"after": 0.4544,
"delta": 0.0104,
"percent_delta": 0.0234,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.416,
"after": 0.3886,
"delta": -0.0274,
"percent_delta": -0.0659,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.427,
"after": 1.4253,
"delta": -0.0017,
"percent_delta": -0.0012,
"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_AB",
"before": 3.983,
"after": 4.0473,
"delta": 0.0643,
"percent_delta": 0.0161,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.641,
"after": 0.5702,
"delta": -0.0708,
"percent_delta": -0.1105,
"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": 117
}
},
{
"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.2126,
"predicted_3B": 0.0217,
"predicted_AB": 4.0473,
"predicted_AVG": 0.2083,
"predicted_BB": 0.3476,
"predicted_H": 0.8431,
"predicted_HBP": 0.042,
"predicted_HR": 0.1481,
"predicted_OBP": 0.2709,
"predicted_R": 0.549,
"predicted_RBI": 0.4375,
"predicted_SLG": 0.3813,
"predicted_SO": 1.4383
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2126,
"after": 0.2126,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0217,
"after": 0.0217,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0473,
"after": 4.0473,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2129,
"after": 0.2083,
"delta": -0.0046,
"percent_delta": -0.0216,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3508,
"after": 0.3476,
"delta": -0.0032,
"percent_delta": -0.0091,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8614,
"after": 0.8431,
"delta": -0.0183,
"percent_delta": -0.0212,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.042,
"after": 0.042,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1515,
"after": 0.1481,
"delta": -0.0034,
"percent_delta": -0.0224,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2768,
"after": 0.2709,
"delta": -0.0059,
"percent_delta": -0.0213,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5702,
"after": 0.549,
"delta": -0.0212,
"percent_delta": -0.0372,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4544,
"after": 0.4375,
"delta": -0.0169,
"percent_delta": -0.0372,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3886,
"after": 0.3813,
"delta": -0.0073,
"percent_delta": -0.0188,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.4253,
"after": 1.4383,
"delta": 0.013,
"percent_delta": 0.0091,
"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.3886,
"after": 0.3813,
"delta": -0.0073,
"percent_delta": -0.0188,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.05), rates preserved: AVG=0.208 HR/AB=0.037",
"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.2126,
"after": 0.0,
"delta": -0.2126,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0217,
"after": 0.0,
"delta": -0.0217,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0473,
"after": 4.0,
"delta": -0.0473,
"percent_delta": -0.0117,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3476,
"after": 0.0,
"delta": -0.3476,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8431,
"after": 1.0,
"delta": 0.1569,
"percent_delta": 0.1861,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.042,
"after": 0.0,
"delta": -0.042,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1481,
"after": 0.0,
"delta": -0.1481,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4375,
"after": 0.0,
"delta": -0.4375,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.4383,
"after": 1.0,
"delta": -0.4383,
"percent_delta": -0.3047,
"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.8431,
"after": 1.0,
"delta": 0.1569,
"percent_delta": 0.1861,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.4383,
"after": 1.0,
"delta": -0.4383,
"percent_delta": -0.3047,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=7.0, weight=0.076, BvP AVG=0.143)",
"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.9243,
"bvp": 0.0757
},
"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.549,
"after": 1.0,
"delta": 0.451,
"percent_delta": 0.8215,
"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.549,
"after": 1.0,
"delta": 0.451,
"percent_delta": 0.8215,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 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.2083,
"after": 0.25,
"delta": 0.0417,
"percent_delta": 0.2002,
"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.2709,
"after": 0.25,
"delta": -0.0209,
"percent_delta": -0.0772,
"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.3813,
"after": 0.25,
"delta": -0.1313,
"percent_delta": -0.3443,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2083,
"after": 0.25,
"delta": 0.0417,
"percent_delta": 0.2002,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3813,
"after": 0.25,
"delta": -0.1313,
"percent_delta": -0.3443,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 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": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 3,
"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": 4.0,
"predicted_AVG": 0.2083,
"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.2709,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3813,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2083,
"delta": -0.0417,
"percent_delta": -0.1668,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.2709,
"delta": 0.0209,
"percent_delta": 0.0837,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3813,
"delta": 0.1313,
"percent_delta": 0.5253,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3813,
"delta": 0.1313,
"percent_delta": 0.5253,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2083,
"delta": -0.0417,
"percent_delta": -0.1668,
"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.197,
"after": 0.0,
"delta": -0.197,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.026,
"after": 0.0,
"delta": -0.026,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.983,
"after": 4.0,
"delta": 0.017,
"percent_delta": 0.0043,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.225,
"after": 0.2083,
"delta": -0.0167,
"percent_delta": -0.0742,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.419,
"after": 0.0,
"delta": -0.419,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.897,
"after": 0.0,
"delta": -0.897,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.171,
"after": 0.0,
"delta": -0.171,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.299,
"after": 0.2709,
"delta": -0.0281,
"percent_delta": -0.094,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.641,
"after": 0.0,
"delta": -0.641,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.444,
"after": 0.0,
"delta": -0.444,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.416,
"after": 0.3813,
"delta": -0.0347,
"percent_delta": -0.0834,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.427,
"after": 2.0,
"delta": 0.573,
"percent_delta": 0.4015,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 1,
"deboosted_metrics": 9,
"better_metrics": 0,
"worse_metrics": 10,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.427,
"after": 2.0,
"delta": 0.573,
"percent_delta": 0.4015,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.897,
"after": 0.0,
"delta": -0.897,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.197 | - |
| predicted_3B | 0.026 | - |
| predicted_AB | 3.983 | - |
| predicted_AVG | 0.225 | - |
| predicted_BB | 0.419 | - |
| predicted_H | 0.897 | - |
| predicted_HR | 0.171 | - |
| predicted_OBP | 0.299 | - |
| predicted_R | 0.641 | - |
| predicted_RBI | 0.444 | - |
| predicted_SLG | 0.416 | - |
| predicted_SO | 1.427 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.213 | 0.016 |
| predicted_3B | 0.022 | -0.004 |
| predicted_AB | 4.047 | 0.064 |
| predicted_AVG | 0.213 | -0.012 |
| predicted_BB | 0.351 | -0.068 |
| predicted_H | 0.861 | -0.036 |
| predicted_HBP | 0.042 | - |
| predicted_HR | 0.151 | -0.020 |
| predicted_OBP | 0.277 | -0.022 |
| predicted_R | 0.570 | -0.071 |
| predicted_RBI | 0.454 | 0.010 |
| predicted_SLG | 0.389 | -0.027 |
| predicted_SO | 1.425 | -0.002 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.213 | 0.000 |
| predicted_3B | 0.022 | 0.000 |
| predicted_AB | 4.047 | 0.000 |
| predicted_AVG | 0.208 | -0.005 |
| predicted_BB | 0.348 | -0.003 |
| predicted_H | 0.843 | -0.018 |
| predicted_HBP | 0.042 | 0.000 |
| predicted_HR | 0.148 | -0.003 |
| predicted_OBP | 0.271 | -0.006 |
| predicted_R | 0.549 | -0.021 |
| predicted_RBI | 0.438 | -0.017 |
| predicted_SLG | 0.381 | -0.007 |
| predicted_SO | 1.438 | 0.013 |
AB rounded to 4 (raw=4.05), rates preserved: AVG=0.208 HR/AB=0.037
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=7.0, weight=0.076, BvP AVG=0.143)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.213 |
| predicted_3B | 0.000 | -0.022 |
| predicted_AB | 4.000 | -0.047 |
| predicted_AVG | 0.250 | 0.042 |
| predicted_BB | 0.000 | -0.348 |
| predicted_H | 1.000 | 0.157 |
| predicted_HR | 0.000 | -0.148 |
| predicted_OBP | 0.250 | -0.021 |
| predicted_R | 1.000 | 0.451 |
| predicted_RBI | 0.000 | -0.438 |
| predicted_SLG | 0.250 | -0.131 |
| predicted_SO | 1.000 | -0.438 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 22.000 | 3.000 | 2.000 | 0.000 | 0.000 | 2.000 | 1.000 | 0.000 | 7.000 | 0.1364 | 0.1364 | 0.2273 | 0.1364 | 0.0000 | 0.0909 | 0.0000 | 0.3182 |
| last_10 | 0.20 | 10 | - | 44.000 | 7.000 | 2.000 | 0.000 | 1.000 | 6.000 | 2.000 | 0.000 | 16.000 | 0.1591 | 0.1591 | 0.2727 | 0.1591 | 0.0227 | 0.1364 | 0.0000 | 0.3636 |
| season | 0.60 | 117 | - | 466.000 | 105.000 | 23.000 | 3.000 | 20.000 | 52.000 | 75.000 | 49.000 | 167.000 | 0.2253 | 0.3092 | 0.4163 | 0.2253 | 0.0429 | 0.1116 | 0.1051 | 0.3584 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2330 |
| predicted_3B | 0.0160 |
| predicted_AB | 4.1310 |
| predicted_AVG | 0.1972 |
| predicted_BB | 0.2620 |
| predicted_H | 0.8150 |
| predicted_HBP | 0.0420 |
| predicted_HR | 0.1260 |
| predicted_OBP | 0.2479 |
| predicted_R | 0.4780 |
| predicted_RBI | 0.4680 |
| predicted_SLG | 0.3530 |
| predicted_SO | 1.4230 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1970 | 0.2330 | 0.2126 | model_form_blend |
| predicted_3B | 0.0260 | 0.0160 | 0.0217 | model_form_blend |
| predicted_AB | 3.9830 | 4.1310 | 4.0473 | model_form_blend |
| predicted_AVG | 0.2250 | 0.1972 | 0.2129 | model_form_blend |
| predicted_BB | 0.4190 | 0.2620 | 0.3508 | model_form_blend |
| predicted_H | 0.8970 | 0.8150 | 0.8614 | model_form_blend |
| predicted_HBP | - | 0.0420 | 0.0420 | form_only |
| predicted_HR | 0.1710 | 0.1260 | 0.1515 | model_form_blend |
| predicted_OBP | 0.2990 | 0.2479 | 0.2768 | model_form_blend |
| predicted_R | 0.6410 | 0.4780 | 0.5702 | model_form_blend |
| predicted_RBI | 0.4440 | 0.4680 | 0.4544 | model_form_blend |
| predicted_SLG | 0.4160 | 0.3530 | 0.3886 | model_form_blend |
| predicted_SO | 1.4270 | 1.4230 | 1.4253 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 461 |
| Season rows before report date | 461 |
| Report year | 2026 |
| Profile rows used | 117 |
| Hitter metrics | Hitting_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 Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.225 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 1 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 1 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.5 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 3 |
| Hitting_battingOrder | 1 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | SS |
| gameID | 20260811_TEX@LAA |
| game_type | full |
| mlbID | 687263 |
| playerID | 687263 |
| playerName | Zach Neto |
| pos | SS |
| started | True |
| startingPosition | SS |
| team | LAA |
| teamID | 13 |
| game_date | 2026-08-11 |
| sl_k_percent | 31.9 |
| sl_bb_percent | 9.4 |
| sl_woba | 0.318 |
| sl_xwoba | 0.297 |
| sl_xba | 0.199 |
| sl_xslg | 0.389 |
| sl_sweet_spot_percent | 34.7 |
| sl_barrel_batted_rate | 11.7 |
| sl_hard_hit_percent | 40.1 |
| sl_exit_velocity_avg | 89.4 |
| sl_launch_angle_avg | 22.9 |
| sl_whiff_percent | 33.5 |
| sl_swing_percent | 51.3 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.091 | 0.000 | 0.000 | Hitting_2B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.920 | 3.000 | 3.000 | Hitting_AB | 3.625 | 3.000 | -0.625 | 0.000 |
| predicted_AVG | 0.199 | 0.333 | 0.333 | Hitting_AVG | 0.138 | 0.000 | 0.195 | 0.333 |
| predicted_BB | 0.258 | 1.000 | 0.000 | Hitting_BB | 0.125 | 0.000 | 0.875 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.580 | 1.000 | 1.000 | Hitting_H | 0.500 | 0.000 | 0.500 | 1.000 |
| predicted_HR | 0.070 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.249 | 0.500 | 0.333 | Hitting_OBP | 0.167 | 0.000 | 0.333 | 0.500 |
| predicted_R | 0.242 | 1.000 | 0.000 | Hitting_R | 0.000 | 0.000 | 1.000 | 1.000 |
| predicted_RBI | 0.270 | 0.000 | 0.000 | Hitting_RBI | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_SLG | 0.286 | 0.333 | 0.333 | Hitting_SLG | 0.138 | 0.000 | 0.195 | 0.333 |
| predicted_SO | 0.652 | 0.000 | 1.000 | Hitting_SO | 0.875 | 0.000 | -0.875 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 9 |
| Boosted Metrics | 4 |
| Deboosted Metrics | 5 |
| Better Metrics | 5 |
| Worse Metrics | 4 |
| Biggest Boost | predicted_R: 0.2420 -> 1.0000 (boost 0.7580, better) |
| Biggest Deboost | predicted_SO: 0.6520 -> 0.0000 (deboost -0.6520, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 2 | 1 | 1 | 1 | 1 | predicted_AB: 2.9200 -> 3.0103 (boost 0.0903, better) | predicted_AVG: 0.1990 -> 0.1936 (deboost -0.0054, 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. |
| 3 | team_form_snapshot | 0 | 0 | 0 | 0 | 0 | - | - | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 2 | 4 | 1 | 5 | predicted_H: 0.5693 -> 1.0000 (boost 0.4307, better) | predicted_RBI: 0.2505 -> 0.0000 (deboost -0.2505, worse) | AB rounded to 3 (raw=3.01), rates preserved: AVG=0.189 HR/AB=0.022 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.2211 -> 0.0000 (deboost -0.2211, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.1891 -> 0.3330 (boost 0.1439, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 2 | 1 | 3 | 0 | predicted_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 |
| 8 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.1891 (deboost -0.1439, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "694208",
"player_name": "Moisés Ballesteros",
"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.091,
"predicted_3B": 0.0,
"predicted_AB": 2.92,
"predicted_AVG": 0.199,
"predicted_BB": 0.258,
"predicted_H": 0.58,
"predicted_HR": 0.07,
"predicted_OBP": 0.249,
"predicted_R": 0.242,
"predicted_RBI": 0.27,
"predicted_SLG": 0.286,
"predicted_SO": 0.652
},
"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.0832,
"predicted_3B": 0.0008,
"predicted_AB": 3.0103,
"predicted_AVG": 0.1936,
"predicted_BB": 0.2522,
"predicted_H": 0.5817,
"predicted_HBP": 0.003,
"predicted_HR": 0.0688,
"predicted_OBP": 0.2468,
"predicted_R": 0.2296,
"predicted_RBI": 0.2601,
"predicted_SLG": 0.2813,
"predicted_SO": 0.6895
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.091,
"after": 0.0832,
"delta": -0.0078,
"percent_delta": -0.0857,
"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": 2.92,
"after": 3.0103,
"delta": 0.0903,
"percent_delta": 0.0309,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.199,
"after": 0.1936,
"delta": -0.0054,
"percent_delta": -0.0271,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.258,
"after": 0.2522,
"delta": -0.0058,
"percent_delta": -0.0225,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.58,
"after": 0.5817,
"delta": 0.0017,
"percent_delta": 0.0029,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 0.0688,
"delta": -0.0012,
"percent_delta": -0.0171,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.249,
"after": 0.2468,
"delta": -0.0022,
"percent_delta": -0.0088,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.242,
"after": 0.2296,
"delta": -0.0124,
"percent_delta": -0.0512,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.27,
"after": 0.2601,
"delta": -0.0099,
"percent_delta": -0.0367,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.286,
"after": 0.2813,
"delta": -0.0047,
"percent_delta": -0.0164,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.652,
"after": 0.6895,
"delta": 0.0375,
"percent_delta": 0.0575,
"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_AB",
"before": 2.92,
"after": 3.0103,
"delta": 0.0903,
"percent_delta": 0.0309,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.199,
"after": 0.1936,
"delta": -0.0054,
"percent_delta": -0.0271,
"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": 66
}
},
{
"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.0832,
"predicted_3B": 0.0008,
"predicted_AB": 3.0103,
"predicted_AVG": 0.1891,
"predicted_BB": 0.2499,
"predicted_H": 0.5693,
"predicted_HBP": 0.003,
"predicted_HR": 0.0673,
"predicted_OBP": 0.2513,
"predicted_R": 0.2211,
"predicted_RBI": 0.2505,
"predicted_SLG": 0.2843,
"predicted_SO": 0.6958
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0832,
"after": 0.0832,
"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.0103,
"after": 3.0103,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1936,
"after": 0.1891,
"delta": -0.0045,
"percent_delta": -0.0232,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.2522,
"after": 0.2499,
"delta": -0.0023,
"percent_delta": -0.0091,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.5817,
"after": 0.5693,
"delta": -0.0124,
"percent_delta": -0.0213,
"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.0688,
"after": 0.0673,
"delta": -0.0015,
"percent_delta": -0.0218,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2468,
"after": 0.2513,
"delta": 0.0045,
"percent_delta": 0.0182,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.2296,
"after": 0.2211,
"delta": -0.0085,
"percent_delta": -0.037,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2601,
"after": 0.2505,
"delta": -0.0096,
"percent_delta": -0.0369,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.2813,
"after": 0.2843,
"delta": 0.003,
"percent_delta": 0.0107,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.6895,
"after": 0.6958,
"delta": 0.0063,
"percent_delta": 0.0091,
"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 3 (raw=3.01), rates preserved: AVG=0.189 HR/AB=0.022",
"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.0832,
"after": 0.0,
"delta": -0.0832,
"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.0103,
"after": 3.0,
"delta": -0.0103,
"percent_delta": -0.0034,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.2499,
"after": 0.0,
"delta": -0.2499,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.5693,
"after": 1.0,
"delta": 0.4307,
"percent_delta": 0.7565,
"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.0673,
"after": 0.0,
"delta": -0.0673,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.2505,
"after": 0.0,
"delta": -0.2505,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6958,
"after": 1.0,
"delta": 0.3042,
"percent_delta": 0.4372,
"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.5693,
"after": 1.0,
"delta": 0.4307,
"percent_delta": 0.7565,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"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": 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.2211,
"after": 0.0,
"delta": -0.2211,
"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.2211,
"after": 0.0,
"delta": -0.2211,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1891,
"after": 0.333,
"delta": 0.1439,
"percent_delta": 0.761,
"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.2513,
"after": 0.333,
"delta": 0.0817,
"percent_delta": 0.3251,
"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.2843,
"after": 0.333,
"delta": 0.0487,
"percent_delta": 0.1713,
"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.1891,
"after": 0.333,
"delta": 0.1439,
"percent_delta": 0.761,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 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": 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_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": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.1891,
"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.2513,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2843,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1891,
"delta": -0.1439,
"percent_delta": -0.4321,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2513,
"delta": -0.0817,
"percent_delta": -0.2454,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.2843,
"delta": -0.0487,
"percent_delta": -0.1462,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1891,
"delta": -0.1439,
"percent_delta": -0.4321,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.091,
"after": 0.0,
"delta": -0.091,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.92,
"after": 3.0,
"delta": 0.08,
"percent_delta": 0.0274,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.199,
"after": 0.1891,
"delta": -0.0099,
"percent_delta": -0.0497,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.258,
"after": 1.0,
"delta": 0.742,
"percent_delta": 2.876,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.58,
"after": 1.0,
"delta": 0.42,
"percent_delta": 0.7241,
"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.249,
"after": 0.2513,
"delta": 0.0023,
"percent_delta": 0.0092,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.242,
"after": 1.0,
"delta": 0.758,
"percent_delta": 3.1322,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.27,
"after": 0.0,
"delta": -0.27,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.286,
"after": 0.2843,
"delta": -0.0017,
"percent_delta": -0.0059,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.652,
"after": 0.0,
"delta": -0.652,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 4,
"deboosted_metrics": 5,
"better_metrics": 5,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.242,
"after": 1.0,
"delta": 0.758,
"percent_delta": 3.1322,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.652,
"after": 0.0,
"delta": -0.652,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.091 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.920 | - |
| predicted_AVG | 0.199 | - |
| predicted_BB | 0.258 | - |
| predicted_H | 0.580 | - |
| predicted_HR | 0.070 | - |
| predicted_OBP | 0.249 | - |
| predicted_R | 0.242 | - |
| predicted_RBI | 0.270 | - |
| predicted_SLG | 0.286 | - |
| predicted_SO | 0.652 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.083 | -0.008 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 3.010 | 0.090 |
| predicted_AVG | 0.194 | -0.005 |
| predicted_BB | 0.252 | -0.006 |
| predicted_H | 0.582 | 0.002 |
| predicted_HBP | 0.003 | - |
| predicted_HR | 0.069 | -0.001 |
| predicted_OBP | 0.247 | -0.002 |
| predicted_R | 0.230 | -0.012 |
| predicted_RBI | 0.260 | -0.010 |
| predicted_SLG | 0.281 | -0.005 |
| predicted_SO | 0.690 | 0.037 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.083 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 3.010 | 0.000 |
| predicted_AVG | 0.189 | -0.005 |
| predicted_BB | 0.250 | -0.002 |
| predicted_H | 0.569 | -0.012 |
| predicted_HBP | 0.003 | 0.000 |
| predicted_HR | 0.067 | -0.002 |
| predicted_OBP | 0.251 | 0.005 |
| predicted_R | 0.221 | -0.009 |
| predicted_RBI | 0.251 | -0.010 |
| predicted_SLG | 0.284 | 0.003 |
| predicted_SO | 0.696 | 0.006 |
AB rounded to 3 (raw=3.01), rates preserved: AVG=0.189 HR/AB=0.022
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.083 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | -0.010 |
| predicted_AVG | 0.333 | 0.144 |
| predicted_BB | 0.000 | -0.250 |
| predicted_H | 1.000 | 0.431 |
| predicted_HR | 0.000 | -0.067 |
| predicted_OBP | 0.333 | 0.082 |
| predicted_R | 0.000 | -0.221 |
| predicted_RBI | 0.000 | -0.251 |
| predicted_SLG | 0.333 | 0.049 |
| predicted_SO | 1.000 | 0.304 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 1.000 | 1.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 18.000 | 2.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 1.000 | 5.000 | 0.1111 | 0.1579 | 0.1111 | 0.1111 | 0.0000 | 0.0000 | 0.0556 | 0.2778 |
| last_10 | 0.20 | 10 | - | 32.000 | 4.000 | 0.000 | 0.000 | 0.000 | 0.000 | 1.000 | 2.000 | 7.000 | 0.1250 | 0.1765 | 0.1250 | 0.1250 | 0.0000 | 0.0000 | 0.0625 | 0.2188 |
| season | 0.60 | 66 | - | 185.000 | 40.000 | 6.000 | 0.000 | 6.000 | 22.000 | 16.000 | 17.000 | 43.000 | 0.2162 | 0.2794 | 0.3459 | 0.2162 | 0.0324 | 0.1189 | 0.0919 | 0.2324 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0720 |
| predicted_3B | 0.0020 |
| predicted_AB | 3.1390 |
| predicted_AVG | 0.1860 |
| predicted_BB | 0.2440 |
| predicted_H | 0.5840 |
| predicted_HBP | 0.0030 |
| predicted_HR | 0.0670 |
| predicted_OBP | 0.2436 |
| predicted_R | 0.2120 |
| predicted_RBI | 0.2460 |
| predicted_SLG | 0.2745 |
| predicted_SO | 0.7430 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0910 | 0.0720 | 0.0832 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 2.9200 | 3.1390 | 3.0103 | model_form_blend |
| predicted_AVG | 0.1990 | 0.1860 | 0.1936 | model_form_blend |
| predicted_BB | 0.2580 | 0.2440 | 0.2522 | model_form_blend |
| predicted_H | 0.5800 | 0.5840 | 0.5817 | model_form_blend |
| predicted_HBP | - | 0.0030 | 0.0030 | form_only |
| predicted_HR | 0.0700 | 0.0670 | 0.0688 | model_form_blend |
| predicted_OBP | 0.2490 | 0.2436 | 0.2468 | model_form_blend |
| predicted_R | 0.2420 | 0.2120 | 0.2296 | model_form_blend |
| predicted_RBI | 0.2700 | 0.2460 | 0.2601 | model_form_blend |
| predicted_SLG | 0.2860 | 0.2745 | 0.2813 | model_form_blend |
| predicted_SO | 0.6520 | 0.7430 | 0.6895 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 8 |
| Season rows before report date | 8 |
| Report year | 2026 |
| Profile rows used | 66 |
| Hitter metrics | Hitting_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 Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 0 |
| BB | 1 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.216 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 6 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | DH |
| gameID | 20260811_TEX@LAA |
| game_type | full |
| mlbID | 694208 |
| playerID | 694208 |
| playerName | Moisés Ballesteros |
| pos | C |
| started | True |
| startingPosition | DH |
| team | LAA |
| teamID | 13 |
| game_date | 2026-08-11 |
| sl_k_percent | 21.0 |
| sl_bb_percent | 8.8 |
| sl_woba | 0.28 |
| sl_xwoba | 0.31 |
| sl_xba | 0.243 |
| sl_xslg | 0.393 |
| sl_sweet_spot_percent | 33.3 |
| sl_barrel_batted_rate | 9.1 |
| sl_hard_hit_percent | 47.2 |
| sl_exit_velocity_avg | 90.4 |
| sl_launch_angle_avg | 10.0 |
| sl_whiff_percent | 27.1 |
| sl_swing_percent | 49.1 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.070 | 0.000 | 0.000 | Hitting_2B | 0.061 | 0.000 | -0.061 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.930 | 4.000 | 3.000 | Hitting_AB | 3.165 | 1.000 | 0.835 | 3.000 |
| predicted_AVG | 0.202 | 0.500 | 0.333 | Hitting_AVG | 0.203 | 1.000 | 0.297 | -0.500 |
| predicted_BB | 0.225 | 0.000 | 0.000 | Hitting_BB | 0.226 | 0.000 | -0.226 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.592 | 2.000 | 1.000 | Hitting_H | 0.642 | 1.000 | 1.358 | 1.000 |
| predicted_HR | 0.113 | 1.000 | 0.000 | Hitting_HR | 0.127 | 0.000 | 0.873 | 1.000 |
| predicted_OBP | 0.259 | 0.500 | 0.333 | Hitting_OBP | 0.258 | 1.000 | 0.242 | -0.500 |
| predicted_R | 0.268 | 1.000 | 0.000 | Hitting_R | 0.302 | 0.000 | 0.698 | 1.000 |
| predicted_RBI | 0.310 | 3.000 | 0.000 | Hitting_RBI | 0.340 | 0.000 | 2.660 | 3.000 |
| predicted_SLG | 0.341 | 1.250 | 0.333 | Hitting_SLG | 0.343 | 1.000 | 0.907 | 0.250 |
| predicted_SO | 0.901 | 1.000 | 1.000 | Hitting_SO | 0.929 | 0.000 | 0.071 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 10 |
| Boosted Metrics | 7 |
| Deboosted Metrics | 3 |
| Better Metrics | 6 |
| Worse Metrics | 4 |
| Biggest Boost | predicted_RBI: 0.3100 -> 3.0000 (boost 2.6900, better) |
| Biggest Deboost | predicted_BB: 0.2250 -> 0.0000 (deboost -0.2250, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 5 | 3 | 2 | 2 | 3 | predicted_BB: 0.2250 -> 0.3106 (boost 0.0856, better) | predicted_AB: 2.9300 -> 2.8506 (deboost -0.0794, 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. |
| 3 | team_form_snapshot | 1 | 0 | 1 | 0 | 1 | - | predicted_SLG: 0.3260 -> 0.3203 (deboost -0.0057, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 2 | 4 | 2 | 4 | predicted_H: 0.5651 -> 1.0000 (boost 0.4349, better) | predicted_BB: 0.3078 -> 0.0000 (deboost -0.3078, worse) | AB rounded to 3 (raw=2.93), rates preserved: AVG=0.193 HR/AB=0.031 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.2480 -> 0.0000 (deboost -0.2480, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.1982 -> 0.3330 (boost 0.1348, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 5 | 5 | 0 | 5 | 0 | predicted_RBI: 0.0000 -> 3.0000 (boost 3.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.1982 (deboost -0.1348, worse) | Final player values currently stored in the game 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.07,
"predicted_3B": 0.0,
"predicted_AB": 2.93,
"predicted_AVG": 0.202,
"predicted_BB": 0.225,
"predicted_H": 0.592,
"predicted_HR": 0.113,
"predicted_OBP": 0.259,
"predicted_R": 0.268,
"predicted_RBI": 0.31,
"predicted_SLG": 0.341,
"predicted_SO": 0.901
},
"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.0717,
"predicted_3B": 0.0004,
"predicted_AB": 2.8506,
"predicted_AVG": 0.2026,
"predicted_BB": 0.3106,
"predicted_H": 0.5774,
"predicted_HBP": 0.01,
"predicted_HR": 0.0939,
"predicted_OBP": 0.2795,
"predicted_R": 0.2576,
"predicted_RBI": 0.2618,
"predicted_SLG": 0.326,
"predicted_SO": 0.96
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.07,
"after": 0.0717,
"delta": 0.0017,
"percent_delta": 0.0243,
"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.93,
"after": 2.8506,
"delta": -0.0794,
"percent_delta": -0.0271,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.202,
"after": 0.2026,
"delta": 0.0006,
"percent_delta": 0.003,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.225,
"after": 0.3106,
"delta": 0.0856,
"percent_delta": 0.3804,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.592,
"after": 0.5774,
"delta": -0.0146,
"percent_delta": -0.0247,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.113,
"after": 0.0939,
"delta": -0.0191,
"percent_delta": -0.169,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.259,
"after": 0.2795,
"delta": 0.0205,
"percent_delta": 0.0792,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.268,
"after": 0.2576,
"delta": -0.0104,
"percent_delta": -0.0388,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.31,
"after": 0.2618,
"delta": -0.0482,
"percent_delta": -0.1555,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.341,
"after": 0.326,
"delta": -0.015,
"percent_delta": -0.044,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.901,
"after": 0.96,
"delta": 0.059,
"percent_delta": 0.0655,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 3,
"deboosted_metrics": 2,
"better_metrics": 2,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.225,
"after": 0.3106,
"delta": 0.0856,
"percent_delta": 0.3804,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 2.93,
"after": 2.8506,
"delta": -0.0794,
"percent_delta": -0.0271,
"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": 71
}
},
{
"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.0717,
"predicted_3B": 0.0004,
"predicted_AB": 2.8506,
"predicted_AVG": 0.1982,
"predicted_BB": 0.3078,
"predicted_H": 0.5651,
"predicted_HBP": 0.01,
"predicted_HR": 0.0918,
"predicted_OBP": 0.2764,
"predicted_R": 0.248,
"predicted_RBI": 0.2521,
"predicted_SLG": 0.3203,
"predicted_SO": 0.9687
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0717,
"after": 0.0717,
"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.8506,
"after": 2.8506,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2026,
"after": 0.1982,
"delta": -0.0044,
"percent_delta": -0.0217,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3106,
"after": 0.3078,
"delta": -0.0028,
"percent_delta": -0.009,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.5774,
"after": 0.5651,
"delta": -0.0123,
"percent_delta": -0.0213,
"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.0939,
"after": 0.0918,
"delta": -0.0021,
"percent_delta": -0.0224,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2795,
"after": 0.2764,
"delta": -0.0031,
"percent_delta": -0.0111,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.2576,
"after": 0.248,
"delta": -0.0096,
"percent_delta": -0.0373,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2618,
"after": 0.2521,
"delta": -0.0097,
"percent_delta": -0.0371,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.326,
"after": 0.3203,
"delta": -0.0057,
"percent_delta": -0.0175,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.96,
"after": 0.9687,
"delta": 0.0087,
"percent_delta": 0.0091,
"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.326,
"after": 0.3203,
"delta": -0.0057,
"percent_delta": -0.0175,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=2.93), rates preserved: AVG=0.193 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.0717,
"after": 0.0,
"delta": -0.0717,
"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.8506,
"after": 3.0,
"delta": 0.1494,
"percent_delta": 0.0524,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3078,
"after": 0.0,
"delta": -0.3078,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.5651,
"after": 1.0,
"delta": 0.4349,
"percent_delta": 0.7696,
"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.0918,
"after": 0.0,
"delta": -0.0918,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.2521,
"after": 0.0,
"delta": -0.2521,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9687,
"after": 1.0,
"delta": 0.0313,
"percent_delta": 0.0323,
"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.5651,
"after": 1.0,
"delta": 0.4349,
"percent_delta": 0.7696,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.3078,
"after": 0.0,
"delta": -0.3078,
"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.248,
"after": 0.0,
"delta": -0.248,
"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.248,
"after": 0.0,
"delta": -0.248,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1982,
"after": 0.333,
"delta": 0.1348,
"percent_delta": 0.6801,
"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.2764,
"after": 0.333,
"delta": 0.0566,
"percent_delta": 0.2048,
"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.3203,
"after": 0.333,
"delta": 0.0127,
"percent_delta": 0.0397,
"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.1982,
"after": 0.333,
"delta": 0.1348,
"percent_delta": 0.6801,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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": 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": 5,
"boosted_metrics": 5,
"deboosted_metrics": 0,
"better_metrics": 5,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.0,
"after": 3.0,
"delta": 3.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.1982,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_OBP": 0.2764,
"predicted_R": 1.0,
"predicted_RBI": 3.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3203,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1982,
"delta": -0.1348,
"percent_delta": -0.4047,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2764,
"delta": -0.0566,
"percent_delta": -0.1701,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3203,
"delta": -0.0127,
"percent_delta": -0.0382,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1982,
"delta": -0.1348,
"percent_delta": -0.4047,
"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.07,
"after": 0.0,
"delta": -0.07,
"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.93,
"after": 4.0,
"delta": 1.07,
"percent_delta": 0.3652,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.202,
"after": 0.1982,
"delta": -0.0038,
"percent_delta": -0.0188,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.225,
"after": 0.0,
"delta": -0.225,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.592,
"after": 2.0,
"delta": 1.408,
"percent_delta": 2.3784,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.113,
"after": 1.0,
"delta": 0.887,
"percent_delta": 7.8496,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.259,
"after": 0.2764,
"delta": 0.0174,
"percent_delta": 0.0672,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.268,
"after": 1.0,
"delta": 0.732,
"percent_delta": 2.7313,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.31,
"after": 3.0,
"delta": 2.69,
"percent_delta": 8.6774,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.341,
"after": 0.3203,
"delta": -0.0207,
"percent_delta": -0.0607,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.901,
"after": 1.0,
"delta": 0.099,
"percent_delta": 0.1099,
"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.31,
"after": 3.0,
"delta": 2.69,
"percent_delta": 8.6774,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.225,
"after": 0.0,
"delta": -0.225,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.070 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.930 | - |
| predicted_AVG | 0.202 | - |
| predicted_BB | 0.225 | - |
| predicted_H | 0.592 | - |
| predicted_HR | 0.113 | - |
| predicted_OBP | 0.259 | - |
| predicted_R | 0.268 | - |
| predicted_RBI | 0.310 | - |
| predicted_SLG | 0.341 | - |
| predicted_SO | 0.901 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.072 | 0.002 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 2.851 | -0.079 |
| predicted_AVG | 0.203 | 0.001 |
| predicted_BB | 0.311 | 0.086 |
| predicted_H | 0.577 | -0.015 |
| predicted_HBP | 0.010 | - |
| predicted_HR | 0.094 | -0.019 |
| predicted_OBP | 0.280 | 0.021 |
| predicted_R | 0.258 | -0.010 |
| predicted_RBI | 0.262 | -0.048 |
| predicted_SLG | 0.326 | -0.015 |
| predicted_SO | 0.960 | 0.059 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.072 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 2.851 | 0.000 |
| predicted_AVG | 0.198 | -0.004 |
| predicted_BB | 0.308 | -0.003 |
| predicted_H | 0.565 | -0.012 |
| predicted_HBP | 0.010 | 0.000 |
| predicted_HR | 0.092 | -0.002 |
| predicted_OBP | 0.276 | -0.003 |
| predicted_R | 0.248 | -0.010 |
| predicted_RBI | 0.252 | -0.010 |
| predicted_SLG | 0.320 | -0.006 |
| predicted_SO | 0.969 | 0.009 |
AB rounded to 3 (raw=2.93), rates preserved: AVG=0.193 HR/AB=0.031
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.072 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 3.000 | 0.149 |
| predicted_AVG | 0.333 | 0.135 |
| predicted_BB | 0.000 | -0.308 |
| predicted_H | 1.000 | 0.435 |
| predicted_HR | 0.000 | -0.092 |
| predicted_OBP | 0.333 | 0.057 |
| predicted_R | 0.000 | -0.248 |
| predicted_RBI | 0.000 | -0.252 |
| predicted_SLG | 0.333 | 0.013 |
| predicted_SO | 1.000 | 0.031 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 2.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 1.000 | 1.000 |
| PA | 4.000 | - |
| R | 1.000 | 1.000 |
| RBI | 3.000 | 3.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 11.000 | 2.000 | 0.000 | 0.000 | 0.000 | 0.000 | 1.000 | 4.000 | 7.000 | 0.1818 | 0.4000 | 0.1818 | 0.1818 | 0.0000 | 0.0000 | 0.3636 | 0.6364 |
| last_10 | 0.20 | 10 | - | 20.000 | 4.000 | 1.000 | 0.000 | 0.000 | 0.000 | 1.000 | 5.000 | 9.000 | 0.2000 | 0.3600 | 0.2500 | 0.2000 | 0.0000 | 0.0000 | 0.2500 | 0.4500 |
| season | 0.60 | 71 | - | 208.000 | 42.000 | 5.000 | 0.000 | 8.000 | 22.000 | 19.000 | 16.000 | 64.000 | 0.2019 | 0.2611 | 0.3413 | 0.2019 | 0.0385 | 0.1058 | 0.0769 | 0.3077 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0740 |
| predicted_3B | 0.0010 |
| predicted_AB | 2.7390 |
| predicted_AVG | 0.2034 |
| predicted_BB | 0.4310 |
| predicted_H | 0.5570 |
| predicted_HBP | 0.0100 |
| predicted_HR | 0.0670 |
| predicted_OBP | 0.3083 |
| predicted_R | 0.2430 |
| predicted_RBI | 0.1940 |
| predicted_SLG | 0.3049 |
| predicted_SO | 1.0430 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0700 | 0.0740 | 0.0717 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 2.9300 | 2.7390 | 2.8506 | model_form_blend |
| predicted_AVG | 0.2020 | 0.2034 | 0.2026 | model_form_blend |
| predicted_BB | 0.2250 | 0.4310 | 0.3106 | model_form_blend |
| predicted_H | 0.5920 | 0.5570 | 0.5774 | model_form_blend |
| predicted_HBP | - | 0.0100 | 0.0100 | form_only |
| predicted_HR | 0.1130 | 0.0670 | 0.0939 | model_form_blend |
| predicted_OBP | 0.2590 | 0.3083 | 0.2795 | model_form_blend |
| predicted_R | 0.2680 | 0.2430 | 0.2576 | model_form_blend |
| predicted_RBI | 0.3100 | 0.1940 | 0.2618 | model_form_blend |
| predicted_SLG | 0.3410 | 0.3049 | 0.3260 | model_form_blend |
| predicted_SO | 0.9010 | 1.0430 | 0.9600 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 212 |
| Season rows before report date | 212 |
| Report year | 2026 |
| Profile rows used | 71 |
| Hitter metrics | Hitting_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 Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 2 |
| 2B | 0 |
| 3B | 0 |
| HR | 1 |
| R | 1 |
| RBI | 3 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.202 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 1 |
| Hitting_AVG | 1.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 8 |
| Hitting_substitutionOrder | 1 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | PH |
| gameID | 20260810_TEX@LAA |
| game_type | ph |
| mlbID | 666139 |
| note | Singled for d'Arnaud in the 7th. |
| playerID | 666139 |
| playerName | Josh Lowe |
| pos | LF |
| started | False |
| startingPosition | PH |
| team | LAA |
| teamID | 13 |
| game_date | 2026-08-10 |
| sl_k_percent | 27.9 |
| sl_bb_percent | 7.4 |
| sl_woba | 0.267 |
| sl_xwoba | 0.294 |
| sl_xba | 0.219 |
| sl_xslg | 0.395 |
| sl_sweet_spot_percent | 29.9 |
| sl_barrel_batted_rate | 8.8 |
| sl_hard_hit_percent | 38.1 |
| sl_exit_velocity_avg | 89.1 |
| sl_launch_angle_avg | 19.2 |
| sl_whiff_percent | 31.2 |
| sl_swing_percent | 56.9 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.124 | 0.000 | 0.000 | Hitting_2B | 0.142 | 0.000 | -0.142 | 0.000 |
| predicted_3B | 0.022 | 0.000 | 0.000 | Hitting_3B | 0.017 | 0.000 | -0.017 | 0.000 |
| predicted_AB | 3.258 | 4.000 | 3.000 | Hitting_AB | 3.525 | 3.000 | 0.475 | 1.000 |
| predicted_AVG | 0.231 | 0.000 | 0.333 | Hitting_AVG | 0.246 | 0.000 | -0.246 | 0.000 |
| predicted_BB | 0.112 | 0.000 | 0.000 | Hitting_BB | 0.132 | 0.000 | -0.132 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.026 | 0.000 | -0.026 | 0.000 |
| predicted_H | 0.753 | 0.000 | 1.000 | Hitting_H | 0.868 | 0.000 | -0.868 | 0.000 |
| predicted_HR | 0.079 | 0.000 | 0.000 | Hitting_HR | 0.102 | 0.000 | -0.102 | 0.000 |
| predicted_OBP | 0.257 | 0.000 | 0.333 | Hitting_OBP | 0.291 | 0.000 | -0.291 | 0.000 |
| predicted_R | 0.292 | 0.000 | 0.000 | Hitting_R | 0.356 | 0.000 | -0.356 | 0.000 |
| predicted_RBI | 0.270 | 0.000 | 0.000 | Hitting_RBI | 0.347 | 0.000 | -0.347 | 0.000 |
| predicted_SLG | 0.355 | 0.000 | 0.333 | Hitting_SLG | 0.383 | 0.000 | -0.383 | 0.000 |
| predicted_SO | 1.034 | 1.000 | 1.000 | Hitting_SO | 1.109 | 0.000 | -0.109 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 9 |
| Better Metrics | 1 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_AB: 3.2580 -> 4.0000 (boost 0.7420, better) |
| Biggest Deboost | predicted_H: 0.7530 -> 0.0000 (deboost -0.7530, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3550 -> 0.3254 (deboost -0.0296, 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. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_OBP: 0.2500 -> 0.2395 (deboost -0.0105, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 1 | 6 | 1 | 6 | predicted_H: 0.6951 -> 1.0000 (boost 0.3049, better) | predicted_AB: 3.2389 -> 3.0000 (deboost -0.2389, worse) | AB rounded to 3 (raw=3.26), rates preserved: AVG=0.213 HR/AB=0.020 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.2497 -> 0.0000 (deboost -0.2497, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.2146 -> 0.3330 (boost 0.1184, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 1 | 1 | 1 | 1 | predicted_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 |
| 8 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.2146 (deboost -0.1184, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "672724",
"player_name": "Oswald Peraza",
"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.124,
"predicted_3B": 0.022,
"predicted_AB": 3.258,
"predicted_AVG": 0.231,
"predicted_BB": 0.112,
"predicted_H": 0.753,
"predicted_HR": 0.079,
"predicted_OBP": 0.257,
"predicted_R": 0.292,
"predicted_RBI": 0.27,
"predicted_SLG": 0.355,
"predicted_SO": 1.034
},
"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.1053,
"predicted_3B": 0.0182,
"predicted_AB": 3.2389,
"predicted_AVG": 0.2191,
"predicted_BB": 0.1069,
"predicted_H": 0.7102,
"predicted_HBP": 0.064,
"predicted_HR": 0.0676,
"predicted_OBP": 0.25,
"predicted_R": 0.2593,
"predicted_RBI": 0.2407,
"predicted_SLG": 0.3254,
"predicted_SO": 0.9912
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.124,
"after": 0.1053,
"delta": -0.0187,
"percent_delta": -0.1508,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.022,
"after": 0.0182,
"delta": -0.0038,
"percent_delta": -0.1727,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.258,
"after": 3.2389,
"delta": -0.0191,
"percent_delta": -0.0059,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.231,
"after": 0.2191,
"delta": -0.0119,
"percent_delta": -0.0515,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.112,
"after": 0.1069,
"delta": -0.0051,
"percent_delta": -0.0455,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.753,
"after": 0.7102,
"delta": -0.0428,
"percent_delta": -0.0568,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.079,
"after": 0.0676,
"delta": -0.0114,
"percent_delta": -0.1443,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.257,
"after": 0.25,
"delta": -0.007,
"percent_delta": -0.0272,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.292,
"after": 0.2593,
"delta": -0.0327,
"percent_delta": -0.112,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.27,
"after": 0.2407,
"delta": -0.0293,
"percent_delta": -0.1085,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.355,
"after": 0.3254,
"delta": -0.0296,
"percent_delta": -0.0834,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.034,
"after": 0.9912,
"delta": -0.0428,
"percent_delta": -0.0414,
"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.355,
"after": 0.3254,
"delta": -0.0296,
"percent_delta": -0.0834,
"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": 89
}
},
{
"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.1053,
"predicted_3B": 0.0182,
"predicted_AB": 3.2389,
"predicted_AVG": 0.2146,
"predicted_BB": 0.1059,
"predicted_H": 0.6951,
"predicted_HBP": 0.064,
"predicted_HR": 0.0661,
"predicted_OBP": 0.2395,
"predicted_R": 0.2497,
"predicted_RBI": 0.2318,
"predicted_SLG": 0.3196,
"predicted_SO": 1.0002
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1053,
"after": 0.1053,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0182,
"after": 0.0182,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.2389,
"after": 3.2389,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2191,
"after": 0.2146,
"delta": -0.0045,
"percent_delta": -0.0205,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.1069,
"after": 0.1059,
"delta": -0.001,
"percent_delta": -0.0094,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.7102,
"after": 0.6951,
"delta": -0.0151,
"percent_delta": -0.0213,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.064,
"after": 0.064,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0676,
"after": 0.0661,
"delta": -0.0015,
"percent_delta": -0.0222,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.2395,
"delta": -0.0105,
"percent_delta": -0.042,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.2593,
"after": 0.2497,
"delta": -0.0096,
"percent_delta": -0.037,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2407,
"after": 0.2318,
"delta": -0.0089,
"percent_delta": -0.037,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3254,
"after": 0.3196,
"delta": -0.0058,
"percent_delta": -0.0178,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9912,
"after": 1.0002,
"delta": 0.009,
"percent_delta": 0.0091,
"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.25,
"after": 0.2395,
"delta": -0.0105,
"percent_delta": -0.042,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.26), rates preserved: AVG=0.213 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.1053,
"after": 0.0,
"delta": -0.1053,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0182,
"after": 0.0,
"delta": -0.0182,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.2389,
"after": 3.0,
"delta": -0.2389,
"percent_delta": -0.0738,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1059,
"after": 0.0,
"delta": -0.1059,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.6951,
"after": 1.0,
"delta": 0.3049,
"percent_delta": 0.4386,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.064,
"after": 0.0,
"delta": -0.064,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0661,
"after": 0.0,
"delta": -0.0661,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.2318,
"after": 0.0,
"delta": -0.2318,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0002,
"after": 1.0,
"delta": -0.0002,
"percent_delta": -0.0002,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 1,
"deboosted_metrics": 6,
"better_metrics": 1,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.6951,
"after": 1.0,
"delta": 0.3049,
"percent_delta": 0.4386,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.2389,
"after": 3.0,
"delta": -0.2389,
"percent_delta": -0.0738,
"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.2497,
"after": 0.0,
"delta": -0.2497,
"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.2497,
"after": 0.0,
"delta": -0.2497,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2146,
"after": 0.333,
"delta": 0.1184,
"percent_delta": 0.5517,
"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.2395,
"after": 0.333,
"delta": 0.0935,
"percent_delta": 0.3904,
"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.3196,
"after": 0.333,
"delta": 0.0134,
"percent_delta": 0.0419,
"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.2146,
"after": 0.333,
"delta": 0.1184,
"percent_delta": 0.5517,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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": 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_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": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2146,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2395,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3196,
"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.333,
"after": 0.2146,
"delta": -0.1184,
"percent_delta": -0.3556,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2395,
"delta": -0.0935,
"percent_delta": -0.2809,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3196,
"delta": -0.0134,
"percent_delta": -0.0404,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2146,
"delta": -0.1184,
"percent_delta": -0.3556,
"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.124,
"after": 0.0,
"delta": -0.124,
"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.258,
"after": 4.0,
"delta": 0.742,
"percent_delta": 0.2277,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.231,
"after": 0.2146,
"delta": -0.0164,
"percent_delta": -0.071,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.112,
"after": 0.0,
"delta": -0.112,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.753,
"after": 0.0,
"delta": -0.753,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.079,
"after": 0.0,
"delta": -0.079,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.257,
"after": 0.2395,
"delta": -0.0175,
"percent_delta": -0.0681,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.292,
"after": 0.0,
"delta": -0.292,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.27,
"after": 0.0,
"delta": -0.27,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.355,
"after": 0.3196,
"delta": -0.0354,
"percent_delta": -0.0997,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.034,
"after": 1.0,
"delta": -0.034,
"percent_delta": -0.0329,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 1,
"deboosted_metrics": 9,
"better_metrics": 1,
"worse_metrics": 9,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.258,
"after": 4.0,
"delta": 0.742,
"percent_delta": 0.2277,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.753,
"after": 0.0,
"delta": -0.753,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.124 | - |
| predicted_3B | 0.022 | - |
| predicted_AB | 3.258 | - |
| predicted_AVG | 0.231 | - |
| predicted_BB | 0.112 | - |
| predicted_H | 0.753 | - |
| predicted_HR | 0.079 | - |
| predicted_OBP | 0.257 | - |
| predicted_R | 0.292 | - |
| predicted_RBI | 0.270 | - |
| predicted_SLG | 0.355 | - |
| predicted_SO | 1.034 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.105 | -0.019 |
| predicted_3B | 0.018 | -0.004 |
| predicted_AB | 3.239 | -0.019 |
| predicted_AVG | 0.219 | -0.012 |
| predicted_BB | 0.107 | -0.005 |
| predicted_H | 0.710 | -0.043 |
| predicted_HBP | 0.064 | - |
| predicted_HR | 0.068 | -0.011 |
| predicted_OBP | 0.250 | -0.007 |
| predicted_R | 0.259 | -0.033 |
| predicted_RBI | 0.241 | -0.029 |
| predicted_SLG | 0.325 | -0.030 |
| predicted_SO | 0.991 | -0.043 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.105 | 0.000 |
| predicted_3B | 0.018 | 0.000 |
| predicted_AB | 3.239 | 0.000 |
| predicted_AVG | 0.215 | -0.004 |
| predicted_BB | 0.106 | -0.001 |
| predicted_H | 0.695 | -0.015 |
| predicted_HBP | 0.064 | 0.000 |
| predicted_HR | 0.066 | -0.001 |
| predicted_OBP | 0.239 | -0.011 |
| predicted_R | 0.250 | -0.010 |
| predicted_RBI | 0.232 | -0.009 |
| predicted_SLG | 0.320 | -0.006 |
| predicted_SO | 1.000 | 0.009 |
AB rounded to 3 (raw=3.26), rates preserved: AVG=0.213 HR/AB=0.020
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.105 |
| predicted_3B | 0.000 | -0.018 |
| predicted_AB | 3.000 | -0.239 |
| predicted_AVG | 0.333 | 0.118 |
| predicted_BB | 0.000 | -0.106 |
| predicted_H | 1.000 | 0.305 |
| predicted_HR | 0.000 | -0.066 |
| predicted_OBP | 0.333 | 0.094 |
| predicted_R | 0.000 | -0.250 |
| predicted_RBI | 0.000 | -0.232 |
| predicted_SLG | 0.333 | 0.013 |
| predicted_SO | 1.000 | -0.000 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 15.000 | 2.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 3.000 | 0.1333 | 0.1333 | 0.1333 | 0.1333 | 0.0000 | 0.0000 | 0.0000 | 0.2000 |
| last_10 | 0.20 | 10 | - | 30.000 | 5.000 | 0.000 | 0.000 | 0.000 | 1.000 | 1.000 | 1.000 | 10.000 | 0.1667 | 0.2188 | 0.1667 | 0.1667 | 0.0000 | 0.0333 | 0.0333 | 0.3333 |
| season | 0.60 | 89 | - | 290.000 | 67.000 | 11.000 | 2.000 | 7.000 | 24.000 | 26.000 | 10.000 | 92.000 | 0.2310 | 0.2727 | 0.3552 | 0.2310 | 0.0241 | 0.0828 | 0.0345 | 0.3172 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0800 |
| predicted_3B | 0.0130 |
| predicted_AB | 3.2130 |
| predicted_AVG | 0.2030 |
| predicted_BB | 0.1000 |
| predicted_H | 0.6520 |
| predicted_HBP | 0.0640 |
| predicted_HR | 0.0520 |
| predicted_OBP | 0.2404 |
| predicted_R | 0.2150 |
| predicted_RBI | 0.2010 |
| predicted_SLG | 0.2852 |
| predicted_SO | 0.9330 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1240 | 0.0800 | 0.1053 | model_form_blend |
| predicted_3B | 0.0220 | 0.0130 | 0.0182 | model_form_blend |
| predicted_AB | 3.2580 | 3.2130 | 3.2389 | model_form_blend |
| predicted_AVG | 0.2310 | 0.2030 | 0.2191 | model_form_blend |
| predicted_BB | 0.1120 | 0.1000 | 0.1069 | model_form_blend |
| predicted_H | 0.7530 | 0.6520 | 0.7102 | model_form_blend |
| predicted_HBP | - | 0.0640 | 0.0640 | form_only |
| predicted_HR | 0.0790 | 0.0520 | 0.0676 | model_form_blend |
| predicted_OBP | 0.2570 | 0.2404 | 0.2500 | model_form_blend |
| predicted_R | 0.2920 | 0.2150 | 0.2593 | model_form_blend |
| predicted_RBI | 0.2700 | 0.2010 | 0.2407 | model_form_blend |
| predicted_SLG | 0.3550 | 0.2852 | 0.3254 | model_form_blend |
| predicted_SO | 1.0340 | 0.9330 | 0.9912 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 303 |
| Season rows before report date | 303 |
| Report year | 2026 |
| Profile rows used | 89 |
| Hitter metrics | Hitting_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 Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.231 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 5 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 2B |
| gameID | 20260811_TEX@LAA |
| game_type | full |
| mlbID | 672724 |
| playerID | 672724 |
| playerName | Oswald Peraza |
| pos | 2B |
| started | True |
| startingPosition | 2B |
| team | LAA |
| teamID | 13 |
| game_date | 2026-08-11 |
| sl_k_percent | 29.7 |
| sl_bb_percent | 3.5 |
| sl_woba | 0.278 |
| sl_xwoba | 0.271 |
| sl_xba | 0.226 |
| sl_xslg | 0.345 |
| sl_sweet_spot_percent | 33.0 |
| sl_barrel_batted_rate | 7.0 |
| sl_hard_hit_percent | 38.0 |
| sl_exit_velocity_avg | 87.5 |
| sl_launch_angle_avg | 10.2 |
| sl_whiff_percent | 29.6 |
| sl_swing_percent | 56.4 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.213 | 0.000 | 0.000 | Hitting_2B | 0.230 | 1.000 | -0.230 | -1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.870 | 4.000 | 4.000 | Hitting_AB | 3.742 | 3.000 | 0.258 | 1.000 |
| predicted_AVG | 0.255 | 0.500 | 0.250 | Hitting_AVG | 0.261 | 0.333 | 0.239 | 0.167 |
| predicted_BB | 0.253 | 0.000 | 0.000 | Hitting_BB | 0.294 | 0.000 | -0.294 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.990 | 2.000 | 1.000 | Hitting_H | 0.976 | 1.000 | 1.024 | 1.000 |
| predicted_HR | 0.090 | 0.000 | 0.000 | Hitting_HR | 0.097 | 0.000 | -0.097 | 0.000 |
| predicted_OBP | 0.276 | 0.500 | 0.250 | Hitting_OBP | 0.318 | 0.333 | 0.182 | 0.167 |
| predicted_R | 0.373 | 1.000 | 0.000 | Hitting_R | 0.427 | 0.000 | 0.573 | 1.000 |
| predicted_RBI | 0.480 | 0.000 | 0.000 | Hitting_RBI | 0.734 | 1.000 | -0.734 | -1.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_SLG | 0.395 | 0.500 | 0.250 | Hitting_SLG | 0.400 | 0.667 | 0.100 | -0.167 |
| predicted_SO | 0.680 | 1.000 | 1.000 | Hitting_SO | 0.621 | 0.000 | 0.379 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 5 |
| Deboosted Metrics | 6 |
| Better Metrics | 4 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_H: 0.9900 -> 2.0000 (boost 1.0100, better) |
| Biggest Deboost | predicted_RBI: 0.4800 -> 0.0000 (deboost -0.4800, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 4 | 1 | 3 | 0 | 4 | predicted_SO: 0.6800 -> 0.7570 (boost 0.0770, worse) | predicted_AB: 3.8700 -> 3.7807 (deboost -0.0893, 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. |
| 3 | team_form_snapshot | 2 | 1 | 1 | 1 | 1 | predicted_OBP: 0.2794 -> 0.2871 (boost 0.0077, better) | predicted_SLG: 0.3811 -> 0.3663 (deboost -0.0148, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 3 | 4 | 2 | 5 | predicted_SO: 0.7639 -> 1.0000 (boost 0.2361, worse) | predicted_RBI: 0.4451 -> 0.0000 (deboost -0.4451, worse) | AB rounded to 4 (raw=3.87), rates preserved: AVG=0.240 HR/AB=0.020 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3250 -> 0.0000 (deboost -0.3250, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.3663 -> 0.2500 (deboost -0.1163, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 2 | 0 | 2 | 0 | predicted_H: 1.0000 -> 2.0000 (boost 1.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 2 | 2 | 0 | 2 | 0 | predicted_SLG: 0.2500 -> 0.3663 (boost 0.1163, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "687093",
"player_name": "Vaughn Grissom",
"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.213,
"predicted_3B": 0.0,
"predicted_AB": 3.87,
"predicted_AVG": 0.255,
"predicted_BB": 0.253,
"predicted_H": 0.99,
"predicted_HR": 0.09,
"predicted_OBP": 0.276,
"predicted_R": 0.373,
"predicted_RBI": 0.48,
"predicted_SLG": 0.395,
"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.2248,
"predicted_3B": 0.0004,
"predicted_AB": 3.7807,
"predicted_AVG": 0.25,
"predicted_BB": 0.2234,
"predicted_H": 0.9477,
"predicted_HBP": 0.04,
"predicted_HR": 0.079,
"predicted_OBP": 0.2794,
"predicted_R": 0.3375,
"predicted_RBI": 0.4622,
"predicted_SLG": 0.3811,
"predicted_SO": 0.757
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.213,
"after": 0.2248,
"delta": 0.0118,
"percent_delta": 0.0554,
"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.87,
"after": 3.7807,
"delta": -0.0893,
"percent_delta": -0.0231,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.255,
"after": 0.25,
"delta": -0.005,
"percent_delta": -0.0196,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.253,
"after": 0.2234,
"delta": -0.0296,
"percent_delta": -0.117,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.99,
"after": 0.9477,
"delta": -0.0423,
"percent_delta": -0.0427,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 0.079,
"delta": -0.011,
"percent_delta": -0.1222,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.276,
"after": 0.2794,
"delta": 0.0034,
"percent_delta": 0.0123,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.373,
"after": 0.3375,
"delta": -0.0355,
"percent_delta": -0.0952,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.48,
"after": 0.4622,
"delta": -0.0178,
"percent_delta": -0.0371,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.395,
"after": 0.3811,
"delta": -0.0139,
"percent_delta": -0.0352,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.68,
"after": 0.757,
"delta": 0.077,
"percent_delta": 0.1132,
"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.68,
"after": 0.757,
"delta": 0.077,
"percent_delta": 0.1132,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.87,
"after": 3.7807,
"delta": -0.0893,
"percent_delta": -0.0231,
"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": 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.2248,
"predicted_3B": 0.0004,
"predicted_AB": 3.7807,
"predicted_AVG": 0.2453,
"predicted_BB": 0.2214,
"predicted_H": 0.9275,
"predicted_HBP": 0.04,
"predicted_HR": 0.0772,
"predicted_OBP": 0.2871,
"predicted_R": 0.325,
"predicted_RBI": 0.4451,
"predicted_SLG": 0.3663,
"predicted_SO": 0.7639
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2248,
"after": 0.2248,
"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.7807,
"after": 3.7807,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2453,
"delta": -0.0047,
"percent_delta": -0.0188,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.2234,
"after": 0.2214,
"delta": -0.002,
"percent_delta": -0.009,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9477,
"after": 0.9275,
"delta": -0.0202,
"percent_delta": -0.0213,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.04,
"after": 0.04,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.079,
"after": 0.0772,
"delta": -0.0018,
"percent_delta": -0.0228,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2794,
"after": 0.2871,
"delta": 0.0077,
"percent_delta": 0.0276,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3375,
"after": 0.325,
"delta": -0.0125,
"percent_delta": -0.037,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4622,
"after": 0.4451,
"delta": -0.0171,
"percent_delta": -0.037,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3811,
"after": 0.3663,
"delta": -0.0148,
"percent_delta": -0.0388,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.757,
"after": 0.7639,
"delta": 0.0069,
"percent_delta": 0.0091,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.2794,
"after": 0.2871,
"delta": 0.0077,
"percent_delta": 0.0276,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3811,
"after": 0.3663,
"delta": -0.0148,
"percent_delta": -0.0388,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.87), rates preserved: AVG=0.240 HR/AB=0.020",
"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.2248,
"after": 0.0,
"delta": -0.2248,
"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.7807,
"after": 4.0,
"delta": 0.2193,
"percent_delta": 0.058,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2214,
"after": 0.0,
"delta": -0.2214,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9275,
"after": 1.0,
"delta": 0.0725,
"percent_delta": 0.0782,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.04,
"after": 0.0,
"delta": -0.04,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0772,
"after": 0.0,
"delta": -0.0772,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4451,
"after": 0.0,
"delta": -0.4451,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7639,
"after": 1.0,
"delta": 0.2361,
"percent_delta": 0.3091,
"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_SO",
"before": 0.7639,
"after": 1.0,
"delta": 0.2361,
"percent_delta": 0.3091,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4451,
"after": 0.0,
"delta": -0.4451,
"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.325,
"after": 0.0,
"delta": -0.325,
"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.325,
"after": 0.0,
"delta": -0.325,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 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.2453,
"after": 0.25,
"delta": 0.0047,
"percent_delta": 0.0192,
"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.2871,
"after": 0.25,
"delta": -0.0371,
"percent_delta": -0.1292,
"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.3663,
"after": 0.25,
"delta": -0.1163,
"percent_delta": -0.3175,
"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.3663,
"after": 0.25,
"delta": -0.1163,
"percent_delta": -0.3175,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 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_CS",
"before": 0.0,
"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": 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_H",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2453,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2871,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3663,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2453,
"delta": -0.0047,
"percent_delta": -0.0187,
"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.25,
"after": 0.2871,
"delta": 0.0371,
"percent_delta": 0.1483,
"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.25,
"after": 0.3663,
"delta": 0.1163,
"percent_delta": 0.4651,
"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.25,
"after": 0.3663,
"delta": 0.1163,
"percent_delta": 0.4651,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.213,
"after": 0.0,
"delta": -0.213,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.87,
"after": 4.0,
"delta": 0.13,
"percent_delta": 0.0336,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.255,
"after": 0.2453,
"delta": -0.0097,
"percent_delta": -0.038,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.253,
"after": 0.0,
"delta": -0.253,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.99,
"after": 2.0,
"delta": 1.01,
"percent_delta": 1.0202,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 0.0,
"delta": -0.09,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.276,
"after": 0.2871,
"delta": 0.0111,
"percent_delta": 0.0402,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.373,
"after": 1.0,
"delta": 0.627,
"percent_delta": 1.681,
"direction": "boost",
"projection_effect": "better",
"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.395,
"after": 0.3663,
"delta": -0.0287,
"percent_delta": -0.0727,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"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": 11,
"boosted_metrics": 5,
"deboosted_metrics": 6,
"better_metrics": 4,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.99,
"after": 2.0,
"delta": 1.01,
"percent_delta": 1.0202,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.48,
"after": 0.0,
"delta": -0.48,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.213 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.870 | - |
| predicted_AVG | 0.255 | - |
| predicted_BB | 0.253 | - |
| predicted_H | 0.990 | - |
| predicted_HR | 0.090 | - |
| predicted_OBP | 0.276 | - |
| predicted_R | 0.373 | - |
| predicted_RBI | 0.480 | - |
| predicted_SLG | 0.395 | - |
| predicted_SO | 0.680 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.225 | 0.012 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.781 | -0.089 |
| predicted_AVG | 0.250 | -0.005 |
| predicted_BB | 0.223 | -0.030 |
| predicted_H | 0.948 | -0.042 |
| predicted_HBP | 0.040 | - |
| predicted_HR | 0.079 | -0.011 |
| predicted_OBP | 0.279 | 0.003 |
| predicted_R | 0.338 | -0.035 |
| predicted_RBI | 0.462 | -0.018 |
| predicted_SLG | 0.381 | -0.014 |
| predicted_SO | 0.757 | 0.077 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.225 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.781 | 0.000 |
| predicted_AVG | 0.245 | -0.005 |
| predicted_BB | 0.221 | -0.002 |
| predicted_H | 0.927 | -0.020 |
| predicted_HBP | 0.040 | 0.000 |
| predicted_HR | 0.077 | -0.002 |
| predicted_OBP | 0.287 | 0.008 |
| predicted_R | 0.325 | -0.013 |
| predicted_RBI | 0.445 | -0.017 |
| predicted_SLG | 0.366 | -0.015 |
| predicted_SO | 0.764 | 0.007 |
AB rounded to 4 (raw=3.87), rates preserved: AVG=0.240 HR/AB=0.020
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.225 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 4.000 | 0.219 |
| predicted_AVG | 0.250 | 0.005 |
| predicted_BB | 0.000 | -0.221 |
| predicted_H | 1.000 | 0.073 |
| predicted_HR | 0.000 | -0.077 |
| predicted_OBP | 0.250 | -0.037 |
| predicted_R | 0.000 | -0.325 |
| predicted_RBI | 0.000 | -0.445 |
| predicted_SLG | 0.250 | -0.116 |
| predicted_SO | 1.000 | 0.236 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 2.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 1.000 | 1.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 19.000 | 5.000 | 2.000 | 0.000 | 0.000 | 1.000 | 0.000 | 0.000 | 6.000 | 0.2632 | 0.2632 | 0.3684 | 0.2632 | 0.0000 | 0.0526 | 0.0000 | 0.3158 |
| last_10 | 0.20 | 10 | - | 37.000 | 7.000 | 2.000 | 0.000 | 0.000 | 1.000 | 2.000 | 1.000 | 11.000 | 0.1892 | 0.2105 | 0.2432 | 0.1892 | 0.0000 | 0.0270 | 0.0270 | 0.2973 |
| season | 0.60 | 75 | - | 268.000 | 68.000 | 16.000 | 0.000 | 7.000 | 46.000 | 28.000 | 19.000 | 51.000 | 0.2537 | 0.3119 | 0.3918 | 0.2537 | 0.0261 | 0.1716 | 0.0709 | 0.1903 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2410 |
| predicted_3B | 0.0010 |
| predicted_AB | 3.6590 |
| predicted_AVG | 0.2432 |
| predicted_BB | 0.1830 |
| predicted_H | 0.8900 |
| predicted_HBP | 0.0400 |
| predicted_HR | 0.0640 |
| predicted_OBP | 0.2840 |
| predicted_R | 0.2890 |
| predicted_RBI | 0.4380 |
| predicted_SLG | 0.3621 |
| predicted_SO | 0.8620 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2130 | 0.2410 | 0.2248 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.8700 | 3.6590 | 3.7807 | model_form_blend |
| predicted_AVG | 0.2550 | 0.2432 | 0.2500 | model_form_blend |
| predicted_BB | 0.2530 | 0.1830 | 0.2234 | model_form_blend |
| predicted_H | 0.9900 | 0.8900 | 0.9477 | model_form_blend |
| predicted_HBP | - | 0.0400 | 0.0400 | form_only |
| predicted_HR | 0.0900 | 0.0640 | 0.0790 | model_form_blend |
| predicted_OBP | 0.2760 | 0.2840 | 0.2794 | model_form_blend |
| predicted_R | 0.3730 | 0.2890 | 0.3375 | model_form_blend |
| predicted_RBI | 0.4800 | 0.4380 | 0.4622 | model_form_blend |
| predicted_SLG | 0.3950 | 0.3621 | 0.3811 | model_form_blend |
| predicted_SO | 0.6800 | 0.8620 | 0.7570 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 248 |
| Season rows before report date | 248 |
| Report year | 2026 |
| Profile rows used | 75 |
| Hitter metrics | Hitting_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 Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 2 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.254 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 1 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.333 |
| Hitting_BB | 0 |
| Hitting_GIDP | 2 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 2 |
| Hitting_battingOrder | 4 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 3B |
| gameID | 20260811_TEX@LAA |
| game_type | full |
| mlbID | 687093 |
| playerID | 687093 |
| playerName | Vaughn Grissom |
| pos | 2B |
| started | True |
| startingPosition | 3B |
| team | LAA |
| teamID | 13 |
| game_date | 2026-08-11 |
| sl_k_percent | 17.1 |
| sl_bb_percent | 7.0 |
| sl_woba | 0.311 |
| sl_xwoba | 0.32 |
| sl_xba | 0.257 |
| sl_xslg | 0.398 |
| sl_sweet_spot_percent | 33.5 |
| sl_barrel_batted_rate | 6.8 |
| sl_hard_hit_percent | 39.4 |
| sl_exit_velocity_avg | 88.4 |
| sl_launch_angle_avg | 12.6 |
| sl_whiff_percent | 22.3 |
| sl_swing_percent | 49.2 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.212 | 0.000 | 0.000 | Hitting_2B | 0.206 | 0.000 | -0.206 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.707 | 4.000 | 4.000 | Hitting_AB | 3.850 | 1.000 | 0.150 | 3.000 |
| predicted_AVG | 0.303 | 0.250 | 0.250 | Hitting_AVG | 0.282 | 1.000 | -0.032 | -0.750 |
| predicted_BB | 0.394 | 0.000 | 0.000 | Hitting_BB | 0.409 | 1.000 | -0.409 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.011 | 0.000 | -0.011 | 0.000 |
| predicted_H | 0.900 | 1.000 | 1.000 | Hitting_H | 1.086 | 1.000 | -0.086 | 0.000 |
| predicted_HR | 0.050 | 0.000 | 0.000 | Hitting_HR | 0.078 | 0.000 | -0.078 | 0.000 |
| predicted_OBP | 0.339 | 0.250 | 0.250 | Hitting_OBP | 0.357 | 0.667 | -0.107 | -0.417 |
| predicted_R | 0.394 | 0.000 | 0.000 | Hitting_R | 0.429 | 0.000 | -0.429 | 0.000 |
| predicted_RBI | 0.430 | 0.000 | 0.000 | Hitting_RBI | 0.465 | 1.000 | -0.465 | -1.000 |
| predicted_SLG | 0.396 | 0.250 | 0.250 | Hitting_SLG | 0.397 | 1.000 | -0.147 | -0.750 |
| predicted_SO | 0.566 | 2.000 | 1.000 | Hitting_SO | 0.618 | 0.000 | 1.382 | 2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 8 |
| Better Metrics | 2 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_SO: 0.5660 -> 2.0000 (boost 1.4340, worse) |
| Biggest Deboost | predicted_RBI: 0.4300 -> 0.0000 (deboost -0.4300, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 4 | 2 | 2 | 2 | 2 | predicted_BB: 0.3940 -> 0.4659 (boost 0.0719, better) | predicted_AB: 3.7070 -> 3.6282 (deboost -0.0788, 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. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.2833 -> 0.2436 (deboost -0.0397, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 3 | 4 | 2 | 5 | predicted_SO: 0.5316 -> 1.0000 (boost 0.4684, worse) | predicted_BB: 0.4617 -> 0.0000 (deboost -0.4617, worse) | AB rounded to 4 (raw=3.71), rates preserved: AVG=0.238 HR/AB=0.020 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=10.0, weight=0.100, BvP AVG=0.200) |
| 6 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3922 -> 0.0000 (deboost -0.3922, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2436 -> 0.2500 (boost 0.0064, better) | predicted_SLG: 0.3574 -> 0.2500 (deboost -0.1074, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 1 | 1 | 0 | 0 | 1 | predicted_SO: 1.0000 -> 2.0000 (boost 1.0000, worse) | - | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2500 -> 0.3574 (boost 0.1074, better) | predicted_AVG: 0.2500 -> 0.2436 (deboost -0.0064, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "694384",
"player_name": "Nolan Schanuel",
"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.212,
"predicted_3B": 0.0,
"predicted_AB": 3.707,
"predicted_AVG": 0.303,
"predicted_BB": 0.394,
"predicted_H": 0.9,
"predicted_HR": 0.05,
"predicted_OBP": 0.339,
"predicted_R": 0.394,
"predicted_RBI": 0.43,
"predicted_SLG": 0.396,
"predicted_SO": 0.566
},
"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.1909,
"predicted_3B": 0.0004,
"predicted_AB": 3.6282,
"predicted_AVG": 0.2833,
"predicted_BB": 0.4659,
"predicted_H": 0.903,
"predicted_HBP": 0.034,
"predicted_HR": 0.0754,
"predicted_OBP": 0.3449,
"predicted_R": 0.4073,
"predicted_RBI": 0.4722,
"predicted_SLG": 0.3964,
"predicted_SO": 0.5268
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.212,
"after": 0.1909,
"delta": -0.0211,
"percent_delta": -0.0995,
"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.707,
"after": 3.6282,
"delta": -0.0788,
"percent_delta": -0.0213,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.303,
"after": 0.2833,
"delta": -0.0197,
"percent_delta": -0.065,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.394,
"after": 0.4659,
"delta": 0.0719,
"percent_delta": 0.1825,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9,
"after": 0.903,
"delta": 0.003,
"percent_delta": 0.0033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.05,
"after": 0.0754,
"delta": 0.0254,
"percent_delta": 0.508,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.339,
"after": 0.3449,
"delta": 0.0059,
"percent_delta": 0.0174,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.394,
"after": 0.4073,
"delta": 0.0133,
"percent_delta": 0.0338,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.43,
"after": 0.4722,
"delta": 0.0422,
"percent_delta": 0.0981,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.396,
"after": 0.3964,
"delta": 0.0004,
"percent_delta": 0.001,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.566,
"after": 0.5268,
"delta": -0.0392,
"percent_delta": -0.0693,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 2,
"deboosted_metrics": 2,
"better_metrics": 2,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.394,
"after": 0.4659,
"delta": 0.0719,
"percent_delta": 0.1825,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.707,
"after": 3.6282,
"delta": -0.0788,
"percent_delta": -0.0213,
"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.1909,
"predicted_3B": 0.0004,
"predicted_AB": 3.6282,
"predicted_AVG": 0.2436,
"predicted_BB": 0.4617,
"predicted_H": 0.8838,
"predicted_HBP": 0.034,
"predicted_HR": 0.0737,
"predicted_OBP": 0.329,
"predicted_R": 0.3922,
"predicted_RBI": 0.4547,
"predicted_SLG": 0.3574,
"predicted_SO": 0.5316
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1909,
"after": 0.1909,
"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.6282,
"after": 3.6282,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2833,
"after": 0.2436,
"delta": -0.0397,
"percent_delta": -0.1401,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4659,
"after": 0.4617,
"delta": -0.0042,
"percent_delta": -0.009,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.903,
"after": 0.8838,
"delta": -0.0192,
"percent_delta": -0.0213,
"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.0754,
"after": 0.0737,
"delta": -0.0017,
"percent_delta": -0.0225,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3449,
"after": 0.329,
"delta": -0.0159,
"percent_delta": -0.0461,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4073,
"after": 0.3922,
"delta": -0.0151,
"percent_delta": -0.0371,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4722,
"after": 0.4547,
"delta": -0.0175,
"percent_delta": -0.0371,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3964,
"after": 0.3574,
"delta": -0.039,
"percent_delta": -0.0984,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5268,
"after": 0.5316,
"delta": 0.0048,
"percent_delta": 0.0091,
"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.2833,
"after": 0.2436,
"delta": -0.0397,
"percent_delta": -0.1401,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.71), rates preserved: AVG=0.238 HR/AB=0.020",
"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.1909,
"after": 0.0,
"delta": -0.1909,
"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.6282,
"after": 4.0,
"delta": 0.3718,
"percent_delta": 0.1025,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4617,
"after": 0.0,
"delta": -0.4617,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8838,
"after": 1.0,
"delta": 0.1162,
"percent_delta": 0.1315,
"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.0737,
"after": 0.0,
"delta": -0.0737,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4547,
"after": 0.0,
"delta": -0.4547,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5316,
"after": 1.0,
"delta": 0.4684,
"percent_delta": 0.8811,
"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_SO",
"before": 0.5316,
"after": 1.0,
"delta": 0.4684,
"percent_delta": 0.8811,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.4617,
"after": 0.0,
"delta": -0.4617,
"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.200)",
"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.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": 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.3922,
"after": 0.0,
"delta": -0.3922,
"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.3922,
"after": 0.0,
"delta": -0.3922,
"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.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 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.2436,
"after": 0.25,
"delta": 0.0064,
"percent_delta": 0.0263,
"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.329,
"after": 0.25,
"delta": -0.079,
"percent_delta": -0.2401,
"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.3574,
"after": 0.25,
"delta": -0.1074,
"percent_delta": -0.3005,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2436,
"after": 0.25,
"delta": 0.0064,
"percent_delta": 0.0263,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3574,
"after": 0.25,
"delta": -0.1074,
"percent_delta": -0.3005,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 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": 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": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 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.2436,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_FB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.329,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3574,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2436,
"delta": -0.0064,
"percent_delta": -0.0257,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.329,
"delta": 0.079,
"percent_delta": 0.3159,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3574,
"delta": 0.1074,
"percent_delta": 0.4295,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3574,
"delta": 0.1074,
"percent_delta": 0.4295,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2436,
"delta": -0.0064,
"percent_delta": -0.0257,
"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.212,
"after": 0.0,
"delta": -0.212,
"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.707,
"after": 4.0,
"delta": 0.293,
"percent_delta": 0.079,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.303,
"after": 0.2436,
"delta": -0.0594,
"percent_delta": -0.196,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.394,
"after": 0.0,
"delta": -0.394,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9,
"after": 1.0,
"delta": 0.1,
"percent_delta": 0.1111,
"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.339,
"after": 0.329,
"delta": -0.01,
"percent_delta": -0.0295,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.394,
"after": 0.0,
"delta": -0.394,
"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.396,
"after": 0.3574,
"delta": -0.0386,
"percent_delta": -0.0975,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.566,
"after": 2.0,
"delta": 1.434,
"percent_delta": 2.5336,
"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.566,
"after": 2.0,
"delta": 1.434,
"percent_delta": 2.5336,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.43,
"after": 0.0,
"delta": -0.43,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.212 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.707 | - |
| predicted_AVG | 0.303 | - |
| predicted_BB | 0.394 | - |
| predicted_H | 0.900 | - |
| predicted_HR | 0.050 | - |
| predicted_OBP | 0.339 | - |
| predicted_R | 0.394 | - |
| predicted_RBI | 0.430 | - |
| predicted_SLG | 0.396 | - |
| predicted_SO | 0.566 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.191 | -0.021 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.628 | -0.079 |
| predicted_AVG | 0.283 | -0.020 |
| predicted_BB | 0.466 | 0.072 |
| predicted_H | 0.903 | 0.003 |
| predicted_HBP | 0.034 | - |
| predicted_HR | 0.075 | 0.025 |
| predicted_OBP | 0.345 | 0.006 |
| predicted_R | 0.407 | 0.013 |
| predicted_RBI | 0.472 | 0.042 |
| predicted_SLG | 0.396 | 0.000 |
| predicted_SO | 0.527 | -0.039 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.191 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.628 | 0.000 |
| predicted_AVG | 0.244 | -0.040 |
| predicted_BB | 0.462 | -0.004 |
| predicted_H | 0.884 | -0.019 |
| predicted_HBP | 0.034 | 0.000 |
| predicted_HR | 0.074 | -0.002 |
| predicted_OBP | 0.329 | -0.016 |
| predicted_R | 0.392 | -0.015 |
| predicted_RBI | 0.455 | -0.018 |
| predicted_SLG | 0.357 | -0.039 |
| predicted_SO | 0.532 | 0.005 |
AB rounded to 4 (raw=3.71), rates preserved: AVG=0.238 HR/AB=0.020
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=10.0, weight=0.100, BvP AVG=0.200)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.191 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 4.000 | 0.372 |
| predicted_AVG | 0.250 | 0.006 |
| predicted_BB | 0.000 | -0.462 |
| predicted_H | 1.000 | 0.116 |
| predicted_HR | 0.000 | -0.074 |
| predicted_OBP | 0.250 | -0.079 |
| predicted_R | 0.000 | -0.392 |
| predicted_RBI | 0.000 | -0.455 |
| predicted_SLG | 0.250 | -0.107 |
| predicted_SO | 1.000 | 0.468 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 15.000 | 4.000 | 0.000 | 0.000 | 1.000 | 4.000 | 2.000 | 5.000 | 1.000 | 0.2667 | 0.4286 | 0.4667 | 0.2667 | 0.0667 | 0.2667 | 0.3333 | 0.0667 |
| last_10 | 0.20 | 10 | - | 34.000 | 7.000 | 2.000 | 0.000 | 1.000 | 5.000 | 5.000 | 6.000 | 4.000 | 0.2059 | 0.3095 | 0.3529 | 0.2059 | 0.0294 | 0.1471 | 0.1765 | 0.1177 |
| season | 0.60 | 99 | - | 367.000 | 100.000 | 21.000 | 0.000 | 7.000 | 42.000 | 39.000 | 39.000 | 56.000 | 0.2725 | 0.3477 | 0.3869 | 0.2725 | 0.0191 | 0.1144 | 0.1063 | 0.1526 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1630 |
| predicted_3B | 0.0010 |
| predicted_AB | 3.5240 |
| predicted_AVG | 0.2573 |
| predicted_BB | 0.5610 |
| predicted_H | 0.9070 |
| predicted_HBP | 0.0340 |
| predicted_HR | 0.1090 |
| predicted_OBP | 0.3528 |
| predicted_R | 0.4250 |
| predicted_RBI | 0.5280 |
| predicted_SLG | 0.3969 |
| predicted_SO | 0.4750 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2120 | 0.1630 | 0.1909 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.7070 | 3.5240 | 3.6282 | model_form_blend |
| predicted_AVG | 0.3030 | 0.2573 | 0.2833 | model_form_blend |
| predicted_BB | 0.3940 | 0.5610 | 0.4659 | model_form_blend |
| predicted_H | 0.9000 | 0.9070 | 0.9030 | model_form_blend |
| predicted_HBP | - | 0.0340 | 0.0340 | form_only |
| predicted_HR | 0.0500 | 0.1090 | 0.0754 | model_form_blend |
| predicted_OBP | 0.3390 | 0.3528 | 0.3449 | model_form_blend |
| predicted_R | 0.3940 | 0.4250 | 0.4073 | model_form_blend |
| predicted_RBI | 0.4300 | 0.5280 | 0.4722 | model_form_blend |
| predicted_SLG | 0.3960 | 0.3969 | 0.3964 | model_form_blend |
| predicted_SO | 0.5660 | 0.4750 | 0.5268 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 359 |
| Season rows before report date | 359 |
| Report year | 2026 |
| Profile rows used | 99 |
| Hitter metrics | Hitting_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 Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.272 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 1 |
| Hitting_AVG | 1.0 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 1 |
| Hitting_SO | 0 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 3 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 1B |
| gameID | 20260811_TEX@LAA |
| game_type | full |
| mlbID | 694384 |
| playerID | 694384 |
| playerName | Nolan Schanuel |
| pos | 1B |
| started | True |
| startingPosition | 1B |
| team | LAA |
| teamID | 13 |
| game_date | 2026-08-11 |
| sl_k_percent | 13.4 |
| sl_bb_percent | 9.4 |
| sl_woba | 0.327 |
| sl_xwoba | 0.331 |
| sl_xba | 0.28 |
| sl_xslg | 0.385 |
| sl_sweet_spot_percent | 36.1 |
| sl_barrel_batted_rate | 2.5 |
| sl_hard_hit_percent | 32.9 |
| sl_exit_velocity_avg | 87.5 |
| sl_launch_angle_avg | 11.8 |
| sl_whiff_percent | 16.5 |
| sl_swing_percent | 44.7 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.158 | 1.000 | 0.000 | Hitting_2B | 0.180 | 0.000 | 0.820 | 1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.970 | 4.000 | 4.000 | Hitting_AB | 3.635 | 3.000 | 0.365 | 1.000 |
| predicted_AVG | 0.225 | 0.250 | 0.250 | Hitting_AVG | 0.240 | 0.000 | 0.010 | 0.250 |
| predicted_BB | 0.812 | 0.000 | 1.000 | Hitting_BB | 0.878 | 0.000 | -0.878 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.890 | 1.000 | 1.000 | Hitting_H | 0.873 | 0.000 | 0.127 | 1.000 |
| predicted_HR | 0.240 | 0.000 | 0.000 | Hitting_HR | 0.221 | 0.000 | -0.221 | 0.000 |
| predicted_OBP | 0.356 | 0.250 | 0.400 | Hitting_OBP | 0.396 | 0.250 | -0.146 | 0.000 |
| predicted_R | 0.673 | 0.000 | 1.000 | Hitting_R | 0.726 | 1.000 | -0.726 | -1.000 |
| predicted_RBI | 0.400 | 0.000 | 0.000 | Hitting_RBI | 0.490 | 0.000 | -0.490 | 0.000 |
| predicted_SLG | 0.475 | 0.500 | 0.250 | Hitting_SLG | 0.472 | 0.000 | 0.028 | 0.500 |
| predicted_SO | 1.149 | 2.000 | 1.000 | Hitting_SO | 1.124 | 1.000 | 0.876 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 7 |
| Better Metrics | 2 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_SO: 1.1490 -> 2.0000 (boost 0.8510, worse) |
| Biggest Deboost | predicted_BB: 0.8120 -> 0.0000 (deboost -0.8120, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 5 | 1 | 4 | 1 | 4 | predicted_OBP: 0.3560 -> 0.3615 (boost 0.0055, better) | predicted_AB: 3.9700 -> 3.7472 (deboost -0.2228, 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. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.4607 -> 0.4349 (deboost -0.0258, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 3 | 5 | 4 | 4 | predicted_AB: 3.7472 -> 4.0000 (boost 0.2528, better) | predicted_RBI: 0.3756 -> 0.0000 (deboost -0.3756, worse) | AB rounded to 4 (raw=3.97), rates preserved: AVG=0.200 HR/AB=0.059 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=9.0, weight=0.092, BvP AVG=0.333) |
| 6 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6430 -> 1.0000 (boost 0.3570, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3509 -> 0.4000 (boost 0.0491, better) | predicted_SLG: 0.4349 -> 0.2500 (deboost -0.1849, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 4 | 2 | 2 | 1 | 3 | predicted_2B: 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 |
| 9 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2500 -> 0.4349 (boost 0.1849, better) | predicted_OBP: 0.4000 -> 0.3509 (deboost -0.0491, worse) | Final player values currently stored in the game 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.158,
"predicted_3B": 0.0,
"predicted_AB": 3.97,
"predicted_AVG": 0.225,
"predicted_BB": 0.812,
"predicted_H": 0.89,
"predicted_HR": 0.24,
"predicted_OBP": 0.356,
"predicted_R": 0.673,
"predicted_RBI": 0.4,
"predicted_SLG": 0.475,
"predicted_SO": 1.149
},
"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.1312,
"predicted_3B": 0.0004,
"predicted_AB": 3.7472,
"predicted_AVG": 0.2167,
"predicted_BB": 0.8085,
"predicted_H": 0.8123,
"predicted_HBP": 0.096,
"predicted_HR": 0.2396,
"predicted_OBP": 0.3615,
"predicted_R": 0.6678,
"predicted_RBI": 0.3901,
"predicted_SLG": 0.4607,
"predicted_SO": 1.1861
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.158,
"after": 0.1312,
"delta": -0.0268,
"percent_delta": -0.1696,
"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.97,
"after": 3.7472,
"delta": -0.2228,
"percent_delta": -0.0561,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.225,
"after": 0.2167,
"delta": -0.0083,
"percent_delta": -0.0369,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.812,
"after": 0.8085,
"delta": -0.0035,
"percent_delta": -0.0043,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.89,
"after": 0.8123,
"delta": -0.0777,
"percent_delta": -0.0873,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.24,
"after": 0.2396,
"delta": -0.0004,
"percent_delta": -0.0017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.356,
"after": 0.3615,
"delta": 0.0055,
"percent_delta": 0.0154,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.673,
"after": 0.6678,
"delta": -0.0052,
"percent_delta": -0.0077,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4,
"after": 0.3901,
"delta": -0.0099,
"percent_delta": -0.0248,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.475,
"after": 0.4607,
"delta": -0.0143,
"percent_delta": -0.0301,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.149,
"after": 1.1861,
"delta": 0.0371,
"percent_delta": 0.0323,
"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_OBP",
"before": 0.356,
"after": 0.3615,
"delta": 0.0055,
"percent_delta": 0.0154,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.97,
"after": 3.7472,
"delta": -0.2228,
"percent_delta": -0.0561,
"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.1312,
"predicted_3B": 0.0004,
"predicted_AB": 3.7472,
"predicted_AVG": 0.2122,
"predicted_BB": 0.8011,
"predicted_H": 0.795,
"predicted_HBP": 0.096,
"predicted_HR": 0.2342,
"predicted_OBP": 0.3509,
"predicted_R": 0.643,
"predicted_RBI": 0.3756,
"predicted_SLG": 0.4349,
"predicted_SO": 1.1969
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1312,
"after": 0.1312,
"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.7472,
"after": 3.7472,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2167,
"after": 0.2122,
"delta": -0.0045,
"percent_delta": -0.0208,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.8085,
"after": 0.8011,
"delta": -0.0074,
"percent_delta": -0.0092,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8123,
"after": 0.795,
"delta": -0.0173,
"percent_delta": -0.0213,
"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.2396,
"after": 0.2342,
"delta": -0.0054,
"percent_delta": -0.0225,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3615,
"after": 0.3509,
"delta": -0.0106,
"percent_delta": -0.0293,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6678,
"after": 0.643,
"delta": -0.0248,
"percent_delta": -0.0371,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3901,
"after": 0.3756,
"delta": -0.0145,
"percent_delta": -0.0372,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4607,
"after": 0.4349,
"delta": -0.0258,
"percent_delta": -0.056,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1861,
"after": 1.1969,
"delta": 0.0108,
"percent_delta": 0.0091,
"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.4607,
"after": 0.4349,
"delta": -0.0258,
"percent_delta": -0.056,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.97), rates preserved: AVG=0.200 HR/AB=0.059",
"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.1312,
"after": 0.0,
"delta": -0.1312,
"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.7472,
"after": 4.0,
"delta": 0.2528,
"percent_delta": 0.0675,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.8011,
"after": 1.0,
"delta": 0.1989,
"percent_delta": 0.2483,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.795,
"after": 1.0,
"delta": 0.205,
"percent_delta": 0.2579,
"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.2342,
"after": 0.0,
"delta": -0.2342,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3756,
"after": 0.0,
"delta": -0.3756,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1969,
"after": 1.0,
"delta": -0.1969,
"percent_delta": -0.1645,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 3,
"deboosted_metrics": 5,
"better_metrics": 4,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.7472,
"after": 4.0,
"delta": 0.2528,
"percent_delta": 0.0675,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.3756,
"after": 0.0,
"delta": -0.3756,
"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": 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.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": 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.643,
"after": 1.0,
"delta": 0.357,
"percent_delta": 0.5552,
"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.643,
"after": 1.0,
"delta": 0.357,
"percent_delta": 0.5552,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.4,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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.2122,
"after": 0.25,
"delta": 0.0378,
"percent_delta": 0.1781,
"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.3509,
"after": 0.4,
"delta": 0.0491,
"percent_delta": 0.1399,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4349,
"after": 0.25,
"delta": -0.1849,
"percent_delta": -0.4252,
"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.3509,
"after": 0.4,
"delta": 0.0491,
"percent_delta": 0.1399,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4349,
"after": 0.25,
"delta": -0.1849,
"percent_delta": -0.4252,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 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": 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": 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": 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_2B",
"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": 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.2122,
"predicted_BB": 0.0,
"predicted_CF": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3509,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4349,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2122,
"delta": -0.0378,
"percent_delta": -0.1514,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.3509,
"delta": -0.0491,
"percent_delta": -0.1227,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4349,
"delta": 0.1849,
"percent_delta": 0.7396,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4349,
"delta": 0.1849,
"percent_delta": 0.7396,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.3509,
"delta": -0.0491,
"percent_delta": -0.1227,
"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.158,
"after": 1.0,
"delta": 0.842,
"percent_delta": 5.3291,
"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.97,
"after": 4.0,
"delta": 0.03,
"percent_delta": 0.0076,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.225,
"after": 0.2122,
"delta": -0.0128,
"percent_delta": -0.0569,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.812,
"after": 0.0,
"delta": -0.812,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.89,
"after": 1.0,
"delta": 0.11,
"percent_delta": 0.1236,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.24,
"after": 0.0,
"delta": -0.24,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.356,
"after": 0.3509,
"delta": -0.0051,
"percent_delta": -0.0143,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.673,
"after": 0.0,
"delta": -0.673,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4,
"after": 0.0,
"delta": -0.4,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.475,
"after": 0.4349,
"delta": -0.0401,
"percent_delta": -0.0844,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.149,
"after": 2.0,
"delta": 0.851,
"percent_delta": 0.7406,
"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": 1.149,
"after": 2.0,
"delta": 0.851,
"percent_delta": 0.7406,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.812,
"after": 0.0,
"delta": -0.812,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.158 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.970 | - |
| predicted_AVG | 0.225 | - |
| predicted_BB | 0.812 | - |
| predicted_H | 0.890 | - |
| predicted_HR | 0.240 | - |
| predicted_OBP | 0.356 | - |
| predicted_R | 0.673 | - |
| predicted_RBI | 0.400 | - |
| predicted_SLG | 0.475 | - |
| predicted_SO | 1.149 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.131 | -0.027 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.747 | -0.223 |
| predicted_AVG | 0.217 | -0.008 |
| predicted_BB | 0.808 | -0.004 |
| predicted_H | 0.812 | -0.078 |
| predicted_HBP | 0.096 | - |
| predicted_HR | 0.240 | -0.000 |
| predicted_OBP | 0.361 | 0.006 |
| predicted_R | 0.668 | -0.005 |
| predicted_RBI | 0.390 | -0.010 |
| predicted_SLG | 0.461 | -0.014 |
| predicted_SO | 1.186 | 0.037 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.131 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.747 | 0.000 |
| predicted_AVG | 0.212 | -0.005 |
| predicted_BB | 0.801 | -0.007 |
| predicted_H | 0.795 | -0.017 |
| predicted_HBP | 0.096 | 0.000 |
| predicted_HR | 0.234 | -0.005 |
| predicted_OBP | 0.351 | -0.011 |
| predicted_R | 0.643 | -0.025 |
| predicted_RBI | 0.376 | -0.015 |
| predicted_SLG | 0.435 | -0.026 |
| predicted_SO | 1.197 | 0.011 |
AB rounded to 4 (raw=3.97), rates preserved: AVG=0.200 HR/AB=0.059
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 1.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=9.0, weight=0.092, BvP AVG=0.333)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 1.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.131 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 4.000 | 0.253 |
| predicted_AVG | 0.250 | 0.038 |
| predicted_BB | 1.000 | 0.199 |
| predicted_H | 1.000 | 0.205 |
| predicted_HR | 0.000 | -0.234 |
| predicted_OBP | 0.400 | 0.049 |
| predicted_R | 1.000 | 0.357 |
| predicted_RBI | 0.000 | -0.376 |
| predicted_SLG | 0.250 | -0.185 |
| predicted_SO | 1.000 | -0.197 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 1.000 | 1.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 15.000 | 2.000 | 0.000 | 0.000 | 2.000 | 2.000 | 4.000 | 5.000 | 6.000 | 0.1333 | 0.3810 | 0.5333 | 0.1333 | 0.1333 | 0.1333 | 0.3333 | 0.4000 |
| last_10 | 0.20 | 10 | - | 34.000 | 6.000 | 0.000 | 0.000 | 2.000 | 2.000 | 5.000 | 7.000 | 16.000 | 0.1765 | 0.3333 | 0.3529 | 0.1765 | 0.0588 | 0.0588 | 0.2059 | 0.4706 |
| season | 0.60 | 101 | - | 362.000 | 85.000 | 16.000 | 0.000 | 20.000 | 42.000 | 68.000 | 82.000 | 116.000 | 0.2348 | 0.3836 | 0.4448 | 0.2348 | 0.0553 | 0.1160 | 0.2265 | 0.3204 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0960 |
| predicted_3B | 0.0010 |
| predicted_AB | 3.4540 |
| predicted_AVG | 0.2057 |
| predicted_BB | 0.8040 |
| predicted_H | 0.7100 |
| predicted_HBP | 0.0960 |
| predicted_HR | 0.2390 |
| predicted_OBP | 0.3688 |
| predicted_R | 0.6610 |
| predicted_RBI | 0.3770 |
| predicted_SLG | 0.4419 |
| predicted_SO | 1.2350 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1580 | 0.0960 | 0.1312 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.9700 | 3.4540 | 3.7472 | model_form_blend |
| predicted_AVG | 0.2250 | 0.2057 | 0.2167 | model_form_blend |
| predicted_BB | 0.8120 | 0.8040 | 0.8085 | model_form_blend |
| predicted_H | 0.8900 | 0.7100 | 0.8123 | model_form_blend |
| predicted_HBP | - | 0.0960 | 0.0960 | form_only |
| predicted_HR | 0.2400 | 0.2390 | 0.2396 | model_form_blend |
| predicted_OBP | 0.3560 | 0.3688 | 0.3615 | model_form_blend |
| predicted_R | 0.6730 | 0.6610 | 0.6678 | model_form_blend |
| predicted_RBI | 0.4000 | 0.3770 | 0.3901 | model_form_blend |
| predicted_SLG | 0.4750 | 0.4419 | 0.4607 | model_form_blend |
| predicted_SO | 1.1490 | 1.2350 | 1.1861 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 394 |
| Season rows before report date | 394 |
| Report year | 2026 |
| Profile rows used | 101 |
| Hitter metrics | Hitting_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 Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 1 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.235 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 1 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 1 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 2 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | CF |
| gameID | 20260811_TEX@LAA |
| game_type | full |
| mlbID | 545361 |
| playerID | 545361 |
| playerName | Mike Trout |
| pos | CF |
| started | True |
| startingPosition | CF |
| team | LAA |
| teamID | 13 |
| game_date | 2026-08-11 |
| sl_k_percent | 25.7 |
| sl_bb_percent | 18.2 |
| sl_woba | 0.361 |
| sl_xwoba | 0.391 |
| sl_xba | 0.256 |
| sl_xslg | 0.512 |
| sl_sweet_spot_percent | 36.8 |
| sl_barrel_batted_rate | 17.1 |
| sl_hard_hit_percent | 47.8 |
| sl_exit_velocity_avg | 90.3 |
| sl_launch_angle_avg | 17.5 |
| sl_whiff_percent | 23.7 |
| sl_swing_percent | 39.4 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.095 | 0.000 | 0.000 | Hitting_2B | 0.117 | 0.000 | -0.117 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.690 | 3.000 | 4.000 | Hitting_AB | 3.724 | 0.000 | -0.724 | 3.000 |
| predicted_AVG | 0.196 | 0.333 | 0.250 | Hitting_AVG | 0.235 | - | 0.098 | - |
| predicted_BB | 0.238 | 1.000 | 0.000 | Hitting_BB | 0.248 | 0.000 | 0.752 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.028 | 0.000 | -0.028 | 0.000 |
| predicted_H | 0.270 | 1.000 | 1.000 | Hitting_H | 0.876 | 0.000 | 0.124 | 1.000 |
| predicted_HR | 0.030 | 0.000 | 0.000 | Hitting_HR | 0.131 | 0.000 | -0.131 | 0.000 |
| predicted_OBP | 0.240 | 0.500 | 0.250 | Hitting_OBP | 0.284 | - | 0.216 | - |
| predicted_R | 0.333 | 0.000 | 0.000 | Hitting_R | 0.352 | 0.000 | -0.352 | 0.000 |
| predicted_RBI | 0.080 | 0.000 | 0.000 | Hitting_RBI | 0.428 | 0.000 | -0.428 | 0.000 |
| predicted_SLG | 0.274 | 0.333 | 0.250 | Hitting_SLG | 0.372 | - | -0.039 | - |
| predicted_SO | 1.000 | 0.000 | 1.000 | Hitting_SO | 1.048 | 0.000 | -1.048 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 8 |
| Better Metrics | 3 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_BB: 0.2380 -> 1.0000 (boost 0.7620, better) |
| Biggest Deboost | predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 5 | 4 | 1 | 4 | 1 | predicted_H: 0.2700 -> 0.4284 (boost 0.1584, better) | predicted_AB: 3.6900 -> 3.5749 (deboost -0.1151, 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. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.2836 -> 0.1869 (deboost -0.0967, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 1 | 5 | 1 | 5 | predicted_AB: 3.5749 -> 4.0000 (boost 0.4251, better) | predicted_H: 0.4193 -> 0.0000 (deboost -0.4193, worse) | AB rounded to 4 (raw=3.69), rates preserved: AVG=0.114 HR/AB=0.015 |
| 5 | consistency_constraints | 2 | 1 | 1 | 1 | 1 | predicted_H: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_R: 0.3109 -> 0.0000 (deboost -0.3109, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.1173 -> 0.2500 (boost 0.1327, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 1 | 2 | 2 | 1 | predicted_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 |
| 8 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.2500 -> 0.1173 (deboost -0.1327, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "694203",
"player_name": "Denzer Guzman",
"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.095,
"predicted_3B": 0.0,
"predicted_AB": 3.69,
"predicted_AVG": 0.196,
"predicted_BB": 0.238,
"predicted_H": 0.27,
"predicted_HR": 0.03,
"predicted_OBP": 0.24,
"predicted_R": 0.333,
"predicted_RBI": 0.08,
"predicted_SLG": 0.274,
"predicted_SO": 1.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.0845,
"predicted_3B": 0.0008,
"predicted_AB": 3.5749,
"predicted_AVG": 0.1952,
"predicted_BB": 0.253,
"predicted_H": 0.4284,
"predicted_HBP": 0.035,
"predicted_HR": 0.0555,
"predicted_OBP": 0.2491,
"predicted_R": 0.3229,
"predicted_RBI": 0.1623,
"predicted_SLG": 0.2836,
"predicted_SO": 0.9587
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.095,
"after": 0.0845,
"delta": -0.0105,
"percent_delta": -0.1105,
"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.69,
"after": 3.5749,
"delta": -0.1151,
"percent_delta": -0.0312,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.196,
"after": 0.1952,
"delta": -0.0008,
"percent_delta": -0.0041,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.238,
"after": 0.253,
"delta": 0.015,
"percent_delta": 0.063,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.27,
"after": 0.4284,
"delta": 0.1584,
"percent_delta": 0.5867,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.03,
"after": 0.0555,
"delta": 0.0255,
"percent_delta": 0.85,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.24,
"after": 0.2491,
"delta": 0.0091,
"percent_delta": 0.0379,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.333,
"after": 0.3229,
"delta": -0.0101,
"percent_delta": -0.0303,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.08,
"after": 0.1623,
"delta": 0.0823,
"percent_delta": 1.0288,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.274,
"after": 0.2836,
"delta": 0.0096,
"percent_delta": 0.035,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.9587,
"delta": -0.0413,
"percent_delta": -0.0413,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 4,
"deboosted_metrics": 1,
"better_metrics": 4,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.27,
"after": 0.4284,
"delta": 0.1584,
"percent_delta": 0.5867,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.69,
"after": 3.5749,
"delta": -0.1151,
"percent_delta": -0.0312,
"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": 42
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.0845,
"predicted_3B": 0.0008,
"predicted_AB": 3.5749,
"predicted_AVG": 0.1173,
"predicted_BB": 0.2507,
"predicted_H": 0.4193,
"predicted_HBP": 0.035,
"predicted_HR": 0.0543,
"predicted_OBP": 0.1751,
"predicted_R": 0.3109,
"predicted_RBI": 0.1563,
"predicted_SLG": 0.1869,
"predicted_SO": 0.9674
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0845,
"after": 0.0845,
"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.5749,
"after": 3.5749,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1952,
"after": 0.1173,
"delta": -0.0779,
"percent_delta": -0.3991,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.253,
"after": 0.2507,
"delta": -0.0023,
"percent_delta": -0.0091,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.4284,
"after": 0.4193,
"delta": -0.0091,
"percent_delta": -0.0212,
"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.0555,
"after": 0.0543,
"delta": -0.0012,
"percent_delta": -0.0216,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2491,
"after": 0.1751,
"delta": -0.074,
"percent_delta": -0.2971,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3229,
"after": 0.3109,
"delta": -0.012,
"percent_delta": -0.0372,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.1623,
"after": 0.1563,
"delta": -0.006,
"percent_delta": -0.037,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.2836,
"after": 0.1869,
"delta": -0.0967,
"percent_delta": -0.341,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9587,
"after": 0.9674,
"delta": 0.0087,
"percent_delta": 0.0091,
"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.2836,
"after": 0.1869,
"delta": -0.0967,
"percent_delta": -0.341,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.69), rates preserved: AVG=0.114 HR/AB=0.015",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0845,
"after": 0.0,
"delta": -0.0845,
"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.5749,
"after": 4.0,
"delta": 0.4251,
"percent_delta": 0.1189,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2507,
"after": 0.0,
"delta": -0.2507,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.4193,
"after": 0.0,
"delta": -0.4193,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"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.0543,
"after": 0.0,
"delta": -0.0543,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.1563,
"after": 0.0,
"delta": -0.1563,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9674,
"after": 1.0,
"delta": 0.0326,
"percent_delta": 0.0337,
"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_AB",
"before": 3.5749,
"after": 4.0,
"delta": 0.4251,
"percent_delta": 0.1189,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.4193,
"after": 0.0,
"delta": -0.4193,
"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": 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.3109,
"after": 0.0,
"delta": -0.3109,
"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.3109,
"after": 0.0,
"delta": -0.3109,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 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.1173,
"after": 0.25,
"delta": 0.1327,
"percent_delta": 1.1313,
"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.1751,
"after": 0.25,
"delta": 0.0749,
"percent_delta": 0.4278,
"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.1869,
"after": 0.25,
"delta": 0.0631,
"percent_delta": 0.3376,
"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.1173,
"after": 0.25,
"delta": 0.1327,
"percent_delta": 1.1313,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 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": 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": 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_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": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.1173,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.1751,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.1869,
"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.25,
"after": 0.1173,
"delta": -0.1327,
"percent_delta": -0.5309,
"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.25,
"after": 0.1751,
"delta": -0.0749,
"percent_delta": -0.2995,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.1869,
"delta": -0.0631,
"percent_delta": -0.2524,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.1173,
"delta": -0.1327,
"percent_delta": -0.5309,
"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.095,
"after": 0.0,
"delta": -0.095,
"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.69,
"after": 3.0,
"delta": -0.69,
"percent_delta": -0.187,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.196,
"after": 0.1173,
"delta": -0.0787,
"percent_delta": -0.4015,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.238,
"after": 1.0,
"delta": 0.762,
"percent_delta": 3.2017,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.27,
"after": 1.0,
"delta": 0.73,
"percent_delta": 2.7037,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.03,
"after": 0.0,
"delta": -0.03,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.24,
"after": 0.1751,
"delta": -0.0649,
"percent_delta": -0.2704,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.333,
"after": 0.0,
"delta": -0.333,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.08,
"after": 0.0,
"delta": -0.08,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.274,
"after": 0.1869,
"delta": -0.0871,
"percent_delta": -0.3179,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "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.238,
"after": 1.0,
"delta": 0.762,
"percent_delta": 3.2017,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.095 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.690 | - |
| predicted_AVG | 0.196 | - |
| predicted_BB | 0.238 | - |
| predicted_H | 0.270 | - |
| predicted_HR | 0.030 | - |
| predicted_OBP | 0.240 | - |
| predicted_R | 0.333 | - |
| predicted_RBI | 0.080 | - |
| predicted_SLG | 0.274 | - |
| predicted_SO | 1.000 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.085 | -0.010 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 3.575 | -0.115 |
| predicted_AVG | 0.195 | -0.001 |
| predicted_BB | 0.253 | 0.015 |
| predicted_H | 0.428 | 0.158 |
| predicted_HBP | 0.035 | - |
| predicted_HR | 0.056 | 0.026 |
| predicted_OBP | 0.249 | 0.009 |
| predicted_R | 0.323 | -0.010 |
| predicted_RBI | 0.162 | 0.082 |
| predicted_SLG | 0.284 | 0.010 |
| predicted_SO | 0.959 | -0.041 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.085 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 3.575 | 0.000 |
| predicted_AVG | 0.117 | -0.078 |
| predicted_BB | 0.251 | -0.002 |
| predicted_H | 0.419 | -0.009 |
| predicted_HBP | 0.035 | 0.000 |
| predicted_HR | 0.054 | -0.001 |
| predicted_OBP | 0.175 | -0.074 |
| predicted_R | 0.311 | -0.012 |
| predicted_RBI | 0.156 | -0.006 |
| predicted_SLG | 0.187 | -0.097 |
| predicted_SO | 0.967 | 0.009 |
AB rounded to 4 (raw=3.69), rates preserved: AVG=0.114 HR/AB=0.015
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 0.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.085 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 4.000 | 0.425 |
| predicted_AVG | 0.250 | 0.133 |
| predicted_BB | 0.000 | -0.251 |
| predicted_H | 1.000 | 0.581 |
| predicted_HR | 0.000 | -0.054 |
| predicted_OBP | 0.250 | 0.075 |
| predicted_R | 0.000 | -0.311 |
| predicted_RBI | 0.000 | -0.156 |
| predicted_SLG | 0.250 | 0.063 |
| predicted_SO | 1.000 | 0.033 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | -1.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 13.000 | 1.000 | 0.000 | 0.000 | 0.000 | 0.000 | 1.000 | 2.000 | 4.000 | 0.0769 | 0.2000 | 0.0769 | 0.0769 | 0.0000 | 0.0000 | 0.1538 | 0.3077 |
| last_10 | 0.20 | 10 | - | 30.000 | 5.000 | 0.000 | 0.000 | 1.000 | 2.000 | 2.000 | 2.000 | 7.000 | 0.1667 | 0.2424 | 0.2667 | 0.1667 | 0.0333 | 0.0667 | 0.0667 | 0.2333 |
| season | 0.60 | 42 | - | 155.000 | 35.000 | 4.000 | 0.000 | 5.000 | 16.000 | 14.000 | 10.000 | 42.000 | 0.2258 | 0.2771 | 0.3484 | 0.2258 | 0.0323 | 0.1032 | 0.0645 | 0.2710 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0690 |
| predicted_3B | 0.0020 |
| predicted_AB | 3.4060 |
| predicted_AVG | 0.1940 |
| predicted_BB | 0.2750 |
| predicted_H | 0.6610 |
| predicted_HBP | 0.0350 |
| predicted_HR | 0.0930 |
| predicted_OBP | 0.2625 |
| predicted_R | 0.3080 |
| predicted_RBI | 0.2830 |
| predicted_SLG | 0.2978 |
| predicted_SO | 0.8980 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0950 | 0.0690 | 0.0845 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 3.6900 | 3.4060 | 3.5749 | model_form_blend |
| predicted_AVG | 0.1960 | 0.1940 | 0.1952 | model_form_blend |
| predicted_BB | 0.2380 | 0.2750 | 0.2530 | model_form_blend |
| predicted_H | 0.2700 | 0.6610 | 0.4284 | model_form_blend |
| predicted_HBP | - | 0.0350 | 0.0350 | form_only |
| predicted_HR | 0.0300 | 0.0930 | 0.0555 | model_form_blend |
| predicted_OBP | 0.2400 | 0.2625 | 0.2491 | model_form_blend |
| predicted_R | 0.3330 | 0.3080 | 0.3229 | model_form_blend |
| predicted_RBI | 0.0800 | 0.2830 | 0.1623 | model_form_blend |
| predicted_SLG | 0.2740 | 0.2978 | 0.2836 | model_form_blend |
| predicted_SO | 1.0000 | 0.8980 | 0.9587 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 145 |
| Season rows before report date | 145 |
| Report year | 2026 |
| Profile rows used | 42 |
| Hitter metrics | Hitting_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 Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.226 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 4 |
| Hitting_substitutionOrder | 1 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 3B |
| gameID | 20260811_TEX@LAA |
| game_type | short |
| mlbID | 694203 |
| playerID | 694203 |
| playerName | Denzer Guzman |
| pos | 3B |
| started | False |
| startingPosition | 3B |
| team | LAA |
| teamID | 13 |
| game_date | 2026-08-11 |
| sl_k_percent | 25.1 |
| sl_bb_percent | 6.0 |
| sl_woba | 0.278 |
| sl_xwoba | 0.274 |
| sl_xba | 0.23 |
| sl_xslg | 0.337 |
| sl_sweet_spot_percent | 33.6 |
| sl_barrel_batted_rate | 5.3 |
| sl_hard_hit_percent | 32.7 |
| sl_exit_velocity_avg | 87.5 |
| sl_launch_angle_avg | 10.2 |
| sl_whiff_percent | 23.5 |
| sl_swing_percent | 52.4 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 1.000 | 1.000 | 1.000 | Pitching_BB | 4.667 | 4.000 | -3.667 | -3.000 |
| predicted_ER | 3.000 | 3.000 | 3.000 | Pitching_ER | 2.333 | 1.000 | 0.667 | 2.000 |
| predicted_H | 7.000 | 7.000 | 7.000 | Pitching_H | 3.667 | 4.000 | 3.333 | 3.000 |
| predicted_IP | 3.000 | 3.000 | 3.000 | Pitching_InningsPitched | 2.733 | 4.000 | 0.267 | -1.000 |
| predicted_SO | 6.000 | 6.000 | 6.000 | Pitching_SO | 3.000 | 3.000 | 3.000 | 3.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 1 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 1 |
| Better Metrics | 0 |
| Worse Metrics | 1 |
| Biggest Boost | - |
| Biggest Deboost | predicted_IP: 4.3333 -> 3.0000 (deboost -1.3333, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | starter_usage_guardrail | 1 | 0 | 1 | 0 | 1 | - | predicted_IP: 4.3333 -> 3.0000 (deboost -1.3333, worse) | Starter workload capped by recent innings, season ERA/WHIP, and team-form context. |
| 3 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "691946",
"player_name": "George Klassen",
"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": 1.0,
"predicted_ER": 3.0,
"predicted_H": 7.0,
"predicted_HR": 1.0,
"predicted_IP": 4.3333,
"predicted_SO": 6.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "starter_usage_guardrail",
"description": "Starter workload capped by recent innings, season ERA/WHIP, and team-form context.",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 3.0,
"predicted_H": 7.0,
"predicted_HR": 1.0,
"predicted_IP": 3.0,
"predicted_SO": 6.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 4.3333,
"after": 3.0,
"delta": -1.3333,
"percent_delta": -0.3077,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 4.3333,
"after": 3.0,
"delta": -1.3333,
"percent_delta": -0.3077,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 3,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 3.0,
"predicted_H": 7.0,
"predicted_HR": 1.0,
"predicted_IP": 3.0,
"predicted_R": 3.0,
"predicted_SO": 6.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 3.0,
"after": 3.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": 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": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 4.3333,
"after": 3.0,
"delta": -1.3333,
"percent_delta": -0.3077,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 4.3333,
"after": 3.0,
"delta": -1.3333,
"percent_delta": -0.3077,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 1.000 | - |
| predicted_ER | 3.000 | - |
| predicted_H | 7.000 | - |
| predicted_HR | 1.000 | - |
| predicted_IP | 4.333 | - |
| predicted_SO | 6.000 | - |
Starter workload capped by recent innings, season ERA/WHIP, and team-form context.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 1.000 | 0.000 |
| predicted_ER | 3.000 | 0.000 |
| predicted_H | 7.000 | 0.000 |
| predicted_HR | 1.000 | 0.000 |
| predicted_IP | 3.000 | -1.333 |
| predicted_SO | 6.000 | 0.000 |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 3 | 8.200 | 7.000 | 11.000 | 14.000 | 9.000 | 1.000 | 7.2692 | 2.8846 | 0.8077 | 1.2692 | 1.6154 | 1.0385 | 0.1154 |
| last_10 | 0.35 | 3 | 8.200 | 7.000 | 11.000 | 14.000 | 9.000 | 1.000 | 7.2692 | 2.8846 | 0.8077 | 1.2692 | 1.6154 | 1.0385 | 0.1154 |
| season | 0.20 | 3 | 8.200 | 7.000 | 11.000 | 14.000 | 9.000 | 1.000 | 7.2692 | 2.8846 | 0.8077 | 1.2692 | 1.6154 | 1.0385 | 0.1154 |
| Metric | Value |
|---|---|
| predicted_BB | 2.7290 |
| predicted_ER | 2.3070 |
| predicted_ERA | 5.2046 |
| predicted_H | 4.1890 |
| predicted_HR | 0.5610 |
| predicted_IP | 4.0000 |
| predicted_SO | 3.8990 |
| predicted_WHIP | 1.7339 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 2.7290 | 1.5815 | model_form_blend |
| predicted_ER | 3.0000 | 2.3070 | 2.7669 | model_form_blend |
| predicted_ERA | - | 5.2046 | 5.2046 | form_only |
| predicted_H | 7.0000 | 4.1890 | 6.0547 | model_form_blend |
| predicted_HR | 1.0000 | 0.5610 | 0.8524 | model_form_blend |
| predicted_IP | 4.1000 | 4.0000 | 4.2000 | model_form_blend |
| predicted_SO | 6.0000 | 3.8990 | 5.2934 | model_form_blend |
| predicted_WHIP | - | 1.7339 | 1.7339 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 3 |
| Season rows before report date | 3 |
| Report year | 2026 |
| Profile rows used | 3 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 3.0 |
| H | 7 |
| R | 3 |
| ER | 3 |
| BB | 1 |
| SO | 6 |
| HR | 1 |
| BF | 18 |
| Pitches | 76 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 4 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 20 |
| Pitching_ER | 1 |
| Pitching_ERA | 7.27 |
| Pitching_Flyouts | 3 |
| Pitching_Groundouts | 4 |
| Pitching_H | 4 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 4.0 |
| Pitching_Pitches | 83 |
| Pitching_R | 1 |
| Pitching_SO | 3 |
| Pitching_Strikes | 46 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260807_LAA@MIA |
| game_type | full |
| mlbID | 691946 |
| playerID | 691946 |
| playerName | George Klassen |
| pos | P |
| started | True |
| startingPosition | P |
| team | LAA |
| teamID | 13 |
| game_date | 2026-08-07 |
| sl_k_percent | 17.3 |
| sl_bb_percent | 26.9 |
| sl_woba | 0.42 |
| sl_xwoba | 0.411 |
| sl_sweet_spot_percent | 41.4 |
| sl_barrel_batted_rate | 13.8 |
| sl_hard_hit_percent | 31.0 |
| sl_whiff_percent | 32.3 |
| sl_swing_percent | 42.1 |
| sl_avg_best_speed | 73.858975 |
| sl_avg_hyper_speed | 93.834191852 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.541 | 0.000 | -0.541 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.378 | 0.000 | -0.378 | 0.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.838 | 0.000 | 0.162 | 1.000 |
| predicted_IP | 2.000 | 2.000 | 2.000 | Pitching_InningsPitched | 0.932 | 1.100 | 1.068 | 0.900 |
| predicted_SO | 2.000 | 2.000 | 2.000 | Pitching_SO | 1.297 | 3.000 | 0.703 | -1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 1 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 0 |
| Better Metrics | 1 |
| Worse Metrics | 0 |
| Biggest Boost | predicted_IP: 1.3333 -> 2.0000 (boost 0.6667, better) |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 1 | 0 | 1 | 0 | predicted_IP: 1.3333 -> 2.0000 (boost 0.6667, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "820862",
"player_name": "José Fermin",
"position": "Middle Reliever",
"team": "LAA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.3333,
"predicted_SO": 2.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 2.0,
"predicted_R": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.3333,
"after": 2.0,
"delta": 0.6667,
"percent_delta": 0.5,
"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.3333,
"after": 2.0,
"delta": 0.6667,
"percent_delta": 0.5,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.3333,
"after": 2.0,
"delta": 0.6667,
"percent_delta": 0.5,
"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.3333,
"after": 2.0,
"delta": 0.6667,
"percent_delta": 0.5,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null,
"has_material_change": true,
"dominant_effect": "better"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.333 | - |
| predicted_SO | 2.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 6.200 | 4.000 | 8.000 | 2.000 | 10.000 | 2.000 | 5.4000 | 1.5000 | 0.6000 | 1.2000 | 0.3000 | 1.5000 | 0.3000 |
| last_10 | 0.35 | 10 | 10.100 | 4.000 | 10.000 | 4.000 | 16.000 | 2.000 | 3.4839 | 1.3548 | 0.3871 | 0.9677 | 0.3871 | 1.5484 | 0.1935 |
| season | 0.20 | 37 | 40.100 | 14.000 | 31.000 | 20.000 | 48.000 | 5.000 | 3.1240 | 1.2645 | 0.3471 | 0.7686 | 0.4959 | 1.1901 | 0.1240 |
| Metric | Value |
|---|---|
| predicted_BB | 0.4470 |
| predicted_ER | 0.5910 |
| predicted_ERA | 4.3562 |
| predicted_H | 1.2320 |
| predicted_HR | 0.2410 |
| predicted_IP | 1.1000 |
| predicted_SO | 1.5420 |
| predicted_WHIP | 1.3764 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.4470 | 0.2183 | model_form_blend |
| predicted_ER | 0.0000 | 0.5910 | 0.2886 | model_form_blend |
| predicted_ERA | - | 4.3562 | 4.3562 | form_only |
| predicted_H | 1.0000 | 1.2320 | 1.1133 | model_form_blend |
| predicted_HR | 0.0000 | 0.2410 | 0.1177 | model_form_blend |
| predicted_IP | 1.1000 | 1.1000 | 1.1000 | model_form_blend |
| predicted_SO | 2.0000 | 1.5420 | 1.7763 | model_form_blend |
| predicted_WHIP | - | 1.3764 | 1.3764 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 37 |
| Season rows before report date | 37 |
| Report year | 2026 |
| Profile rows used | 37 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 2.0 |
| H | 1 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 2 |
| HR | 0 |
| BF | 7 |
| Pitches | 24 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 4 |
| Pitching_ER | 0 |
| Pitching_ERA | 3.12 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 1 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.1 |
| Pitching_Pitches | 12 |
| Pitching_R | 0 |
| Pitching_SO | 3 |
| Pitching_Strikes | 10 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | W |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260811_TEX@LAA |
| game_type | full |
| mlbID | 820862 |
| playerID | 820862 |
| playerName | José Fermin |
| pos | P |
| started | False |
| startingPosition | P |
| team | LAA |
| teamID | 13 |
| game_date | 2026-08-11 |
| sl_k_percent | 27.6 |
| sl_bb_percent | 11.5 |
| sl_woba | 0.301 |
| sl_xwoba | 0.314 |
| sl_sweet_spot_percent | 28.4 |
| sl_barrel_batted_rate | 8.8 |
| sl_hard_hit_percent | 43.1 |
| sl_whiff_percent | 31.4 |
| sl_swing_percent | 49.2 |
| sl_avg_best_speed | 81.362530392 |
| sl_avg_hyper_speed | 94.403025446 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.435 | 0.000 | -0.435 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.261 | 0.000 | -0.261 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.565 | 0.000 | -0.565 | 0.000 |
| predicted_IP | 2.000 | 2.000 | 2.000 | Pitching_InningsPitched | 1.022 | 1.000 | 0.978 | 1.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.826 | 2.000 | -1.826 | -2.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 1 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 0 |
| Better Metrics | 1 |
| Worse Metrics | 0 |
| Biggest Boost | predicted_IP: 1.3333 -> 2.0000 (boost 0.6667, better) |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 1 | 0 | 1 | 0 | predicted_IP: 1.3333 -> 2.0000 (boost 0.6667, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "696519",
"player_name": "Samy Natera Jr.",
"position": "Middle Reliever",
"team": "LAA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.3333,
"predicted_SO": 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": 2.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.3333,
"after": 2.0,
"delta": 0.6667,
"percent_delta": 0.5,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 1.3333,
"after": 2.0,
"delta": 0.6667,
"percent_delta": 0.5,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.3333,
"after": 2.0,
"delta": 0.6667,
"percent_delta": 0.5,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 1.3333,
"after": 2.0,
"delta": 0.6667,
"percent_delta": 0.5,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null,
"has_material_change": true,
"dominant_effect": "better"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.333 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 6.200 | 1.000 | 4.000 | 1.000 | 12.000 | 0.000 | 1.3500 | 0.7500 | 0.1500 | 0.6000 | 0.1500 | 1.8000 | 0.0000 |
| last_10 | 0.35 | 10 | 11.200 | 1.000 | 5.000 | 2.000 | 20.000 | 0.000 | 0.7714 | 0.6000 | 0.0857 | 0.4286 | 0.1714 | 1.7143 | 0.0000 |
| season | 0.20 | 22 | 27.000 | 6.000 | 13.000 | 9.000 | 42.000 | 1.000 | 2.0000 | 0.8148 | 0.2222 | 0.4815 | 0.3333 | 1.5556 | 0.0370 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3660 |
| predicted_ER | 0.4180 |
| predicted_ERA | 2.8211 |
| predicted_H | 0.9820 |
| predicted_HR | 0.1010 |
| predicted_IP | 1.1000 |
| predicted_SO | 1.8040 |
| predicted_WHIP | 1.0106 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.3660 | 0.1636 | model_form_blend |
| predicted_ER | 0.0000 | 0.4180 | 0.1868 | model_form_blend |
| predicted_ERA | - | 2.8211 | 2.8211 | form_only |
| predicted_H | 0.0000 | 0.9820 | 0.4389 | model_form_blend |
| predicted_HR | 0.0000 | 0.1010 | 0.0451 | model_form_blend |
| predicted_IP | 1.1000 | 1.1000 | 1.1000 | model_form_blend |
| predicted_SO | 0.0000 | 1.8040 | 0.8062 | model_form_blend |
| predicted_WHIP | - | 1.0106 | 1.0106 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 23 |
| Season rows before report date | 23 |
| Report year | 2026 |
| Profile rows used | 22 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 2.0 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 0 |
| HR | 0 |
| BF | 6 |
| Pitches | 25 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 2.00 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 11 |
| Pitching_R | 0 |
| Pitching_SO | 2 |
| Pitching_Strikes | 8 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | S |
| Pitching_pitchingOrder | 5 |
| allPositionsPlayed | P |
| gameID | 20260811_TEX@LAA |
| game_type | full |
| mlbID | 696519 |
| playerID | 696519 |
| playerName | Samy Natera Jr. |
| pos | P |
| started | False |
| startingPosition | P |
| team | LAA |
| teamID | 13 |
| game_date | 2026-08-11 |
| sl_k_percent | 40.4 |
| sl_bb_percent | 9.6 |
| sl_woba | 0.214 |
| sl_xwoba | 0.219 |
| sl_sweet_spot_percent | 27.5 |
| sl_barrel_batted_rate | 5.9 |
| sl_hard_hit_percent | 31.4 |
| sl_whiff_percent | 37.3 |
| sl_swing_percent | 47.6 |
| sl_avg_best_speed | 77.762272308 |
| sl_avg_hyper_speed | 92.940865882 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.333 | 0.000 | -0.333 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.333 | 0.000 | 0.667 | 1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 1.000 | 1.000 | 0.000 | 0.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.000 | 1.000 | -1.000 | -1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "690829",
"player_name": "Ben Joyce",
"position": "Middle Reliever",
"team": "LAA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 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"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 3 | 3.000 | 0.000 | 1.000 | 1.000 | 3.000 | 0.000 | 0.0000 | 0.6667 | 0.0000 | 0.3333 | 0.3333 | 1.0000 | 0.0000 |
| last_10 | 0.35 | 3 | 3.000 | 0.000 | 1.000 | 1.000 | 3.000 | 0.000 | 0.0000 | 0.6667 | 0.0000 | 0.3333 | 0.3333 | 1.0000 | 0.0000 |
| season | 0.20 | 3 | 3.000 | 0.000 | 1.000 | 1.000 | 3.000 | 0.000 | 0.0000 | 0.6667 | 0.0000 | 0.3333 | 0.3333 | 1.0000 | 0.0000 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3580 |
| predicted_ER | 0.4450 |
| predicted_ERA | 4.0074 |
| predicted_H | 0.9050 |
| predicted_HR | 0.1330 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.9610 |
| predicted_WHIP | 1.2632 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.3580 | 0.0977 | model_form_blend |
| predicted_ER | 0.0000 | 0.4450 | 0.1214 | model_form_blend |
| predicted_ERA | - | 4.0074 | 4.0074 | form_only |
| predicted_H | 1.0000 | 0.9050 | 0.9741 | model_form_blend |
| predicted_HR | 0.0000 | 0.1330 | 0.0363 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 0.9610 | 0.2622 | model_form_blend |
| predicted_WHIP | - | 1.2632 | 1.2632 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 3 |
| Season rows before report date | 3 |
| Report year | 2026 |
| Profile rows used | 3 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 1 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 0 |
| HR | 0 |
| BF | 4 |
| Pitches | 16 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 0.00 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 1 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 14 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 10 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260810_TEX@LAA |
| game_type | full |
| mlbID | 690829 |
| playerID | 690829 |
| playerName | Ben Joyce |
| pos | P |
| started | False |
| startingPosition | P |
| team | LAA |
| teamID | 13 |
| game_date | 2026-08-10 |
| sl_k_percent | 30.0 |
| sl_bb_percent | 10.0 |
| sl_woba | 0.159 |
| sl_xwoba | 0.19 |
| sl_sweet_spot_percent | 16.7 |
| sl_barrel_batted_rate | 0.0 |
| sl_hard_hit_percent | 33.3 |
| sl_whiff_percent | 35.0 |
| sl_swing_percent | 43.5 |
| sl_avg_best_speed | 65.91845 |
| sl_avg_hyper_speed | 92.71386 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 1.000 | 1.000 | 1.000 | Pitching_BB | 1.200 | 1.000 | -0.200 | 0.000 |
| predicted_ER | 2.000 | 2.000 | 2.000 | Pitching_ER | 0.400 | 0.000 | 1.600 | 2.000 |
| predicted_H | 2.000 | 2.000 | 2.000 | Pitching_H | 0.600 | 2.000 | 1.400 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.880 | 1.200 | 0.120 | -0.200 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 0.800 | 0.000 | 0.200 | 1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "684665",
"player_name": "Luke Murphy",
"position": "Middle Reliever",
"team": "LAA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 2.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": 2.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 2.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 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": 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"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 1.000 | - |
| predicted_ER | 2.000 | - |
| predicted_H | 2.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 1.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.100 | 2.000 | 3.000 | 6.000 | 4.000 | 0.000 | 3.3750 | 1.6875 | 0.3750 | 0.5625 | 1.1250 | 0.7500 | 0.0000 |
| last_10 | 0.35 | 5 | 5.100 | 2.000 | 3.000 | 6.000 | 4.000 | 0.000 | 3.3750 | 1.6875 | 0.3750 | 0.5625 | 1.1250 | 0.7500 | 0.0000 |
| season | 0.20 | 5 | 5.100 | 2.000 | 3.000 | 6.000 | 4.000 | 0.000 | 3.3750 | 1.6875 | 0.3750 | 0.5625 | 1.1250 | 0.7500 | 0.0000 |
| Metric | Value |
|---|---|
| predicted_BB | 0.4950 |
| predicted_ER | 0.4770 |
| predicted_ERA | 4.2927 |
| predicted_H | 0.9010 |
| predicted_HR | 0.1230 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.9200 |
| predicted_WHIP | 1.3969 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 0.4950 | 0.8476 | model_form_blend |
| predicted_ER | 2.0000 | 0.4770 | 1.5403 | model_form_blend |
| predicted_ERA | - | 4.2927 | 4.2927 | form_only |
| predicted_H | 2.0000 | 0.9010 | 1.6683 | model_form_blend |
| predicted_HR | 0.0000 | 0.1230 | 0.0371 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 0.9200 | 0.9759 | model_form_blend |
| predicted_WHIP | - | 1.3969 | 1.3969 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 5 |
| Season rows before report date | 5 |
| Report year | 2026 |
| Profile rows used | 5 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 2 |
| R | 2 |
| ER | 2 |
| BB | 1 |
| SO | 1 |
| HR | 0 |
| BF | 6 |
| Pitches | 23 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 8 |
| Pitching_ER | 0 |
| Pitching_ERA | 3.38 |
| Pitching_Flyouts | 2 |
| Pitching_Groundouts | 2 |
| Pitching_H | 2 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 1 |
| Pitching_Inherited Runners Scored | 1 |
| Pitching_InningsPitched | 1.2 |
| Pitching_Pitches | 26 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 16 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | H |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260811_TEX@LAA |
| game_type | full |
| mlbID | 684665 |
| playerID | 684665 |
| playerName | Luke Murphy |
| pos | P |
| started | False |
| startingPosition | P |
| team | LAA |
| teamID | 13 |
| game_date | 2026-08-11 |
| sl_k_percent | 16.7 |
| sl_bb_percent | 25.0 |
| sl_woba | 0.286 |
| sl_xwoba | 0.291 |
| sl_sweet_spot_percent | 42.9 |
| sl_barrel_batted_rate | 0.0 |
| sl_hard_hit_percent | 28.6 |
| sl_whiff_percent | 21.1 |
| sl_swing_percent | 38.0 |
| sl_avg_best_speed | 77.405068571 |
| sl_avg_hyper_speed | 92.29523 |