20261005_CHW@CLE
20261005_CHW@CLE__20261005T213725Z.json • 2026-10-05
Clean: no problems detected. Risk score: 0.
No action required
No critical, error, or warning findings were detected.
Problems table - exact rows
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|
All findings - complete audit trail
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| INFO | current_payload | current | CHW | CURRENT_PITCHER_DUPLICATION | CHW pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_payload | current | CLE | CURRENT_PITCHER_DUPLICATION | CLE pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_vs_final | cross-schema | CHW | CURRENT_FINALIZED_MATCH_BOX | CHW model-prediction batting totals differ from final simulation box score (AB: current=31, sim=37; H: current=7, sim=10; 2B: current=1, sim=5; R: current=5, sim=4; BB: current=4, sim=1; SO: current=11, sim=6). | New contract: model prediction totals may differ from scoring_simulation; simulation_stats_source links the simulation box score. | ||
| INFO | current_vs_final | cross-schema | CHW | CURRENT_PLAYER_MATCH_BOX | CHW current finalized hitter lines are model predictions and differ from the simulation box score: Sam Antonacci: AB current=4 box=5, H current=1 box=2, 2B current=0 box=1, RBI current=0 box=3; Munetaka Murakami: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Tristan Peters: AB current=3 box=4, H current=1 box=0, 2B current=1 box=0; Braden Montgomery: AB current=3 box=4, H current=1 box=2, 2B current=0 box=1, R current=0 box=1; Kyle Teel: AB current=4 box=5, H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Miguel Vargas: AB current=4 box=3, H current=1 box=2, HR current=0 box=1, SO current=1 box=0; Andrew Benintendi: AB current=3 box=4, H current=0 box=1, 2B current=0 box=1, RBI current=1 box=0; Chase Meidroth: AB current=3 box=4, H current=1 box=0, R current=1 box=0 | New contract: compare model predictions separately; simulation_box_score_stats/scoring_simulation hold the simulation draw. | ||
| INFO | current_vs_final | cross-schema | CLE | CURRENT_FINALIZED_MATCH_BOX | CLE model-prediction batting totals differ from final simulation box score (H: current=8, sim=9; 2B: current=2, sim=3; RBI: current=4, sim=5; BB: current=3, sim=1; SO: current=7, sim=6). | New contract: model prediction totals may differ from scoring_simulation; simulation_stats_source links the simulation box score. | ||
| INFO | current_vs_final | cross-schema | CLE | CURRENT_PLAYER_MATCH_BOX | CLE current finalized hitter lines are model predictions and differ from the simulation box score: Steven Kwan: BB current=1 box=0; Jo Adell: 2B current=1 box=0, RBI current=1 box=0, R current=1 box=0; Nathaniel Lowe: AB current=4 box=3, H current=1 box=0, RBI current=1 box=0, BB current=0 box=1; José Ramírez: H current=1 box=0, 2B current=1 box=0, R current=1 box=0, BB current=1 box=0; Angel Martínez: HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Chase DeLauter: RBI current=1 box=0, R current=0 box=1, BB current=1 box=0; Travis Bazzana: AB current=3 box=4, H current=1 box=2, 2B current=0 box=1, RBI current=0 box=1; Patrick Bailey: H current=0 box=1, 2B current=0 box=1, RBI current=0 box=1, R current=0 box=1 | New contract: compare model predictions separately; simulation_box_score_stats/scoring_simulation hold the simulation draw. | ||
| INFO | score_reconciliation | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. | |||||
| PASS | batting | current | CHW | BATTING_REALISM | current:CHW hitter lines pass basic baseball constraints. | |||
| PASS | batting | current | CLE | BATTING_REALISM | current:CLE hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | CHW | BATTING_REALISM | simulation:CHW hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | CLE | BATTING_REALISM | simulation:CLE hitter lines pass basic baseball constraints. | |||
| PASS | batting_totals | current | CHW | BATTING_TOTALS_SUM | current:CHW batting totals equal summed player lines. | |||
| PASS | batting_totals | current | CLE | BATTING_TOTALS_SUM | current:CLE batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | CHW | BATTING_TOTALS_SUM | simulation:CHW batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | CLE | BATTING_TOTALS_SUM | simulation:CLE batting totals equal summed player lines. | |||
| PASS | boxscore_crosscheck | simulation | CHW | BAT_PITCH_BB_MATCH | simulation:CHW batting walks match CLE pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | CHW | BAT_PITCH_HR_MATCH | simulation:CHW batting home runs match CLE pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | CHW | BAT_PITCH_H_MATCH | simulation:CHW batting hits match CLE pitching: 10. | |||
| PASS | boxscore_crosscheck | simulation | CHW | BAT_PITCH_SO_MATCH | simulation:CHW batting strikeouts match CLE pitching: 6. | |||
| PASS | boxscore_crosscheck | simulation | CHW | PA_BF_MATCH | simulation:CHW PA=38 matches CLE BF=38. | |||
| PASS | boxscore_crosscheck | simulation | CHW | RUNS_MATCH_FINAL | simulation:CHW runs match final score and opposing pitching runs: 4. | |||
| PASS | boxscore_crosscheck | simulation | CLE | BAT_PITCH_BB_MATCH | simulation:CLE batting walks match CHW pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | CLE | BAT_PITCH_HR_MATCH | simulation:CLE batting home runs match CHW pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | CLE | BAT_PITCH_H_MATCH | simulation:CLE batting hits match CHW pitching: 9. | |||
| PASS | boxscore_crosscheck | simulation | CLE | BAT_PITCH_SO_MATCH | simulation:CLE batting strikeouts match CHW pitching: 6. | |||
| PASS | boxscore_crosscheck | simulation | CLE | PA_BF_MATCH | simulation:CLE PA=34 matches CHW BF=34. | |||
| PASS | boxscore_crosscheck | simulation | CLE | RUNS_MATCH_FINAL | simulation:CLE runs match final score and opposing pitching runs: 5. | |||
| PASS | confidence_calibration | CONFIDENCE_CALIBRATION_APPLIED | Empirical confidence blend verified: 0.540 -> 0.552 at weight 0.500. | {'method': 'empirical_hit_rate_weighted_v1', 'applied': True, 'reason': 'raw confidence blended with verified historical bucket hit rate', 'raw_confidence': 0.539822, 'sample_size': 821, 'empirical_hit_rate': 0.5639, 'empirical_weight': 0.5, 'blended_confidence': 0.551861, 'published_confidence': 0.5185, 'published_after_governors': True, 'governor_mode': 'shrinkage_not_clamp'} | ||||
| PASS | cross_schema | cross-schema | CHW | CURRENT_FINALIZED_MATCH_BOX | CHW current pitcher projected totals match final simulation pitching box score. | |||
| PASS | cross_schema | cross-schema | CLE | CURRENT_FINALIZED_MATCH_BOX | CLE current pitcher projected totals match final simulation pitching box score. | |||
| PASS | current_payload | current | CHW | CURRENT_LINEUP_SHAPE | CHW current lineup has 9 expected positions. | |||
| PASS | current_payload | current | CHW | CURRENT_MODEL_ZERO_FALLBACK | CHW current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | CHW | CURRENT_NAMES_PRESENT | CHW current hitter names are populated. | |||
| PASS | current_payload | current | CHW | CURRENT_PREDICTIONS_MATCH_FINALIZED | CHW hitter predictions mirror finalized stats. | |||
| PASS | current_payload | current | CLE | CURRENT_LINEUP_SHAPE | CLE current lineup has 9 expected positions. | |||
| PASS | current_payload | current | CLE | CURRENT_MODEL_ZERO_FALLBACK | CLE current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | CLE | CURRENT_NAMES_PRESENT | CLE current hitter names are populated. | |||
| PASS | current_payload | current | CLE | CURRENT_PREDICTIONS_MATCH_FINALIZED | CLE hitter predictions mirror finalized stats. | |||
| PASS | data_leakage | H2H_DATA_LEAKAGE | All head-to-head rows are dated before the prediction game date. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | Home + away win probabilities sum to approximately 1.0. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | away_win_probability is in [0,1]: 0.482. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | confidence is in [0,1]: 0.518. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | home_win_probability is in [0,1]: 0.518. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Final total runs 9 is reasonably close to low-score expected_total_runs 9.0. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Low-score analysis factors are non-negative. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Low-score probability/confidence are valid: 0.523/0.713. | |||||
| PASS | final_decision | FINAL_DECISION_POLICY | Final decision policy preserved model ownership of the winner. | |||||
| PASS | innings | GAME_ENDING_COHERENT | The game ends coherently for its score. | |||||
| PASS | innings | INNINGS_COUNT | inning_by_inning_summary contains 9 innings. | |||||
| PASS | innings | INNING_OUTS | Inning 9 home marked not_played with empty stats. | |||||
| PASS | innings | INNING_PLAY_SUMS | Detailed play totals match every half-inning line. | |||||
| PASS | innings | INNING_SEQUENCE | Inning numbers are sequential. | |||||
| PASS | innings | INNING_TOTAL_HITS | Inning hits match batting totals: CHW 10, CLE 9. | |||||
| PASS | innings | INNING_TOTAL_RUNS | Inning runs sum to final score: CHW 4 - CLE 5. | |||||
| PASS | matchup_recency | GUARDRAIL_FINAL_WINNER_SYNC | Guardrail predicted_team matches final predicted winner: CLE. | |||||
| PASS | matchup_recency | MATCHUP_RECENCY_GUARDRAIL | Matchup recency guardrail applied for CLE; cap=0.56, reasons=recent head-to-head is split and volatile; recent head-to-head margin does not support a strong repeat pick; a prior same-side pick already missed against the actual result. | {'applied': True, 'confidence_cap': 0.56, 'winner_flipped': False, 'reasons': ['recent head-to-head is split and volatile', 'recent head-to-head margin does not support a strong repeat pick', 'a prior same-side pick already missed against the actual result'], 'signals': {'predicted_team': 'CLE', 'opponent_team': 'CHW', 'h2h_net_margin': 0, 'opponent_breakout': False, 'opponent_blowout_win': False, 'split_recent_h2h': True, 'recent_h2h': [{'date': '2026-09-16', 'predicted_team_runs': 6, 'opponent_runs': 3, 'margin_for_predicted_team': 3, 'winner': 'CLE'}, {'date': '2026-09-15', 'predicted_team_runs': 7, 'opponent_runs': 6, 'margin_for_predicted_team': 1, 'winner': 'CLE'}, {'date': '2026-09-14', 'predicted_team_runs': 3, 'opponent_runs': 7, 'margin_for_predicted_team': -4, 'winner': 'CHW'}], 'prediction_memory': {'available': True, 'reason': 'verified_prior_matchup_predictions_available', 'verification_policy': 'pregame_artifact_matched_to_one_official_final', 'verified_outcome_count': 12, 'consecutive_same_pick_count': 0, 'same_pick_actual_loss_count': 1, 'same_pick_blowout_loss_count': 0, 'prior_predictions': [{'date': '20261003', 'away': 'CHW', 'home': 'CLE', 'game_number': 1, 'predicted_team': 'CHW', 'actual_winner': 'CHW', 'actual_margin': 3, 'raw_pick_probability': 0.5229980000000001, 'artifact': '20261003_CHW@CLE.json', 'verification': 'pregame_official_final'}, {'date': '20260916', 'away': 'CHW', 'home': 'CLE', 'game_number': 1, 'predicted_team': 'CLE', 'actual_winner': 'CLE', 'actual_margin': 3, 'raw_pick_probability': 0.556513, 'artifact': '20260916_CHW@CLE.json', 'verification': 'pregame_official_final'}, {'date': '20260915', 'away': 'CHW', 'home': 'CLE', 'game_number': 1, 'predicted_team': 'CHW', 'actual_winner': 'CLE', 'actual_margin': 1, 'raw_pick_probability': 0.544573, 'artifact': '20260915_CHW@CLE.json', 'verification': 'pregame_official_final'}, {'date': '20260914', 'away': 'CHW', 'home': 'CLE', 'game_number': 1, 'predicted_team': 'CLE', 'actual_winner': 'CHW', 'actual_margin': 4, 'raw_pick_probability': 0.505654, 'artifact': '20260914_CHW@CLE.json', 'verification': 'pregame_official_final'}, {'date': '20260809', 'away': 'CLE', 'home': 'CHW', 'game_number': 1, 'predicted_team': 'CHW', 'actual_winner': 'CHW', 'actual_margin': 2, 'raw_pick_probability': 0.56, 'artifact': '20260809_CLE@CHW.json', 'verification': 'pregame_official_final'}]}, 'guardrail_predicted_team': 'CLE', 'guardrail_opponent_team': 'CHW', 'output_pre_simulation_winner': 'CLE', 'output_opponent_team': 'CHW', 'simulation_score_winner': 'CLE', 'final_score_winner': 'CLE', 'pre_simulation_winner': 'CLE', 'winner_flipped_by_simulation': False, 'simulation_would_flip_winner': False}, 'hard_flip_suppressed': False, 'flip_authority': 'caps_confidence_and_shifts_runs_only', 'final_prediction_sync': {'pre_simulation_score': {'away_runs': 4, 'home_runs': 5, 'score_text': 'CHW 4 - 5 CLE', 'winner': 'CLE'}, 'final_simulation_score': {'away_runs': 4, 'home_runs': 5, 'score_text': 'CHW 4 - 5 CLE', 'winner': 'CLE'}, '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.049, 'recent_form_edge_home_minus_away': -0.03, 'winner_direction': 'home', 'thresholds': {'pitcher_matchup': 0.35, 'recent_form': 0.75}}, 'margin_widening_capped': False, 'simulation_winner_agrees': True, 'away_run_delta': 0, 'home_run_delta': 0, 'total_run_delta': 0, 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_usage': 'organic_simulation_realized_target', 'final_prediction_source': 'stable_final_prediction_policy', 'final_decision_policy': {'policy_version': 'model_target_authoritative_simulation_realizes_v3', 'away_runs': 4, 'home_runs': 5, 'winner': 'CLE', 'model_winner': 'CLE', 'simulation_winner': 'CLE', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 2, 'published_winner': 'CLE', 'published_winner_draw_share': 0.5, 'draw_majority_team': None, 'published_winner_is_draw_majority': False, 'sampling': 'target_conditioned_selection', 'is_unbiased_probability_sample': False, 'note': 'Draw shares are target-conditioned and diagnostic. A published winner holding a minority share is recorded, not suppressed.'}, 'simulation_score_enabled': True, 'independent_margin_support': False, 'margin_widening_capped': False, 'model_margin': 1, 'simulation_margin': 1, 'simulation_usage': 'organic_simulation_realized_target', 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_realized_target': True, 'model_score': {'away_runs': 4, 'home_runs': 5}, 'simulation_score': {'away_runs': 4, 'home_runs': 5}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 1, 'final_margin': 1, 'winner_quality_edge': -0.1605, 'winner': 'CLE', 'score_reviewed': {'away_runs': 4, 'home_runs': 5, 'source': 'enhanced_prediction.pre_simulation_target'}, 'reason': 'published margin is directionally supported or within review threshold'}}} | ||||
| PASS | metadata | DATE_PARSE | Date is valid ISO format: 2026-10-05. | |||||
| PASS | metadata | FILENAME_GAME_ID_MATCH | Filename contains game_id: filename=20261005_CHW@CLE__20261005T213725Z, game_id=20261005_CHW@CLE. | |||||
| PASS | metadata | FILENAME_TEAM_MATCH | Filename teams match JSON teams: CHW@CLE. | |||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | H2H base feature is implemented and its runtime trace passed. | {'method': 'h2h_net_margin_monotonic_v1', 'available': True, 'sample_size': 5, 'sample_weight': 0.0577, 'home_net_margin': -5.0, 'absolute_net_margin': 5.0, 'home_average_margin': -1.0, 'home_run_delta': -0.0288, 'away_run_delta': 0.0288, 'evidence': [{'game_id': None, 'home_margin': 3.0}, {'game_id': None, 'home_margin': 1.0}, {'game_id': None, 'home_margin': -4.0}, {'game_id': None, 'home_margin': -2.0}, {'game_id': None, 'home_margin': -3.0}], 'adaptive_parameters': {'h2h.history_limit': 5, 'h2h.maximum_weight': 0.15, 'h2h.prior_games': 8.0, 'h2h.maximum_total_shift': 0.65}} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Score distribution widening is implemented and its runtime trace passed. | {'most_likely': [{'home_runs': 5, 'away_runs': 4, 'probability': 0.01744160494745018}, {'home_runs': 4, 'away_runs': 4, 'probability': 0.017375707797229457}, {'home_runs': 5, 'away_runs': 5, 'probability': 0.017334799164934776}, {'home_runs': 4, 'away_runs': 5, 'probability': 0.017269305543902796}, {'home_runs': 5, 'away_runs': 3, 'probability': 0.015876983281940128}], 'home_distribution': {'0': 0.048314403764278285, '1': 0.07175173601017976, '2': 0.09661848868951951, '3': 0.11796688312224266, '4': 0.13059664125373613, '5': 0.13109192735013284, '6': 0.11931414339498507, '7': 0.09846456002099437, '8': 0.07367836837057504, '9': 0.04998872879225278, '10': 0.030752202373672564, '11': 0.017153486031480765, '12': 0.008675621581975525, '13': 0.003978513588860975, '14': 0.0016542956551136854}, 'away_distribution': {'0': 0.05009797024117762, '1': 0.07431848632840023, '2': 0.0997441633368908, '3': 0.12111335612248927, '4': 0.13304865753377382, '5': 0.13223391794855024, '6': 0.11890199614517424, '7': 0.09672736041242856, '8': 0.07119072868340738, '9': 0.0474036137658919, '10': 0.028557052144400165, '11': 0.015564286235275058, '12': 0.007674656641990396, '13': 0.003423754460150115}, 'model': 'overdispersed_score_distribution', 'variance_multiplier': 2.25, 'variance_floor': 2.75, 'roadmap_status': 'implemented_above_requested_1.4x'} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Season/recent-form quality blend is implemented and its runtime trace passed. | {'method': 'season_recent_quality_blend_v2_adaptive', 'recent_window': 10, 'season_quality_edge': -0.2685, 'recent_quality_edge': 0.04, 'season_weight': 0.65, 'recent_weight': 0.35, 'recent_reliability': 1.0, 'alignment': 'conflict', 'blended_quality_edge': -0.1605} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Simulation flip control is implemented and its runtime trace passed. | {'pre_simulation_score': {'away_runs': 4, 'home_runs': 5, 'score_text': 'CHW 4 - 5 CLE', 'winner': 'CLE'}, 'final_simulation_score': {'away_runs': 4, 'home_runs': 5, 'score_text': 'CHW 4 - 5 CLE', 'winner': 'CLE'}, '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.049, 'recent_form_edge_home_minus_away': -0.03, 'winner_direction': 'home', 'thresholds': {'pitcher_matchup': 0.35, 'recent_form': 0.75}}, 'margin_widening_capped': False, 'simulation_winner_agrees': True, 'away_run_delta': 0, 'home_run_delta': 0, 'total_run_delta': 0, 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_usage': 'organic_simulation_realized_target', 'final_prediction_source': 'stable_final_prediction_policy', 'final_decision_policy': {'policy_version': 'model_target_authoritative_simulation_realizes_v3', 'away_runs': 4, 'home_runs': 5, 'winner': 'CLE', 'model_winner': 'CLE', 'simulation_winner': 'CLE', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 2, 'published_winner': 'CLE', 'published_winner_draw_share': 0.5, 'draw_majority_team': None, 'published_winner_is_draw_majority': False, 'sampling': 'target_conditioned_selection', 'is_unbiased_probability_sample': False, 'note': 'Draw shares are target-conditioned and diagnostic. A published winner holding a minority share is recorded, not suppressed.'}, 'simulation_score_enabled': True, 'independent_margin_support': False, 'margin_widening_capped': False, 'model_margin': 1, 'simulation_margin': 1, 'simulation_usage': 'organic_simulation_realized_target', 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_realized_target': True, 'model_score': {'away_runs': 4, 'home_runs': 5}, 'simulation_score': {'away_runs': 4, 'home_runs': 5}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 1, 'final_margin': 1, 'winner_quality_edge': -0.1605, 'winner': 'CLE', 'score_reviewed': {'away_runs': 4, 'home_runs': 5, 'source': 'enhanced_prediction.pre_simulation_target'}, 'reason': 'published margin is directionally supported or within review threshold'}} | ||||
| PASS | pipeline | PIPELINE_VERSION | Prediction pipeline version is current: enhanced_game_prediction_v4_continuous_learning__player_form_v3_5_10_season. | |||||
| PASS | pitch_by_pitch | PITCH_DETAIL_SANITY | Pitch-by-pitch speeds and zones are within sanity ranges. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | away pitcher pitch-by-pitch count matches pitch_count_summary total: 133. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | home pitcher pitch-by-pitch count matches pitch_count_summary total: 157. | |||||
| PASS | pitch_count | simulation | CHW | PITCH_COUNT_PITCHER_MATCH | CHW pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | CHW | PITCH_COUNT_TOTAL_MATCH | CHW pitch_count_summary total, row sum, and pitching total all match: 133. | |||
| PASS | pitch_count | simulation | CLE | PITCH_COUNT_PITCHER_MATCH | CLE pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | CLE | PITCH_COUNT_TOTAL_MATCH | CLE pitch_count_summary total, row sum, and pitching total all match: 157. | |||
| PASS | pitcher_opponent_strength | PITCHER_OPPONENT_STRENGTH_BOUNDS | Pitcher-opponent adjustment stayed inside supported bounds. | |||||
| PASS | pitching | PITCHER_APPEARANCE_COHERENT | All 8 pitchers in the box actually appeared. | |||||
| PASS | pitching | PUBLISHED_PITCHER_LINES_MATCH_BOX | Published pitcher lines cover the outs the box recorded. | |||||
| PASS | pitching | current | CHW | PITCHING_REALISM | current:CHW pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | CHW | STARTER_PRESENT | current:CHW includes a starter/opener role. | |||
| PASS | pitching | current | CLE | PITCHING_REALISM | current:CLE pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | CLE | STARTER_PRESENT | current:CLE includes a starter/opener role. | |||
| PASS | pitching | simulation | CHW | PITCHING_REALISM | simulation:CHW pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | CHW | STARTER_PRESENT | simulation:CHW includes a starter/opener role. | |||
| PASS | pitching | simulation | CLE | PITCHING_REALISM | simulation:CLE pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | CLE | STARTER_PRESENT | simulation:CLE includes a starter/opener role. | |||
| PASS | pitching_totals | current | CHW | PITCHING_TOTALS_SUM | current:CHW pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | current | CHW | PITCHING_TOTALS_SUM | current:CHW pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | current | CLE | PITCHING_TOTALS_SUM | current:CLE pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | CLE | PITCHING_TOTALS_SUM | current:CLE pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | CHW | PITCHING_TOTALS_SUM | simulation:CHW pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | simulation | CHW | PITCHING_TOTALS_SUM | simulation:CHW pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | CLE | PITCHING_TOTALS_SUM | simulation:CLE pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | CLE | PITCHING_TOTALS_SUM | simulation:CLE pitching totals equal summed pitcher lines for available fields. | |||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Enhanced AI score matches enhanced target: CHW 4 - 5 CLE. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation score matches final score: CHW 4 - 5 CLE. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation winner matches final score: CLE wins 5-4. | |||||
| PASS | prediction_comparison | SIMULATION_WINNER_FLIP_TRACE | Simulation decision is explicit: model=CLE, simulation=CLE, published=CLE. | |||||
| PASS | probability | CONFIDENCE_RANGE | Enhanced target confidence is in range: 0.518. | |||||
| PASS | recent_form | RECENT_FORM_RANGE | away recent_form record is coherent: 7/10 (0.700). | |||||
| PASS | recent_form | RECENT_FORM_RANGE | home recent_form record is coherent: 8/10 (0.800). | |||||
| PASS | report | REPORT_COMPLETE | All findings, passes, warnings, errors, and critical issues are rendered in the single HTML report. | |||||
| PASS | schema | SCHEMA_ROOTS_PRESENT | Both major schemas are present: game, scoring_simulation, game_summary, prediction_comparison. | |||||
| PASS | score | GAME_SUMMARY_MATCH | game_summary agrees with the published score (game.final_prediction): CLE wins 5-4. | |||||
| PASS | score | SCORE_NO_TIE | Final score has a clear winner: CLE wins 4-5. | |||||
| PASS | score | SCORE_STEP_FINAL_MATCH | simulation_result step matches final score: 4-5. | |||||
| PASS | score | SCORE_STEP_ORDER | Score evolution contains the expected ordered steps. | |||||
| PASS | score | TARGET_SCORE_DRIFT | Final score is close to enhanced target: target 4-5, final 4-5 (delta 0). | |||||
| PASS | score | TOTAL_RUNS_MATCH | total_runs field matches final score total: 9. | |||||
| PASS | score | WINNER_FIELD_MATCH | winner field is consistent: CLE wins 5-4. | |||||
| PASS | score | cross-schema | CURRENT_SCORE_MATCHES_SIM | game.predicted_runs matches scoring_simulation.final_score. | ||||
| PASS | team_recent_performance | current | CHW | RECENT_FORM_RANGE | CHW recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | CHW | TEAM_RECENT_RECORD | CHW wins and win_pct agree: 7/10 = 0.700. | |||
| PASS | team_recent_performance | current | CLE | RECENT_FORM_RANGE | CLE recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | CLE | TEAM_RECENT_RECORD | CLE wins and win_pct agree: 7/10 = 0.700. |
Passed checks
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| PASS | batting | current | CHW | BATTING_REALISM | current:CHW hitter lines pass basic baseball constraints. | |||
| PASS | batting | current | CLE | BATTING_REALISM | current:CLE hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | CHW | BATTING_REALISM | simulation:CHW hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | CLE | BATTING_REALISM | simulation:CLE hitter lines pass basic baseball constraints. | |||
| PASS | batting_totals | current | CHW | BATTING_TOTALS_SUM | current:CHW batting totals equal summed player lines. | |||
| PASS | batting_totals | current | CLE | BATTING_TOTALS_SUM | current:CLE batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | CHW | BATTING_TOTALS_SUM | simulation:CHW batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | CLE | BATTING_TOTALS_SUM | simulation:CLE batting totals equal summed player lines. | |||
| PASS | boxscore_crosscheck | simulation | CHW | BAT_PITCH_BB_MATCH | simulation:CHW batting walks match CLE pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | CHW | BAT_PITCH_HR_MATCH | simulation:CHW batting home runs match CLE pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | CHW | BAT_PITCH_H_MATCH | simulation:CHW batting hits match CLE pitching: 10. | |||
| PASS | boxscore_crosscheck | simulation | CHW | BAT_PITCH_SO_MATCH | simulation:CHW batting strikeouts match CLE pitching: 6. | |||
| PASS | boxscore_crosscheck | simulation | CHW | PA_BF_MATCH | simulation:CHW PA=38 matches CLE BF=38. | |||
| PASS | boxscore_crosscheck | simulation | CHW | RUNS_MATCH_FINAL | simulation:CHW runs match final score and opposing pitching runs: 4. | |||
| PASS | boxscore_crosscheck | simulation | CLE | BAT_PITCH_BB_MATCH | simulation:CLE batting walks match CHW pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | CLE | BAT_PITCH_HR_MATCH | simulation:CLE batting home runs match CHW pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | CLE | BAT_PITCH_H_MATCH | simulation:CLE batting hits match CHW pitching: 9. | |||
| PASS | boxscore_crosscheck | simulation | CLE | BAT_PITCH_SO_MATCH | simulation:CLE batting strikeouts match CHW pitching: 6. | |||
| PASS | boxscore_crosscheck | simulation | CLE | PA_BF_MATCH | simulation:CLE PA=34 matches CHW BF=34. | |||
| PASS | boxscore_crosscheck | simulation | CLE | RUNS_MATCH_FINAL | simulation:CLE runs match final score and opposing pitching runs: 5. | |||
| PASS | confidence_calibration | CONFIDENCE_CALIBRATION_APPLIED | Empirical confidence blend verified: 0.540 -> 0.552 at weight 0.500. | {'method': 'empirical_hit_rate_weighted_v1', 'applied': True, 'reason': 'raw confidence blended with verified historical bucket hit rate', 'raw_confidence': 0.539822, 'sample_size': 821, 'empirical_hit_rate': 0.5639, 'empirical_weight': 0.5, 'blended_confidence': 0.551861, 'published_confidence': 0.5185, 'published_after_governors': True, 'governor_mode': 'shrinkage_not_clamp'} | ||||
| PASS | cross_schema | cross-schema | CHW | CURRENT_FINALIZED_MATCH_BOX | CHW current pitcher projected totals match final simulation pitching box score. | |||
| PASS | cross_schema | cross-schema | CLE | CURRENT_FINALIZED_MATCH_BOX | CLE current pitcher projected totals match final simulation pitching box score. | |||
| PASS | current_payload | current | CHW | CURRENT_LINEUP_SHAPE | CHW current lineup has 9 expected positions. | |||
| PASS | current_payload | current | CHW | CURRENT_MODEL_ZERO_FALLBACK | CHW current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | CHW | CURRENT_NAMES_PRESENT | CHW current hitter names are populated. | |||
| PASS | current_payload | current | CHW | CURRENT_PREDICTIONS_MATCH_FINALIZED | CHW hitter predictions mirror finalized stats. | |||
| PASS | current_payload | current | CLE | CURRENT_LINEUP_SHAPE | CLE current lineup has 9 expected positions. | |||
| PASS | current_payload | current | CLE | CURRENT_MODEL_ZERO_FALLBACK | CLE current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | CLE | CURRENT_NAMES_PRESENT | CLE current hitter names are populated. | |||
| PASS | current_payload | current | CLE | CURRENT_PREDICTIONS_MATCH_FINALIZED | CLE hitter predictions mirror finalized stats. | |||
| PASS | data_leakage | H2H_DATA_LEAKAGE | All head-to-head rows are dated before the prediction game date. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | Home + away win probabilities sum to approximately 1.0. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | away_win_probability is in [0,1]: 0.482. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | confidence is in [0,1]: 0.518. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | home_win_probability is in [0,1]: 0.518. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Final total runs 9 is reasonably close to low-score expected_total_runs 9.0. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Low-score analysis factors are non-negative. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Low-score probability/confidence are valid: 0.523/0.713. | |||||
| PASS | final_decision | FINAL_DECISION_POLICY | Final decision policy preserved model ownership of the winner. | |||||
| PASS | innings | GAME_ENDING_COHERENT | The game ends coherently for its score. | |||||
| PASS | innings | INNINGS_COUNT | inning_by_inning_summary contains 9 innings. | |||||
| PASS | innings | INNING_OUTS | Inning 9 home marked not_played with empty stats. | |||||
| PASS | innings | INNING_PLAY_SUMS | Detailed play totals match every half-inning line. | |||||
| PASS | innings | INNING_SEQUENCE | Inning numbers are sequential. | |||||
| PASS | innings | INNING_TOTAL_HITS | Inning hits match batting totals: CHW 10, CLE 9. | |||||
| PASS | innings | INNING_TOTAL_RUNS | Inning runs sum to final score: CHW 4 - CLE 5. | |||||
| PASS | matchup_recency | GUARDRAIL_FINAL_WINNER_SYNC | Guardrail predicted_team matches final predicted winner: CLE. | |||||
| PASS | matchup_recency | MATCHUP_RECENCY_GUARDRAIL | Matchup recency guardrail applied for CLE; cap=0.56, reasons=recent head-to-head is split and volatile; recent head-to-head margin does not support a strong repeat pick; a prior same-side pick already missed against the actual result. | {'applied': True, 'confidence_cap': 0.56, 'winner_flipped': False, 'reasons': ['recent head-to-head is split and volatile', 'recent head-to-head margin does not support a strong repeat pick', 'a prior same-side pick already missed against the actual result'], 'signals': {'predicted_team': 'CLE', 'opponent_team': 'CHW', 'h2h_net_margin': 0, 'opponent_breakout': False, 'opponent_blowout_win': False, 'split_recent_h2h': True, 'recent_h2h': [{'date': '2026-09-16', 'predicted_team_runs': 6, 'opponent_runs': 3, 'margin_for_predicted_team': 3, 'winner': 'CLE'}, {'date': '2026-09-15', 'predicted_team_runs': 7, 'opponent_runs': 6, 'margin_for_predicted_team': 1, 'winner': 'CLE'}, {'date': '2026-09-14', 'predicted_team_runs': 3, 'opponent_runs': 7, 'margin_for_predicted_team': -4, 'winner': 'CHW'}], 'prediction_memory': {'available': True, 'reason': 'verified_prior_matchup_predictions_available', 'verification_policy': 'pregame_artifact_matched_to_one_official_final', 'verified_outcome_count': 12, 'consecutive_same_pick_count': 0, 'same_pick_actual_loss_count': 1, 'same_pick_blowout_loss_count': 0, 'prior_predictions': [{'date': '20261003', 'away': 'CHW', 'home': 'CLE', 'game_number': 1, 'predicted_team': 'CHW', 'actual_winner': 'CHW', 'actual_margin': 3, 'raw_pick_probability': 0.5229980000000001, 'artifact': '20261003_CHW@CLE.json', 'verification': 'pregame_official_final'}, {'date': '20260916', 'away': 'CHW', 'home': 'CLE', 'game_number': 1, 'predicted_team': 'CLE', 'actual_winner': 'CLE', 'actual_margin': 3, 'raw_pick_probability': 0.556513, 'artifact': '20260916_CHW@CLE.json', 'verification': 'pregame_official_final'}, {'date': '20260915', 'away': 'CHW', 'home': 'CLE', 'game_number': 1, 'predicted_team': 'CHW', 'actual_winner': 'CLE', 'actual_margin': 1, 'raw_pick_probability': 0.544573, 'artifact': '20260915_CHW@CLE.json', 'verification': 'pregame_official_final'}, {'date': '20260914', 'away': 'CHW', 'home': 'CLE', 'game_number': 1, 'predicted_team': 'CLE', 'actual_winner': 'CHW', 'actual_margin': 4, 'raw_pick_probability': 0.505654, 'artifact': '20260914_CHW@CLE.json', 'verification': 'pregame_official_final'}, {'date': '20260809', 'away': 'CLE', 'home': 'CHW', 'game_number': 1, 'predicted_team': 'CHW', 'actual_winner': 'CHW', 'actual_margin': 2, 'raw_pick_probability': 0.56, 'artifact': '20260809_CLE@CHW.json', 'verification': 'pregame_official_final'}]}, 'guardrail_predicted_team': 'CLE', 'guardrail_opponent_team': 'CHW', 'output_pre_simulation_winner': 'CLE', 'output_opponent_team': 'CHW', 'simulation_score_winner': 'CLE', 'final_score_winner': 'CLE', 'pre_simulation_winner': 'CLE', 'winner_flipped_by_simulation': False, 'simulation_would_flip_winner': False}, 'hard_flip_suppressed': False, 'flip_authority': 'caps_confidence_and_shifts_runs_only', 'final_prediction_sync': {'pre_simulation_score': {'away_runs': 4, 'home_runs': 5, 'score_text': 'CHW 4 - 5 CLE', 'winner': 'CLE'}, 'final_simulation_score': {'away_runs': 4, 'home_runs': 5, 'score_text': 'CHW 4 - 5 CLE', 'winner': 'CLE'}, '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.049, 'recent_form_edge_home_minus_away': -0.03, 'winner_direction': 'home', 'thresholds': {'pitcher_matchup': 0.35, 'recent_form': 0.75}}, 'margin_widening_capped': False, 'simulation_winner_agrees': True, 'away_run_delta': 0, 'home_run_delta': 0, 'total_run_delta': 0, 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_usage': 'organic_simulation_realized_target', 'final_prediction_source': 'stable_final_prediction_policy', 'final_decision_policy': {'policy_version': 'model_target_authoritative_simulation_realizes_v3', 'away_runs': 4, 'home_runs': 5, 'winner': 'CLE', 'model_winner': 'CLE', 'simulation_winner': 'CLE', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 2, 'published_winner': 'CLE', 'published_winner_draw_share': 0.5, 'draw_majority_team': None, 'published_winner_is_draw_majority': False, 'sampling': 'target_conditioned_selection', 'is_unbiased_probability_sample': False, 'note': 'Draw shares are target-conditioned and diagnostic. A published winner holding a minority share is recorded, not suppressed.'}, 'simulation_score_enabled': True, 'independent_margin_support': False, 'margin_widening_capped': False, 'model_margin': 1, 'simulation_margin': 1, 'simulation_usage': 'organic_simulation_realized_target', 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_realized_target': True, 'model_score': {'away_runs': 4, 'home_runs': 5}, 'simulation_score': {'away_runs': 4, 'home_runs': 5}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 1, 'final_margin': 1, 'winner_quality_edge': -0.1605, 'winner': 'CLE', 'score_reviewed': {'away_runs': 4, 'home_runs': 5, 'source': 'enhanced_prediction.pre_simulation_target'}, 'reason': 'published margin is directionally supported or within review threshold'}}} | ||||
| PASS | metadata | DATE_PARSE | Date is valid ISO format: 2026-10-05. | |||||
| PASS | metadata | FILENAME_GAME_ID_MATCH | Filename contains game_id: filename=20261005_CHW@CLE__20261005T213725Z, game_id=20261005_CHW@CLE. | |||||
| PASS | metadata | FILENAME_TEAM_MATCH | Filename teams match JSON teams: CHW@CLE. | |||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | H2H base feature is implemented and its runtime trace passed. | {'method': 'h2h_net_margin_monotonic_v1', 'available': True, 'sample_size': 5, 'sample_weight': 0.0577, 'home_net_margin': -5.0, 'absolute_net_margin': 5.0, 'home_average_margin': -1.0, 'home_run_delta': -0.0288, 'away_run_delta': 0.0288, 'evidence': [{'game_id': None, 'home_margin': 3.0}, {'game_id': None, 'home_margin': 1.0}, {'game_id': None, 'home_margin': -4.0}, {'game_id': None, 'home_margin': -2.0}, {'game_id': None, 'home_margin': -3.0}], 'adaptive_parameters': {'h2h.history_limit': 5, 'h2h.maximum_weight': 0.15, 'h2h.prior_games': 8.0, 'h2h.maximum_total_shift': 0.65}} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Score distribution widening is implemented and its runtime trace passed. | {'most_likely': [{'home_runs': 5, 'away_runs': 4, 'probability': 0.01744160494745018}, {'home_runs': 4, 'away_runs': 4, 'probability': 0.017375707797229457}, {'home_runs': 5, 'away_runs': 5, 'probability': 0.017334799164934776}, {'home_runs': 4, 'away_runs': 5, 'probability': 0.017269305543902796}, {'home_runs': 5, 'away_runs': 3, 'probability': 0.015876983281940128}], 'home_distribution': {'0': 0.048314403764278285, '1': 0.07175173601017976, '2': 0.09661848868951951, '3': 0.11796688312224266, '4': 0.13059664125373613, '5': 0.13109192735013284, '6': 0.11931414339498507, '7': 0.09846456002099437, '8': 0.07367836837057504, '9': 0.04998872879225278, '10': 0.030752202373672564, '11': 0.017153486031480765, '12': 0.008675621581975525, '13': 0.003978513588860975, '14': 0.0016542956551136854}, 'away_distribution': {'0': 0.05009797024117762, '1': 0.07431848632840023, '2': 0.0997441633368908, '3': 0.12111335612248927, '4': 0.13304865753377382, '5': 0.13223391794855024, '6': 0.11890199614517424, '7': 0.09672736041242856, '8': 0.07119072868340738, '9': 0.0474036137658919, '10': 0.028557052144400165, '11': 0.015564286235275058, '12': 0.007674656641990396, '13': 0.003423754460150115}, 'model': 'overdispersed_score_distribution', 'variance_multiplier': 2.25, 'variance_floor': 2.75, 'roadmap_status': 'implemented_above_requested_1.4x'} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Season/recent-form quality blend is implemented and its runtime trace passed. | {'method': 'season_recent_quality_blend_v2_adaptive', 'recent_window': 10, 'season_quality_edge': -0.2685, 'recent_quality_edge': 0.04, 'season_weight': 0.65, 'recent_weight': 0.35, 'recent_reliability': 1.0, 'alignment': 'conflict', 'blended_quality_edge': -0.1605} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Simulation flip control is implemented and its runtime trace passed. | {'pre_simulation_score': {'away_runs': 4, 'home_runs': 5, 'score_text': 'CHW 4 - 5 CLE', 'winner': 'CLE'}, 'final_simulation_score': {'away_runs': 4, 'home_runs': 5, 'score_text': 'CHW 4 - 5 CLE', 'winner': 'CLE'}, '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.049, 'recent_form_edge_home_minus_away': -0.03, 'winner_direction': 'home', 'thresholds': {'pitcher_matchup': 0.35, 'recent_form': 0.75}}, 'margin_widening_capped': False, 'simulation_winner_agrees': True, 'away_run_delta': 0, 'home_run_delta': 0, 'total_run_delta': 0, 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_usage': 'organic_simulation_realized_target', 'final_prediction_source': 'stable_final_prediction_policy', 'final_decision_policy': {'policy_version': 'model_target_authoritative_simulation_realizes_v3', 'away_runs': 4, 'home_runs': 5, 'winner': 'CLE', 'model_winner': 'CLE', 'simulation_winner': 'CLE', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 2, 'published_winner': 'CLE', 'published_winner_draw_share': 0.5, 'draw_majority_team': None, 'published_winner_is_draw_majority': False, 'sampling': 'target_conditioned_selection', 'is_unbiased_probability_sample': False, 'note': 'Draw shares are target-conditioned and diagnostic. A published winner holding a minority share is recorded, not suppressed.'}, 'simulation_score_enabled': True, 'independent_margin_support': False, 'margin_widening_capped': False, 'model_margin': 1, 'simulation_margin': 1, 'simulation_usage': 'organic_simulation_realized_target', 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_realized_target': True, 'model_score': {'away_runs': 4, 'home_runs': 5}, 'simulation_score': {'away_runs': 4, 'home_runs': 5}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 1, 'final_margin': 1, 'winner_quality_edge': -0.1605, 'winner': 'CLE', 'score_reviewed': {'away_runs': 4, 'home_runs': 5, 'source': 'enhanced_prediction.pre_simulation_target'}, 'reason': 'published margin is directionally supported or within review threshold'}} | ||||
| PASS | pipeline | PIPELINE_VERSION | Prediction pipeline version is current: enhanced_game_prediction_v4_continuous_learning__player_form_v3_5_10_season. | |||||
| PASS | pitch_by_pitch | PITCH_DETAIL_SANITY | Pitch-by-pitch speeds and zones are within sanity ranges. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | away pitcher pitch-by-pitch count matches pitch_count_summary total: 133. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | home pitcher pitch-by-pitch count matches pitch_count_summary total: 157. | |||||
| PASS | pitch_count | simulation | CHW | PITCH_COUNT_PITCHER_MATCH | CHW pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | CHW | PITCH_COUNT_TOTAL_MATCH | CHW pitch_count_summary total, row sum, and pitching total all match: 133. | |||
| PASS | pitch_count | simulation | CLE | PITCH_COUNT_PITCHER_MATCH | CLE pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | CLE | PITCH_COUNT_TOTAL_MATCH | CLE pitch_count_summary total, row sum, and pitching total all match: 157. | |||
| PASS | pitcher_opponent_strength | PITCHER_OPPONENT_STRENGTH_BOUNDS | Pitcher-opponent adjustment stayed inside supported bounds. | |||||
| PASS | pitching | PITCHER_APPEARANCE_COHERENT | All 8 pitchers in the box actually appeared. | |||||
| PASS | pitching | PUBLISHED_PITCHER_LINES_MATCH_BOX | Published pitcher lines cover the outs the box recorded. | |||||
| PASS | pitching | current | CHW | PITCHING_REALISM | current:CHW pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | CHW | STARTER_PRESENT | current:CHW includes a starter/opener role. | |||
| PASS | pitching | current | CLE | PITCHING_REALISM | current:CLE pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | CLE | STARTER_PRESENT | current:CLE includes a starter/opener role. | |||
| PASS | pitching | simulation | CHW | PITCHING_REALISM | simulation:CHW pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | CHW | STARTER_PRESENT | simulation:CHW includes a starter/opener role. | |||
| PASS | pitching | simulation | CLE | PITCHING_REALISM | simulation:CLE pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | CLE | STARTER_PRESENT | simulation:CLE includes a starter/opener role. | |||
| PASS | pitching_totals | current | CHW | PITCHING_TOTALS_SUM | current:CHW pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | current | CHW | PITCHING_TOTALS_SUM | current:CHW pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | current | CLE | PITCHING_TOTALS_SUM | current:CLE pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | CLE | PITCHING_TOTALS_SUM | current:CLE pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | CHW | PITCHING_TOTALS_SUM | simulation:CHW pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | simulation | CHW | PITCHING_TOTALS_SUM | simulation:CHW pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | CLE | PITCHING_TOTALS_SUM | simulation:CLE pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | CLE | PITCHING_TOTALS_SUM | simulation:CLE pitching totals equal summed pitcher lines for available fields. | |||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Enhanced AI score matches enhanced target: CHW 4 - 5 CLE. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation score matches final score: CHW 4 - 5 CLE. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation winner matches final score: CLE wins 5-4. | |||||
| PASS | prediction_comparison | SIMULATION_WINNER_FLIP_TRACE | Simulation decision is explicit: model=CLE, simulation=CLE, published=CLE. | |||||
| PASS | probability | CONFIDENCE_RANGE | Enhanced target confidence is in range: 0.518. | |||||
| PASS | recent_form | RECENT_FORM_RANGE | away recent_form record is coherent: 7/10 (0.700). | |||||
| PASS | recent_form | RECENT_FORM_RANGE | home recent_form record is coherent: 8/10 (0.800). | |||||
| PASS | report | REPORT_COMPLETE | All findings, passes, warnings, errors, and critical issues are rendered in the single HTML report. | |||||
| PASS | schema | SCHEMA_ROOTS_PRESENT | Both major schemas are present: game, scoring_simulation, game_summary, prediction_comparison. | |||||
| PASS | score | GAME_SUMMARY_MATCH | game_summary agrees with the published score (game.final_prediction): CLE wins 5-4. | |||||
| PASS | score | SCORE_NO_TIE | Final score has a clear winner: CLE wins 4-5. | |||||
| PASS | score | SCORE_STEP_FINAL_MATCH | simulation_result step matches final score: 4-5. | |||||
| PASS | score | SCORE_STEP_ORDER | Score evolution contains the expected ordered steps. | |||||
| PASS | score | TARGET_SCORE_DRIFT | Final score is close to enhanced target: target 4-5, final 4-5 (delta 0). | |||||
| PASS | score | TOTAL_RUNS_MATCH | total_runs field matches final score total: 9. | |||||
| PASS | score | WINNER_FIELD_MATCH | winner field is consistent: CLE wins 5-4. | |||||
| PASS | score | cross-schema | CURRENT_SCORE_MATCHES_SIM | game.predicted_runs matches scoring_simulation.final_score. | ||||
| PASS | team_recent_performance | current | CHW | RECENT_FORM_RANGE | CHW recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | CHW | TEAM_RECENT_RECORD | CHW wins and win_pct agree: 7/10 = 0.700. | |||
| PASS | team_recent_performance | current | CLE | RECENT_FORM_RANGE | CLE recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | CLE | TEAM_RECENT_RECORD | CLE wins and win_pct agree: 7/10 = 0.700. |
Info/context findings
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| INFO | current_payload | current | CHW | CURRENT_PITCHER_DUPLICATION | CHW pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_payload | current | CLE | CURRENT_PITCHER_DUPLICATION | CLE pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_vs_final | cross-schema | CHW | CURRENT_FINALIZED_MATCH_BOX | CHW model-prediction batting totals differ from final simulation box score (AB: current=31, sim=37; H: current=7, sim=10; 2B: current=1, sim=5; R: current=5, sim=4; BB: current=4, sim=1; SO: current=11, sim=6). | New contract: model prediction totals may differ from scoring_simulation; simulation_stats_source links the simulation box score. | ||
| INFO | current_vs_final | cross-schema | CHW | CURRENT_PLAYER_MATCH_BOX | CHW current finalized hitter lines are model predictions and differ from the simulation box score: Sam Antonacci: AB current=4 box=5, H current=1 box=2, 2B current=0 box=1, RBI current=0 box=3; Munetaka Murakami: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Tristan Peters: AB current=3 box=4, H current=1 box=0, 2B current=1 box=0; Braden Montgomery: AB current=3 box=4, H current=1 box=2, 2B current=0 box=1, R current=0 box=1; Kyle Teel: AB current=4 box=5, H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Miguel Vargas: AB current=4 box=3, H current=1 box=2, HR current=0 box=1, SO current=1 box=0; Andrew Benintendi: AB current=3 box=4, H current=0 box=1, 2B current=0 box=1, RBI current=1 box=0; Chase Meidroth: AB current=3 box=4, H current=1 box=0, R current=1 box=0 | New contract: compare model predictions separately; simulation_box_score_stats/scoring_simulation hold the simulation draw. | ||
| INFO | current_vs_final | cross-schema | CLE | CURRENT_FINALIZED_MATCH_BOX | CLE model-prediction batting totals differ from final simulation box score (H: current=8, sim=9; 2B: current=2, sim=3; RBI: current=4, sim=5; BB: current=3, sim=1; SO: current=7, sim=6). | New contract: model prediction totals may differ from scoring_simulation; simulation_stats_source links the simulation box score. | ||
| INFO | current_vs_final | cross-schema | CLE | CURRENT_PLAYER_MATCH_BOX | CLE current finalized hitter lines are model predictions and differ from the simulation box score: Steven Kwan: BB current=1 box=0; Jo Adell: 2B current=1 box=0, RBI current=1 box=0, R current=1 box=0; Nathaniel Lowe: AB current=4 box=3, H current=1 box=0, RBI current=1 box=0, BB current=0 box=1; José Ramírez: H current=1 box=0, 2B current=1 box=0, R current=1 box=0, BB current=1 box=0; Angel Martínez: HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Chase DeLauter: RBI current=1 box=0, R current=0 box=1, BB current=1 box=0; Travis Bazzana: AB current=3 box=4, H current=1 box=2, 2B current=0 box=1, RBI current=0 box=1; Patrick Bailey: H current=0 box=1, 2B current=0 box=1, RBI current=0 box=1, R current=0 box=1 | New contract: compare model predictions separately; simulation_box_score_stats/scoring_simulation hold the simulation draw. | ||
| INFO | score_reconciliation | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
Score evolution
| step | away_runs | home_runs | confidence | description |
|---|---|---|---|---|
| historical_ml | 4.052590122814054 | 4.657560154846704 | Base ML historical model prediction | |
| variance_applied | 4 | 5 | Deterministic baseline target (variance factor 1.0) | |
| enhanced_prediction | 4 | 5 | 0.518 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 4 | 5 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality | |
| fundamental_edge_target_review | 4 | 5 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments | |
| capped_target | 4 | 5 | Capped at max 12 realistic runs | |
| simulation_result | 4 | 5 | Final inning-by-inning simulation result |
Inning-by-inning linescore
| team | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | R | H |
|---|---|---|---|---|---|---|---|---|---|---|---|
| CHW | 0 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 1 | 4 | 10 |
| CLE | 0 | 0 | 1 | 0 | 0 | 4 | 0 | 0 | 0 | 5 | 9 |
Team totals - current + final simulation
| src | team | type | PA | AB | H | 2B | 3B | HR | RBI | R | BB | SO | SF | HBP | SB | CS | IP | ER | BF | Pitches |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| current | CHW | batting | 31 | 7 | 1 | 0 | 1 | 4 | 5 | 4 | 11 | 0 | 0 | 0 | 0 | |||||
| current | CHW | pitching | 9 | 1 | 5 | 1 | 6 | 8.0 | 5 | 0 | 0 | |||||||||
| current | CLE | batting | 33 | 8 | 2 | 0 | 1 | 4 | 5 | 3 | 7 | 0 | 0 | 0 | 0 | |||||
| current | CLE | pitching | 10 | 1 | 4 | 1 | 6 | 9.0 | 4 | 0 | 0 | |||||||||
| simulation | CHW | batting | 37 | 10 | 5 | 0 | 1 | 4 | 4 | 1 | 6 | 0 | 0 | |||||||
| simulation | CHW | pitching | 9 | 1 | 5 | 1 | 6 | 8.0 | 5 | 34 | 133 | |||||||||
| simulation | CLE | batting | 33 | 9 | 3 | 0 | 1 | 5 | 5 | 1 | 6 | 0 | 0 | |||||||
| simulation | CLE | pitching | 10 | 1 | 4 | 1 | 6 | 9.0 | 4 | 38 | 157 |
Batting lines - current + final simulation
| src | team | order | pos | name | PA | AB | H | 2B | 3B | HR | R | RBI | BB | SO | HBP | AVG |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| current | CHW | LF | Sam Antonacci | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.250 | |
| current | CHW | 1B | Munetaka Murakami | 0 | 4 | 1 | 0 | 0 | 1 | 1 | 1 | 1 | 2 | 0 | 0.250 | |
| current | CHW | CF | Tristan Peters | 0 | 3 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.333 | |
| current | CHW | RF | Braden Montgomery | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0.333 | |
| current | CHW | C | Kyle Teel | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 1 | 1 | 2 | 0 | 0.250 | |
| current | CHW | 3B | Miguel Vargas | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 0.250 | |
| current | CHW | DH | Andrew Benintendi | 0 | 3 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0.000 | |
| current | CHW | 2B | Chase Meidroth | 0 | 3 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.333 | |
| current | CHW | SS | Colson Montgomery | 0 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 | |
| current | CLE | CF | Steven Kwan | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0 | 0.250 | |
| current | CLE | DH | Jo Adell | 0 | 4 | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 0.250 | |
| current | CLE | 1B | Nathaniel Lowe | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0.250 | |
| current | CLE | 3B | José Ramírez | 0 | 4 | 1 | 1 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0.250 | |
| current | CLE | LF | Angel Martínez | 0 | 4 | 1 | 0 | 0 | 1 | 1 | 1 | 0 | 1 | 0 | 0.250 | |
| current | CLE | RF | Chase DeLauter | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 0 | 0.250 | |
| current | CLE | 2B | Travis Bazzana | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.333 | |
| current | CLE | C | Patrick Bailey | 0 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 | |
| current | CLE | SS | Brayan Rocchio | 0 | 3 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0.333 | |
| simulation | CHW | 1 | LF | Sam Antonacci | 5 | 5 | 2 | 1 | 0 | 0 | 1 | 3 | 0 | 0 | 0 | 0.400 |
| simulation | CHW | 2 | C | Kyle Teel | 5 | 5 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0 | 0.000 |
| simulation | CHW | 3 | 3B | Miguel Vargas | 4 | 3 | 2 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 0 | 0.667 |
| simulation | CHW | 4 | 1B | Munetaka Murakami | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 |
| simulation | CHW | 5 | DH | Andrew Benintendi | 4 | 4 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.250 |
| simulation | CHW | 6 | CF | Tristan Peters | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 |
| simulation | CHW | 7 | RF | Braden Montgomery | 4 | 4 | 2 | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0.500 |
| simulation | CHW | 8 | 2B | Chase Meidroth | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 |
| simulation | CHW | 9 | SS | Colson Montgomery | 4 | 4 | 3 | 2 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0.750 |
| simulation | CLE | 1 | CF | Steven Kwan | 4 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0.250 |
| simulation | CLE | 2 | 3B | José Ramírez | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 |
| simulation | CLE | 3 | RF | Chase DeLauter | 4 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.250 |
| simulation | CLE | 4 | DH | Jo Adell | 4 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.250 |
| simulation | CLE | 5 | 1B | Nathaniel Lowe | 4 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 2 | 0 | 0.000 |
| simulation | CLE | 6 | LF | Angel Martínez | 4 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.250 |
| simulation | CLE | 7 | 2B | Travis Bazzana | 4 | 4 | 2 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0.500 |
| simulation | CLE | 8 | C | Patrick Bailey | 3 | 3 | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0.333 |
| simulation | CLE | 9 | SS | Brayan Rocchio | 3 | 3 | 2 | 1 | 0 | 1 | 1 | 3 | 0 | 0 | 0 | 0.667 |
Pitching lines - current + final simulation
| src | team | order | name | role | IP | H | R | ER | BB | SO | HR | BF | Pitches | sim_ERA | season_ERA | season_WHIP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| current | CHW | 1 | Anthony Kay | Starter | 4.2 | 5 | 1 | 1 | 1 | 4 | 0 | 0 | 0 | 1.93 | 4.39 | 1.38 |
| current | CHW | 2 | Grant Taylor | Closer | 1.1 | 4 | 4 | 4 | 0 | 1 | 1 | 0 | 0 | 27.00 | 2.40 | 1.03 |
| current | CHW | 3 | Bryan Hudson | Setup Man | 1.0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.00 | 2.62 | 1.16 |
| current | CHW | 4 | Sean Newcomb | Middle Reliever (High Leverage) | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 2.77 | 1.11 |
| current | CLE | 1 | Gavin Williams | Starter | 5.2 | 6 | 3 | 3 | 0 | 6 | 1 | 0 | 0 | 4.76 | 3.76 | 1.11 |
| current | CLE | 2 | Cade Smith | Closer | 1.0 | 2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 1.92 | 0.95 |
| current | CLE | 3 | Erik Sabrowski | Middle Reliever (High Leverage) | 1.1 | 2 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 6.75 | 2.52 | 1.06 |
| current | CLE | 4 | Hunter Gaddis | Setup Man | 1.0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0.00 | 2.82 | 1.20 |
| simulation | CHW | 1 | Anthony Kay | Starter | 4.2 | 5 | 1 | 1 | 1 | 4 | 0 | 20 | 78 | 1.93 | 4.39 | 1.38 |
| simulation | CHW | 2 | Grant Taylor | Closer | 1.1 | 4 | 4 | 4 | 0 | 1 | 1 | 8 | 29 | 27.00 | 2.40 | 1.03 |
| simulation | CHW | 3 | Bryan Hudson | Setup Man | 1.0 | 0 | 0 | 0 | 0 | 1 | 0 | 3 | 13 | 0.00 | 2.62 | 1.16 |
| simulation | CHW | 4 | Sean Newcomb | Middle Reliever (High Leverage) | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 13 | 0.00 | 2.77 | 1.11 |
| simulation | CLE | 1 | Gavin Williams | Starter | 5.2 | 6 | 3 | 3 | 0 | 6 | 1 | 23 | 98 | 4.76 | 3.76 | 1.11 |
| simulation | CLE | 2 | Cade Smith | Closer | 1.0 | 2 | 0 | 0 | 0 | 0 | 0 | 5 | 19 | 0.00 | 1.92 | 0.95 |
| simulation | CLE | 3 | Hunter Gaddis | Setup Man | 1.0 | 0 | 0 | 0 | 1 | 0 | 0 | 4 | 17 | 0.00 | 2.82 | 1.20 |
| simulation | CLE | 4 | Erik Sabrowski | Middle Reliever (High Leverage) | 1.1 | 2 | 1 | 1 | 0 | 0 | 0 | 6 | 23 | 6.75 | 2.52 | 1.06 |
Pitch count summary
| team | pitcher | role | IP | R | H | BB | SO | BF | Pitches |
|---|---|---|---|---|---|---|---|---|---|
| CHW | Anthony Kay | Starter | 4.2 | 1 | 5 | 1 | 4 | 20 | 78 |
| CHW | Grant Taylor | Closer | 1.1 | 4 | 4 | 0 | 1 | 8 | 29 |
| CHW | Bryan Hudson | Setup Man | 1.0 | 0 | 0 | 0 | 1 | 3 | 13 |
| CHW | Sean Newcomb | Middle Reliever (High Leverage) | 1.0 | 0 | 0 | 0 | 0 | 3 | 13 |
| CLE | Gavin Williams | Starter | 5.2 | 3 | 6 | 0 | 6 | 23 | 98 |
| CLE | Cade Smith | Closer | 1.0 | 0 | 2 | 0 | 0 | 5 | 19 |
| CLE | Erik Sabrowski | Middle Reliever (High Leverage) | 1.1 | 1 | 2 | 0 | 0 | 6 | 23 |
| CLE | Hunter Gaddis | Setup Man | 1.0 | 0 | 0 | 1 | 0 | 4 | 17 |
Audit rule catalog
| rule | status | critical | error | warning | pass | description |
|---|---|---|---|---|---|---|
| BATTING_REALISM | good | 0 | 0 | 0 | 4 | Player/team batting lines obey baseball constraints. |
| BATTING_TOTALS_SUM | good | 0 | 0 | 0 | 4 | Team batting totals equal the sum of player batting lines. |
| BAT_PITCH_BB_MATCH | good | 0 | 0 | 0 | 2 | Batting walks match opposing pitching walks allowed. |
| BAT_PITCH_HR_MATCH | good | 0 | 0 | 0 | 2 | Batting home runs match opposing pitching home runs allowed. |
| BAT_PITCH_H_MATCH | good | 0 | 0 | 0 | 2 | Batting hits match opposing pitching hits allowed. |
| BAT_PITCH_SO_MATCH | good | 0 | 0 | 0 | 2 | Batting strikeouts match opposing pitching strikeouts. |
| CONFIDENCE_CALIBRATION_APPLIED | good | 0 | 0 | 0 | 1 | Empirical confidence blending uses the requested sample weight and remains between raw confidence and empirical hit rate. |
| CONFIDENCE_RANGE | good | 0 | 0 | 0 | 5 | Confidence values are between 0 and 1. |
| CURRENT_FINALIZED_MATCH_BOX | info | 0 | 0 | 0 | 2 | Current finalized player totals agree with final simulation box score unless model/simulation sources are separated. |
| CURRENT_LINEUP_SHAPE | good | 0 | 0 | 0 | 2 | Current predicted_performance contains a plausible 9-player lineup. |
| CURRENT_MODEL_ZERO_FALLBACK | good | 0 | 0 | 0 | 2 | Current model payload did not rely too heavily on all-zero model predictions. |
| CURRENT_NAMES_PRESENT | good | 0 | 0 | 0 | 2 | Current predicted_performance has usable player names. |
| CURRENT_PITCHER_DUPLICATION | info | 0 | 0 | 0 | 0 | Pitcher lists duplicated across current sections are detected and reconciled. |
| CURRENT_PLAYER_MATCH_BOX | info | 0 | 0 | 0 | 0 | Current finalized hitter lines mirror the simulation box score unless model/simulation sources are separated. |
| CURRENT_PREDICTIONS_MATCH_FINALIZED | good | 0 | 0 | 0 | 2 | Current hitter predictions mirror finalized stats. |
| CURRENT_SCORE_MATCHES_SIM | good | 0 | 0 | 0 | 1 | game.predicted_runs is either synced to simulation or paired with game.simulation_runs. |
| DATE_PARSE | good | 0 | 0 | 0 | 1 | Game date can be parsed as an ISO date. |
| FILENAME_GAME_ID_MATCH | good | 0 | 0 | 0 | 1 | Filename and game_id identify the same game. |
| FILENAME_TEAM_MATCH | good | 0 | 0 | 0 | 1 | Filename teams match the teams inside the JSON. |
| FINAL_DECISION_POLICY | good | 0 | 0 | 0 | 1 | One organic simulation cannot replace a disagreeing model winner. |
| GAME_ENDING_COHERENT | good | 0 | 0 | 0 | 1 | The inning line ends the way a real game with the published score ends. |
| GAME_SUMMARY_MATCH | good | 0 | 0 | 0 | 1 | game_summary text agrees with final score. |
| GUARDRAIL_FINAL_WINNER_SYNC | good | 0 | 0 | 0 | 1 | Guardrail trace predicted_team matches the final predicted winner. |
| H2H_DATA_LEAKAGE | good | 0 | 0 | 0 | 1 | Head-to-head history does not include same-day or future games in pregame mode. |
| INNINGS_COUNT | good | 0 | 0 | 0 | 1 | Inning count is valid for MLB. |
| INNING_OUTS | good | 0 | 0 | 0 | 1 | Each played half inning has valid outs. |
| INNING_PLAY_SUMS | good | 0 | 0 | 0 | 1 | Detailed plays agree with inning runs, hits, outs, and pitches. |
| INNING_SEQUENCE | good | 0 | 0 | 0 | 1 | Innings are sequential and unique. |
| INNING_TOTAL_HITS | good | 0 | 0 | 0 | 1 | Inning hits sum to batting team hits. |
| INNING_TOTAL_RUNS | good | 0 | 0 | 0 | 1 | Inning runs sum to final score. |
| LOW_SCORE_ANALYSIS | good | 0 | 0 | 0 | 3 | Low-score probability factors are valid and directionally consistent. |
| LUNA_KPI_TRACE | not triggered | 0 | 0 | 0 | 0 | Promoted Luna KPIs are traced per hitter and the per-game totals agree. |
| MATCHUP_RECENCY_GUARDRAIL | good | 0 | 0 | 0 | 1 | Repeat picks are capped when recent same-matchup results contradict high confidence. |
| OPTIMIZATION_ROADMAP_STATUS | good | 0 | 0 | 0 | 4 | H2H, score-distribution, simulation-flip, and recent-form roadmap signals are explicitly traced and satisfy their configured safeguards. |
| PA_BF_MATCH | good | 0 | 0 | 0 | 2 | Team plate appearances match opposing batters faced. |
| PIPELINE_VERSION | good | 0 | 0 | 0 | 1 | Prediction artifacts identify the stable pipeline version that created them. |
| PITCHER_APPEARANCE_COHERENT | good | 0 | 0 | 0 | 1 | Every pitcher in the box actually appeared: no 0-inning 0-batter line, and no pitch without a batter faced. |
| PITCHER_OPPONENT_STRENGTH_BOUNDS | good | 0 | 0 | 0 | 1 | Pitcher-opponent run factors and score deltas remain inside supported bounds. |
| PITCHING_REALISM | good | 0 | 0 | 0 | 4 | Pitcher/team pitching lines obey baseball constraints. |
| PITCHING_TOTALS_SUM | good | 0 | 0 | 0 | 8 | Team pitching totals equal the sum of pitcher lines. |
| PITCH_COUNT_PITCHER_MATCH | good | 0 | 0 | 0 | 2 | Pitch count summary pitcher rows agree with pitching box score. |
| PITCH_COUNT_TOTAL_MATCH | good | 0 | 0 | 0 | 4 | Pitch count summary totals match team pitching totals. |
| PITCH_DETAIL_SANITY | good | 0 | 0 | 0 | 1 | Pitch-by-pitch details have plausible values. |
| PREDICTION_COMPARISON_MATCH | good | 0 | 0 | 0 | 3 | prediction_comparison scores agree with target/final result. |
| PUBLISHED_PITCHER_LINES_MATCH_BOX | good | 0 | 0 | 0 | 1 | Published staff lines cover the outs the box recorded, extra innings included. |
| RECENT_FORM_RANGE | good | 0 | 0 | 0 | 4 | Recent-form metrics are within valid numeric ranges. |
| RECONCILIATION_PROPAGATION | info | 0 | 0 | 0 | 0 | When score_target_reconciliation is used, all final-facing sections are regenerated from the reconciled score. |
| REPORT_COMPLETE | good | 0 | 0 | 0 | 1 | Report includes every audit result in the all-findings table. |
| REPORT_CSV_EXPORT | not triggered | 0 | 0 | 0 | 0 | Optional CSV exports were written for summary and problem rows. |
| RUNS_MATCH_FINAL | good | 0 | 0 | 0 | 2 | Batting/pitching runs agree with final score. |
| SCHEMA_ROOTS_PRESENT | good | 0 | 0 | 0 | 1 | Expected JSON root sections exist and can be audited. |
| SCORE_NO_TIE | good | 0 | 0 | 0 | 1 | Final MLB score has a clear winner. |
| SCORE_STEP_FINAL_MATCH | good | 0 | 0 | 0 | 1 | score_evolution simulation_result matches final score. |
| SCORE_STEP_ORDER | good | 0 | 0 | 0 | 1 | Score evolution contains the expected ordered steps. |
| SIMULATION_WINNER_FLIP_TRACE | good | 0 | 0 | 0 | 1 | Simulation winner reversals are explicitly recorded. |
| STARTER_PRESENT | good | 0 | 0 | 0 | 4 | Pitching staff includes a starter or opener when expected. |
| SYNTHETIC_SCORE_PLAYS | not triggered | 0 | 0 | 0 | 0 | Score reconciliation must not inject synthetic run or out plays. |
| TARGET_SCORE_DRIFT | good | 0 | 0 | 0 | 1 | Final score does not drift too far from enhanced target. |
| TEAM_RECENT_RECORD | good | 0 | 0 | 0 | 2 | team_recent_performance wins and win_pct agree with games_analyzed. |
| TOTAL_RUNS_MATCH | good | 0 | 0 | 0 | 1 | total_runs equals away + home runs. |
| WINNER_FIELD_MATCH | good | 0 | 0 | 0 | 1 | winner field agrees with the final score. |
20261005_CHW@CLE
20261005_CHW@CLE__20261006T003858Z.json • 2026-10-05
Clean: no problems detected. Risk score: 0.
No action required
No critical, error, or warning findings were detected.
Problems table - exact rows
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|
All findings - complete audit trail
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| INFO | score_reconciliation | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. | |||||
| PASS | batting | current | CHW | BATTING_REALISM | current:CHW hitter lines pass basic baseball constraints. | |||
| PASS | batting | current | CLE | BATTING_REALISM | current:CLE hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | CHW | BATTING_REALISM | simulation:CHW hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | CLE | BATTING_REALISM | simulation:CLE hitter lines pass basic baseball constraints. | |||
| PASS | batting_totals | current | CHW | BATTING_TOTALS_SUM | current:CHW batting totals equal summed player lines. | |||
| PASS | batting_totals | current | CLE | BATTING_TOTALS_SUM | current:CLE batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | CHW | BATTING_TOTALS_SUM | simulation:CHW batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | CLE | BATTING_TOTALS_SUM | simulation:CLE batting totals equal summed player lines. | |||
| PASS | boxscore_crosscheck | simulation | CHW | BAT_PITCH_BB_MATCH | simulation:CHW batting walks match CLE pitching: 3. | |||
| PASS | boxscore_crosscheck | simulation | CHW | BAT_PITCH_HR_MATCH | simulation:CHW batting home runs match CLE pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | CHW | BAT_PITCH_H_MATCH | simulation:CHW batting hits match CLE pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | CHW | BAT_PITCH_SO_MATCH | simulation:CHW batting strikeouts match CLE pitching: 10. | |||
| PASS | boxscore_crosscheck | simulation | CHW | PA_BF_MATCH | simulation:CHW PA=37 matches CLE BF=37. | |||
| PASS | boxscore_crosscheck | simulation | CHW | RUNS_MATCH_FINAL | simulation:CHW runs match final score and opposing pitching runs: 4. | |||
| PASS | boxscore_crosscheck | simulation | CLE | BAT_PITCH_BB_MATCH | simulation:CLE batting walks match CHW pitching: 4. | |||
| PASS | boxscore_crosscheck | simulation | CLE | BAT_PITCH_HR_MATCH | simulation:CLE batting home runs match CHW pitching: 0. | |||
| PASS | boxscore_crosscheck | simulation | CLE | BAT_PITCH_H_MATCH | simulation:CLE batting hits match CHW pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | CLE | BAT_PITCH_SO_MATCH | simulation:CLE batting strikeouts match CHW pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | CLE | PA_BF_MATCH | simulation:CLE PA=36 matches CHW BF=36. | |||
| PASS | boxscore_crosscheck | simulation | CLE | RUNS_MATCH_FINAL | simulation:CLE runs match final score and opposing pitching runs: 5. | |||
| PASS | confidence_calibration | CONFIDENCE_CALIBRATION_APPLIED | Empirical confidence blend verified: 0.540 -> 0.552 at weight 0.500. | {'method': 'empirical_hit_rate_weighted_v1', 'applied': True, 'reason': 'raw confidence blended with verified historical bucket hit rate', 'raw_confidence': 0.539822, 'sample_size': 821, 'empirical_hit_rate': 0.5639, 'empirical_weight': 0.5, 'blended_confidence': 0.551861, 'published_confidence': 0.518498, 'published_after_governors': True, 'governor_mode': 'shrinkage_not_clamp'} | ||||
| PASS | cross_schema | cross-schema | CHW | CURRENT_FINALIZED_MATCH_BOX | CHW current pitcher projected totals match final simulation pitching box score. | |||
| PASS | cross_schema | cross-schema | CLE | CURRENT_FINALIZED_MATCH_BOX | CLE current pitcher projected totals match final simulation pitching box score. | |||
| PASS | current_payload | current | CHW | CURRENT_LINEUP_SHAPE | CHW current lineup has 9 expected positions. | |||
| PASS | current_payload | current | CHW | CURRENT_MODEL_ZERO_FALLBACK | CHW current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | CHW | CURRENT_NAMES_PRESENT | CHW current hitter names are populated. | |||
| PASS | current_payload | current | CHW | CURRENT_PREDICTIONS_MATCH_FINALIZED | CHW hitter predictions mirror finalized stats. | |||
| PASS | current_payload | current | CLE | CURRENT_LINEUP_SHAPE | CLE current lineup has 9 expected positions. | |||
| PASS | current_payload | current | CLE | CURRENT_MODEL_ZERO_FALLBACK | CLE current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | CLE | CURRENT_NAMES_PRESENT | CLE current hitter names are populated. | |||
| PASS | current_payload | current | CLE | CURRENT_PREDICTIONS_MATCH_FINALIZED | CLE hitter predictions mirror finalized stats. | |||
| PASS | current_vs_final | cross-schema | CHW | CURRENT_FINALIZED_MATCH_BOX | CHW current finalized batting totals match final simulation box score. | |||
| PASS | current_vs_final | cross-schema | CHW | CURRENT_PLAYER_MATCH_BOX | CHW current finalized hitter lines mirror simulation box score. | |||
| PASS | current_vs_final | cross-schema | CLE | CURRENT_FINALIZED_MATCH_BOX | CLE current finalized batting totals match final simulation box score. | |||
| PASS | current_vs_final | cross-schema | CLE | CURRENT_PLAYER_MATCH_BOX | CLE current finalized hitter lines mirror simulation box score. | |||
| PASS | data_leakage | H2H_DATA_LEAKAGE | All head-to-head rows are dated before the prediction game date. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | Home + away win probabilities sum to approximately 1.0. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | away_win_probability is in [0,1]: 0.482. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | confidence is in [0,1]: 0.518. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | home_win_probability is in [0,1]: 0.518. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Final total runs 9 is reasonably close to low-score expected_total_runs 9.0. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Low-score analysis factors are non-negative. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Low-score probability/confidence are valid: 0.523/0.713. | |||||
| PASS | final_decision | FINAL_DECISION_POLICY | Final decision policy preserved model ownership of the winner. | |||||
| PASS | innings | GAME_ENDING_COHERENT | The game ends coherently for its score. | |||||
| PASS | innings | INNINGS_COUNT | inning_by_inning_summary contains 9 innings. | |||||
| PASS | innings | INNING_OUTS | Inning 9 home marked not_played with empty stats. | |||||
| PASS | innings | INNING_PLAY_SUMS | Detailed play totals match every half-inning line. | |||||
| PASS | innings | INNING_SEQUENCE | Inning numbers are sequential. | |||||
| PASS | innings | INNING_TOTAL_HITS | Inning hits match batting totals: CHW 7, CLE 7. | |||||
| PASS | innings | INNING_TOTAL_RUNS | Inning runs sum to final score: CHW 4 - CLE 5. | |||||
| PASS | kpi | LUNA_KPI_TRACE | Luna KPI trace coherent (no_promoted_kpis). | |||||
| PASS | matchup_recency | GUARDRAIL_FINAL_WINNER_SYNC | Guardrail predicted_team matches final predicted winner: CLE. | |||||
| PASS | matchup_recency | MATCHUP_RECENCY_GUARDRAIL | Matchup recency guardrail applied for CLE; cap=0.56, reasons=recent head-to-head is split and volatile; recent head-to-head margin does not support a strong repeat pick; a prior same-side pick already missed against the actual result. | {'applied': True, 'confidence_cap': 0.56, 'winner_flipped': False, 'reasons': ['recent head-to-head is split and volatile', 'recent head-to-head margin does not support a strong repeat pick', 'a prior same-side pick already missed against the actual result'], 'signals': {'predicted_team': 'CLE', 'opponent_team': 'CHW', 'h2h_net_margin': 0, 'opponent_breakout': False, 'opponent_blowout_win': False, 'split_recent_h2h': True, 'recent_h2h': [{'date': '2026-09-16', 'predicted_team_runs': 6, 'opponent_runs': 3, 'margin_for_predicted_team': 3, 'winner': 'CLE'}, {'date': '2026-09-15', 'predicted_team_runs': 7, 'opponent_runs': 6, 'margin_for_predicted_team': 1, 'winner': 'CLE'}, {'date': '2026-09-14', 'predicted_team_runs': 3, 'opponent_runs': 7, 'margin_for_predicted_team': -4, 'winner': 'CHW'}], 'prediction_memory': {'available': True, 'reason': 'verified_prior_matchup_predictions_available', 'verification_policy': 'pregame_artifact_matched_to_one_official_final', 'verified_outcome_count': 12, 'consecutive_same_pick_count': 0, 'same_pick_actual_loss_count': 1, 'same_pick_blowout_loss_count': 0, 'prior_predictions': [{'date': '20261003', 'away': 'CHW', 'home': 'CLE', 'game_number': 1, 'predicted_team': 'CHW', 'actual_winner': 'CHW', 'actual_margin': 3, 'raw_pick_probability': 0.5229980000000001, 'artifact': '20261003_CHW@CLE.json', 'verification': 'pregame_official_final'}, {'date': '20260916', 'away': 'CHW', 'home': 'CLE', 'game_number': 1, 'predicted_team': 'CLE', 'actual_winner': 'CLE', 'actual_margin': 3, 'raw_pick_probability': 0.556513, 'artifact': '20260916_CHW@CLE.json', 'verification': 'pregame_official_final'}, {'date': '20260915', 'away': 'CHW', 'home': 'CLE', 'game_number': 1, 'predicted_team': 'CHW', 'actual_winner': 'CLE', 'actual_margin': 1, 'raw_pick_probability': 0.544573, 'artifact': '20260915_CHW@CLE.json', 'verification': 'pregame_official_final'}, {'date': '20260914', 'away': 'CHW', 'home': 'CLE', 'game_number': 1, 'predicted_team': 'CLE', 'actual_winner': 'CHW', 'actual_margin': 4, 'raw_pick_probability': 0.505654, 'artifact': '20260914_CHW@CLE.json', 'verification': 'pregame_official_final'}, {'date': '20260809', 'away': 'CLE', 'home': 'CHW', 'game_number': 1, 'predicted_team': 'CHW', 'actual_winner': 'CHW', 'actual_margin': 2, 'raw_pick_probability': 0.56, 'artifact': '20260809_CLE@CHW.json', 'verification': 'pregame_official_final'}]}, 'guardrail_predicted_team': 'CLE', 'guardrail_opponent_team': 'CHW', 'output_pre_simulation_winner': 'CLE', 'output_opponent_team': 'CHW', 'simulation_score_winner': 'CLE', 'final_score_winner': 'CLE', 'pre_simulation_winner': 'CLE', 'winner_flipped_by_simulation': False, 'simulation_would_flip_winner': False}, 'hard_flip_suppressed': False, 'flip_authority': 'caps_confidence_and_shifts_runs_only'} | ||||
| PASS | metadata | DATE_PARSE | Date is valid ISO format: 2026-10-05. | |||||
| PASS | metadata | FILENAME_GAME_ID_MATCH | Filename contains game_id: filename=20261005_CHW@CLE__20261006T003858Z, game_id=20261005_CHW@CLE. | |||||
| PASS | metadata | FILENAME_TEAM_MATCH | Filename teams match JSON teams: CHW@CLE. | |||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | H2H base feature is implemented and its runtime trace passed. | {'method': 'h2h_net_margin_monotonic_v1', 'available': True, 'sample_size': 5, 'sample_weight': 0.0577, 'home_net_margin': -5.0, 'absolute_net_margin': 5.0, 'home_average_margin': -1.0, 'home_run_delta': -0.0288, 'away_run_delta': 0.0288, 'evidence': [{'game_id': None, 'home_margin': 3.0}, {'game_id': None, 'home_margin': 1.0}, {'game_id': None, 'home_margin': -4.0}, {'game_id': None, 'home_margin': -2.0}, {'game_id': None, 'home_margin': -3.0}], 'adaptive_parameters': {'h2h.history_limit': 5, 'h2h.maximum_weight': 0.15, 'h2h.prior_games': 8.0, 'h2h.maximum_total_shift': 0.65}} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Score distribution widening is implemented and its runtime trace passed. | {'most_likely': [{'home_runs': 5, 'away_runs': 4, 'probability': 0.01744160494745018}, {'home_runs': 4, 'away_runs': 4, 'probability': 0.017375707797229457}, {'home_runs': 5, 'away_runs': 5, 'probability': 0.017334799164934776}, {'home_runs': 4, 'away_runs': 5, 'probability': 0.017269305543902796}, {'home_runs': 5, 'away_runs': 3, 'probability': 0.015876983281940128}], 'home_distribution': {'0': 0.048314403764278285, '1': 0.07175173601017976, '2': 0.09661848868951951, '3': 0.11796688312224266, '4': 0.13059664125373613, '5': 0.13109192735013284, '6': 0.11931414339498507, '7': 0.09846456002099437, '8': 0.07367836837057504, '9': 0.04998872879225278, '10': 0.030752202373672564, '11': 0.017153486031480765, '12': 0.008675621581975525, '13': 0.003978513588860975, '14': 0.0016542956551136854}, 'away_distribution': {'0': 0.05009797024117762, '1': 0.07431848632840023, '2': 0.0997441633368908, '3': 0.12111335612248927, '4': 0.13304865753377382, '5': 0.13223391794855024, '6': 0.11890199614517424, '7': 0.09672736041242856, '8': 0.07119072868340738, '9': 0.0474036137658919, '10': 0.028557052144400165, '11': 0.015564286235275058, '12': 0.007674656641990396, '13': 0.003423754460150115}, 'model': 'overdispersed_score_distribution', 'variance_multiplier': 2.25, 'variance_floor': 2.75, 'roadmap_status': 'implemented_above_requested_1.4x'} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Season/recent-form quality blend is implemented and its runtime trace passed. | {'method': 'season_recent_quality_blend_v2_adaptive', 'recent_window': 10, 'season_quality_edge': -0.2685, 'recent_quality_edge': 0.04, 'season_weight': 0.65, 'recent_weight': 0.35, 'recent_reliability': 1.0, 'alignment': 'conflict', 'blended_quality_edge': -0.1605} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Simulation flip control is implemented and its runtime trace passed. | {'pre_simulation_score': {'away_runs': 4, 'home_runs': 5, 'score_text': 'CHW 4 - 5 CLE', 'winner': 'CLE'}, 'final_simulation_score': {'away_runs': 4, 'home_runs': 5, 'score_text': 'CHW 4 - 5 CLE', 'winner': 'CLE'}, '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.049, 'recent_form_edge_home_minus_away': -0.03, 'winner_direction': 'home', 'thresholds': {'pitcher_matchup': 0.35, 'recent_form': 0.75}}, 'margin_widening_capped': False, 'simulation_winner_agrees': True, 'away_run_delta': 0, 'home_run_delta': 0, 'total_run_delta': 0, 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_usage': 'organic_simulation_realized_target', 'final_prediction_source': 'stable_final_prediction_policy', 'final_decision_policy': {'policy_version': 'model_target_authoritative_simulation_realizes_v3', 'away_runs': 4, 'home_runs': 5, 'winner': 'CLE', 'model_winner': 'CLE', 'simulation_winner': 'CLE', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 2, 'published_winner': 'CLE', 'published_winner_draw_share': 1.0, 'draw_majority_team': 'CLE', 'published_winner_is_draw_majority': True, 'sampling': 'target_conditioned_selection', 'is_unbiased_probability_sample': False, 'note': 'Draw shares are target-conditioned and diagnostic. A published winner holding a minority share is recorded, not suppressed.'}, 'simulation_score_enabled': True, 'independent_margin_support': False, 'margin_widening_capped': False, 'model_margin': 1, 'simulation_margin': 1, 'simulation_usage': 'organic_simulation_realized_target', 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_realized_target': True, 'model_score': {'away_runs': 4, 'home_runs': 5}, 'simulation_score': {'away_runs': 4, 'home_runs': 5}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 1, 'final_margin': 1, 'winner_quality_edge': -0.1605, 'winner': 'CLE', 'score_reviewed': {'away_runs': 4, 'home_runs': 5, 'source': 'enhanced_prediction.pre_simulation_target'}, 'reason': 'published margin is directionally supported or within review threshold'}} | ||||
| PASS | pipeline | PIPELINE_VERSION | Prediction pipeline version is current: enhanced_game_prediction_v4_continuous_learning__player_form_v3_5_10_season. | |||||
| PASS | pitch_by_pitch | PITCH_DETAIL_SANITY | Pitch-by-pitch speeds and zones are within sanity ranges. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | away pitcher pitch-by-pitch count matches pitch_count_summary total: 143. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | home pitcher pitch-by-pitch count matches pitch_count_summary total: 144. | |||||
| PASS | pitch_count | simulation | CHW | PITCH_COUNT_PITCHER_MATCH | CHW pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | CHW | PITCH_COUNT_TOTAL_MATCH | CHW pitch_count_summary total, row sum, and pitching total all match: 143. | |||
| PASS | pitch_count | simulation | CLE | PITCH_COUNT_PITCHER_MATCH | CLE pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | CLE | PITCH_COUNT_TOTAL_MATCH | CLE pitch_count_summary total, row sum, and pitching total all match: 144. | |||
| PASS | pitcher_opponent_strength | PITCHER_OPPONENT_STRENGTH_BOUNDS | Pitcher-opponent adjustment stayed inside supported bounds. | |||||
| PASS | pitching | PITCHER_APPEARANCE_COHERENT | All 7 pitchers in the box actually appeared. | |||||
| PASS | pitching | PUBLISHED_PITCHER_LINES_MATCH_BOX | Published pitcher lines cover the outs the box recorded. | |||||
| PASS | pitching | current | CHW | PITCHING_REALISM | current:CHW pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | CHW | STARTER_PRESENT | current:CHW includes a starter/opener role. | |||
| PASS | pitching | current | CLE | PITCHING_REALISM | current:CLE pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | CLE | STARTER_PRESENT | current:CLE includes a starter/opener role. | |||
| PASS | pitching | simulation | CHW | PITCHING_REALISM | simulation:CHW pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | CHW | STARTER_PRESENT | simulation:CHW includes a starter/opener role. | |||
| PASS | pitching | simulation | CLE | PITCHING_REALISM | simulation:CLE pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | CLE | STARTER_PRESENT | simulation:CLE includes a starter/opener role. | |||
| PASS | pitching_totals | current | CHW | PITCHING_TOTALS_SUM | current:CHW pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | current | CHW | PITCHING_TOTALS_SUM | current:CHW pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | current | CLE | PITCHING_TOTALS_SUM | current:CLE pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | CLE | PITCHING_TOTALS_SUM | current:CLE pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | CHW | PITCHING_TOTALS_SUM | simulation:CHW pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | simulation | CHW | PITCHING_TOTALS_SUM | simulation:CHW pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | CLE | PITCHING_TOTALS_SUM | simulation:CLE pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | CLE | PITCHING_TOTALS_SUM | simulation:CLE pitching totals equal summed pitcher lines for available fields. | |||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Enhanced AI score matches enhanced target: CHW 4 - 5 CLE. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation score matches final score: CHW 4 - 5 CLE. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation winner matches final score: CLE wins 5-4. | |||||
| PASS | prediction_comparison | SIMULATION_WINNER_FLIP_TRACE | Simulation decision is explicit: model=CLE, simulation=CLE, published=CLE. | |||||
| PASS | probability | CONFIDENCE_RANGE | Enhanced target confidence is in range: 0.518. | |||||
| PASS | recent_form | RECENT_FORM_RANGE | away recent_form record is coherent: 7/10 (0.700). | |||||
| PASS | recent_form | RECENT_FORM_RANGE | home recent_form record is coherent: 8/10 (0.800). | |||||
| PASS | report | REPORT_COMPLETE | All findings, passes, warnings, errors, and critical issues are rendered in the single HTML report. | |||||
| PASS | schema | SCHEMA_ROOTS_PRESENT | Both major schemas are present: game, scoring_simulation, game_summary, prediction_comparison. | |||||
| PASS | score | GAME_SUMMARY_MATCH | game_summary agrees with the published score (game.final_prediction): CLE wins 5-4. | |||||
| PASS | score | SCORE_NO_TIE | Final score has a clear winner: CLE wins 4-5. | |||||
| PASS | score | SCORE_STEP_FINAL_MATCH | simulation_result step matches final score: 4-5. | |||||
| PASS | score | SCORE_STEP_ORDER | Score evolution contains the expected ordered steps. | |||||
| PASS | score | TARGET_SCORE_DRIFT | Final score is close to enhanced target: target 4-5, final 4-5 (delta 0). | |||||
| PASS | score | TOTAL_RUNS_MATCH | total_runs field matches final score total: 9. | |||||
| PASS | score | WINNER_FIELD_MATCH | winner field is consistent: CLE wins 5-4. | |||||
| PASS | score | cross-schema | CURRENT_SCORE_MATCHES_SIM | game.predicted_runs matches scoring_simulation.final_score. | ||||
| PASS | team_recent_performance | current | CHW | RECENT_FORM_RANGE | CHW recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | CHW | TEAM_RECENT_RECORD | CHW wins and win_pct agree: 7/10 = 0.700. | |||
| PASS | team_recent_performance | current | CLE | RECENT_FORM_RANGE | CLE recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | CLE | TEAM_RECENT_RECORD | CLE wins and win_pct agree: 7/10 = 0.700. |
Passed checks
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| PASS | batting | current | CHW | BATTING_REALISM | current:CHW hitter lines pass basic baseball constraints. | |||
| PASS | batting | current | CLE | BATTING_REALISM | current:CLE hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | CHW | BATTING_REALISM | simulation:CHW hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | CLE | BATTING_REALISM | simulation:CLE hitter lines pass basic baseball constraints. | |||
| PASS | batting_totals | current | CHW | BATTING_TOTALS_SUM | current:CHW batting totals equal summed player lines. | |||
| PASS | batting_totals | current | CLE | BATTING_TOTALS_SUM | current:CLE batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | CHW | BATTING_TOTALS_SUM | simulation:CHW batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | CLE | BATTING_TOTALS_SUM | simulation:CLE batting totals equal summed player lines. | |||
| PASS | boxscore_crosscheck | simulation | CHW | BAT_PITCH_BB_MATCH | simulation:CHW batting walks match CLE pitching: 3. | |||
| PASS | boxscore_crosscheck | simulation | CHW | BAT_PITCH_HR_MATCH | simulation:CHW batting home runs match CLE pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | CHW | BAT_PITCH_H_MATCH | simulation:CHW batting hits match CLE pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | CHW | BAT_PITCH_SO_MATCH | simulation:CHW batting strikeouts match CLE pitching: 10. | |||
| PASS | boxscore_crosscheck | simulation | CHW | PA_BF_MATCH | simulation:CHW PA=37 matches CLE BF=37. | |||
| PASS | boxscore_crosscheck | simulation | CHW | RUNS_MATCH_FINAL | simulation:CHW runs match final score and opposing pitching runs: 4. | |||
| PASS | boxscore_crosscheck | simulation | CLE | BAT_PITCH_BB_MATCH | simulation:CLE batting walks match CHW pitching: 4. | |||
| PASS | boxscore_crosscheck | simulation | CLE | BAT_PITCH_HR_MATCH | simulation:CLE batting home runs match CHW pitching: 0. | |||
| PASS | boxscore_crosscheck | simulation | CLE | BAT_PITCH_H_MATCH | simulation:CLE batting hits match CHW pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | CLE | BAT_PITCH_SO_MATCH | simulation:CLE batting strikeouts match CHW pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | CLE | PA_BF_MATCH | simulation:CLE PA=36 matches CHW BF=36. | |||
| PASS | boxscore_crosscheck | simulation | CLE | RUNS_MATCH_FINAL | simulation:CLE runs match final score and opposing pitching runs: 5. | |||
| PASS | confidence_calibration | CONFIDENCE_CALIBRATION_APPLIED | Empirical confidence blend verified: 0.540 -> 0.552 at weight 0.500. | {'method': 'empirical_hit_rate_weighted_v1', 'applied': True, 'reason': 'raw confidence blended with verified historical bucket hit rate', 'raw_confidence': 0.539822, 'sample_size': 821, 'empirical_hit_rate': 0.5639, 'empirical_weight': 0.5, 'blended_confidence': 0.551861, 'published_confidence': 0.518498, 'published_after_governors': True, 'governor_mode': 'shrinkage_not_clamp'} | ||||
| PASS | cross_schema | cross-schema | CHW | CURRENT_FINALIZED_MATCH_BOX | CHW current pitcher projected totals match final simulation pitching box score. | |||
| PASS | cross_schema | cross-schema | CLE | CURRENT_FINALIZED_MATCH_BOX | CLE current pitcher projected totals match final simulation pitching box score. | |||
| PASS | current_payload | current | CHW | CURRENT_LINEUP_SHAPE | CHW current lineup has 9 expected positions. | |||
| PASS | current_payload | current | CHW | CURRENT_MODEL_ZERO_FALLBACK | CHW current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | CHW | CURRENT_NAMES_PRESENT | CHW current hitter names are populated. | |||
| PASS | current_payload | current | CHW | CURRENT_PREDICTIONS_MATCH_FINALIZED | CHW hitter predictions mirror finalized stats. | |||
| PASS | current_payload | current | CLE | CURRENT_LINEUP_SHAPE | CLE current lineup has 9 expected positions. | |||
| PASS | current_payload | current | CLE | CURRENT_MODEL_ZERO_FALLBACK | CLE current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | CLE | CURRENT_NAMES_PRESENT | CLE current hitter names are populated. | |||
| PASS | current_payload | current | CLE | CURRENT_PREDICTIONS_MATCH_FINALIZED | CLE hitter predictions mirror finalized stats. | |||
| PASS | current_vs_final | cross-schema | CHW | CURRENT_FINALIZED_MATCH_BOX | CHW current finalized batting totals match final simulation box score. | |||
| PASS | current_vs_final | cross-schema | CHW | CURRENT_PLAYER_MATCH_BOX | CHW current finalized hitter lines mirror simulation box score. | |||
| PASS | current_vs_final | cross-schema | CLE | CURRENT_FINALIZED_MATCH_BOX | CLE current finalized batting totals match final simulation box score. | |||
| PASS | current_vs_final | cross-schema | CLE | CURRENT_PLAYER_MATCH_BOX | CLE current finalized hitter lines mirror simulation box score. | |||
| PASS | data_leakage | H2H_DATA_LEAKAGE | All head-to-head rows are dated before the prediction game date. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | Home + away win probabilities sum to approximately 1.0. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | away_win_probability is in [0,1]: 0.482. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | confidence is in [0,1]: 0.518. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | home_win_probability is in [0,1]: 0.518. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Final total runs 9 is reasonably close to low-score expected_total_runs 9.0. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Low-score analysis factors are non-negative. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Low-score probability/confidence are valid: 0.523/0.713. | |||||
| PASS | final_decision | FINAL_DECISION_POLICY | Final decision policy preserved model ownership of the winner. | |||||
| PASS | innings | GAME_ENDING_COHERENT | The game ends coherently for its score. | |||||
| PASS | innings | INNINGS_COUNT | inning_by_inning_summary contains 9 innings. | |||||
| PASS | innings | INNING_OUTS | Inning 9 home marked not_played with empty stats. | |||||
| PASS | innings | INNING_PLAY_SUMS | Detailed play totals match every half-inning line. | |||||
| PASS | innings | INNING_SEQUENCE | Inning numbers are sequential. | |||||
| PASS | innings | INNING_TOTAL_HITS | Inning hits match batting totals: CHW 7, CLE 7. | |||||
| PASS | innings | INNING_TOTAL_RUNS | Inning runs sum to final score: CHW 4 - CLE 5. | |||||
| PASS | kpi | LUNA_KPI_TRACE | Luna KPI trace coherent (no_promoted_kpis). | |||||
| PASS | matchup_recency | GUARDRAIL_FINAL_WINNER_SYNC | Guardrail predicted_team matches final predicted winner: CLE. | |||||
| PASS | matchup_recency | MATCHUP_RECENCY_GUARDRAIL | Matchup recency guardrail applied for CLE; cap=0.56, reasons=recent head-to-head is split and volatile; recent head-to-head margin does not support a strong repeat pick; a prior same-side pick already missed against the actual result. | {'applied': True, 'confidence_cap': 0.56, 'winner_flipped': False, 'reasons': ['recent head-to-head is split and volatile', 'recent head-to-head margin does not support a strong repeat pick', 'a prior same-side pick already missed against the actual result'], 'signals': {'predicted_team': 'CLE', 'opponent_team': 'CHW', 'h2h_net_margin': 0, 'opponent_breakout': False, 'opponent_blowout_win': False, 'split_recent_h2h': True, 'recent_h2h': [{'date': '2026-09-16', 'predicted_team_runs': 6, 'opponent_runs': 3, 'margin_for_predicted_team': 3, 'winner': 'CLE'}, {'date': '2026-09-15', 'predicted_team_runs': 7, 'opponent_runs': 6, 'margin_for_predicted_team': 1, 'winner': 'CLE'}, {'date': '2026-09-14', 'predicted_team_runs': 3, 'opponent_runs': 7, 'margin_for_predicted_team': -4, 'winner': 'CHW'}], 'prediction_memory': {'available': True, 'reason': 'verified_prior_matchup_predictions_available', 'verification_policy': 'pregame_artifact_matched_to_one_official_final', 'verified_outcome_count': 12, 'consecutive_same_pick_count': 0, 'same_pick_actual_loss_count': 1, 'same_pick_blowout_loss_count': 0, 'prior_predictions': [{'date': '20261003', 'away': 'CHW', 'home': 'CLE', 'game_number': 1, 'predicted_team': 'CHW', 'actual_winner': 'CHW', 'actual_margin': 3, 'raw_pick_probability': 0.5229980000000001, 'artifact': '20261003_CHW@CLE.json', 'verification': 'pregame_official_final'}, {'date': '20260916', 'away': 'CHW', 'home': 'CLE', 'game_number': 1, 'predicted_team': 'CLE', 'actual_winner': 'CLE', 'actual_margin': 3, 'raw_pick_probability': 0.556513, 'artifact': '20260916_CHW@CLE.json', 'verification': 'pregame_official_final'}, {'date': '20260915', 'away': 'CHW', 'home': 'CLE', 'game_number': 1, 'predicted_team': 'CHW', 'actual_winner': 'CLE', 'actual_margin': 1, 'raw_pick_probability': 0.544573, 'artifact': '20260915_CHW@CLE.json', 'verification': 'pregame_official_final'}, {'date': '20260914', 'away': 'CHW', 'home': 'CLE', 'game_number': 1, 'predicted_team': 'CLE', 'actual_winner': 'CHW', 'actual_margin': 4, 'raw_pick_probability': 0.505654, 'artifact': '20260914_CHW@CLE.json', 'verification': 'pregame_official_final'}, {'date': '20260809', 'away': 'CLE', 'home': 'CHW', 'game_number': 1, 'predicted_team': 'CHW', 'actual_winner': 'CHW', 'actual_margin': 2, 'raw_pick_probability': 0.56, 'artifact': '20260809_CLE@CHW.json', 'verification': 'pregame_official_final'}]}, 'guardrail_predicted_team': 'CLE', 'guardrail_opponent_team': 'CHW', 'output_pre_simulation_winner': 'CLE', 'output_opponent_team': 'CHW', 'simulation_score_winner': 'CLE', 'final_score_winner': 'CLE', 'pre_simulation_winner': 'CLE', 'winner_flipped_by_simulation': False, 'simulation_would_flip_winner': False}, 'hard_flip_suppressed': False, 'flip_authority': 'caps_confidence_and_shifts_runs_only'} | ||||
| PASS | metadata | DATE_PARSE | Date is valid ISO format: 2026-10-05. | |||||
| PASS | metadata | FILENAME_GAME_ID_MATCH | Filename contains game_id: filename=20261005_CHW@CLE__20261006T003858Z, game_id=20261005_CHW@CLE. | |||||
| PASS | metadata | FILENAME_TEAM_MATCH | Filename teams match JSON teams: CHW@CLE. | |||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | H2H base feature is implemented and its runtime trace passed. | {'method': 'h2h_net_margin_monotonic_v1', 'available': True, 'sample_size': 5, 'sample_weight': 0.0577, 'home_net_margin': -5.0, 'absolute_net_margin': 5.0, 'home_average_margin': -1.0, 'home_run_delta': -0.0288, 'away_run_delta': 0.0288, 'evidence': [{'game_id': None, 'home_margin': 3.0}, {'game_id': None, 'home_margin': 1.0}, {'game_id': None, 'home_margin': -4.0}, {'game_id': None, 'home_margin': -2.0}, {'game_id': None, 'home_margin': -3.0}], 'adaptive_parameters': {'h2h.history_limit': 5, 'h2h.maximum_weight': 0.15, 'h2h.prior_games': 8.0, 'h2h.maximum_total_shift': 0.65}} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Score distribution widening is implemented and its runtime trace passed. | {'most_likely': [{'home_runs': 5, 'away_runs': 4, 'probability': 0.01744160494745018}, {'home_runs': 4, 'away_runs': 4, 'probability': 0.017375707797229457}, {'home_runs': 5, 'away_runs': 5, 'probability': 0.017334799164934776}, {'home_runs': 4, 'away_runs': 5, 'probability': 0.017269305543902796}, {'home_runs': 5, 'away_runs': 3, 'probability': 0.015876983281940128}], 'home_distribution': {'0': 0.048314403764278285, '1': 0.07175173601017976, '2': 0.09661848868951951, '3': 0.11796688312224266, '4': 0.13059664125373613, '5': 0.13109192735013284, '6': 0.11931414339498507, '7': 0.09846456002099437, '8': 0.07367836837057504, '9': 0.04998872879225278, '10': 0.030752202373672564, '11': 0.017153486031480765, '12': 0.008675621581975525, '13': 0.003978513588860975, '14': 0.0016542956551136854}, 'away_distribution': {'0': 0.05009797024117762, '1': 0.07431848632840023, '2': 0.0997441633368908, '3': 0.12111335612248927, '4': 0.13304865753377382, '5': 0.13223391794855024, '6': 0.11890199614517424, '7': 0.09672736041242856, '8': 0.07119072868340738, '9': 0.0474036137658919, '10': 0.028557052144400165, '11': 0.015564286235275058, '12': 0.007674656641990396, '13': 0.003423754460150115}, 'model': 'overdispersed_score_distribution', 'variance_multiplier': 2.25, 'variance_floor': 2.75, 'roadmap_status': 'implemented_above_requested_1.4x'} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Season/recent-form quality blend is implemented and its runtime trace passed. | {'method': 'season_recent_quality_blend_v2_adaptive', 'recent_window': 10, 'season_quality_edge': -0.2685, 'recent_quality_edge': 0.04, 'season_weight': 0.65, 'recent_weight': 0.35, 'recent_reliability': 1.0, 'alignment': 'conflict', 'blended_quality_edge': -0.1605} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Simulation flip control is implemented and its runtime trace passed. | {'pre_simulation_score': {'away_runs': 4, 'home_runs': 5, 'score_text': 'CHW 4 - 5 CLE', 'winner': 'CLE'}, 'final_simulation_score': {'away_runs': 4, 'home_runs': 5, 'score_text': 'CHW 4 - 5 CLE', 'winner': 'CLE'}, '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.049, 'recent_form_edge_home_minus_away': -0.03, 'winner_direction': 'home', 'thresholds': {'pitcher_matchup': 0.35, 'recent_form': 0.75}}, 'margin_widening_capped': False, 'simulation_winner_agrees': True, 'away_run_delta': 0, 'home_run_delta': 0, 'total_run_delta': 0, 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_usage': 'organic_simulation_realized_target', 'final_prediction_source': 'stable_final_prediction_policy', 'final_decision_policy': {'policy_version': 'model_target_authoritative_simulation_realizes_v3', 'away_runs': 4, 'home_runs': 5, 'winner': 'CLE', 'model_winner': 'CLE', 'simulation_winner': 'CLE', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 2, 'published_winner': 'CLE', 'published_winner_draw_share': 1.0, 'draw_majority_team': 'CLE', 'published_winner_is_draw_majority': True, 'sampling': 'target_conditioned_selection', 'is_unbiased_probability_sample': False, 'note': 'Draw shares are target-conditioned and diagnostic. A published winner holding a minority share is recorded, not suppressed.'}, 'simulation_score_enabled': True, 'independent_margin_support': False, 'margin_widening_capped': False, 'model_margin': 1, 'simulation_margin': 1, 'simulation_usage': 'organic_simulation_realized_target', 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_realized_target': True, 'model_score': {'away_runs': 4, 'home_runs': 5}, 'simulation_score': {'away_runs': 4, 'home_runs': 5}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 1, 'final_margin': 1, 'winner_quality_edge': -0.1605, 'winner': 'CLE', 'score_reviewed': {'away_runs': 4, 'home_runs': 5, 'source': 'enhanced_prediction.pre_simulation_target'}, 'reason': 'published margin is directionally supported or within review threshold'}} | ||||
| PASS | pipeline | PIPELINE_VERSION | Prediction pipeline version is current: enhanced_game_prediction_v4_continuous_learning__player_form_v3_5_10_season. | |||||
| PASS | pitch_by_pitch | PITCH_DETAIL_SANITY | Pitch-by-pitch speeds and zones are within sanity ranges. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | away pitcher pitch-by-pitch count matches pitch_count_summary total: 143. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | home pitcher pitch-by-pitch count matches pitch_count_summary total: 144. | |||||
| PASS | pitch_count | simulation | CHW | PITCH_COUNT_PITCHER_MATCH | CHW pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | CHW | PITCH_COUNT_TOTAL_MATCH | CHW pitch_count_summary total, row sum, and pitching total all match: 143. | |||
| PASS | pitch_count | simulation | CLE | PITCH_COUNT_PITCHER_MATCH | CLE pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | CLE | PITCH_COUNT_TOTAL_MATCH | CLE pitch_count_summary total, row sum, and pitching total all match: 144. | |||
| PASS | pitcher_opponent_strength | PITCHER_OPPONENT_STRENGTH_BOUNDS | Pitcher-opponent adjustment stayed inside supported bounds. | |||||
| PASS | pitching | PITCHER_APPEARANCE_COHERENT | All 7 pitchers in the box actually appeared. | |||||
| PASS | pitching | PUBLISHED_PITCHER_LINES_MATCH_BOX | Published pitcher lines cover the outs the box recorded. | |||||
| PASS | pitching | current | CHW | PITCHING_REALISM | current:CHW pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | CHW | STARTER_PRESENT | current:CHW includes a starter/opener role. | |||
| PASS | pitching | current | CLE | PITCHING_REALISM | current:CLE pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | CLE | STARTER_PRESENT | current:CLE includes a starter/opener role. | |||
| PASS | pitching | simulation | CHW | PITCHING_REALISM | simulation:CHW pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | CHW | STARTER_PRESENT | simulation:CHW includes a starter/opener role. | |||
| PASS | pitching | simulation | CLE | PITCHING_REALISM | simulation:CLE pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | CLE | STARTER_PRESENT | simulation:CLE includes a starter/opener role. | |||
| PASS | pitching_totals | current | CHW | PITCHING_TOTALS_SUM | current:CHW pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | current | CHW | PITCHING_TOTALS_SUM | current:CHW pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | current | CLE | PITCHING_TOTALS_SUM | current:CLE pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | CLE | PITCHING_TOTALS_SUM | current:CLE pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | CHW | PITCHING_TOTALS_SUM | simulation:CHW pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | simulation | CHW | PITCHING_TOTALS_SUM | simulation:CHW pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | CLE | PITCHING_TOTALS_SUM | simulation:CLE pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | CLE | PITCHING_TOTALS_SUM | simulation:CLE pitching totals equal summed pitcher lines for available fields. | |||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Enhanced AI score matches enhanced target: CHW 4 - 5 CLE. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation score matches final score: CHW 4 - 5 CLE. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation winner matches final score: CLE wins 5-4. | |||||
| PASS | prediction_comparison | SIMULATION_WINNER_FLIP_TRACE | Simulation decision is explicit: model=CLE, simulation=CLE, published=CLE. | |||||
| PASS | probability | CONFIDENCE_RANGE | Enhanced target confidence is in range: 0.518. | |||||
| PASS | recent_form | RECENT_FORM_RANGE | away recent_form record is coherent: 7/10 (0.700). | |||||
| PASS | recent_form | RECENT_FORM_RANGE | home recent_form record is coherent: 8/10 (0.800). | |||||
| PASS | report | REPORT_COMPLETE | All findings, passes, warnings, errors, and critical issues are rendered in the single HTML report. | |||||
| PASS | schema | SCHEMA_ROOTS_PRESENT | Both major schemas are present: game, scoring_simulation, game_summary, prediction_comparison. | |||||
| PASS | score | GAME_SUMMARY_MATCH | game_summary agrees with the published score (game.final_prediction): CLE wins 5-4. | |||||
| PASS | score | SCORE_NO_TIE | Final score has a clear winner: CLE wins 4-5. | |||||
| PASS | score | SCORE_STEP_FINAL_MATCH | simulation_result step matches final score: 4-5. | |||||
| PASS | score | SCORE_STEP_ORDER | Score evolution contains the expected ordered steps. | |||||
| PASS | score | TARGET_SCORE_DRIFT | Final score is close to enhanced target: target 4-5, final 4-5 (delta 0). | |||||
| PASS | score | TOTAL_RUNS_MATCH | total_runs field matches final score total: 9. | |||||
| PASS | score | WINNER_FIELD_MATCH | winner field is consistent: CLE wins 5-4. | |||||
| PASS | score | cross-schema | CURRENT_SCORE_MATCHES_SIM | game.predicted_runs matches scoring_simulation.final_score. | ||||
| PASS | team_recent_performance | current | CHW | RECENT_FORM_RANGE | CHW recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | CHW | TEAM_RECENT_RECORD | CHW wins and win_pct agree: 7/10 = 0.700. | |||
| PASS | team_recent_performance | current | CLE | RECENT_FORM_RANGE | CLE recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | CLE | TEAM_RECENT_RECORD | CLE wins and win_pct agree: 7/10 = 0.700. |
Info/context findings
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| INFO | score_reconciliation | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
Score evolution
| step | away_runs | home_runs | confidence | description |
|---|---|---|---|---|
| historical_ml | 4.052787417582998 | 4.657712402044706 | Base ML historical model prediction | |
| variance_applied | 4 | 5 | Deterministic baseline target (variance factor 1.0) | |
| enhanced_prediction | 4 | 5 | 0.518 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| kpi_layer | 4 | 5 | Savant KPI blend applied to the model target | |
| embedded_savant_run_environment | 4 | 5 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality | |
| fundamental_edge_target_review | 4 | 5 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments | |
| capped_target | 4 | 5 | Capped at max 12 realistic runs | |
| simulation_result | 4 | 5 | Final inning-by-inning simulation result |
Inning-by-inning linescore
| team | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | R | H |
|---|---|---|---|---|---|---|---|---|---|---|---|
| CHW | 0 | 1 | 0 | 0 | 3 | 0 | 0 | 0 | 0 | 4 | 7 |
| CLE | 0 | 2 | 0 | 0 | 0 | 0 | 3 | 0 | 0 | 5 | 7 |
Team totals - current + final simulation
| src | team | type | PA | AB | H | 2B | 3B | HR | RBI | R | BB | SO | SF | HBP | SB | CS | IP | ER | BF | Pitches |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| current | CHW | batting | 34 | 7 | 1 | 0 | 1 | 4 | 4 | 3 | 10 | 0 | 0 | 0 | 0 | |||||
| current | CHW | pitching | 7 | 0 | 5 | 4 | 7 | 8.0 | 4 | 0 | 0 | |||||||||
| current | CLE | batting | 32 | 7 | 1 | 0 | 0 | 5 | 5 | 4 | 7 | 0 | 0 | 0 | 0 | |||||
| current | CLE | pitching | 7 | 1 | 4 | 3 | 10 | 9.0 | 4 | 0 | 0 | |||||||||
| simulation | CHW | batting | 34 | 7 | 1 | 0 | 1 | 4 | 4 | 3 | 10 | 0 | 0 | |||||||
| simulation | CHW | pitching | 7 | 0 | 5 | 4 | 7 | 8.0 | 4 | 36 | 143 | |||||||||
| simulation | CLE | batting | 32 | 7 | 1 | 0 | 0 | 5 | 5 | 4 | 7 | 0 | 0 | |||||||
| simulation | CLE | pitching | 7 | 1 | 4 | 3 | 10 | 9.0 | 4 | 37 | 144 |
Batting lines - current + final simulation
| src | team | order | pos | name | PA | AB | H | 2B | 3B | HR | R | RBI | BB | SO | HBP | AVG |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| current | CHW | LF | Sam Antonacci | 0 | 5 | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 0.200 | |
| current | CHW | C | Kyle Teel | 0 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 | |
| current | CHW | 3B | Miguel Vargas | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 2 | 1 | 2 | 0 | 0.333 | |
| current | CHW | 1B | Munetaka Murakami | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.250 | |
| current | CHW | DH | Andrew Benintendi | 0 | 4 | 2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.500 | |
| current | CHW | CF | Tristan Peters | 0 | 3 | 1 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 0 | 0.333 | |
| current | CHW | RF | Braden Montgomery | 0 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 | |
| current | CHW | 2B | Chase Meidroth | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.250 | |
| current | CHW | SS | Colson Montgomery | 0 | 3 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 2 | 0 | 0.000 | |
| current | CLE | CF | Steven Kwan | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0.250 | |
| current | CLE | 3B | José Ramírez | 0 | 2 | 1 | 0 | 0 | 0 | 1 | 1 | 2 | 0 | 0 | 0.500 | |
| current | CLE | RF | Chase DeLauter | 0 | 3 | 2 | 0 | 0 | 0 | 1 | 1 | 1 | 0 | 0 | 0.667 | |
| current | CLE | DH | Jo Adell | 0 | 4 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0.000 | |
| current | CLE | 1B | Nathaniel Lowe | 0 | 4 | 2 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0.500 | |
| current | CLE | LF | Angel Martínez | 0 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.000 | |
| current | CLE | 2B | Travis Bazzana | 0 | 3 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0.000 | |
| current | CLE | C | Patrick Bailey | 0 | 4 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 2 | 0 | 0.000 | |
| current | CLE | SS | Brayan Rocchio | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.250 | |
| simulation | CHW | 1 | LF | Sam Antonacci | 5 | 5 | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 0.200 |
| simulation | CHW | 2 | C | Kyle Teel | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 |
| simulation | CHW | 3 | 3B | Miguel Vargas | 4 | 3 | 1 | 0 | 0 | 0 | 0 | 2 | 1 | 2 | 0 | 0.333 |
| simulation | CHW | 4 | 1B | Munetaka Murakami | 4 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.250 |
| simulation | CHW | 5 | DH | Andrew Benintendi | 4 | 4 | 2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.500 |
| simulation | CHW | 6 | CF | Tristan Peters | 4 | 3 | 1 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 0 | 0.333 |
| simulation | CHW | 7 | RF | Braden Montgomery | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 |
| simulation | CHW | 8 | 2B | Chase Meidroth | 4 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.250 |
| simulation | CHW | 9 | SS | Colson Montgomery | 4 | 3 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 2 | 0 | 0.000 |
| simulation | CLE | 1 | CF | Steven Kwan | 4 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0.250 |
| simulation | CLE | 2 | 3B | José Ramírez | 4 | 2 | 1 | 0 | 0 | 0 | 1 | 1 | 2 | 0 | 0 | 0.500 |
| simulation | CLE | 3 | RF | Chase DeLauter | 4 | 3 | 2 | 0 | 0 | 0 | 1 | 1 | 1 | 0 | 0 | 0.667 |
| simulation | CLE | 4 | DH | Jo Adell | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0.000 |
| simulation | CLE | 5 | 1B | Nathaniel Lowe | 4 | 4 | 2 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0.500 |
| simulation | CLE | 6 | LF | Angel Martínez | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.000 |
| simulation | CLE | 7 | 2B | Travis Bazzana | 4 | 3 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0.000 |
| simulation | CLE | 8 | C | Patrick Bailey | 4 | 4 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 2 | 0 | 0.000 |
| simulation | CLE | 9 | SS | Brayan Rocchio | 4 | 4 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.250 |
Pitching lines - current + final simulation
| src | team | order | name | role | IP | H | R | ER | BB | SO | HR | BF | Pitches | sim_ERA | season_ERA | season_WHIP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| current | CHW | 1 | Anthony Kay | Starter | 4.2 | 3 | 2 | 1 | 2 | 3 | 0 | 0 | 0 | 1.93 | 4.39 | 1.38 |
| current | CHW | 6 | Sean Newcomb | Middle Reliever (High Leverage) | 2.0 | 3 | 3 | 3 | 2 | 2 | 0 | 0 | 0 | 13.50 | 2.77 | 1.11 |
| current | CHW | 7 | Jordan Hicks | Setup Man | 1.1 | 1 | 0 | 0 | 0 | 2 | 0 | 0 | 0 | 0.00 | 3.83 | 1.50 |
| current | CLE | 1 | Gavin Williams | Starter | 5.2 | 6 | 4 | 4 | 3 | 7 | 1 | 0 | 0 | 6.35 | 3.76 | 1.11 |
| current | CLE | 2 | Tim Herrin | Middle Reliever | 1.0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.00 | 2.97 | 1.28 |
| current | CLE | 3 | Daniel Espino | Middle Reliever (High Leverage) | 1.0 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.00 | 3.94 | 1.31 |
| current | CLE | 4 | Erik Sabrowski | Middle Reliever (High Leverage) | 1.1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.00 | 2.52 | 1.06 |
| simulation | CHW | 1 | Anthony Kay | Starter | 4.2 | 3 | 2 | 1 | 2 | 3 | 0 | 20 | 70 | 1.93 | 4.39 | 1.38 |
| simulation | CHW | 2 | Sean Newcomb | Middle Reliever (High Leverage) | 2.0 | 3 | 3 | 3 | 2 | 2 | 0 | 11 | 51 | 13.50 | 2.77 | 1.11 |
| simulation | CHW | 3 | Jordan Hicks | Setup Man | 1.1 | 1 | 0 | 0 | 0 | 2 | 0 | 5 | 22 | 0.00 | 3.83 | 1.50 |
| simulation | CLE | 1 | Gavin Williams | Starter | 5.2 | 6 | 4 | 4 | 3 | 7 | 1 | 26 | 105 | 6.35 | 3.76 | 1.11 |
| simulation | CLE | 2 | Tim Herrin | Middle Reliever | 1.0 | 0 | 0 | 0 | 0 | 1 | 0 | 3 | 9 | 0.00 | 2.97 | 1.28 |
| simulation | CLE | 3 | Daniel Espino | Middle Reliever (High Leverage) | 1.0 | 1 | 0 | 0 | 0 | 1 | 0 | 4 | 18 | 0.00 | 3.94 | 1.31 |
| simulation | CLE | 4 | Erik Sabrowski | Middle Reliever (High Leverage) | 1.1 | 0 | 0 | 0 | 0 | 1 | 0 | 4 | 12 | 0.00 | 2.52 | 1.06 |
Pitch count summary
| team | pitcher | role | IP | R | H | BB | SO | BF | Pitches |
|---|---|---|---|---|---|---|---|---|---|
| CHW | Anthony Kay | Starter | 4.2 | 2 | 3 | 2 | 3 | 20 | 70 |
| CHW | Sean Newcomb | Middle Reliever (High Leverage) | 2.0 | 3 | 3 | 2 | 2 | 11 | 51 |
| CHW | Jordan Hicks | Setup Man | 1.1 | 0 | 1 | 0 | 2 | 5 | 22 |
| CLE | Gavin Williams | Starter | 5.2 | 4 | 6 | 3 | 7 | 26 | 105 |
| CLE | Tim Herrin | Middle Reliever | 1.0 | 0 | 0 | 0 | 1 | 3 | 9 |
| CLE | Daniel Espino | Middle Reliever (High Leverage) | 1.0 | 0 | 1 | 0 | 1 | 4 | 18 |
| CLE | Erik Sabrowski | Middle Reliever (High Leverage) | 1.1 | 0 | 0 | 0 | 1 | 4 | 12 |
Audit rule catalog
| rule | status | critical | error | warning | pass | description |
|---|---|---|---|---|---|---|
| BATTING_REALISM | good | 0 | 0 | 0 | 4 | Player/team batting lines obey baseball constraints. |
| BATTING_TOTALS_SUM | good | 0 | 0 | 0 | 4 | Team batting totals equal the sum of player batting lines. |
| BAT_PITCH_BB_MATCH | good | 0 | 0 | 0 | 2 | Batting walks match opposing pitching walks allowed. |
| BAT_PITCH_HR_MATCH | good | 0 | 0 | 0 | 2 | Batting home runs match opposing pitching home runs allowed. |
| BAT_PITCH_H_MATCH | good | 0 | 0 | 0 | 2 | Batting hits match opposing pitching hits allowed. |
| BAT_PITCH_SO_MATCH | good | 0 | 0 | 0 | 2 | Batting strikeouts match opposing pitching strikeouts. |
| CONFIDENCE_CALIBRATION_APPLIED | good | 0 | 0 | 0 | 1 | Empirical confidence blending uses the requested sample weight and remains between raw confidence and empirical hit rate. |
| CONFIDENCE_RANGE | good | 0 | 0 | 0 | 5 | Confidence values are between 0 and 1. |
| CURRENT_FINALIZED_MATCH_BOX | good | 0 | 0 | 0 | 4 | Current finalized player totals agree with final simulation box score unless model/simulation sources are separated. |
| CURRENT_LINEUP_SHAPE | good | 0 | 0 | 0 | 2 | Current predicted_performance contains a plausible 9-player lineup. |
| CURRENT_MODEL_ZERO_FALLBACK | good | 0 | 0 | 0 | 2 | Current model payload did not rely too heavily on all-zero model predictions. |
| CURRENT_NAMES_PRESENT | good | 0 | 0 | 0 | 2 | Current predicted_performance has usable player names. |
| CURRENT_PITCHER_DUPLICATION | not triggered | 0 | 0 | 0 | 0 | Pitcher lists duplicated across current sections are detected and reconciled. |
| CURRENT_PLAYER_MATCH_BOX | good | 0 | 0 | 0 | 2 | Current finalized hitter lines mirror the simulation box score unless model/simulation sources are separated. |
| CURRENT_PREDICTIONS_MATCH_FINALIZED | good | 0 | 0 | 0 | 2 | Current hitter predictions mirror finalized stats. |
| CURRENT_SCORE_MATCHES_SIM | good | 0 | 0 | 0 | 1 | game.predicted_runs is either synced to simulation or paired with game.simulation_runs. |
| DATE_PARSE | good | 0 | 0 | 0 | 1 | Game date can be parsed as an ISO date. |
| FILENAME_GAME_ID_MATCH | good | 0 | 0 | 0 | 1 | Filename and game_id identify the same game. |
| FILENAME_TEAM_MATCH | good | 0 | 0 | 0 | 1 | Filename teams match the teams inside the JSON. |
| FINAL_DECISION_POLICY | good | 0 | 0 | 0 | 1 | One organic simulation cannot replace a disagreeing model winner. |
| GAME_ENDING_COHERENT | good | 0 | 0 | 0 | 1 | The inning line ends the way a real game with the published score ends. |
| GAME_SUMMARY_MATCH | good | 0 | 0 | 0 | 1 | game_summary text agrees with final score. |
| GUARDRAIL_FINAL_WINNER_SYNC | good | 0 | 0 | 0 | 1 | Guardrail trace predicted_team matches the final predicted winner. |
| H2H_DATA_LEAKAGE | good | 0 | 0 | 0 | 1 | Head-to-head history does not include same-day or future games in pregame mode. |
| INNINGS_COUNT | good | 0 | 0 | 0 | 1 | Inning count is valid for MLB. |
| INNING_OUTS | good | 0 | 0 | 0 | 1 | Each played half inning has valid outs. |
| INNING_PLAY_SUMS | good | 0 | 0 | 0 | 1 | Detailed plays agree with inning runs, hits, outs, and pitches. |
| INNING_SEQUENCE | good | 0 | 0 | 0 | 1 | Innings are sequential and unique. |
| INNING_TOTAL_HITS | good | 0 | 0 | 0 | 1 | Inning hits sum to batting team hits. |
| INNING_TOTAL_RUNS | good | 0 | 0 | 0 | 1 | Inning runs sum to final score. |
| LOW_SCORE_ANALYSIS | good | 0 | 0 | 0 | 3 | Low-score probability factors are valid and directionally consistent. |
| LUNA_KPI_TRACE | good | 0 | 0 | 0 | 1 | Promoted Luna KPIs are traced per hitter and the per-game totals agree. |
| MATCHUP_RECENCY_GUARDRAIL | good | 0 | 0 | 0 | 1 | Repeat picks are capped when recent same-matchup results contradict high confidence. |
| OPTIMIZATION_ROADMAP_STATUS | good | 0 | 0 | 0 | 4 | H2H, score-distribution, simulation-flip, and recent-form roadmap signals are explicitly traced and satisfy their configured safeguards. |
| PA_BF_MATCH | good | 0 | 0 | 0 | 2 | Team plate appearances match opposing batters faced. |
| PIPELINE_VERSION | good | 0 | 0 | 0 | 1 | Prediction artifacts identify the stable pipeline version that created them. |
| PITCHER_APPEARANCE_COHERENT | good | 0 | 0 | 0 | 1 | Every pitcher in the box actually appeared: no 0-inning 0-batter line, and no pitch without a batter faced. |
| PITCHER_OPPONENT_STRENGTH_BOUNDS | good | 0 | 0 | 0 | 1 | Pitcher-opponent run factors and score deltas remain inside supported bounds. |
| PITCHING_REALISM | good | 0 | 0 | 0 | 4 | Pitcher/team pitching lines obey baseball constraints. |
| PITCHING_TOTALS_SUM | good | 0 | 0 | 0 | 8 | Team pitching totals equal the sum of pitcher lines. |
| PITCH_COUNT_PITCHER_MATCH | good | 0 | 0 | 0 | 2 | Pitch count summary pitcher rows agree with pitching box score. |
| PITCH_COUNT_TOTAL_MATCH | good | 0 | 0 | 0 | 4 | Pitch count summary totals match team pitching totals. |
| PITCH_DETAIL_SANITY | good | 0 | 0 | 0 | 1 | Pitch-by-pitch details have plausible values. |
| PREDICTION_COMPARISON_MATCH | good | 0 | 0 | 0 | 3 | prediction_comparison scores agree with target/final result. |
| PUBLISHED_PITCHER_LINES_MATCH_BOX | good | 0 | 0 | 0 | 1 | Published staff lines cover the outs the box recorded, extra innings included. |
| RECENT_FORM_RANGE | good | 0 | 0 | 0 | 4 | Recent-form metrics are within valid numeric ranges. |
| RECONCILIATION_PROPAGATION | info | 0 | 0 | 0 | 0 | When score_target_reconciliation is used, all final-facing sections are regenerated from the reconciled score. |
| REPORT_COMPLETE | good | 0 | 0 | 0 | 1 | Report includes every audit result in the all-findings table. |
| REPORT_CSV_EXPORT | not triggered | 0 | 0 | 0 | 0 | Optional CSV exports were written for summary and problem rows. |
| RUNS_MATCH_FINAL | good | 0 | 0 | 0 | 2 | Batting/pitching runs agree with final score. |
| SCHEMA_ROOTS_PRESENT | good | 0 | 0 | 0 | 1 | Expected JSON root sections exist and can be audited. |
| SCORE_NO_TIE | good | 0 | 0 | 0 | 1 | Final MLB score has a clear winner. |
| SCORE_STEP_FINAL_MATCH | good | 0 | 0 | 0 | 1 | score_evolution simulation_result matches final score. |
| SCORE_STEP_ORDER | good | 0 | 0 | 0 | 1 | Score evolution contains the expected ordered steps. |
| SIMULATION_WINNER_FLIP_TRACE | good | 0 | 0 | 0 | 1 | Simulation winner reversals are explicitly recorded. |
| STARTER_PRESENT | good | 0 | 0 | 0 | 4 | Pitching staff includes a starter or opener when expected. |
| SYNTHETIC_SCORE_PLAYS | not triggered | 0 | 0 | 0 | 0 | Score reconciliation must not inject synthetic run or out plays. |
| TARGET_SCORE_DRIFT | good | 0 | 0 | 0 | 1 | Final score does not drift too far from enhanced target. |
| TEAM_RECENT_RECORD | good | 0 | 0 | 0 | 2 | team_recent_performance wins and win_pct agree with games_analyzed. |
| TOTAL_RUNS_MATCH | good | 0 | 0 | 0 | 1 | total_runs equals away + home runs. |
| WINNER_FIELD_MATCH | good | 0 | 0 | 0 | 1 | winner field agrees with the final score. |
20261005_CHW@CLE
20261005_CHW@CLE__20261006T013855Z.json • 2026-10-05
Clean: no problems detected. Risk score: 0.
No action required
No critical, error, or warning findings were detected.
Problems table - exact rows
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|
All findings - complete audit trail
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| INFO | score_reconciliation | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. | |||||
| PASS | batting | current | CHW | BATTING_REALISM | current:CHW hitter lines pass basic baseball constraints. | |||
| PASS | batting | current | CLE | BATTING_REALISM | current:CLE hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | CHW | BATTING_REALISM | simulation:CHW hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | CLE | BATTING_REALISM | simulation:CLE hitter lines pass basic baseball constraints. | |||
| PASS | batting_totals | current | CHW | BATTING_TOTALS_SUM | current:CHW batting totals equal summed player lines. | |||
| PASS | batting_totals | current | CLE | BATTING_TOTALS_SUM | current:CLE batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | CHW | BATTING_TOTALS_SUM | simulation:CHW batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | CLE | BATTING_TOTALS_SUM | simulation:CLE batting totals equal summed player lines. | |||
| PASS | boxscore_crosscheck | simulation | CHW | BAT_PITCH_BB_MATCH | simulation:CHW batting walks match CLE pitching: 3. | |||
| PASS | boxscore_crosscheck | simulation | CHW | BAT_PITCH_HR_MATCH | simulation:CHW batting home runs match CLE pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | CHW | BAT_PITCH_H_MATCH | simulation:CHW batting hits match CLE pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | CHW | BAT_PITCH_SO_MATCH | simulation:CHW batting strikeouts match CLE pitching: 10. | |||
| PASS | boxscore_crosscheck | simulation | CHW | PA_BF_MATCH | simulation:CHW PA=37 matches CLE BF=37. | |||
| PASS | boxscore_crosscheck | simulation | CHW | RUNS_MATCH_FINAL | simulation:CHW runs match final score and opposing pitching runs: 4. | |||
| PASS | boxscore_crosscheck | simulation | CLE | BAT_PITCH_BB_MATCH | simulation:CLE batting walks match CHW pitching: 4. | |||
| PASS | boxscore_crosscheck | simulation | CLE | BAT_PITCH_HR_MATCH | simulation:CLE batting home runs match CHW pitching: 0. | |||
| PASS | boxscore_crosscheck | simulation | CLE | BAT_PITCH_H_MATCH | simulation:CLE batting hits match CHW pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | CLE | BAT_PITCH_SO_MATCH | simulation:CLE batting strikeouts match CHW pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | CLE | PA_BF_MATCH | simulation:CLE PA=36 matches CHW BF=36. | |||
| PASS | boxscore_crosscheck | simulation | CLE | RUNS_MATCH_FINAL | simulation:CLE runs match final score and opposing pitching runs: 5. | |||
| PASS | confidence_calibration | CONFIDENCE_CALIBRATION_APPLIED | Empirical confidence blend verified: 0.540 -> 0.552 at weight 0.500. | {'method': 'empirical_hit_rate_weighted_v1', 'applied': True, 'reason': 'raw confidence blended with verified historical bucket hit rate', 'raw_confidence': 0.539822, 'sample_size': 821, 'empirical_hit_rate': 0.5639, 'empirical_weight': 0.5, 'blended_confidence': 0.551861, 'published_confidence': 0.518498, 'published_after_governors': True, 'governor_mode': 'shrinkage_not_clamp'} | ||||
| PASS | cross_schema | cross-schema | CHW | CURRENT_FINALIZED_MATCH_BOX | CHW current pitcher projected totals match final simulation pitching box score. | |||
| PASS | cross_schema | cross-schema | CLE | CURRENT_FINALIZED_MATCH_BOX | CLE current pitcher projected totals match final simulation pitching box score. | |||
| PASS | current_payload | current | CHW | CURRENT_LINEUP_SHAPE | CHW current lineup has 9 expected positions. | |||
| PASS | current_payload | current | CHW | CURRENT_MODEL_ZERO_FALLBACK | CHW current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | CHW | CURRENT_NAMES_PRESENT | CHW current hitter names are populated. | |||
| PASS | current_payload | current | CHW | CURRENT_PREDICTIONS_MATCH_FINALIZED | CHW hitter predictions mirror finalized stats. | |||
| PASS | current_payload | current | CLE | CURRENT_LINEUP_SHAPE | CLE current lineup has 9 expected positions. | |||
| PASS | current_payload | current | CLE | CURRENT_MODEL_ZERO_FALLBACK | CLE current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | CLE | CURRENT_NAMES_PRESENT | CLE current hitter names are populated. | |||
| PASS | current_payload | current | CLE | CURRENT_PREDICTIONS_MATCH_FINALIZED | CLE hitter predictions mirror finalized stats. | |||
| PASS | current_vs_final | cross-schema | CHW | CURRENT_FINALIZED_MATCH_BOX | CHW current finalized batting totals match final simulation box score. | |||
| PASS | current_vs_final | cross-schema | CHW | CURRENT_PLAYER_MATCH_BOX | CHW current finalized hitter lines mirror simulation box score. | |||
| PASS | current_vs_final | cross-schema | CLE | CURRENT_FINALIZED_MATCH_BOX | CLE current finalized batting totals match final simulation box score. | |||
| PASS | current_vs_final | cross-schema | CLE | CURRENT_PLAYER_MATCH_BOX | CLE current finalized hitter lines mirror simulation box score. | |||
| PASS | data_leakage | H2H_DATA_LEAKAGE | All head-to-head rows are dated before the prediction game date. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | Home + away win probabilities sum to approximately 1.0. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | away_win_probability is in [0,1]: 0.482. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | confidence is in [0,1]: 0.518. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | home_win_probability is in [0,1]: 0.518. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Final total runs 9 is reasonably close to low-score expected_total_runs 9.0. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Low-score analysis factors are non-negative. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Low-score probability/confidence are valid: 0.523/0.713. | |||||
| PASS | final_decision | FINAL_DECISION_POLICY | Final decision policy preserved model ownership of the winner. | |||||
| PASS | innings | GAME_ENDING_COHERENT | The game ends coherently for its score. | |||||
| PASS | innings | INNINGS_COUNT | inning_by_inning_summary contains 9 innings. | |||||
| PASS | innings | INNING_OUTS | Inning 9 home marked not_played with empty stats. | |||||
| PASS | innings | INNING_PLAY_SUMS | Detailed play totals match every half-inning line. | |||||
| PASS | innings | INNING_SEQUENCE | Inning numbers are sequential. | |||||
| PASS | innings | INNING_TOTAL_HITS | Inning hits match batting totals: CHW 7, CLE 7. | |||||
| PASS | innings | INNING_TOTAL_RUNS | Inning runs sum to final score: CHW 4 - CLE 5. | |||||
| PASS | kpi | LUNA_KPI_TRACE | Luna KPI trace coherent (no_promoted_kpis). | |||||
| PASS | matchup_recency | GUARDRAIL_FINAL_WINNER_SYNC | Guardrail predicted_team matches final predicted winner: CLE. | |||||
| PASS | matchup_recency | MATCHUP_RECENCY_GUARDRAIL | Matchup recency guardrail applied for CLE; cap=0.56, reasons=recent head-to-head is split and volatile; recent head-to-head margin does not support a strong repeat pick; a prior same-side pick already missed against the actual result. | {'applied': True, 'confidence_cap': 0.56, 'winner_flipped': False, 'reasons': ['recent head-to-head is split and volatile', 'recent head-to-head margin does not support a strong repeat pick', 'a prior same-side pick already missed against the actual result'], 'signals': {'predicted_team': 'CLE', 'opponent_team': 'CHW', 'h2h_net_margin': 0, 'opponent_breakout': False, 'opponent_blowout_win': False, 'split_recent_h2h': True, 'recent_h2h': [{'date': '2026-09-16', 'predicted_team_runs': 6, 'opponent_runs': 3, 'margin_for_predicted_team': 3, 'winner': 'CLE'}, {'date': '2026-09-15', 'predicted_team_runs': 7, 'opponent_runs': 6, 'margin_for_predicted_team': 1, 'winner': 'CLE'}, {'date': '2026-09-14', 'predicted_team_runs': 3, 'opponent_runs': 7, 'margin_for_predicted_team': -4, 'winner': 'CHW'}], 'prediction_memory': {'available': True, 'reason': 'verified_prior_matchup_predictions_available', 'verification_policy': 'pregame_artifact_matched_to_one_official_final', 'verified_outcome_count': 12, 'consecutive_same_pick_count': 0, 'same_pick_actual_loss_count': 1, 'same_pick_blowout_loss_count': 0, 'prior_predictions': [{'date': '20261003', 'away': 'CHW', 'home': 'CLE', 'game_number': 1, 'predicted_team': 'CHW', 'actual_winner': 'CHW', 'actual_margin': 3, 'raw_pick_probability': 0.5229980000000001, 'artifact': '20261003_CHW@CLE.json', 'verification': 'pregame_official_final'}, {'date': '20260916', 'away': 'CHW', 'home': 'CLE', 'game_number': 1, 'predicted_team': 'CLE', 'actual_winner': 'CLE', 'actual_margin': 3, 'raw_pick_probability': 0.556513, 'artifact': '20260916_CHW@CLE.json', 'verification': 'pregame_official_final'}, {'date': '20260915', 'away': 'CHW', 'home': 'CLE', 'game_number': 1, 'predicted_team': 'CHW', 'actual_winner': 'CLE', 'actual_margin': 1, 'raw_pick_probability': 0.544573, 'artifact': '20260915_CHW@CLE.json', 'verification': 'pregame_official_final'}, {'date': '20260914', 'away': 'CHW', 'home': 'CLE', 'game_number': 1, 'predicted_team': 'CLE', 'actual_winner': 'CHW', 'actual_margin': 4, 'raw_pick_probability': 0.505654, 'artifact': '20260914_CHW@CLE.json', 'verification': 'pregame_official_final'}, {'date': '20260809', 'away': 'CLE', 'home': 'CHW', 'game_number': 1, 'predicted_team': 'CHW', 'actual_winner': 'CHW', 'actual_margin': 2, 'raw_pick_probability': 0.56, 'artifact': '20260809_CLE@CHW.json', 'verification': 'pregame_official_final'}]}, 'guardrail_predicted_team': 'CLE', 'guardrail_opponent_team': 'CHW', 'output_pre_simulation_winner': 'CLE', 'output_opponent_team': 'CHW', 'simulation_score_winner': 'CLE', 'final_score_winner': 'CLE', 'pre_simulation_winner': 'CLE', 'winner_flipped_by_simulation': False, 'simulation_would_flip_winner': False}, 'hard_flip_suppressed': False, 'flip_authority': 'caps_confidence_and_shifts_runs_only'} | ||||
| PASS | metadata | DATE_PARSE | Date is valid ISO format: 2026-10-05. | |||||
| PASS | metadata | FILENAME_GAME_ID_MATCH | Filename contains game_id: filename=20261005_CHW@CLE__20261006T013855Z, game_id=20261005_CHW@CLE. | |||||
| PASS | metadata | FILENAME_TEAM_MATCH | Filename teams match JSON teams: CHW@CLE. | |||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | H2H base feature is implemented and its runtime trace passed. | {'method': 'h2h_net_margin_monotonic_v1', 'available': True, 'sample_size': 5, 'sample_weight': 0.0577, 'home_net_margin': -5.0, 'absolute_net_margin': 5.0, 'home_average_margin': -1.0, 'home_run_delta': -0.0288, 'away_run_delta': 0.0288, 'evidence': [{'game_id': None, 'home_margin': 3.0}, {'game_id': None, 'home_margin': 1.0}, {'game_id': None, 'home_margin': -4.0}, {'game_id': None, 'home_margin': -2.0}, {'game_id': None, 'home_margin': -3.0}], 'adaptive_parameters': {'h2h.history_limit': 5, 'h2h.maximum_weight': 0.15, 'h2h.prior_games': 8.0, 'h2h.maximum_total_shift': 0.65}} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Score distribution widening is implemented and its runtime trace passed. | {'most_likely': [{'home_runs': 5, 'away_runs': 4, 'probability': 0.01744160494745018}, {'home_runs': 4, 'away_runs': 4, 'probability': 0.017375707797229457}, {'home_runs': 5, 'away_runs': 5, 'probability': 0.017334799164934776}, {'home_runs': 4, 'away_runs': 5, 'probability': 0.017269305543902796}, {'home_runs': 5, 'away_runs': 3, 'probability': 0.015876983281940128}], 'home_distribution': {'0': 0.048314403764278285, '1': 0.07175173601017976, '2': 0.09661848868951951, '3': 0.11796688312224266, '4': 0.13059664125373613, '5': 0.13109192735013284, '6': 0.11931414339498507, '7': 0.09846456002099437, '8': 0.07367836837057504, '9': 0.04998872879225278, '10': 0.030752202373672564, '11': 0.017153486031480765, '12': 0.008675621581975525, '13': 0.003978513588860975, '14': 0.0016542956551136854}, 'away_distribution': {'0': 0.05009797024117762, '1': 0.07431848632840023, '2': 0.0997441633368908, '3': 0.12111335612248927, '4': 0.13304865753377382, '5': 0.13223391794855024, '6': 0.11890199614517424, '7': 0.09672736041242856, '8': 0.07119072868340738, '9': 0.0474036137658919, '10': 0.028557052144400165, '11': 0.015564286235275058, '12': 0.007674656641990396, '13': 0.003423754460150115}, 'model': 'overdispersed_score_distribution', 'variance_multiplier': 2.25, 'variance_floor': 2.75, 'roadmap_status': 'implemented_above_requested_1.4x'} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Season/recent-form quality blend is implemented and its runtime trace passed. | {'method': 'season_recent_quality_blend_v2_adaptive', 'recent_window': 10, 'season_quality_edge': -0.2685, 'recent_quality_edge': 0.04, 'season_weight': 0.65, 'recent_weight': 0.35, 'recent_reliability': 1.0, 'alignment': 'conflict', 'blended_quality_edge': -0.1605} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Simulation flip control is implemented and its runtime trace passed. | {'pre_simulation_score': {'away_runs': 4, 'home_runs': 5, 'score_text': 'CHW 4 - 5 CLE', 'winner': 'CLE'}, 'final_simulation_score': {'away_runs': 4, 'home_runs': 5, 'score_text': 'CHW 4 - 5 CLE', 'winner': 'CLE'}, '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.049, 'recent_form_edge_home_minus_away': -0.03, 'winner_direction': 'home', 'thresholds': {'pitcher_matchup': 0.35, 'recent_form': 0.75}}, 'margin_widening_capped': False, 'simulation_winner_agrees': True, 'away_run_delta': 0, 'home_run_delta': 0, 'total_run_delta': 0, 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_usage': 'organic_simulation_realized_target', 'final_prediction_source': 'stable_final_prediction_policy', 'final_decision_policy': {'policy_version': 'model_target_authoritative_simulation_realizes_v3', 'away_runs': 4, 'home_runs': 5, 'winner': 'CLE', 'model_winner': 'CLE', 'simulation_winner': 'CLE', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 2, 'published_winner': 'CLE', 'published_winner_draw_share': 1.0, 'draw_majority_team': 'CLE', 'published_winner_is_draw_majority': True, 'sampling': 'target_conditioned_selection', 'is_unbiased_probability_sample': False, 'note': 'Draw shares are target-conditioned and diagnostic. A published winner holding a minority share is recorded, not suppressed.'}, 'simulation_score_enabled': True, 'independent_margin_support': False, 'margin_widening_capped': False, 'model_margin': 1, 'simulation_margin': 1, 'simulation_usage': 'organic_simulation_realized_target', 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_realized_target': True, 'model_score': {'away_runs': 4, 'home_runs': 5}, 'simulation_score': {'away_runs': 4, 'home_runs': 5}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 1, 'final_margin': 1, 'winner_quality_edge': -0.1605, 'winner': 'CLE', 'score_reviewed': {'away_runs': 4, 'home_runs': 5, 'source': 'enhanced_prediction.pre_simulation_target'}, 'reason': 'published margin is directionally supported or within review threshold'}} | ||||
| PASS | pipeline | PIPELINE_VERSION | Prediction pipeline version is current: enhanced_game_prediction_v4_continuous_learning__player_form_v3_5_10_season. | |||||
| PASS | pitch_by_pitch | PITCH_DETAIL_SANITY | Pitch-by-pitch speeds and zones are within sanity ranges. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | away pitcher pitch-by-pitch count matches pitch_count_summary total: 143. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | home pitcher pitch-by-pitch count matches pitch_count_summary total: 144. | |||||
| PASS | pitch_count | simulation | CHW | PITCH_COUNT_PITCHER_MATCH | CHW pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | CHW | PITCH_COUNT_TOTAL_MATCH | CHW pitch_count_summary total, row sum, and pitching total all match: 143. | |||
| PASS | pitch_count | simulation | CLE | PITCH_COUNT_PITCHER_MATCH | CLE pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | CLE | PITCH_COUNT_TOTAL_MATCH | CLE pitch_count_summary total, row sum, and pitching total all match: 144. | |||
| PASS | pitcher_opponent_strength | PITCHER_OPPONENT_STRENGTH_BOUNDS | Pitcher-opponent adjustment stayed inside supported bounds. | |||||
| PASS | pitching | PITCHER_APPEARANCE_COHERENT | All 7 pitchers in the box actually appeared. | |||||
| PASS | pitching | PUBLISHED_PITCHER_LINES_MATCH_BOX | Published pitcher lines cover the outs the box recorded. | |||||
| PASS | pitching | current | CHW | PITCHING_REALISM | current:CHW pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | CHW | STARTER_PRESENT | current:CHW includes a starter/opener role. | |||
| PASS | pitching | current | CLE | PITCHING_REALISM | current:CLE pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | CLE | STARTER_PRESENT | current:CLE includes a starter/opener role. | |||
| PASS | pitching | simulation | CHW | PITCHING_REALISM | simulation:CHW pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | CHW | STARTER_PRESENT | simulation:CHW includes a starter/opener role. | |||
| PASS | pitching | simulation | CLE | PITCHING_REALISM | simulation:CLE pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | CLE | STARTER_PRESENT | simulation:CLE includes a starter/opener role. | |||
| PASS | pitching_totals | current | CHW | PITCHING_TOTALS_SUM | current:CHW pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | current | CHW | PITCHING_TOTALS_SUM | current:CHW pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | current | CLE | PITCHING_TOTALS_SUM | current:CLE pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | CLE | PITCHING_TOTALS_SUM | current:CLE pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | CHW | PITCHING_TOTALS_SUM | simulation:CHW pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | simulation | CHW | PITCHING_TOTALS_SUM | simulation:CHW pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | CLE | PITCHING_TOTALS_SUM | simulation:CLE pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | CLE | PITCHING_TOTALS_SUM | simulation:CLE pitching totals equal summed pitcher lines for available fields. | |||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Enhanced AI score matches enhanced target: CHW 4 - 5 CLE. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation score matches final score: CHW 4 - 5 CLE. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation winner matches final score: CLE wins 5-4. | |||||
| PASS | prediction_comparison | SIMULATION_WINNER_FLIP_TRACE | Simulation decision is explicit: model=CLE, simulation=CLE, published=CLE. | |||||
| PASS | probability | CONFIDENCE_RANGE | Enhanced target confidence is in range: 0.518. | |||||
| PASS | recent_form | RECENT_FORM_RANGE | away recent_form record is coherent: 7/10 (0.700). | |||||
| PASS | recent_form | RECENT_FORM_RANGE | home recent_form record is coherent: 8/10 (0.800). | |||||
| PASS | report | REPORT_COMPLETE | All findings, passes, warnings, errors, and critical issues are rendered in the single HTML report. | |||||
| PASS | schema | SCHEMA_ROOTS_PRESENT | Both major schemas are present: game, scoring_simulation, game_summary, prediction_comparison. | |||||
| PASS | score | GAME_SUMMARY_MATCH | game_summary agrees with the published score (game.final_prediction): CLE wins 5-4. | |||||
| PASS | score | SCORE_NO_TIE | Final score has a clear winner: CLE wins 4-5. | |||||
| PASS | score | SCORE_STEP_FINAL_MATCH | simulation_result step matches final score: 4-5. | |||||
| PASS | score | SCORE_STEP_ORDER | Score evolution contains the expected ordered steps. | |||||
| PASS | score | TARGET_SCORE_DRIFT | Final score is close to enhanced target: target 4-5, final 4-5 (delta 0). | |||||
| PASS | score | TOTAL_RUNS_MATCH | total_runs field matches final score total: 9. | |||||
| PASS | score | WINNER_FIELD_MATCH | winner field is consistent: CLE wins 5-4. | |||||
| PASS | score | cross-schema | CURRENT_SCORE_MATCHES_SIM | game.predicted_runs matches scoring_simulation.final_score. | ||||
| PASS | team_recent_performance | current | CHW | RECENT_FORM_RANGE | CHW recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | CHW | TEAM_RECENT_RECORD | CHW wins and win_pct agree: 7/10 = 0.700. | |||
| PASS | team_recent_performance | current | CLE | RECENT_FORM_RANGE | CLE recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | CLE | TEAM_RECENT_RECORD | CLE wins and win_pct agree: 7/10 = 0.700. |
Passed checks
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| PASS | batting | current | CHW | BATTING_REALISM | current:CHW hitter lines pass basic baseball constraints. | |||
| PASS | batting | current | CLE | BATTING_REALISM | current:CLE hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | CHW | BATTING_REALISM | simulation:CHW hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | CLE | BATTING_REALISM | simulation:CLE hitter lines pass basic baseball constraints. | |||
| PASS | batting_totals | current | CHW | BATTING_TOTALS_SUM | current:CHW batting totals equal summed player lines. | |||
| PASS | batting_totals | current | CLE | BATTING_TOTALS_SUM | current:CLE batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | CHW | BATTING_TOTALS_SUM | simulation:CHW batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | CLE | BATTING_TOTALS_SUM | simulation:CLE batting totals equal summed player lines. | |||
| PASS | boxscore_crosscheck | simulation | CHW | BAT_PITCH_BB_MATCH | simulation:CHW batting walks match CLE pitching: 3. | |||
| PASS | boxscore_crosscheck | simulation | CHW | BAT_PITCH_HR_MATCH | simulation:CHW batting home runs match CLE pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | CHW | BAT_PITCH_H_MATCH | simulation:CHW batting hits match CLE pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | CHW | BAT_PITCH_SO_MATCH | simulation:CHW batting strikeouts match CLE pitching: 10. | |||
| PASS | boxscore_crosscheck | simulation | CHW | PA_BF_MATCH | simulation:CHW PA=37 matches CLE BF=37. | |||
| PASS | boxscore_crosscheck | simulation | CHW | RUNS_MATCH_FINAL | simulation:CHW runs match final score and opposing pitching runs: 4. | |||
| PASS | boxscore_crosscheck | simulation | CLE | BAT_PITCH_BB_MATCH | simulation:CLE batting walks match CHW pitching: 4. | |||
| PASS | boxscore_crosscheck | simulation | CLE | BAT_PITCH_HR_MATCH | simulation:CLE batting home runs match CHW pitching: 0. | |||
| PASS | boxscore_crosscheck | simulation | CLE | BAT_PITCH_H_MATCH | simulation:CLE batting hits match CHW pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | CLE | BAT_PITCH_SO_MATCH | simulation:CLE batting strikeouts match CHW pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | CLE | PA_BF_MATCH | simulation:CLE PA=36 matches CHW BF=36. | |||
| PASS | boxscore_crosscheck | simulation | CLE | RUNS_MATCH_FINAL | simulation:CLE runs match final score and opposing pitching runs: 5. | |||
| PASS | confidence_calibration | CONFIDENCE_CALIBRATION_APPLIED | Empirical confidence blend verified: 0.540 -> 0.552 at weight 0.500. | {'method': 'empirical_hit_rate_weighted_v1', 'applied': True, 'reason': 'raw confidence blended with verified historical bucket hit rate', 'raw_confidence': 0.539822, 'sample_size': 821, 'empirical_hit_rate': 0.5639, 'empirical_weight': 0.5, 'blended_confidence': 0.551861, 'published_confidence': 0.518498, 'published_after_governors': True, 'governor_mode': 'shrinkage_not_clamp'} | ||||
| PASS | cross_schema | cross-schema | CHW | CURRENT_FINALIZED_MATCH_BOX | CHW current pitcher projected totals match final simulation pitching box score. | |||
| PASS | cross_schema | cross-schema | CLE | CURRENT_FINALIZED_MATCH_BOX | CLE current pitcher projected totals match final simulation pitching box score. | |||
| PASS | current_payload | current | CHW | CURRENT_LINEUP_SHAPE | CHW current lineup has 9 expected positions. | |||
| PASS | current_payload | current | CHW | CURRENT_MODEL_ZERO_FALLBACK | CHW current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | CHW | CURRENT_NAMES_PRESENT | CHW current hitter names are populated. | |||
| PASS | current_payload | current | CHW | CURRENT_PREDICTIONS_MATCH_FINALIZED | CHW hitter predictions mirror finalized stats. | |||
| PASS | current_payload | current | CLE | CURRENT_LINEUP_SHAPE | CLE current lineup has 9 expected positions. | |||
| PASS | current_payload | current | CLE | CURRENT_MODEL_ZERO_FALLBACK | CLE current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | CLE | CURRENT_NAMES_PRESENT | CLE current hitter names are populated. | |||
| PASS | current_payload | current | CLE | CURRENT_PREDICTIONS_MATCH_FINALIZED | CLE hitter predictions mirror finalized stats. | |||
| PASS | current_vs_final | cross-schema | CHW | CURRENT_FINALIZED_MATCH_BOX | CHW current finalized batting totals match final simulation box score. | |||
| PASS | current_vs_final | cross-schema | CHW | CURRENT_PLAYER_MATCH_BOX | CHW current finalized hitter lines mirror simulation box score. | |||
| PASS | current_vs_final | cross-schema | CLE | CURRENT_FINALIZED_MATCH_BOX | CLE current finalized batting totals match final simulation box score. | |||
| PASS | current_vs_final | cross-schema | CLE | CURRENT_PLAYER_MATCH_BOX | CLE current finalized hitter lines mirror simulation box score. | |||
| PASS | data_leakage | H2H_DATA_LEAKAGE | All head-to-head rows are dated before the prediction game date. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | Home + away win probabilities sum to approximately 1.0. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | away_win_probability is in [0,1]: 0.482. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | confidence is in [0,1]: 0.518. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | home_win_probability is in [0,1]: 0.518. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Final total runs 9 is reasonably close to low-score expected_total_runs 9.0. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Low-score analysis factors are non-negative. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Low-score probability/confidence are valid: 0.523/0.713. | |||||
| PASS | final_decision | FINAL_DECISION_POLICY | Final decision policy preserved model ownership of the winner. | |||||
| PASS | innings | GAME_ENDING_COHERENT | The game ends coherently for its score. | |||||
| PASS | innings | INNINGS_COUNT | inning_by_inning_summary contains 9 innings. | |||||
| PASS | innings | INNING_OUTS | Inning 9 home marked not_played with empty stats. | |||||
| PASS | innings | INNING_PLAY_SUMS | Detailed play totals match every half-inning line. | |||||
| PASS | innings | INNING_SEQUENCE | Inning numbers are sequential. | |||||
| PASS | innings | INNING_TOTAL_HITS | Inning hits match batting totals: CHW 7, CLE 7. | |||||
| PASS | innings | INNING_TOTAL_RUNS | Inning runs sum to final score: CHW 4 - CLE 5. | |||||
| PASS | kpi | LUNA_KPI_TRACE | Luna KPI trace coherent (no_promoted_kpis). | |||||
| PASS | matchup_recency | GUARDRAIL_FINAL_WINNER_SYNC | Guardrail predicted_team matches final predicted winner: CLE. | |||||
| PASS | matchup_recency | MATCHUP_RECENCY_GUARDRAIL | Matchup recency guardrail applied for CLE; cap=0.56, reasons=recent head-to-head is split and volatile; recent head-to-head margin does not support a strong repeat pick; a prior same-side pick already missed against the actual result. | {'applied': True, 'confidence_cap': 0.56, 'winner_flipped': False, 'reasons': ['recent head-to-head is split and volatile', 'recent head-to-head margin does not support a strong repeat pick', 'a prior same-side pick already missed against the actual result'], 'signals': {'predicted_team': 'CLE', 'opponent_team': 'CHW', 'h2h_net_margin': 0, 'opponent_breakout': False, 'opponent_blowout_win': False, 'split_recent_h2h': True, 'recent_h2h': [{'date': '2026-09-16', 'predicted_team_runs': 6, 'opponent_runs': 3, 'margin_for_predicted_team': 3, 'winner': 'CLE'}, {'date': '2026-09-15', 'predicted_team_runs': 7, 'opponent_runs': 6, 'margin_for_predicted_team': 1, 'winner': 'CLE'}, {'date': '2026-09-14', 'predicted_team_runs': 3, 'opponent_runs': 7, 'margin_for_predicted_team': -4, 'winner': 'CHW'}], 'prediction_memory': {'available': True, 'reason': 'verified_prior_matchup_predictions_available', 'verification_policy': 'pregame_artifact_matched_to_one_official_final', 'verified_outcome_count': 12, 'consecutive_same_pick_count': 0, 'same_pick_actual_loss_count': 1, 'same_pick_blowout_loss_count': 0, 'prior_predictions': [{'date': '20261003', 'away': 'CHW', 'home': 'CLE', 'game_number': 1, 'predicted_team': 'CHW', 'actual_winner': 'CHW', 'actual_margin': 3, 'raw_pick_probability': 0.5229980000000001, 'artifact': '20261003_CHW@CLE.json', 'verification': 'pregame_official_final'}, {'date': '20260916', 'away': 'CHW', 'home': 'CLE', 'game_number': 1, 'predicted_team': 'CLE', 'actual_winner': 'CLE', 'actual_margin': 3, 'raw_pick_probability': 0.556513, 'artifact': '20260916_CHW@CLE.json', 'verification': 'pregame_official_final'}, {'date': '20260915', 'away': 'CHW', 'home': 'CLE', 'game_number': 1, 'predicted_team': 'CHW', 'actual_winner': 'CLE', 'actual_margin': 1, 'raw_pick_probability': 0.544573, 'artifact': '20260915_CHW@CLE.json', 'verification': 'pregame_official_final'}, {'date': '20260914', 'away': 'CHW', 'home': 'CLE', 'game_number': 1, 'predicted_team': 'CLE', 'actual_winner': 'CHW', 'actual_margin': 4, 'raw_pick_probability': 0.505654, 'artifact': '20260914_CHW@CLE.json', 'verification': 'pregame_official_final'}, {'date': '20260809', 'away': 'CLE', 'home': 'CHW', 'game_number': 1, 'predicted_team': 'CHW', 'actual_winner': 'CHW', 'actual_margin': 2, 'raw_pick_probability': 0.56, 'artifact': '20260809_CLE@CHW.json', 'verification': 'pregame_official_final'}]}, 'guardrail_predicted_team': 'CLE', 'guardrail_opponent_team': 'CHW', 'output_pre_simulation_winner': 'CLE', 'output_opponent_team': 'CHW', 'simulation_score_winner': 'CLE', 'final_score_winner': 'CLE', 'pre_simulation_winner': 'CLE', 'winner_flipped_by_simulation': False, 'simulation_would_flip_winner': False}, 'hard_flip_suppressed': False, 'flip_authority': 'caps_confidence_and_shifts_runs_only'} | ||||
| PASS | metadata | DATE_PARSE | Date is valid ISO format: 2026-10-05. | |||||
| PASS | metadata | FILENAME_GAME_ID_MATCH | Filename contains game_id: filename=20261005_CHW@CLE__20261006T013855Z, game_id=20261005_CHW@CLE. | |||||
| PASS | metadata | FILENAME_TEAM_MATCH | Filename teams match JSON teams: CHW@CLE. | |||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | H2H base feature is implemented and its runtime trace passed. | {'method': 'h2h_net_margin_monotonic_v1', 'available': True, 'sample_size': 5, 'sample_weight': 0.0577, 'home_net_margin': -5.0, 'absolute_net_margin': 5.0, 'home_average_margin': -1.0, 'home_run_delta': -0.0288, 'away_run_delta': 0.0288, 'evidence': [{'game_id': None, 'home_margin': 3.0}, {'game_id': None, 'home_margin': 1.0}, {'game_id': None, 'home_margin': -4.0}, {'game_id': None, 'home_margin': -2.0}, {'game_id': None, 'home_margin': -3.0}], 'adaptive_parameters': {'h2h.history_limit': 5, 'h2h.maximum_weight': 0.15, 'h2h.prior_games': 8.0, 'h2h.maximum_total_shift': 0.65}} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Score distribution widening is implemented and its runtime trace passed. | {'most_likely': [{'home_runs': 5, 'away_runs': 4, 'probability': 0.01744160494745018}, {'home_runs': 4, 'away_runs': 4, 'probability': 0.017375707797229457}, {'home_runs': 5, 'away_runs': 5, 'probability': 0.017334799164934776}, {'home_runs': 4, 'away_runs': 5, 'probability': 0.017269305543902796}, {'home_runs': 5, 'away_runs': 3, 'probability': 0.015876983281940128}], 'home_distribution': {'0': 0.048314403764278285, '1': 0.07175173601017976, '2': 0.09661848868951951, '3': 0.11796688312224266, '4': 0.13059664125373613, '5': 0.13109192735013284, '6': 0.11931414339498507, '7': 0.09846456002099437, '8': 0.07367836837057504, '9': 0.04998872879225278, '10': 0.030752202373672564, '11': 0.017153486031480765, '12': 0.008675621581975525, '13': 0.003978513588860975, '14': 0.0016542956551136854}, 'away_distribution': {'0': 0.05009797024117762, '1': 0.07431848632840023, '2': 0.0997441633368908, '3': 0.12111335612248927, '4': 0.13304865753377382, '5': 0.13223391794855024, '6': 0.11890199614517424, '7': 0.09672736041242856, '8': 0.07119072868340738, '9': 0.0474036137658919, '10': 0.028557052144400165, '11': 0.015564286235275058, '12': 0.007674656641990396, '13': 0.003423754460150115}, 'model': 'overdispersed_score_distribution', 'variance_multiplier': 2.25, 'variance_floor': 2.75, 'roadmap_status': 'implemented_above_requested_1.4x'} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Season/recent-form quality blend is implemented and its runtime trace passed. | {'method': 'season_recent_quality_blend_v2_adaptive', 'recent_window': 10, 'season_quality_edge': -0.2685, 'recent_quality_edge': 0.04, 'season_weight': 0.65, 'recent_weight': 0.35, 'recent_reliability': 1.0, 'alignment': 'conflict', 'blended_quality_edge': -0.1605} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Simulation flip control is implemented and its runtime trace passed. | {'pre_simulation_score': {'away_runs': 4, 'home_runs': 5, 'score_text': 'CHW 4 - 5 CLE', 'winner': 'CLE'}, 'final_simulation_score': {'away_runs': 4, 'home_runs': 5, 'score_text': 'CHW 4 - 5 CLE', 'winner': 'CLE'}, '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.049, 'recent_form_edge_home_minus_away': -0.03, 'winner_direction': 'home', 'thresholds': {'pitcher_matchup': 0.35, 'recent_form': 0.75}}, 'margin_widening_capped': False, 'simulation_winner_agrees': True, 'away_run_delta': 0, 'home_run_delta': 0, 'total_run_delta': 0, 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_usage': 'organic_simulation_realized_target', 'final_prediction_source': 'stable_final_prediction_policy', 'final_decision_policy': {'policy_version': 'model_target_authoritative_simulation_realizes_v3', 'away_runs': 4, 'home_runs': 5, 'winner': 'CLE', 'model_winner': 'CLE', 'simulation_winner': 'CLE', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 2, 'published_winner': 'CLE', 'published_winner_draw_share': 1.0, 'draw_majority_team': 'CLE', 'published_winner_is_draw_majority': True, 'sampling': 'target_conditioned_selection', 'is_unbiased_probability_sample': False, 'note': 'Draw shares are target-conditioned and diagnostic. A published winner holding a minority share is recorded, not suppressed.'}, 'simulation_score_enabled': True, 'independent_margin_support': False, 'margin_widening_capped': False, 'model_margin': 1, 'simulation_margin': 1, 'simulation_usage': 'organic_simulation_realized_target', 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_realized_target': True, 'model_score': {'away_runs': 4, 'home_runs': 5}, 'simulation_score': {'away_runs': 4, 'home_runs': 5}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 1, 'final_margin': 1, 'winner_quality_edge': -0.1605, 'winner': 'CLE', 'score_reviewed': {'away_runs': 4, 'home_runs': 5, 'source': 'enhanced_prediction.pre_simulation_target'}, 'reason': 'published margin is directionally supported or within review threshold'}} | ||||
| PASS | pipeline | PIPELINE_VERSION | Prediction pipeline version is current: enhanced_game_prediction_v4_continuous_learning__player_form_v3_5_10_season. | |||||
| PASS | pitch_by_pitch | PITCH_DETAIL_SANITY | Pitch-by-pitch speeds and zones are within sanity ranges. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | away pitcher pitch-by-pitch count matches pitch_count_summary total: 143. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | home pitcher pitch-by-pitch count matches pitch_count_summary total: 144. | |||||
| PASS | pitch_count | simulation | CHW | PITCH_COUNT_PITCHER_MATCH | CHW pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | CHW | PITCH_COUNT_TOTAL_MATCH | CHW pitch_count_summary total, row sum, and pitching total all match: 143. | |||
| PASS | pitch_count | simulation | CLE | PITCH_COUNT_PITCHER_MATCH | CLE pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | CLE | PITCH_COUNT_TOTAL_MATCH | CLE pitch_count_summary total, row sum, and pitching total all match: 144. | |||
| PASS | pitcher_opponent_strength | PITCHER_OPPONENT_STRENGTH_BOUNDS | Pitcher-opponent adjustment stayed inside supported bounds. | |||||
| PASS | pitching | PITCHER_APPEARANCE_COHERENT | All 7 pitchers in the box actually appeared. | |||||
| PASS | pitching | PUBLISHED_PITCHER_LINES_MATCH_BOX | Published pitcher lines cover the outs the box recorded. | |||||
| PASS | pitching | current | CHW | PITCHING_REALISM | current:CHW pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | CHW | STARTER_PRESENT | current:CHW includes a starter/opener role. | |||
| PASS | pitching | current | CLE | PITCHING_REALISM | current:CLE pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | CLE | STARTER_PRESENT | current:CLE includes a starter/opener role. | |||
| PASS | pitching | simulation | CHW | PITCHING_REALISM | simulation:CHW pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | CHW | STARTER_PRESENT | simulation:CHW includes a starter/opener role. | |||
| PASS | pitching | simulation | CLE | PITCHING_REALISM | simulation:CLE pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | CLE | STARTER_PRESENT | simulation:CLE includes a starter/opener role. | |||
| PASS | pitching_totals | current | CHW | PITCHING_TOTALS_SUM | current:CHW pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | current | CHW | PITCHING_TOTALS_SUM | current:CHW pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | current | CLE | PITCHING_TOTALS_SUM | current:CLE pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | CLE | PITCHING_TOTALS_SUM | current:CLE pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | CHW | PITCHING_TOTALS_SUM | simulation:CHW pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | simulation | CHW | PITCHING_TOTALS_SUM | simulation:CHW pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | CLE | PITCHING_TOTALS_SUM | simulation:CLE pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | CLE | PITCHING_TOTALS_SUM | simulation:CLE pitching totals equal summed pitcher lines for available fields. | |||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Enhanced AI score matches enhanced target: CHW 4 - 5 CLE. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation score matches final score: CHW 4 - 5 CLE. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation winner matches final score: CLE wins 5-4. | |||||
| PASS | prediction_comparison | SIMULATION_WINNER_FLIP_TRACE | Simulation decision is explicit: model=CLE, simulation=CLE, published=CLE. | |||||
| PASS | probability | CONFIDENCE_RANGE | Enhanced target confidence is in range: 0.518. | |||||
| PASS | recent_form | RECENT_FORM_RANGE | away recent_form record is coherent: 7/10 (0.700). | |||||
| PASS | recent_form | RECENT_FORM_RANGE | home recent_form record is coherent: 8/10 (0.800). | |||||
| PASS | report | REPORT_COMPLETE | All findings, passes, warnings, errors, and critical issues are rendered in the single HTML report. | |||||
| PASS | schema | SCHEMA_ROOTS_PRESENT | Both major schemas are present: game, scoring_simulation, game_summary, prediction_comparison. | |||||
| PASS | score | GAME_SUMMARY_MATCH | game_summary agrees with the published score (game.final_prediction): CLE wins 5-4. | |||||
| PASS | score | SCORE_NO_TIE | Final score has a clear winner: CLE wins 4-5. | |||||
| PASS | score | SCORE_STEP_FINAL_MATCH | simulation_result step matches final score: 4-5. | |||||
| PASS | score | SCORE_STEP_ORDER | Score evolution contains the expected ordered steps. | |||||
| PASS | score | TARGET_SCORE_DRIFT | Final score is close to enhanced target: target 4-5, final 4-5 (delta 0). | |||||
| PASS | score | TOTAL_RUNS_MATCH | total_runs field matches final score total: 9. | |||||
| PASS | score | WINNER_FIELD_MATCH | winner field is consistent: CLE wins 5-4. | |||||
| PASS | score | cross-schema | CURRENT_SCORE_MATCHES_SIM | game.predicted_runs matches scoring_simulation.final_score. | ||||
| PASS | team_recent_performance | current | CHW | RECENT_FORM_RANGE | CHW recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | CHW | TEAM_RECENT_RECORD | CHW wins and win_pct agree: 7/10 = 0.700. | |||
| PASS | team_recent_performance | current | CLE | RECENT_FORM_RANGE | CLE recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | CLE | TEAM_RECENT_RECORD | CLE wins and win_pct agree: 7/10 = 0.700. |
Info/context findings
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| INFO | score_reconciliation | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
Score evolution
| step | away_runs | home_runs | confidence | description |
|---|---|---|---|---|
| historical_ml | 4.052787417582998 | 4.657712402044706 | Base ML historical model prediction | |
| variance_applied | 4 | 5 | Deterministic baseline target (variance factor 1.0) | |
| enhanced_prediction | 4 | 5 | 0.518 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| kpi_layer | 4 | 5 | Savant KPI blend applied to the model target | |
| embedded_savant_run_environment | 4 | 5 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality | |
| fundamental_edge_target_review | 4 | 5 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments | |
| capped_target | 4 | 5 | Capped at max 12 realistic runs | |
| simulation_result | 4 | 5 | Final inning-by-inning simulation result |
Inning-by-inning linescore
| team | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | R | H |
|---|---|---|---|---|---|---|---|---|---|---|---|
| CHW | 0 | 1 | 0 | 0 | 3 | 0 | 0 | 0 | 0 | 4 | 7 |
| CLE | 0 | 2 | 0 | 0 | 0 | 0 | 3 | 0 | 0 | 5 | 7 |
Team totals - current + final simulation
| src | team | type | PA | AB | H | 2B | 3B | HR | RBI | R | BB | SO | SF | HBP | SB | CS | IP | ER | BF | Pitches |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| current | CHW | batting | 34 | 7 | 1 | 0 | 1 | 4 | 4 | 3 | 10 | 0 | 0 | 0 | 0 | |||||
| current | CHW | pitching | 7 | 0 | 5 | 4 | 7 | 8.0 | 4 | 0 | 0 | |||||||||
| current | CLE | batting | 32 | 7 | 1 | 0 | 0 | 5 | 5 | 4 | 7 | 0 | 0 | 0 | 0 | |||||
| current | CLE | pitching | 7 | 1 | 4 | 3 | 10 | 9.0 | 4 | 0 | 0 | |||||||||
| simulation | CHW | batting | 34 | 7 | 1 | 0 | 1 | 4 | 4 | 3 | 10 | 0 | 0 | |||||||
| simulation | CHW | pitching | 7 | 0 | 5 | 4 | 7 | 8.0 | 4 | 36 | 143 | |||||||||
| simulation | CLE | batting | 32 | 7 | 1 | 0 | 0 | 5 | 5 | 4 | 7 | 0 | 0 | |||||||
| simulation | CLE | pitching | 7 | 1 | 4 | 3 | 10 | 9.0 | 4 | 37 | 144 |
Batting lines - current + final simulation
| src | team | order | pos | name | PA | AB | H | 2B | 3B | HR | R | RBI | BB | SO | HBP | AVG |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| current | CHW | LF | Sam Antonacci | 0 | 5 | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 0.200 | |
| current | CHW | C | Kyle Teel | 0 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 | |
| current | CHW | 3B | Miguel Vargas | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 2 | 1 | 2 | 0 | 0.333 | |
| current | CHW | 1B | Munetaka Murakami | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.250 | |
| current | CHW | DH | Andrew Benintendi | 0 | 4 | 2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.500 | |
| current | CHW | CF | Tristan Peters | 0 | 3 | 1 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 0 | 0.333 | |
| current | CHW | RF | Braden Montgomery | 0 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 | |
| current | CHW | 2B | Chase Meidroth | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.250 | |
| current | CHW | SS | Colson Montgomery | 0 | 3 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 2 | 0 | 0.000 | |
| current | CLE | CF | Steven Kwan | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0.250 | |
| current | CLE | 3B | José Ramírez | 0 | 2 | 1 | 0 | 0 | 0 | 1 | 1 | 2 | 0 | 0 | 0.500 | |
| current | CLE | RF | Chase DeLauter | 0 | 3 | 2 | 0 | 0 | 0 | 1 | 1 | 1 | 0 | 0 | 0.667 | |
| current | CLE | DH | Jo Adell | 0 | 4 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0.000 | |
| current | CLE | 1B | Nathaniel Lowe | 0 | 4 | 2 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0.500 | |
| current | CLE | LF | Angel Martínez | 0 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.000 | |
| current | CLE | 2B | Travis Bazzana | 0 | 3 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0.000 | |
| current | CLE | C | Patrick Bailey | 0 | 4 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 2 | 0 | 0.000 | |
| current | CLE | SS | Brayan Rocchio | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.250 | |
| simulation | CHW | 1 | LF | Sam Antonacci | 5 | 5 | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 0.200 |
| simulation | CHW | 2 | C | Kyle Teel | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 |
| simulation | CHW | 3 | 3B | Miguel Vargas | 4 | 3 | 1 | 0 | 0 | 0 | 0 | 2 | 1 | 2 | 0 | 0.333 |
| simulation | CHW | 4 | 1B | Munetaka Murakami | 4 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.250 |
| simulation | CHW | 5 | DH | Andrew Benintendi | 4 | 4 | 2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.500 |
| simulation | CHW | 6 | CF | Tristan Peters | 4 | 3 | 1 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 0 | 0.333 |
| simulation | CHW | 7 | RF | Braden Montgomery | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 |
| simulation | CHW | 8 | 2B | Chase Meidroth | 4 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.250 |
| simulation | CHW | 9 | SS | Colson Montgomery | 4 | 3 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 2 | 0 | 0.000 |
| simulation | CLE | 1 | CF | Steven Kwan | 4 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0.250 |
| simulation | CLE | 2 | 3B | José Ramírez | 4 | 2 | 1 | 0 | 0 | 0 | 1 | 1 | 2 | 0 | 0 | 0.500 |
| simulation | CLE | 3 | RF | Chase DeLauter | 4 | 3 | 2 | 0 | 0 | 0 | 1 | 1 | 1 | 0 | 0 | 0.667 |
| simulation | CLE | 4 | DH | Jo Adell | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0.000 |
| simulation | CLE | 5 | 1B | Nathaniel Lowe | 4 | 4 | 2 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0.500 |
| simulation | CLE | 6 | LF | Angel Martínez | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.000 |
| simulation | CLE | 7 | 2B | Travis Bazzana | 4 | 3 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0.000 |
| simulation | CLE | 8 | C | Patrick Bailey | 4 | 4 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 2 | 0 | 0.000 |
| simulation | CLE | 9 | SS | Brayan Rocchio | 4 | 4 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.250 |
Pitching lines - current + final simulation
| src | team | order | name | role | IP | H | R | ER | BB | SO | HR | BF | Pitches | sim_ERA | season_ERA | season_WHIP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| current | CHW | 1 | Anthony Kay | Starter | 4.2 | 3 | 2 | 1 | 2 | 3 | 0 | 0 | 0 | 1.93 | 4.39 | 1.38 |
| current | CHW | 6 | Sean Newcomb | Middle Reliever (High Leverage) | 2.0 | 3 | 3 | 3 | 2 | 2 | 0 | 0 | 0 | 13.50 | 2.77 | 1.11 |
| current | CHW | 7 | Jordan Hicks | Setup Man | 1.1 | 1 | 0 | 0 | 0 | 2 | 0 | 0 | 0 | 0.00 | 3.83 | 1.50 |
| current | CLE | 1 | Gavin Williams | Starter | 5.2 | 6 | 4 | 4 | 3 | 7 | 1 | 0 | 0 | 6.35 | 3.76 | 1.11 |
| current | CLE | 2 | Tim Herrin | Middle Reliever | 1.0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.00 | 2.97 | 1.28 |
| current | CLE | 3 | Daniel Espino | Middle Reliever (High Leverage) | 1.0 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.00 | 3.94 | 1.31 |
| current | CLE | 4 | Erik Sabrowski | Middle Reliever (High Leverage) | 1.1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.00 | 2.52 | 1.06 |
| simulation | CHW | 1 | Anthony Kay | Starter | 4.2 | 3 | 2 | 1 | 2 | 3 | 0 | 20 | 70 | 1.93 | 4.39 | 1.38 |
| simulation | CHW | 2 | Sean Newcomb | Middle Reliever (High Leverage) | 2.0 | 3 | 3 | 3 | 2 | 2 | 0 | 11 | 51 | 13.50 | 2.77 | 1.11 |
| simulation | CHW | 3 | Jordan Hicks | Setup Man | 1.1 | 1 | 0 | 0 | 0 | 2 | 0 | 5 | 22 | 0.00 | 3.83 | 1.50 |
| simulation | CLE | 1 | Gavin Williams | Starter | 5.2 | 6 | 4 | 4 | 3 | 7 | 1 | 26 | 105 | 6.35 | 3.76 | 1.11 |
| simulation | CLE | 2 | Tim Herrin | Middle Reliever | 1.0 | 0 | 0 | 0 | 0 | 1 | 0 | 3 | 9 | 0.00 | 2.97 | 1.28 |
| simulation | CLE | 3 | Daniel Espino | Middle Reliever (High Leverage) | 1.0 | 1 | 0 | 0 | 0 | 1 | 0 | 4 | 18 | 0.00 | 3.94 | 1.31 |
| simulation | CLE | 4 | Erik Sabrowski | Middle Reliever (High Leverage) | 1.1 | 0 | 0 | 0 | 0 | 1 | 0 | 4 | 12 | 0.00 | 2.52 | 1.06 |
Pitch count summary
| team | pitcher | role | IP | R | H | BB | SO | BF | Pitches |
|---|---|---|---|---|---|---|---|---|---|
| CHW | Anthony Kay | Starter | 4.2 | 2 | 3 | 2 | 3 | 20 | 70 |
| CHW | Sean Newcomb | Middle Reliever (High Leverage) | 2.0 | 3 | 3 | 2 | 2 | 11 | 51 |
| CHW | Jordan Hicks | Setup Man | 1.1 | 0 | 1 | 0 | 2 | 5 | 22 |
| CLE | Gavin Williams | Starter | 5.2 | 4 | 6 | 3 | 7 | 26 | 105 |
| CLE | Tim Herrin | Middle Reliever | 1.0 | 0 | 0 | 0 | 1 | 3 | 9 |
| CLE | Daniel Espino | Middle Reliever (High Leverage) | 1.0 | 0 | 1 | 0 | 1 | 4 | 18 |
| CLE | Erik Sabrowski | Middle Reliever (High Leverage) | 1.1 | 0 | 0 | 0 | 1 | 4 | 12 |
Audit rule catalog
| rule | status | critical | error | warning | pass | description |
|---|---|---|---|---|---|---|
| BATTING_REALISM | good | 0 | 0 | 0 | 4 | Player/team batting lines obey baseball constraints. |
| BATTING_TOTALS_SUM | good | 0 | 0 | 0 | 4 | Team batting totals equal the sum of player batting lines. |
| BAT_PITCH_BB_MATCH | good | 0 | 0 | 0 | 2 | Batting walks match opposing pitching walks allowed. |
| BAT_PITCH_HR_MATCH | good | 0 | 0 | 0 | 2 | Batting home runs match opposing pitching home runs allowed. |
| BAT_PITCH_H_MATCH | good | 0 | 0 | 0 | 2 | Batting hits match opposing pitching hits allowed. |
| BAT_PITCH_SO_MATCH | good | 0 | 0 | 0 | 2 | Batting strikeouts match opposing pitching strikeouts. |
| CONFIDENCE_CALIBRATION_APPLIED | good | 0 | 0 | 0 | 1 | Empirical confidence blending uses the requested sample weight and remains between raw confidence and empirical hit rate. |
| CONFIDENCE_RANGE | good | 0 | 0 | 0 | 5 | Confidence values are between 0 and 1. |
| CURRENT_FINALIZED_MATCH_BOX | good | 0 | 0 | 0 | 4 | Current finalized player totals agree with final simulation box score unless model/simulation sources are separated. |
| CURRENT_LINEUP_SHAPE | good | 0 | 0 | 0 | 2 | Current predicted_performance contains a plausible 9-player lineup. |
| CURRENT_MODEL_ZERO_FALLBACK | good | 0 | 0 | 0 | 2 | Current model payload did not rely too heavily on all-zero model predictions. |
| CURRENT_NAMES_PRESENT | good | 0 | 0 | 0 | 2 | Current predicted_performance has usable player names. |
| CURRENT_PITCHER_DUPLICATION | not triggered | 0 | 0 | 0 | 0 | Pitcher lists duplicated across current sections are detected and reconciled. |
| CURRENT_PLAYER_MATCH_BOX | good | 0 | 0 | 0 | 2 | Current finalized hitter lines mirror the simulation box score unless model/simulation sources are separated. |
| CURRENT_PREDICTIONS_MATCH_FINALIZED | good | 0 | 0 | 0 | 2 | Current hitter predictions mirror finalized stats. |
| CURRENT_SCORE_MATCHES_SIM | good | 0 | 0 | 0 | 1 | game.predicted_runs is either synced to simulation or paired with game.simulation_runs. |
| DATE_PARSE | good | 0 | 0 | 0 | 1 | Game date can be parsed as an ISO date. |
| FILENAME_GAME_ID_MATCH | good | 0 | 0 | 0 | 1 | Filename and game_id identify the same game. |
| FILENAME_TEAM_MATCH | good | 0 | 0 | 0 | 1 | Filename teams match the teams inside the JSON. |
| FINAL_DECISION_POLICY | good | 0 | 0 | 0 | 1 | One organic simulation cannot replace a disagreeing model winner. |
| GAME_ENDING_COHERENT | good | 0 | 0 | 0 | 1 | The inning line ends the way a real game with the published score ends. |
| GAME_SUMMARY_MATCH | good | 0 | 0 | 0 | 1 | game_summary text agrees with final score. |
| GUARDRAIL_FINAL_WINNER_SYNC | good | 0 | 0 | 0 | 1 | Guardrail trace predicted_team matches the final predicted winner. |
| H2H_DATA_LEAKAGE | good | 0 | 0 | 0 | 1 | Head-to-head history does not include same-day or future games in pregame mode. |
| INNINGS_COUNT | good | 0 | 0 | 0 | 1 | Inning count is valid for MLB. |
| INNING_OUTS | good | 0 | 0 | 0 | 1 | Each played half inning has valid outs. |
| INNING_PLAY_SUMS | good | 0 | 0 | 0 | 1 | Detailed plays agree with inning runs, hits, outs, and pitches. |
| INNING_SEQUENCE | good | 0 | 0 | 0 | 1 | Innings are sequential and unique. |
| INNING_TOTAL_HITS | good | 0 | 0 | 0 | 1 | Inning hits sum to batting team hits. |
| INNING_TOTAL_RUNS | good | 0 | 0 | 0 | 1 | Inning runs sum to final score. |
| LOW_SCORE_ANALYSIS | good | 0 | 0 | 0 | 3 | Low-score probability factors are valid and directionally consistent. |
| LUNA_KPI_TRACE | good | 0 | 0 | 0 | 1 | Promoted Luna KPIs are traced per hitter and the per-game totals agree. |
| MATCHUP_RECENCY_GUARDRAIL | good | 0 | 0 | 0 | 1 | Repeat picks are capped when recent same-matchup results contradict high confidence. |
| OPTIMIZATION_ROADMAP_STATUS | good | 0 | 0 | 0 | 4 | H2H, score-distribution, simulation-flip, and recent-form roadmap signals are explicitly traced and satisfy their configured safeguards. |
| PA_BF_MATCH | good | 0 | 0 | 0 | 2 | Team plate appearances match opposing batters faced. |
| PIPELINE_VERSION | good | 0 | 0 | 0 | 1 | Prediction artifacts identify the stable pipeline version that created them. |
| PITCHER_APPEARANCE_COHERENT | good | 0 | 0 | 0 | 1 | Every pitcher in the box actually appeared: no 0-inning 0-batter line, and no pitch without a batter faced. |
| PITCHER_OPPONENT_STRENGTH_BOUNDS | good | 0 | 0 | 0 | 1 | Pitcher-opponent run factors and score deltas remain inside supported bounds. |
| PITCHING_REALISM | good | 0 | 0 | 0 | 4 | Pitcher/team pitching lines obey baseball constraints. |
| PITCHING_TOTALS_SUM | good | 0 | 0 | 0 | 8 | Team pitching totals equal the sum of pitcher lines. |
| PITCH_COUNT_PITCHER_MATCH | good | 0 | 0 | 0 | 2 | Pitch count summary pitcher rows agree with pitching box score. |
| PITCH_COUNT_TOTAL_MATCH | good | 0 | 0 | 0 | 4 | Pitch count summary totals match team pitching totals. |
| PITCH_DETAIL_SANITY | good | 0 | 0 | 0 | 1 | Pitch-by-pitch details have plausible values. |
| PREDICTION_COMPARISON_MATCH | good | 0 | 0 | 0 | 3 | prediction_comparison scores agree with target/final result. |
| PUBLISHED_PITCHER_LINES_MATCH_BOX | good | 0 | 0 | 0 | 1 | Published staff lines cover the outs the box recorded, extra innings included. |
| RECENT_FORM_RANGE | good | 0 | 0 | 0 | 4 | Recent-form metrics are within valid numeric ranges. |
| RECONCILIATION_PROPAGATION | info | 0 | 0 | 0 | 0 | When score_target_reconciliation is used, all final-facing sections are regenerated from the reconciled score. |
| REPORT_COMPLETE | good | 0 | 0 | 0 | 1 | Report includes every audit result in the all-findings table. |
| REPORT_CSV_EXPORT | not triggered | 0 | 0 | 0 | 0 | Optional CSV exports were written for summary and problem rows. |
| RUNS_MATCH_FINAL | good | 0 | 0 | 0 | 2 | Batting/pitching runs agree with final score. |
| SCHEMA_ROOTS_PRESENT | good | 0 | 0 | 0 | 1 | Expected JSON root sections exist and can be audited. |
| SCORE_NO_TIE | good | 0 | 0 | 0 | 1 | Final MLB score has a clear winner. |
| SCORE_STEP_FINAL_MATCH | good | 0 | 0 | 0 | 1 | score_evolution simulation_result matches final score. |
| SCORE_STEP_ORDER | good | 0 | 0 | 0 | 1 | Score evolution contains the expected ordered steps. |
| SIMULATION_WINNER_FLIP_TRACE | good | 0 | 0 | 0 | 1 | Simulation winner reversals are explicitly recorded. |
| STARTER_PRESENT | good | 0 | 0 | 0 | 4 | Pitching staff includes a starter or opener when expected. |
| SYNTHETIC_SCORE_PLAYS | not triggered | 0 | 0 | 0 | 0 | Score reconciliation must not inject synthetic run or out plays. |
| TARGET_SCORE_DRIFT | good | 0 | 0 | 0 | 1 | Final score does not drift too far from enhanced target. |
| TEAM_RECENT_RECORD | good | 0 | 0 | 0 | 2 | team_recent_performance wins and win_pct agree with games_analyzed. |
| TOTAL_RUNS_MATCH | good | 0 | 0 | 0 | 1 | total_runs equals away + home runs. |
| WINNER_FIELD_MATCH | good | 0 | 0 | 0 | 1 | winner field agrees with the final score. |
20261005_CHW@CLE
20261005_CHW@CLE__20261006T023851Z.json • 2026-10-05
Clean: no problems detected. Risk score: 0.
No action required
No critical, error, or warning findings were detected.
Problems table - exact rows
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|
All findings - complete audit trail
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| INFO | score_reconciliation | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. | |||||
| PASS | batting | current | CHW | BATTING_REALISM | current:CHW hitter lines pass basic baseball constraints. | |||
| PASS | batting | current | CLE | BATTING_REALISM | current:CLE hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | CHW | BATTING_REALISM | simulation:CHW hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | CLE | BATTING_REALISM | simulation:CLE hitter lines pass basic baseball constraints. | |||
| PASS | batting_totals | current | CHW | BATTING_TOTALS_SUM | current:CHW batting totals equal summed player lines. | |||
| PASS | batting_totals | current | CLE | BATTING_TOTALS_SUM | current:CLE batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | CHW | BATTING_TOTALS_SUM | simulation:CHW batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | CLE | BATTING_TOTALS_SUM | simulation:CLE batting totals equal summed player lines. | |||
| PASS | boxscore_crosscheck | simulation | CHW | BAT_PITCH_BB_MATCH | simulation:CHW batting walks match CLE pitching: 3. | |||
| PASS | boxscore_crosscheck | simulation | CHW | BAT_PITCH_HR_MATCH | simulation:CHW batting home runs match CLE pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | CHW | BAT_PITCH_H_MATCH | simulation:CHW batting hits match CLE pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | CHW | BAT_PITCH_SO_MATCH | simulation:CHW batting strikeouts match CLE pitching: 10. | |||
| PASS | boxscore_crosscheck | simulation | CHW | PA_BF_MATCH | simulation:CHW PA=37 matches CLE BF=37. | |||
| PASS | boxscore_crosscheck | simulation | CHW | RUNS_MATCH_FINAL | simulation:CHW runs match final score and opposing pitching runs: 4. | |||
| PASS | boxscore_crosscheck | simulation | CLE | BAT_PITCH_BB_MATCH | simulation:CLE batting walks match CHW pitching: 4. | |||
| PASS | boxscore_crosscheck | simulation | CLE | BAT_PITCH_HR_MATCH | simulation:CLE batting home runs match CHW pitching: 0. | |||
| PASS | boxscore_crosscheck | simulation | CLE | BAT_PITCH_H_MATCH | simulation:CLE batting hits match CHW pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | CLE | BAT_PITCH_SO_MATCH | simulation:CLE batting strikeouts match CHW pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | CLE | PA_BF_MATCH | simulation:CLE PA=36 matches CHW BF=36. | |||
| PASS | boxscore_crosscheck | simulation | CLE | RUNS_MATCH_FINAL | simulation:CLE runs match final score and opposing pitching runs: 5. | |||
| PASS | confidence_calibration | CONFIDENCE_CALIBRATION_APPLIED | Empirical confidence blend verified: 0.540 -> 0.552 at weight 0.500. | {'method': 'empirical_hit_rate_weighted_v1', 'applied': True, 'reason': 'raw confidence blended with verified historical bucket hit rate', 'raw_confidence': 0.539822, 'sample_size': 821, 'empirical_hit_rate': 0.5639, 'empirical_weight': 0.5, 'blended_confidence': 0.551861, 'published_confidence': 0.518498, 'published_after_governors': True, 'governor_mode': 'shrinkage_not_clamp'} | ||||
| PASS | cross_schema | cross-schema | CHW | CURRENT_FINALIZED_MATCH_BOX | CHW current pitcher projected totals match final simulation pitching box score. | |||
| PASS | cross_schema | cross-schema | CLE | CURRENT_FINALIZED_MATCH_BOX | CLE current pitcher projected totals match final simulation pitching box score. | |||
| PASS | current_payload | current | CHW | CURRENT_LINEUP_SHAPE | CHW current lineup has 9 expected positions. | |||
| PASS | current_payload | current | CHW | CURRENT_MODEL_ZERO_FALLBACK | CHW current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | CHW | CURRENT_NAMES_PRESENT | CHW current hitter names are populated. | |||
| PASS | current_payload | current | CHW | CURRENT_PREDICTIONS_MATCH_FINALIZED | CHW hitter predictions mirror finalized stats. | |||
| PASS | current_payload | current | CLE | CURRENT_LINEUP_SHAPE | CLE current lineup has 9 expected positions. | |||
| PASS | current_payload | current | CLE | CURRENT_MODEL_ZERO_FALLBACK | CLE current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | CLE | CURRENT_NAMES_PRESENT | CLE current hitter names are populated. | |||
| PASS | current_payload | current | CLE | CURRENT_PREDICTIONS_MATCH_FINALIZED | CLE hitter predictions mirror finalized stats. | |||
| PASS | current_vs_final | cross-schema | CHW | CURRENT_FINALIZED_MATCH_BOX | CHW current finalized batting totals match final simulation box score. | |||
| PASS | current_vs_final | cross-schema | CHW | CURRENT_PLAYER_MATCH_BOX | CHW current finalized hitter lines mirror simulation box score. | |||
| PASS | current_vs_final | cross-schema | CLE | CURRENT_FINALIZED_MATCH_BOX | CLE current finalized batting totals match final simulation box score. | |||
| PASS | current_vs_final | cross-schema | CLE | CURRENT_PLAYER_MATCH_BOX | CLE current finalized hitter lines mirror simulation box score. | |||
| PASS | data_leakage | H2H_DATA_LEAKAGE | All head-to-head rows are dated before the prediction game date. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | Home + away win probabilities sum to approximately 1.0. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | away_win_probability is in [0,1]: 0.482. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | confidence is in [0,1]: 0.518. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | home_win_probability is in [0,1]: 0.518. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Final total runs 9 is reasonably close to low-score expected_total_runs 9.0. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Low-score analysis factors are non-negative. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Low-score probability/confidence are valid: 0.523/0.713. | |||||
| PASS | final_decision | FINAL_DECISION_POLICY | Final decision policy preserved model ownership of the winner. | |||||
| PASS | innings | GAME_ENDING_COHERENT | The game ends coherently for its score. | |||||
| PASS | innings | INNINGS_COUNT | inning_by_inning_summary contains 9 innings. | |||||
| PASS | innings | INNING_OUTS | Inning 9 home marked not_played with empty stats. | |||||
| PASS | innings | INNING_PLAY_SUMS | Detailed play totals match every half-inning line. | |||||
| PASS | innings | INNING_SEQUENCE | Inning numbers are sequential. | |||||
| PASS | innings | INNING_TOTAL_HITS | Inning hits match batting totals: CHW 7, CLE 7. | |||||
| PASS | innings | INNING_TOTAL_RUNS | Inning runs sum to final score: CHW 4 - CLE 5. | |||||
| PASS | kpi | LUNA_KPI_TRACE | Luna KPI trace coherent (no_promoted_kpis). | |||||
| PASS | matchup_recency | GUARDRAIL_FINAL_WINNER_SYNC | Guardrail predicted_team matches final predicted winner: CLE. | |||||
| PASS | matchup_recency | MATCHUP_RECENCY_GUARDRAIL | Matchup recency guardrail applied for CLE; cap=0.56, reasons=recent head-to-head is split and volatile; recent head-to-head margin does not support a strong repeat pick; a prior same-side pick already missed against the actual result. | {'applied': True, 'confidence_cap': 0.56, 'winner_flipped': False, 'reasons': ['recent head-to-head is split and volatile', 'recent head-to-head margin does not support a strong repeat pick', 'a prior same-side pick already missed against the actual result'], 'signals': {'predicted_team': 'CLE', 'opponent_team': 'CHW', 'h2h_net_margin': 0, 'opponent_breakout': False, 'opponent_blowout_win': False, 'split_recent_h2h': True, 'recent_h2h': [{'date': '2026-09-16', 'predicted_team_runs': 6, 'opponent_runs': 3, 'margin_for_predicted_team': 3, 'winner': 'CLE'}, {'date': '2026-09-15', 'predicted_team_runs': 7, 'opponent_runs': 6, 'margin_for_predicted_team': 1, 'winner': 'CLE'}, {'date': '2026-09-14', 'predicted_team_runs': 3, 'opponent_runs': 7, 'margin_for_predicted_team': -4, 'winner': 'CHW'}], 'prediction_memory': {'available': True, 'reason': 'verified_prior_matchup_predictions_available', 'verification_policy': 'pregame_artifact_matched_to_one_official_final', 'verified_outcome_count': 12, 'consecutive_same_pick_count': 0, 'same_pick_actual_loss_count': 1, 'same_pick_blowout_loss_count': 0, 'prior_predictions': [{'date': '20261003', 'away': 'CHW', 'home': 'CLE', 'game_number': 1, 'predicted_team': 'CHW', 'actual_winner': 'CHW', 'actual_margin': 3, 'raw_pick_probability': 0.5229980000000001, 'artifact': '20261003_CHW@CLE.json', 'verification': 'pregame_official_final'}, {'date': '20260916', 'away': 'CHW', 'home': 'CLE', 'game_number': 1, 'predicted_team': 'CLE', 'actual_winner': 'CLE', 'actual_margin': 3, 'raw_pick_probability': 0.556513, 'artifact': '20260916_CHW@CLE.json', 'verification': 'pregame_official_final'}, {'date': '20260915', 'away': 'CHW', 'home': 'CLE', 'game_number': 1, 'predicted_team': 'CHW', 'actual_winner': 'CLE', 'actual_margin': 1, 'raw_pick_probability': 0.544573, 'artifact': '20260915_CHW@CLE.json', 'verification': 'pregame_official_final'}, {'date': '20260914', 'away': 'CHW', 'home': 'CLE', 'game_number': 1, 'predicted_team': 'CLE', 'actual_winner': 'CHW', 'actual_margin': 4, 'raw_pick_probability': 0.505654, 'artifact': '20260914_CHW@CLE.json', 'verification': 'pregame_official_final'}, {'date': '20260809', 'away': 'CLE', 'home': 'CHW', 'game_number': 1, 'predicted_team': 'CHW', 'actual_winner': 'CHW', 'actual_margin': 2, 'raw_pick_probability': 0.56, 'artifact': '20260809_CLE@CHW.json', 'verification': 'pregame_official_final'}]}, 'guardrail_predicted_team': 'CLE', 'guardrail_opponent_team': 'CHW', 'output_pre_simulation_winner': 'CLE', 'output_opponent_team': 'CHW', 'simulation_score_winner': 'CLE', 'final_score_winner': 'CLE', 'pre_simulation_winner': 'CLE', 'winner_flipped_by_simulation': False, 'simulation_would_flip_winner': False}, 'hard_flip_suppressed': False, 'flip_authority': 'caps_confidence_and_shifts_runs_only'} | ||||
| PASS | metadata | DATE_PARSE | Date is valid ISO format: 2026-10-05. | |||||
| PASS | metadata | FILENAME_GAME_ID_MATCH | Filename contains game_id: filename=20261005_CHW@CLE__20261006T023851Z, game_id=20261005_CHW@CLE. | |||||
| PASS | metadata | FILENAME_TEAM_MATCH | Filename teams match JSON teams: CHW@CLE. | |||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | H2H base feature is implemented and its runtime trace passed. | {'method': 'h2h_net_margin_monotonic_v1', 'available': True, 'sample_size': 5, 'sample_weight': 0.0577, 'home_net_margin': -5.0, 'absolute_net_margin': 5.0, 'home_average_margin': -1.0, 'home_run_delta': -0.0288, 'away_run_delta': 0.0288, 'evidence': [{'game_id': None, 'home_margin': 3.0}, {'game_id': None, 'home_margin': 1.0}, {'game_id': None, 'home_margin': -4.0}, {'game_id': None, 'home_margin': -2.0}, {'game_id': None, 'home_margin': -3.0}], 'adaptive_parameters': {'h2h.history_limit': 5, 'h2h.maximum_weight': 0.15, 'h2h.prior_games': 8.0, 'h2h.maximum_total_shift': 0.65}} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Score distribution widening is implemented and its runtime trace passed. | {'most_likely': [{'home_runs': 5, 'away_runs': 4, 'probability': 0.01744160494745018}, {'home_runs': 4, 'away_runs': 4, 'probability': 0.017375707797229457}, {'home_runs': 5, 'away_runs': 5, 'probability': 0.017334799164934776}, {'home_runs': 4, 'away_runs': 5, 'probability': 0.017269305543902796}, {'home_runs': 5, 'away_runs': 3, 'probability': 0.015876983281940128}], 'home_distribution': {'0': 0.048314403764278285, '1': 0.07175173601017976, '2': 0.09661848868951951, '3': 0.11796688312224266, '4': 0.13059664125373613, '5': 0.13109192735013284, '6': 0.11931414339498507, '7': 0.09846456002099437, '8': 0.07367836837057504, '9': 0.04998872879225278, '10': 0.030752202373672564, '11': 0.017153486031480765, '12': 0.008675621581975525, '13': 0.003978513588860975, '14': 0.0016542956551136854}, 'away_distribution': {'0': 0.05009797024117762, '1': 0.07431848632840023, '2': 0.0997441633368908, '3': 0.12111335612248927, '4': 0.13304865753377382, '5': 0.13223391794855024, '6': 0.11890199614517424, '7': 0.09672736041242856, '8': 0.07119072868340738, '9': 0.0474036137658919, '10': 0.028557052144400165, '11': 0.015564286235275058, '12': 0.007674656641990396, '13': 0.003423754460150115}, 'model': 'overdispersed_score_distribution', 'variance_multiplier': 2.25, 'variance_floor': 2.75, 'roadmap_status': 'implemented_above_requested_1.4x'} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Season/recent-form quality blend is implemented and its runtime trace passed. | {'method': 'season_recent_quality_blend_v2_adaptive', 'recent_window': 10, 'season_quality_edge': -0.2685, 'recent_quality_edge': 0.04, 'season_weight': 0.65, 'recent_weight': 0.35, 'recent_reliability': 1.0, 'alignment': 'conflict', 'blended_quality_edge': -0.1605} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Simulation flip control is implemented and its runtime trace passed. | {'pre_simulation_score': {'away_runs': 4, 'home_runs': 5, 'score_text': 'CHW 4 - 5 CLE', 'winner': 'CLE'}, 'final_simulation_score': {'away_runs': 4, 'home_runs': 5, 'score_text': 'CHW 4 - 5 CLE', 'winner': 'CLE'}, '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.049, 'recent_form_edge_home_minus_away': -0.03, 'winner_direction': 'home', 'thresholds': {'pitcher_matchup': 0.35, 'recent_form': 0.75}}, 'margin_widening_capped': False, 'simulation_winner_agrees': True, 'away_run_delta': 0, 'home_run_delta': 0, 'total_run_delta': 0, 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_usage': 'organic_simulation_realized_target', 'final_prediction_source': 'stable_final_prediction_policy', 'final_decision_policy': {'policy_version': 'model_target_authoritative_simulation_realizes_v3', 'away_runs': 4, 'home_runs': 5, 'winner': 'CLE', 'model_winner': 'CLE', 'simulation_winner': 'CLE', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 2, 'published_winner': 'CLE', 'published_winner_draw_share': 1.0, 'draw_majority_team': 'CLE', 'published_winner_is_draw_majority': True, 'sampling': 'target_conditioned_selection', 'is_unbiased_probability_sample': False, 'note': 'Draw shares are target-conditioned and diagnostic. A published winner holding a minority share is recorded, not suppressed.'}, 'simulation_score_enabled': True, 'independent_margin_support': False, 'margin_widening_capped': False, 'model_margin': 1, 'simulation_margin': 1, 'simulation_usage': 'organic_simulation_realized_target', 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_realized_target': True, 'model_score': {'away_runs': 4, 'home_runs': 5}, 'simulation_score': {'away_runs': 4, 'home_runs': 5}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 1, 'final_margin': 1, 'winner_quality_edge': -0.1605, 'winner': 'CLE', 'score_reviewed': {'away_runs': 4, 'home_runs': 5, 'source': 'enhanced_prediction.pre_simulation_target'}, 'reason': 'published margin is directionally supported or within review threshold'}} | ||||
| PASS | pipeline | PIPELINE_VERSION | Prediction pipeline version is current: enhanced_game_prediction_v4_continuous_learning__player_form_v3_5_10_season. | |||||
| PASS | pitch_by_pitch | PITCH_DETAIL_SANITY | Pitch-by-pitch speeds and zones are within sanity ranges. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | away pitcher pitch-by-pitch count matches pitch_count_summary total: 143. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | home pitcher pitch-by-pitch count matches pitch_count_summary total: 144. | |||||
| PASS | pitch_count | simulation | CHW | PITCH_COUNT_PITCHER_MATCH | CHW pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | CHW | PITCH_COUNT_TOTAL_MATCH | CHW pitch_count_summary total, row sum, and pitching total all match: 143. | |||
| PASS | pitch_count | simulation | CLE | PITCH_COUNT_PITCHER_MATCH | CLE pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | CLE | PITCH_COUNT_TOTAL_MATCH | CLE pitch_count_summary total, row sum, and pitching total all match: 144. | |||
| PASS | pitcher_opponent_strength | PITCHER_OPPONENT_STRENGTH_BOUNDS | Pitcher-opponent adjustment stayed inside supported bounds. | |||||
| PASS | pitching | PITCHER_APPEARANCE_COHERENT | All 7 pitchers in the box actually appeared. | |||||
| PASS | pitching | PUBLISHED_PITCHER_LINES_MATCH_BOX | Published pitcher lines cover the outs the box recorded. | |||||
| PASS | pitching | current | CHW | PITCHING_REALISM | current:CHW pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | CHW | STARTER_PRESENT | current:CHW includes a starter/opener role. | |||
| PASS | pitching | current | CLE | PITCHING_REALISM | current:CLE pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | CLE | STARTER_PRESENT | current:CLE includes a starter/opener role. | |||
| PASS | pitching | simulation | CHW | PITCHING_REALISM | simulation:CHW pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | CHW | STARTER_PRESENT | simulation:CHW includes a starter/opener role. | |||
| PASS | pitching | simulation | CLE | PITCHING_REALISM | simulation:CLE pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | CLE | STARTER_PRESENT | simulation:CLE includes a starter/opener role. | |||
| PASS | pitching_totals | current | CHW | PITCHING_TOTALS_SUM | current:CHW pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | current | CHW | PITCHING_TOTALS_SUM | current:CHW pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | current | CLE | PITCHING_TOTALS_SUM | current:CLE pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | CLE | PITCHING_TOTALS_SUM | current:CLE pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | CHW | PITCHING_TOTALS_SUM | simulation:CHW pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | simulation | CHW | PITCHING_TOTALS_SUM | simulation:CHW pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | CLE | PITCHING_TOTALS_SUM | simulation:CLE pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | CLE | PITCHING_TOTALS_SUM | simulation:CLE pitching totals equal summed pitcher lines for available fields. | |||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Enhanced AI score matches enhanced target: CHW 4 - 5 CLE. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation score matches final score: CHW 4 - 5 CLE. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation winner matches final score: CLE wins 5-4. | |||||
| PASS | prediction_comparison | SIMULATION_WINNER_FLIP_TRACE | Simulation decision is explicit: model=CLE, simulation=CLE, published=CLE. | |||||
| PASS | probability | CONFIDENCE_RANGE | Enhanced target confidence is in range: 0.518. | |||||
| PASS | recent_form | RECENT_FORM_RANGE | away recent_form record is coherent: 7/10 (0.700). | |||||
| PASS | recent_form | RECENT_FORM_RANGE | home recent_form record is coherent: 8/10 (0.800). | |||||
| PASS | report | REPORT_COMPLETE | All findings, passes, warnings, errors, and critical issues are rendered in the single HTML report. | |||||
| PASS | schema | SCHEMA_ROOTS_PRESENT | Both major schemas are present: game, scoring_simulation, game_summary, prediction_comparison. | |||||
| PASS | score | GAME_SUMMARY_MATCH | game_summary agrees with the published score (game.final_prediction): CLE wins 5-4. | |||||
| PASS | score | SCORE_NO_TIE | Final score has a clear winner: CLE wins 4-5. | |||||
| PASS | score | SCORE_STEP_FINAL_MATCH | simulation_result step matches final score: 4-5. | |||||
| PASS | score | SCORE_STEP_ORDER | Score evolution contains the expected ordered steps. | |||||
| PASS | score | TARGET_SCORE_DRIFT | Final score is close to enhanced target: target 4-5, final 4-5 (delta 0). | |||||
| PASS | score | TOTAL_RUNS_MATCH | total_runs field matches final score total: 9. | |||||
| PASS | score | WINNER_FIELD_MATCH | winner field is consistent: CLE wins 5-4. | |||||
| PASS | score | cross-schema | CURRENT_SCORE_MATCHES_SIM | game.predicted_runs matches scoring_simulation.final_score. | ||||
| PASS | team_recent_performance | current | CHW | RECENT_FORM_RANGE | CHW recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | CHW | TEAM_RECENT_RECORD | CHW wins and win_pct agree: 7/10 = 0.700. | |||
| PASS | team_recent_performance | current | CLE | RECENT_FORM_RANGE | CLE recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | CLE | TEAM_RECENT_RECORD | CLE wins and win_pct agree: 7/10 = 0.700. |
Passed checks
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| PASS | batting | current | CHW | BATTING_REALISM | current:CHW hitter lines pass basic baseball constraints. | |||
| PASS | batting | current | CLE | BATTING_REALISM | current:CLE hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | CHW | BATTING_REALISM | simulation:CHW hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | CLE | BATTING_REALISM | simulation:CLE hitter lines pass basic baseball constraints. | |||
| PASS | batting_totals | current | CHW | BATTING_TOTALS_SUM | current:CHW batting totals equal summed player lines. | |||
| PASS | batting_totals | current | CLE | BATTING_TOTALS_SUM | current:CLE batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | CHW | BATTING_TOTALS_SUM | simulation:CHW batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | CLE | BATTING_TOTALS_SUM | simulation:CLE batting totals equal summed player lines. | |||
| PASS | boxscore_crosscheck | simulation | CHW | BAT_PITCH_BB_MATCH | simulation:CHW batting walks match CLE pitching: 3. | |||
| PASS | boxscore_crosscheck | simulation | CHW | BAT_PITCH_HR_MATCH | simulation:CHW batting home runs match CLE pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | CHW | BAT_PITCH_H_MATCH | simulation:CHW batting hits match CLE pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | CHW | BAT_PITCH_SO_MATCH | simulation:CHW batting strikeouts match CLE pitching: 10. | |||
| PASS | boxscore_crosscheck | simulation | CHW | PA_BF_MATCH | simulation:CHW PA=37 matches CLE BF=37. | |||
| PASS | boxscore_crosscheck | simulation | CHW | RUNS_MATCH_FINAL | simulation:CHW runs match final score and opposing pitching runs: 4. | |||
| PASS | boxscore_crosscheck | simulation | CLE | BAT_PITCH_BB_MATCH | simulation:CLE batting walks match CHW pitching: 4. | |||
| PASS | boxscore_crosscheck | simulation | CLE | BAT_PITCH_HR_MATCH | simulation:CLE batting home runs match CHW pitching: 0. | |||
| PASS | boxscore_crosscheck | simulation | CLE | BAT_PITCH_H_MATCH | simulation:CLE batting hits match CHW pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | CLE | BAT_PITCH_SO_MATCH | simulation:CLE batting strikeouts match CHW pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | CLE | PA_BF_MATCH | simulation:CLE PA=36 matches CHW BF=36. | |||
| PASS | boxscore_crosscheck | simulation | CLE | RUNS_MATCH_FINAL | simulation:CLE runs match final score and opposing pitching runs: 5. | |||
| PASS | confidence_calibration | CONFIDENCE_CALIBRATION_APPLIED | Empirical confidence blend verified: 0.540 -> 0.552 at weight 0.500. | {'method': 'empirical_hit_rate_weighted_v1', 'applied': True, 'reason': 'raw confidence blended with verified historical bucket hit rate', 'raw_confidence': 0.539822, 'sample_size': 821, 'empirical_hit_rate': 0.5639, 'empirical_weight': 0.5, 'blended_confidence': 0.551861, 'published_confidence': 0.518498, 'published_after_governors': True, 'governor_mode': 'shrinkage_not_clamp'} | ||||
| PASS | cross_schema | cross-schema | CHW | CURRENT_FINALIZED_MATCH_BOX | CHW current pitcher projected totals match final simulation pitching box score. | |||
| PASS | cross_schema | cross-schema | CLE | CURRENT_FINALIZED_MATCH_BOX | CLE current pitcher projected totals match final simulation pitching box score. | |||
| PASS | current_payload | current | CHW | CURRENT_LINEUP_SHAPE | CHW current lineup has 9 expected positions. | |||
| PASS | current_payload | current | CHW | CURRENT_MODEL_ZERO_FALLBACK | CHW current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | CHW | CURRENT_NAMES_PRESENT | CHW current hitter names are populated. | |||
| PASS | current_payload | current | CHW | CURRENT_PREDICTIONS_MATCH_FINALIZED | CHW hitter predictions mirror finalized stats. | |||
| PASS | current_payload | current | CLE | CURRENT_LINEUP_SHAPE | CLE current lineup has 9 expected positions. | |||
| PASS | current_payload | current | CLE | CURRENT_MODEL_ZERO_FALLBACK | CLE current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | CLE | CURRENT_NAMES_PRESENT | CLE current hitter names are populated. | |||
| PASS | current_payload | current | CLE | CURRENT_PREDICTIONS_MATCH_FINALIZED | CLE hitter predictions mirror finalized stats. | |||
| PASS | current_vs_final | cross-schema | CHW | CURRENT_FINALIZED_MATCH_BOX | CHW current finalized batting totals match final simulation box score. | |||
| PASS | current_vs_final | cross-schema | CHW | CURRENT_PLAYER_MATCH_BOX | CHW current finalized hitter lines mirror simulation box score. | |||
| PASS | current_vs_final | cross-schema | CLE | CURRENT_FINALIZED_MATCH_BOX | CLE current finalized batting totals match final simulation box score. | |||
| PASS | current_vs_final | cross-schema | CLE | CURRENT_PLAYER_MATCH_BOX | CLE current finalized hitter lines mirror simulation box score. | |||
| PASS | data_leakage | H2H_DATA_LEAKAGE | All head-to-head rows are dated before the prediction game date. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | Home + away win probabilities sum to approximately 1.0. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | away_win_probability is in [0,1]: 0.482. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | confidence is in [0,1]: 0.518. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | home_win_probability is in [0,1]: 0.518. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Final total runs 9 is reasonably close to low-score expected_total_runs 9.0. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Low-score analysis factors are non-negative. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Low-score probability/confidence are valid: 0.523/0.713. | |||||
| PASS | final_decision | FINAL_DECISION_POLICY | Final decision policy preserved model ownership of the winner. | |||||
| PASS | innings | GAME_ENDING_COHERENT | The game ends coherently for its score. | |||||
| PASS | innings | INNINGS_COUNT | inning_by_inning_summary contains 9 innings. | |||||
| PASS | innings | INNING_OUTS | Inning 9 home marked not_played with empty stats. | |||||
| PASS | innings | INNING_PLAY_SUMS | Detailed play totals match every half-inning line. | |||||
| PASS | innings | INNING_SEQUENCE | Inning numbers are sequential. | |||||
| PASS | innings | INNING_TOTAL_HITS | Inning hits match batting totals: CHW 7, CLE 7. | |||||
| PASS | innings | INNING_TOTAL_RUNS | Inning runs sum to final score: CHW 4 - CLE 5. | |||||
| PASS | kpi | LUNA_KPI_TRACE | Luna KPI trace coherent (no_promoted_kpis). | |||||
| PASS | matchup_recency | GUARDRAIL_FINAL_WINNER_SYNC | Guardrail predicted_team matches final predicted winner: CLE. | |||||
| PASS | matchup_recency | MATCHUP_RECENCY_GUARDRAIL | Matchup recency guardrail applied for CLE; cap=0.56, reasons=recent head-to-head is split and volatile; recent head-to-head margin does not support a strong repeat pick; a prior same-side pick already missed against the actual result. | {'applied': True, 'confidence_cap': 0.56, 'winner_flipped': False, 'reasons': ['recent head-to-head is split and volatile', 'recent head-to-head margin does not support a strong repeat pick', 'a prior same-side pick already missed against the actual result'], 'signals': {'predicted_team': 'CLE', 'opponent_team': 'CHW', 'h2h_net_margin': 0, 'opponent_breakout': False, 'opponent_blowout_win': False, 'split_recent_h2h': True, 'recent_h2h': [{'date': '2026-09-16', 'predicted_team_runs': 6, 'opponent_runs': 3, 'margin_for_predicted_team': 3, 'winner': 'CLE'}, {'date': '2026-09-15', 'predicted_team_runs': 7, 'opponent_runs': 6, 'margin_for_predicted_team': 1, 'winner': 'CLE'}, {'date': '2026-09-14', 'predicted_team_runs': 3, 'opponent_runs': 7, 'margin_for_predicted_team': -4, 'winner': 'CHW'}], 'prediction_memory': {'available': True, 'reason': 'verified_prior_matchup_predictions_available', 'verification_policy': 'pregame_artifact_matched_to_one_official_final', 'verified_outcome_count': 12, 'consecutive_same_pick_count': 0, 'same_pick_actual_loss_count': 1, 'same_pick_blowout_loss_count': 0, 'prior_predictions': [{'date': '20261003', 'away': 'CHW', 'home': 'CLE', 'game_number': 1, 'predicted_team': 'CHW', 'actual_winner': 'CHW', 'actual_margin': 3, 'raw_pick_probability': 0.5229980000000001, 'artifact': '20261003_CHW@CLE.json', 'verification': 'pregame_official_final'}, {'date': '20260916', 'away': 'CHW', 'home': 'CLE', 'game_number': 1, 'predicted_team': 'CLE', 'actual_winner': 'CLE', 'actual_margin': 3, 'raw_pick_probability': 0.556513, 'artifact': '20260916_CHW@CLE.json', 'verification': 'pregame_official_final'}, {'date': '20260915', 'away': 'CHW', 'home': 'CLE', 'game_number': 1, 'predicted_team': 'CHW', 'actual_winner': 'CLE', 'actual_margin': 1, 'raw_pick_probability': 0.544573, 'artifact': '20260915_CHW@CLE.json', 'verification': 'pregame_official_final'}, {'date': '20260914', 'away': 'CHW', 'home': 'CLE', 'game_number': 1, 'predicted_team': 'CLE', 'actual_winner': 'CHW', 'actual_margin': 4, 'raw_pick_probability': 0.505654, 'artifact': '20260914_CHW@CLE.json', 'verification': 'pregame_official_final'}, {'date': '20260809', 'away': 'CLE', 'home': 'CHW', 'game_number': 1, 'predicted_team': 'CHW', 'actual_winner': 'CHW', 'actual_margin': 2, 'raw_pick_probability': 0.56, 'artifact': '20260809_CLE@CHW.json', 'verification': 'pregame_official_final'}]}, 'guardrail_predicted_team': 'CLE', 'guardrail_opponent_team': 'CHW', 'output_pre_simulation_winner': 'CLE', 'output_opponent_team': 'CHW', 'simulation_score_winner': 'CLE', 'final_score_winner': 'CLE', 'pre_simulation_winner': 'CLE', 'winner_flipped_by_simulation': False, 'simulation_would_flip_winner': False}, 'hard_flip_suppressed': False, 'flip_authority': 'caps_confidence_and_shifts_runs_only'} | ||||
| PASS | metadata | DATE_PARSE | Date is valid ISO format: 2026-10-05. | |||||
| PASS | metadata | FILENAME_GAME_ID_MATCH | Filename contains game_id: filename=20261005_CHW@CLE__20261006T023851Z, game_id=20261005_CHW@CLE. | |||||
| PASS | metadata | FILENAME_TEAM_MATCH | Filename teams match JSON teams: CHW@CLE. | |||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | H2H base feature is implemented and its runtime trace passed. | {'method': 'h2h_net_margin_monotonic_v1', 'available': True, 'sample_size': 5, 'sample_weight': 0.0577, 'home_net_margin': -5.0, 'absolute_net_margin': 5.0, 'home_average_margin': -1.0, 'home_run_delta': -0.0288, 'away_run_delta': 0.0288, 'evidence': [{'game_id': None, 'home_margin': 3.0}, {'game_id': None, 'home_margin': 1.0}, {'game_id': None, 'home_margin': -4.0}, {'game_id': None, 'home_margin': -2.0}, {'game_id': None, 'home_margin': -3.0}], 'adaptive_parameters': {'h2h.history_limit': 5, 'h2h.maximum_weight': 0.15, 'h2h.prior_games': 8.0, 'h2h.maximum_total_shift': 0.65}} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Score distribution widening is implemented and its runtime trace passed. | {'most_likely': [{'home_runs': 5, 'away_runs': 4, 'probability': 0.01744160494745018}, {'home_runs': 4, 'away_runs': 4, 'probability': 0.017375707797229457}, {'home_runs': 5, 'away_runs': 5, 'probability': 0.017334799164934776}, {'home_runs': 4, 'away_runs': 5, 'probability': 0.017269305543902796}, {'home_runs': 5, 'away_runs': 3, 'probability': 0.015876983281940128}], 'home_distribution': {'0': 0.048314403764278285, '1': 0.07175173601017976, '2': 0.09661848868951951, '3': 0.11796688312224266, '4': 0.13059664125373613, '5': 0.13109192735013284, '6': 0.11931414339498507, '7': 0.09846456002099437, '8': 0.07367836837057504, '9': 0.04998872879225278, '10': 0.030752202373672564, '11': 0.017153486031480765, '12': 0.008675621581975525, '13': 0.003978513588860975, '14': 0.0016542956551136854}, 'away_distribution': {'0': 0.05009797024117762, '1': 0.07431848632840023, '2': 0.0997441633368908, '3': 0.12111335612248927, '4': 0.13304865753377382, '5': 0.13223391794855024, '6': 0.11890199614517424, '7': 0.09672736041242856, '8': 0.07119072868340738, '9': 0.0474036137658919, '10': 0.028557052144400165, '11': 0.015564286235275058, '12': 0.007674656641990396, '13': 0.003423754460150115}, 'model': 'overdispersed_score_distribution', 'variance_multiplier': 2.25, 'variance_floor': 2.75, 'roadmap_status': 'implemented_above_requested_1.4x'} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Season/recent-form quality blend is implemented and its runtime trace passed. | {'method': 'season_recent_quality_blend_v2_adaptive', 'recent_window': 10, 'season_quality_edge': -0.2685, 'recent_quality_edge': 0.04, 'season_weight': 0.65, 'recent_weight': 0.35, 'recent_reliability': 1.0, 'alignment': 'conflict', 'blended_quality_edge': -0.1605} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Simulation flip control is implemented and its runtime trace passed. | {'pre_simulation_score': {'away_runs': 4, 'home_runs': 5, 'score_text': 'CHW 4 - 5 CLE', 'winner': 'CLE'}, 'final_simulation_score': {'away_runs': 4, 'home_runs': 5, 'score_text': 'CHW 4 - 5 CLE', 'winner': 'CLE'}, '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.049, 'recent_form_edge_home_minus_away': -0.03, 'winner_direction': 'home', 'thresholds': {'pitcher_matchup': 0.35, 'recent_form': 0.75}}, 'margin_widening_capped': False, 'simulation_winner_agrees': True, 'away_run_delta': 0, 'home_run_delta': 0, 'total_run_delta': 0, 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_usage': 'organic_simulation_realized_target', 'final_prediction_source': 'stable_final_prediction_policy', 'final_decision_policy': {'policy_version': 'model_target_authoritative_simulation_realizes_v3', 'away_runs': 4, 'home_runs': 5, 'winner': 'CLE', 'model_winner': 'CLE', 'simulation_winner': 'CLE', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 2, 'published_winner': 'CLE', 'published_winner_draw_share': 1.0, 'draw_majority_team': 'CLE', 'published_winner_is_draw_majority': True, 'sampling': 'target_conditioned_selection', 'is_unbiased_probability_sample': False, 'note': 'Draw shares are target-conditioned and diagnostic. A published winner holding a minority share is recorded, not suppressed.'}, 'simulation_score_enabled': True, 'independent_margin_support': False, 'margin_widening_capped': False, 'model_margin': 1, 'simulation_margin': 1, 'simulation_usage': 'organic_simulation_realized_target', 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_realized_target': True, 'model_score': {'away_runs': 4, 'home_runs': 5}, 'simulation_score': {'away_runs': 4, 'home_runs': 5}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 1, 'final_margin': 1, 'winner_quality_edge': -0.1605, 'winner': 'CLE', 'score_reviewed': {'away_runs': 4, 'home_runs': 5, 'source': 'enhanced_prediction.pre_simulation_target'}, 'reason': 'published margin is directionally supported or within review threshold'}} | ||||
| PASS | pipeline | PIPELINE_VERSION | Prediction pipeline version is current: enhanced_game_prediction_v4_continuous_learning__player_form_v3_5_10_season. | |||||
| PASS | pitch_by_pitch | PITCH_DETAIL_SANITY | Pitch-by-pitch speeds and zones are within sanity ranges. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | away pitcher pitch-by-pitch count matches pitch_count_summary total: 143. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | home pitcher pitch-by-pitch count matches pitch_count_summary total: 144. | |||||
| PASS | pitch_count | simulation | CHW | PITCH_COUNT_PITCHER_MATCH | CHW pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | CHW | PITCH_COUNT_TOTAL_MATCH | CHW pitch_count_summary total, row sum, and pitching total all match: 143. | |||
| PASS | pitch_count | simulation | CLE | PITCH_COUNT_PITCHER_MATCH | CLE pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | CLE | PITCH_COUNT_TOTAL_MATCH | CLE pitch_count_summary total, row sum, and pitching total all match: 144. | |||
| PASS | pitcher_opponent_strength | PITCHER_OPPONENT_STRENGTH_BOUNDS | Pitcher-opponent adjustment stayed inside supported bounds. | |||||
| PASS | pitching | PITCHER_APPEARANCE_COHERENT | All 7 pitchers in the box actually appeared. | |||||
| PASS | pitching | PUBLISHED_PITCHER_LINES_MATCH_BOX | Published pitcher lines cover the outs the box recorded. | |||||
| PASS | pitching | current | CHW | PITCHING_REALISM | current:CHW pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | CHW | STARTER_PRESENT | current:CHW includes a starter/opener role. | |||
| PASS | pitching | current | CLE | PITCHING_REALISM | current:CLE pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | CLE | STARTER_PRESENT | current:CLE includes a starter/opener role. | |||
| PASS | pitching | simulation | CHW | PITCHING_REALISM | simulation:CHW pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | CHW | STARTER_PRESENT | simulation:CHW includes a starter/opener role. | |||
| PASS | pitching | simulation | CLE | PITCHING_REALISM | simulation:CLE pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | CLE | STARTER_PRESENT | simulation:CLE includes a starter/opener role. | |||
| PASS | pitching_totals | current | CHW | PITCHING_TOTALS_SUM | current:CHW pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | current | CHW | PITCHING_TOTALS_SUM | current:CHW pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | current | CLE | PITCHING_TOTALS_SUM | current:CLE pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | CLE | PITCHING_TOTALS_SUM | current:CLE pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | CHW | PITCHING_TOTALS_SUM | simulation:CHW pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | simulation | CHW | PITCHING_TOTALS_SUM | simulation:CHW pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | CLE | PITCHING_TOTALS_SUM | simulation:CLE pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | CLE | PITCHING_TOTALS_SUM | simulation:CLE pitching totals equal summed pitcher lines for available fields. | |||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Enhanced AI score matches enhanced target: CHW 4 - 5 CLE. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation score matches final score: CHW 4 - 5 CLE. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation winner matches final score: CLE wins 5-4. | |||||
| PASS | prediction_comparison | SIMULATION_WINNER_FLIP_TRACE | Simulation decision is explicit: model=CLE, simulation=CLE, published=CLE. | |||||
| PASS | probability | CONFIDENCE_RANGE | Enhanced target confidence is in range: 0.518. | |||||
| PASS | recent_form | RECENT_FORM_RANGE | away recent_form record is coherent: 7/10 (0.700). | |||||
| PASS | recent_form | RECENT_FORM_RANGE | home recent_form record is coherent: 8/10 (0.800). | |||||
| PASS | report | REPORT_COMPLETE | All findings, passes, warnings, errors, and critical issues are rendered in the single HTML report. | |||||
| PASS | schema | SCHEMA_ROOTS_PRESENT | Both major schemas are present: game, scoring_simulation, game_summary, prediction_comparison. | |||||
| PASS | score | GAME_SUMMARY_MATCH | game_summary agrees with the published score (game.final_prediction): CLE wins 5-4. | |||||
| PASS | score | SCORE_NO_TIE | Final score has a clear winner: CLE wins 4-5. | |||||
| PASS | score | SCORE_STEP_FINAL_MATCH | simulation_result step matches final score: 4-5. | |||||
| PASS | score | SCORE_STEP_ORDER | Score evolution contains the expected ordered steps. | |||||
| PASS | score | TARGET_SCORE_DRIFT | Final score is close to enhanced target: target 4-5, final 4-5 (delta 0). | |||||
| PASS | score | TOTAL_RUNS_MATCH | total_runs field matches final score total: 9. | |||||
| PASS | score | WINNER_FIELD_MATCH | winner field is consistent: CLE wins 5-4. | |||||
| PASS | score | cross-schema | CURRENT_SCORE_MATCHES_SIM | game.predicted_runs matches scoring_simulation.final_score. | ||||
| PASS | team_recent_performance | current | CHW | RECENT_FORM_RANGE | CHW recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | CHW | TEAM_RECENT_RECORD | CHW wins and win_pct agree: 7/10 = 0.700. | |||
| PASS | team_recent_performance | current | CLE | RECENT_FORM_RANGE | CLE recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | CLE | TEAM_RECENT_RECORD | CLE wins and win_pct agree: 7/10 = 0.700. |
Info/context findings
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| INFO | score_reconciliation | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
Score evolution
| step | away_runs | home_runs | confidence | description |
|---|---|---|---|---|
| historical_ml | 4.052787417582998 | 4.657712402044706 | Base ML historical model prediction | |
| variance_applied | 4 | 5 | Deterministic baseline target (variance factor 1.0) | |
| enhanced_prediction | 4 | 5 | 0.518 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| kpi_layer | 4 | 5 | Savant KPI blend applied to the model target | |
| embedded_savant_run_environment | 4 | 5 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality | |
| fundamental_edge_target_review | 4 | 5 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments | |
| capped_target | 4 | 5 | Capped at max 12 realistic runs | |
| simulation_result | 4 | 5 | Final inning-by-inning simulation result |
Inning-by-inning linescore
| team | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | R | H |
|---|---|---|---|---|---|---|---|---|---|---|---|
| CHW | 0 | 1 | 0 | 0 | 3 | 0 | 0 | 0 | 0 | 4 | 7 |
| CLE | 0 | 2 | 0 | 0 | 0 | 0 | 3 | 0 | 0 | 5 | 7 |
Team totals - current + final simulation
| src | team | type | PA | AB | H | 2B | 3B | HR | RBI | R | BB | SO | SF | HBP | SB | CS | IP | ER | BF | Pitches |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| current | CHW | batting | 34 | 7 | 1 | 0 | 1 | 4 | 4 | 3 | 10 | 0 | 0 | 0 | 0 | |||||
| current | CHW | pitching | 7 | 0 | 5 | 4 | 7 | 8.0 | 4 | 0 | 0 | |||||||||
| current | CLE | batting | 32 | 7 | 1 | 0 | 0 | 5 | 5 | 4 | 7 | 0 | 0 | 0 | 0 | |||||
| current | CLE | pitching | 7 | 1 | 4 | 3 | 10 | 9.0 | 4 | 0 | 0 | |||||||||
| simulation | CHW | batting | 34 | 7 | 1 | 0 | 1 | 4 | 4 | 3 | 10 | 0 | 0 | |||||||
| simulation | CHW | pitching | 7 | 0 | 5 | 4 | 7 | 8.0 | 4 | 36 | 143 | |||||||||
| simulation | CLE | batting | 32 | 7 | 1 | 0 | 0 | 5 | 5 | 4 | 7 | 0 | 0 | |||||||
| simulation | CLE | pitching | 7 | 1 | 4 | 3 | 10 | 9.0 | 4 | 37 | 144 |
Batting lines - current + final simulation
| src | team | order | pos | name | PA | AB | H | 2B | 3B | HR | R | RBI | BB | SO | HBP | AVG |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| current | CHW | LF | Sam Antonacci | 0 | 5 | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 0.200 | |
| current | CHW | C | Kyle Teel | 0 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 | |
| current | CHW | 3B | Miguel Vargas | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 2 | 1 | 2 | 0 | 0.333 | |
| current | CHW | 1B | Munetaka Murakami | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.250 | |
| current | CHW | DH | Andrew Benintendi | 0 | 4 | 2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.500 | |
| current | CHW | CF | Tristan Peters | 0 | 3 | 1 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 0 | 0.333 | |
| current | CHW | RF | Braden Montgomery | 0 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 | |
| current | CHW | 2B | Chase Meidroth | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.250 | |
| current | CHW | SS | Colson Montgomery | 0 | 3 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 2 | 0 | 0.000 | |
| current | CLE | CF | Steven Kwan | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0.250 | |
| current | CLE | 3B | José Ramírez | 0 | 2 | 1 | 0 | 0 | 0 | 1 | 1 | 2 | 0 | 0 | 0.500 | |
| current | CLE | RF | Chase DeLauter | 0 | 3 | 2 | 0 | 0 | 0 | 1 | 1 | 1 | 0 | 0 | 0.667 | |
| current | CLE | DH | Jo Adell | 0 | 4 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0.000 | |
| current | CLE | 1B | Nathaniel Lowe | 0 | 4 | 2 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0.500 | |
| current | CLE | LF | Angel Martínez | 0 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.000 | |
| current | CLE | 2B | Travis Bazzana | 0 | 3 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0.000 | |
| current | CLE | C | Patrick Bailey | 0 | 4 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 2 | 0 | 0.000 | |
| current | CLE | SS | Brayan Rocchio | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.250 | |
| simulation | CHW | 1 | LF | Sam Antonacci | 5 | 5 | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 0.200 |
| simulation | CHW | 2 | C | Kyle Teel | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 |
| simulation | CHW | 3 | 3B | Miguel Vargas | 4 | 3 | 1 | 0 | 0 | 0 | 0 | 2 | 1 | 2 | 0 | 0.333 |
| simulation | CHW | 4 | 1B | Munetaka Murakami | 4 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.250 |
| simulation | CHW | 5 | DH | Andrew Benintendi | 4 | 4 | 2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.500 |
| simulation | CHW | 6 | CF | Tristan Peters | 4 | 3 | 1 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 0 | 0.333 |
| simulation | CHW | 7 | RF | Braden Montgomery | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 |
| simulation | CHW | 8 | 2B | Chase Meidroth | 4 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.250 |
| simulation | CHW | 9 | SS | Colson Montgomery | 4 | 3 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 2 | 0 | 0.000 |
| simulation | CLE | 1 | CF | Steven Kwan | 4 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0.250 |
| simulation | CLE | 2 | 3B | José Ramírez | 4 | 2 | 1 | 0 | 0 | 0 | 1 | 1 | 2 | 0 | 0 | 0.500 |
| simulation | CLE | 3 | RF | Chase DeLauter | 4 | 3 | 2 | 0 | 0 | 0 | 1 | 1 | 1 | 0 | 0 | 0.667 |
| simulation | CLE | 4 | DH | Jo Adell | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0.000 |
| simulation | CLE | 5 | 1B | Nathaniel Lowe | 4 | 4 | 2 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0.500 |
| simulation | CLE | 6 | LF | Angel Martínez | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.000 |
| simulation | CLE | 7 | 2B | Travis Bazzana | 4 | 3 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0.000 |
| simulation | CLE | 8 | C | Patrick Bailey | 4 | 4 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 2 | 0 | 0.000 |
| simulation | CLE | 9 | SS | Brayan Rocchio | 4 | 4 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.250 |
Pitching lines - current + final simulation
| src | team | order | name | role | IP | H | R | ER | BB | SO | HR | BF | Pitches | sim_ERA | season_ERA | season_WHIP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| current | CHW | 1 | Anthony Kay | Starter | 4.2 | 3 | 2 | 1 | 2 | 3 | 0 | 0 | 0 | 1.93 | 4.39 | 1.38 |
| current | CHW | 6 | Sean Newcomb | Middle Reliever (High Leverage) | 2.0 | 3 | 3 | 3 | 2 | 2 | 0 | 0 | 0 | 13.50 | 2.77 | 1.11 |
| current | CHW | 7 | Jordan Hicks | Setup Man | 1.1 | 1 | 0 | 0 | 0 | 2 | 0 | 0 | 0 | 0.00 | 3.83 | 1.50 |
| current | CLE | 1 | Gavin Williams | Starter | 5.2 | 6 | 4 | 4 | 3 | 7 | 1 | 0 | 0 | 6.35 | 3.76 | 1.11 |
| current | CLE | 2 | Tim Herrin | Middle Reliever | 1.0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.00 | 2.97 | 1.28 |
| current | CLE | 3 | Daniel Espino | Middle Reliever (High Leverage) | 1.0 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.00 | 3.94 | 1.31 |
| current | CLE | 4 | Erik Sabrowski | Middle Reliever (High Leverage) | 1.1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.00 | 2.52 | 1.06 |
| simulation | CHW | 1 | Anthony Kay | Starter | 4.2 | 3 | 2 | 1 | 2 | 3 | 0 | 20 | 70 | 1.93 | 4.39 | 1.38 |
| simulation | CHW | 2 | Sean Newcomb | Middle Reliever (High Leverage) | 2.0 | 3 | 3 | 3 | 2 | 2 | 0 | 11 | 51 | 13.50 | 2.77 | 1.11 |
| simulation | CHW | 3 | Jordan Hicks | Setup Man | 1.1 | 1 | 0 | 0 | 0 | 2 | 0 | 5 | 22 | 0.00 | 3.83 | 1.50 |
| simulation | CLE | 1 | Gavin Williams | Starter | 5.2 | 6 | 4 | 4 | 3 | 7 | 1 | 26 | 105 | 6.35 | 3.76 | 1.11 |
| simulation | CLE | 2 | Tim Herrin | Middle Reliever | 1.0 | 0 | 0 | 0 | 0 | 1 | 0 | 3 | 9 | 0.00 | 2.97 | 1.28 |
| simulation | CLE | 3 | Daniel Espino | Middle Reliever (High Leverage) | 1.0 | 1 | 0 | 0 | 0 | 1 | 0 | 4 | 18 | 0.00 | 3.94 | 1.31 |
| simulation | CLE | 4 | Erik Sabrowski | Middle Reliever (High Leverage) | 1.1 | 0 | 0 | 0 | 0 | 1 | 0 | 4 | 12 | 0.00 | 2.52 | 1.06 |
Pitch count summary
| team | pitcher | role | IP | R | H | BB | SO | BF | Pitches |
|---|---|---|---|---|---|---|---|---|---|
| CHW | Anthony Kay | Starter | 4.2 | 2 | 3 | 2 | 3 | 20 | 70 |
| CHW | Sean Newcomb | Middle Reliever (High Leverage) | 2.0 | 3 | 3 | 2 | 2 | 11 | 51 |
| CHW | Jordan Hicks | Setup Man | 1.1 | 0 | 1 | 0 | 2 | 5 | 22 |
| CLE | Gavin Williams | Starter | 5.2 | 4 | 6 | 3 | 7 | 26 | 105 |
| CLE | Tim Herrin | Middle Reliever | 1.0 | 0 | 0 | 0 | 1 | 3 | 9 |
| CLE | Daniel Espino | Middle Reliever (High Leverage) | 1.0 | 0 | 1 | 0 | 1 | 4 | 18 |
| CLE | Erik Sabrowski | Middle Reliever (High Leverage) | 1.1 | 0 | 0 | 0 | 1 | 4 | 12 |
Audit rule catalog
| rule | status | critical | error | warning | pass | description |
|---|---|---|---|---|---|---|
| BATTING_REALISM | good | 0 | 0 | 0 | 4 | Player/team batting lines obey baseball constraints. |
| BATTING_TOTALS_SUM | good | 0 | 0 | 0 | 4 | Team batting totals equal the sum of player batting lines. |
| BAT_PITCH_BB_MATCH | good | 0 | 0 | 0 | 2 | Batting walks match opposing pitching walks allowed. |
| BAT_PITCH_HR_MATCH | good | 0 | 0 | 0 | 2 | Batting home runs match opposing pitching home runs allowed. |
| BAT_PITCH_H_MATCH | good | 0 | 0 | 0 | 2 | Batting hits match opposing pitching hits allowed. |
| BAT_PITCH_SO_MATCH | good | 0 | 0 | 0 | 2 | Batting strikeouts match opposing pitching strikeouts. |
| CONFIDENCE_CALIBRATION_APPLIED | good | 0 | 0 | 0 | 1 | Empirical confidence blending uses the requested sample weight and remains between raw confidence and empirical hit rate. |
| CONFIDENCE_RANGE | good | 0 | 0 | 0 | 5 | Confidence values are between 0 and 1. |
| CURRENT_FINALIZED_MATCH_BOX | good | 0 | 0 | 0 | 4 | Current finalized player totals agree with final simulation box score unless model/simulation sources are separated. |
| CURRENT_LINEUP_SHAPE | good | 0 | 0 | 0 | 2 | Current predicted_performance contains a plausible 9-player lineup. |
| CURRENT_MODEL_ZERO_FALLBACK | good | 0 | 0 | 0 | 2 | Current model payload did not rely too heavily on all-zero model predictions. |
| CURRENT_NAMES_PRESENT | good | 0 | 0 | 0 | 2 | Current predicted_performance has usable player names. |
| CURRENT_PITCHER_DUPLICATION | not triggered | 0 | 0 | 0 | 0 | Pitcher lists duplicated across current sections are detected and reconciled. |
| CURRENT_PLAYER_MATCH_BOX | good | 0 | 0 | 0 | 2 | Current finalized hitter lines mirror the simulation box score unless model/simulation sources are separated. |
| CURRENT_PREDICTIONS_MATCH_FINALIZED | good | 0 | 0 | 0 | 2 | Current hitter predictions mirror finalized stats. |
| CURRENT_SCORE_MATCHES_SIM | good | 0 | 0 | 0 | 1 | game.predicted_runs is either synced to simulation or paired with game.simulation_runs. |
| DATE_PARSE | good | 0 | 0 | 0 | 1 | Game date can be parsed as an ISO date. |
| FILENAME_GAME_ID_MATCH | good | 0 | 0 | 0 | 1 | Filename and game_id identify the same game. |
| FILENAME_TEAM_MATCH | good | 0 | 0 | 0 | 1 | Filename teams match the teams inside the JSON. |
| FINAL_DECISION_POLICY | good | 0 | 0 | 0 | 1 | One organic simulation cannot replace a disagreeing model winner. |
| GAME_ENDING_COHERENT | good | 0 | 0 | 0 | 1 | The inning line ends the way a real game with the published score ends. |
| GAME_SUMMARY_MATCH | good | 0 | 0 | 0 | 1 | game_summary text agrees with final score. |
| GUARDRAIL_FINAL_WINNER_SYNC | good | 0 | 0 | 0 | 1 | Guardrail trace predicted_team matches the final predicted winner. |
| H2H_DATA_LEAKAGE | good | 0 | 0 | 0 | 1 | Head-to-head history does not include same-day or future games in pregame mode. |
| INNINGS_COUNT | good | 0 | 0 | 0 | 1 | Inning count is valid for MLB. |
| INNING_OUTS | good | 0 | 0 | 0 | 1 | Each played half inning has valid outs. |
| INNING_PLAY_SUMS | good | 0 | 0 | 0 | 1 | Detailed plays agree with inning runs, hits, outs, and pitches. |
| INNING_SEQUENCE | good | 0 | 0 | 0 | 1 | Innings are sequential and unique. |
| INNING_TOTAL_HITS | good | 0 | 0 | 0 | 1 | Inning hits sum to batting team hits. |
| INNING_TOTAL_RUNS | good | 0 | 0 | 0 | 1 | Inning runs sum to final score. |
| LOW_SCORE_ANALYSIS | good | 0 | 0 | 0 | 3 | Low-score probability factors are valid and directionally consistent. |
| LUNA_KPI_TRACE | good | 0 | 0 | 0 | 1 | Promoted Luna KPIs are traced per hitter and the per-game totals agree. |
| MATCHUP_RECENCY_GUARDRAIL | good | 0 | 0 | 0 | 1 | Repeat picks are capped when recent same-matchup results contradict high confidence. |
| OPTIMIZATION_ROADMAP_STATUS | good | 0 | 0 | 0 | 4 | H2H, score-distribution, simulation-flip, and recent-form roadmap signals are explicitly traced and satisfy their configured safeguards. |
| PA_BF_MATCH | good | 0 | 0 | 0 | 2 | Team plate appearances match opposing batters faced. |
| PIPELINE_VERSION | good | 0 | 0 | 0 | 1 | Prediction artifacts identify the stable pipeline version that created them. |
| PITCHER_APPEARANCE_COHERENT | good | 0 | 0 | 0 | 1 | Every pitcher in the box actually appeared: no 0-inning 0-batter line, and no pitch without a batter faced. |
| PITCHER_OPPONENT_STRENGTH_BOUNDS | good | 0 | 0 | 0 | 1 | Pitcher-opponent run factors and score deltas remain inside supported bounds. |
| PITCHING_REALISM | good | 0 | 0 | 0 | 4 | Pitcher/team pitching lines obey baseball constraints. |
| PITCHING_TOTALS_SUM | good | 0 | 0 | 0 | 8 | Team pitching totals equal the sum of pitcher lines. |
| PITCH_COUNT_PITCHER_MATCH | good | 0 | 0 | 0 | 2 | Pitch count summary pitcher rows agree with pitching box score. |
| PITCH_COUNT_TOTAL_MATCH | good | 0 | 0 | 0 | 4 | Pitch count summary totals match team pitching totals. |
| PITCH_DETAIL_SANITY | good | 0 | 0 | 0 | 1 | Pitch-by-pitch details have plausible values. |
| PREDICTION_COMPARISON_MATCH | good | 0 | 0 | 0 | 3 | prediction_comparison scores agree with target/final result. |
| PUBLISHED_PITCHER_LINES_MATCH_BOX | good | 0 | 0 | 0 | 1 | Published staff lines cover the outs the box recorded, extra innings included. |
| RECENT_FORM_RANGE | good | 0 | 0 | 0 | 4 | Recent-form metrics are within valid numeric ranges. |
| RECONCILIATION_PROPAGATION | info | 0 | 0 | 0 | 0 | When score_target_reconciliation is used, all final-facing sections are regenerated from the reconciled score. |
| REPORT_COMPLETE | good | 0 | 0 | 0 | 1 | Report includes every audit result in the all-findings table. |
| REPORT_CSV_EXPORT | not triggered | 0 | 0 | 0 | 0 | Optional CSV exports were written for summary and problem rows. |
| RUNS_MATCH_FINAL | good | 0 | 0 | 0 | 2 | Batting/pitching runs agree with final score. |
| SCHEMA_ROOTS_PRESENT | good | 0 | 0 | 0 | 1 | Expected JSON root sections exist and can be audited. |
| SCORE_NO_TIE | good | 0 | 0 | 0 | 1 | Final MLB score has a clear winner. |
| SCORE_STEP_FINAL_MATCH | good | 0 | 0 | 0 | 1 | score_evolution simulation_result matches final score. |
| SCORE_STEP_ORDER | good | 0 | 0 | 0 | 1 | Score evolution contains the expected ordered steps. |
| SIMULATION_WINNER_FLIP_TRACE | good | 0 | 0 | 0 | 1 | Simulation winner reversals are explicitly recorded. |
| STARTER_PRESENT | good | 0 | 0 | 0 | 4 | Pitching staff includes a starter or opener when expected. |
| SYNTHETIC_SCORE_PLAYS | not triggered | 0 | 0 | 0 | 0 | Score reconciliation must not inject synthetic run or out plays. |
| TARGET_SCORE_DRIFT | good | 0 | 0 | 0 | 1 | Final score does not drift too far from enhanced target. |
| TEAM_RECENT_RECORD | good | 0 | 0 | 0 | 2 | team_recent_performance wins and win_pct agree with games_analyzed. |
| TOTAL_RUNS_MATCH | good | 0 | 0 | 0 | 1 | total_runs equals away + home runs. |
| WINNER_FIELD_MATCH | good | 0 | 0 | 0 | 1 | winner field agrees with the final score. |
20261005_NYY@TB
20261005_NYY@TB__20261006T003901Z.json • 2026-10-05
Clean: no problems detected. Risk score: 0.
No action required
No critical, error, or warning findings were detected.
Problems table - exact rows
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|
All findings - complete audit trail
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| INFO | score_reconciliation | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. | |||||
| PASS | batting | current | NYY | BATTING_REALISM | current:NYY hitter lines pass basic baseball constraints. | |||
| PASS | batting | current | TB | BATTING_REALISM | current:TB hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | NYY | BATTING_REALISM | simulation:NYY hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | TB | BATTING_REALISM | simulation:TB hitter lines pass basic baseball constraints. | |||
| PASS | batting_totals | current | NYY | BATTING_TOTALS_SUM | current:NYY batting totals equal summed player lines. | |||
| PASS | batting_totals | current | TB | BATTING_TOTALS_SUM | current:TB batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | NYY | BATTING_TOTALS_SUM | simulation:NYY batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | TB | BATTING_TOTALS_SUM | simulation:TB batting totals equal summed player lines. | |||
| PASS | boxscore_crosscheck | simulation | NYY | BAT_PITCH_BB_MATCH | simulation:NYY batting walks match TB pitching: 3. | |||
| PASS | boxscore_crosscheck | simulation | NYY | BAT_PITCH_HR_MATCH | simulation:NYY batting home runs match TB pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | NYY | BAT_PITCH_H_MATCH | simulation:NYY batting hits match TB pitching: 8. | |||
| PASS | boxscore_crosscheck | simulation | NYY | BAT_PITCH_SO_MATCH | simulation:NYY batting strikeouts match TB pitching: 9. | |||
| PASS | boxscore_crosscheck | simulation | NYY | PA_BF_MATCH | simulation:NYY PA=38 matches TB BF=38. | |||
| PASS | boxscore_crosscheck | simulation | NYY | RUNS_MATCH_FINAL | simulation:NYY runs match final score and opposing pitching runs: 4. | |||
| PASS | boxscore_crosscheck | simulation | TB | BAT_PITCH_BB_MATCH | simulation:TB batting walks match NYY pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | TB | BAT_PITCH_HR_MATCH | simulation:TB batting home runs match NYY pitching: 0. | |||
| PASS | boxscore_crosscheck | simulation | TB | BAT_PITCH_H_MATCH | simulation:TB batting hits match NYY pitching: 5. | |||
| PASS | boxscore_crosscheck | simulation | TB | BAT_PITCH_SO_MATCH | simulation:TB batting strikeouts match NYY pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | TB | PA_BF_MATCH | simulation:TB PA=35 matches NYY BF=35. | |||
| PASS | boxscore_crosscheck | simulation | TB | RUNS_MATCH_FINAL | simulation:TB runs match final score and opposing pitching runs: 2. | |||
| PASS | confidence_calibration | CONFIDENCE_CALIBRATION_APPLIED | Empirical confidence blend verified: 0.485 -> 0.532 at weight 0.500. | {'method': 'empirical_hit_rate_weighted_v1', 'applied': True, 'reason': 'raw confidence blended with verified historical bucket hit rate', 'raw_confidence': 0.484824, 'sample_size': 485, 'empirical_hit_rate': 0.5794, 'empirical_weight': 0.5, 'blended_confidence': 0.532112, 'published_confidence': 0.539612, 'published_after_governors': True, 'governor_mode': 'shrinkage_not_clamp'} | ||||
| PASS | cross_schema | cross-schema | NYY | CURRENT_FINALIZED_MATCH_BOX | NYY current pitcher projected totals match final simulation pitching box score. | |||
| PASS | cross_schema | cross-schema | TB | CURRENT_FINALIZED_MATCH_BOX | TB current pitcher projected totals match final simulation pitching box score. | |||
| PASS | current_payload | current | NYY | CURRENT_LINEUP_SHAPE | NYY current lineup has 9 expected positions. | |||
| PASS | current_payload | current | NYY | CURRENT_MODEL_ZERO_FALLBACK | NYY current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | NYY | CURRENT_NAMES_PRESENT | NYY current hitter names are populated. | |||
| PASS | current_payload | current | NYY | CURRENT_PREDICTIONS_MATCH_FINALIZED | NYY hitter predictions mirror finalized stats. | |||
| PASS | current_payload | current | TB | CURRENT_LINEUP_SHAPE | TB current lineup has 9 expected positions. | |||
| PASS | current_payload | current | TB | CURRENT_MODEL_ZERO_FALLBACK | TB current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | TB | CURRENT_NAMES_PRESENT | TB current hitter names are populated. | |||
| PASS | current_payload | current | TB | CURRENT_PREDICTIONS_MATCH_FINALIZED | TB hitter predictions mirror finalized stats. | |||
| PASS | current_vs_final | cross-schema | NYY | CURRENT_FINALIZED_MATCH_BOX | NYY current finalized batting totals match final simulation box score. | |||
| PASS | current_vs_final | cross-schema | NYY | CURRENT_PLAYER_MATCH_BOX | NYY current finalized hitter lines mirror simulation box score. | |||
| PASS | current_vs_final | cross-schema | TB | CURRENT_FINALIZED_MATCH_BOX | TB current finalized batting totals match final simulation box score. | |||
| PASS | current_vs_final | cross-schema | TB | CURRENT_PLAYER_MATCH_BOX | TB current finalized hitter lines mirror simulation box score. | |||
| PASS | data_leakage | H2H_DATA_LEAKAGE | All head-to-head rows are dated before the prediction game date. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | Home + away win probabilities sum to approximately 1.0. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | away_win_probability is in [0,1]: 0.540. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | confidence is in [0,1]: 0.540. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | home_win_probability is in [0,1]: 0.460. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Final total runs 6 is reasonably close to low-score expected_total_runs 6.0. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Low-score analysis factors are non-negative. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Low-score probability/confidence are valid: 0.690/0.900. | |||||
| PASS | final_decision | FINAL_DECISION_POLICY | Final decision policy preserved model ownership of the winner. | |||||
| PASS | innings | GAME_ENDING_COHERENT | The game ends coherently for its score. | |||||
| PASS | innings | INNINGS_COUNT | inning_by_inning_summary contains 9 innings. | |||||
| PASS | innings | INNING_PLAY_SUMS | Detailed play totals match every half-inning line. | |||||
| PASS | innings | INNING_SEQUENCE | Inning numbers are sequential. | |||||
| PASS | innings | INNING_TOTAL_HITS | Inning hits match batting totals: NYY 8, TB 5. | |||||
| PASS | innings | INNING_TOTAL_RUNS | Inning runs sum to final score: NYY 4 - TB 2. | |||||
| PASS | kpi | LUNA_KPI_TRACE | Luna KPI trace coherent (no_promoted_kpis). | |||||
| PASS | matchup_recency | GUARDRAIL_FINAL_WINNER_SYNC | Guardrail predicted_team matches final predicted winner: NYY. | |||||
| PASS | matchup_recency | MATCHUP_RECENCY_GUARDRAIL | Matchup recency guardrail applied for NYY; cap=0.54, reasons=predicted side recently lost this matchup by 5+ runs; 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. | {'applied': True, 'confidence_cap': 0.54, 'winner_flipped': False, 'reasons': ['predicted side recently lost this matchup by 5+ runs', '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'], 'signals': {'predicted_team': 'NYY', 'opponent_team': 'TB', 'h2h_net_margin': 4, 'opponent_breakout': False, 'opponent_blowout_win': True, 'split_recent_h2h': True, 'recent_h2h': [{'date': '2026-09-24', 'predicted_team_runs': 6, 'opponent_runs': 4, 'margin_for_predicted_team': 2, 'winner': 'NYY'}, {'date': '2026-09-23', 'predicted_team_runs': 9, 'opponent_runs': 2, 'margin_for_predicted_team': 7, 'winner': 'NYY'}, {'date': '2026-09-22', 'predicted_team_runs': 1, 'opponent_runs': 6, 'margin_for_predicted_team': -5, 'winner': 'TB'}], 'prediction_memory': {'available': True, 'reason': 'verified_prior_matchup_predictions_available', 'verification_policy': 'pregame_artifact_matched_to_one_official_final', 'verified_outcome_count': 7, 'consecutive_same_pick_count': 0, 'same_pick_actual_loss_count': 2, 'same_pick_blowout_loss_count': 1, 'prior_predictions': [{'date': '20261003', 'away': 'NYY', 'home': 'TB', 'game_number': 1, 'predicted_team': 'TB', 'actual_winner': 'TB', 'actual_margin': 1, 'raw_pick_probability': 0.518365, 'artifact': '20261003_NYY@TB.json', 'verification': 'pregame_official_final'}, {'date': '20260924', 'away': 'TB', 'home': 'NYY', 'game_number': 1, 'predicted_team': 'NYY', 'actual_winner': 'NYY', 'actual_margin': 2, 'raw_pick_probability': 0.531136, 'artifact': '20260924_TB@NYY.json', 'verification': 'pregame_official_final'}, {'date': '20260923', 'away': 'TB', 'home': 'NYY', 'game_number': 1, 'predicted_team': 'TB', 'actual_winner': 'NYY', 'actual_margin': 7, 'raw_pick_probability': 0.505259, 'artifact': '20260923_TB@NYY.json', 'verification': 'pregame_official_final'}, {'date': '20260922', 'away': 'TB', 'home': 'NYY', 'game_number': 1, 'predicted_team': 'NYY', 'actual_winner': 'NYY', 'actual_margin': 2, 'raw_pick_probability': 0.534918, 'artifact': '20260922_TB@NYY.json', 'verification': 'pregame_official_final'}, {'date': '20260922', 'away': 'TB', 'home': 'NYY', 'game_number': 2, 'predicted_team': 'NYY', 'actual_winner': 'TB', 'actual_margin': 5, 'raw_pick_probability': 0.520635, 'artifact': '20260922_TB@NYY_2.json', 'verification': 'pregame_official_final'}]}, 'guardrail_predicted_team': 'NYY', 'guardrail_opponent_team': 'TB', 'output_pre_simulation_winner': 'NYY', 'output_opponent_team': 'TB', 'simulation_score_winner': 'NYY', 'final_score_winner': 'NYY', 'pre_simulation_winner': 'NYY', 'winner_flipped_by_simulation': False, 'simulation_would_flip_winner': False}, 'hard_flip_suppressed': False, 'flip_authority': 'caps_confidence_and_shifts_runs_only'} | ||||
| PASS | metadata | DATE_PARSE | Date is valid ISO format: 2026-10-05. | |||||
| PASS | metadata | FILENAME_GAME_ID_MATCH | Filename contains game_id: filename=20261005_NYY@TB__20261006T003901Z, game_id=20261005_NYY@TB. | |||||
| PASS | metadata | FILENAME_TEAM_MATCH | Filename teams match JSON teams: NYY@TB. | |||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | H2H base feature is implemented and its runtime trace passed. | {'method': 'h2h_net_margin_monotonic_v1', 'available': True, 'sample_size': 5, 'sample_weight': 0.0577, 'home_net_margin': -14.0, 'absolute_net_margin': 14.0, 'home_average_margin': -2.8, 'home_run_delta': -0.0808, 'away_run_delta': 0.0808, 'evidence': [{'game_id': None, 'home_margin': -2.0}, {'game_id': None, 'home_margin': -7.0}, {'game_id': None, 'home_margin': 5.0}, {'game_id': None, 'home_margin': -2.0}, {'game_id': None, 'home_margin': -8.0}], 'adaptive_parameters': {'h2h.history_limit': 5, 'h2h.maximum_weight': 0.15, 'h2h.prior_games': 8.0, 'h2h.maximum_total_shift': 0.65}} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Score distribution widening is implemented and its runtime trace passed. | {'most_likely': [{'home_runs': 3, 'away_runs': 3, 'probability': 0.028425001857791943}, {'home_runs': 3, 'away_runs': 4, 'probability': 0.026624637022712536}, {'home_runs': 2, 'away_runs': 3, 'probability': 0.02655888481906244}, {'home_runs': 3, 'away_runs': 2, 'probability': 0.026233106036805034}, {'home_runs': 4, 'away_runs': 3, 'probability': 0.026168542020327538}], 'home_distribution': {'0': 0.08835713498291922, '1': 0.1278072747072023, '2': 0.1590222455882233, '3': 0.17019568619203276, '4': 0.15668505451913656, '5': 0.12407804914258759, '6': 0.08451828939924737, '7': 0.04952161498021102, '8': 0.024959004456441655, '9': 0.010820518614672165, '10': 0.004035127417326009}, 'away_distribution': {'0': 0.08480018763735535, '1': 0.1229653602338988, '2': 0.15413496442680732, '3': 0.16701364466852497, '4': 0.15643543980704544, '5': 0.12666328533417143, '6': 0.08865408588729988, '7': 0.05363881451733485, '8': 0.02805381911797119, '9': 0.012683444737746479, '10': 0.004956953631844255}, 'model': 'overdispersed_score_distribution', 'variance_multiplier': 2.25, 'variance_floor': 2.75, 'roadmap_status': 'implemented_above_requested_1.4x'} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Season/recent-form quality blend is implemented and its runtime trace passed. | {'method': 'season_recent_quality_blend_v2_adaptive', 'recent_window': 10, 'season_quality_edge': -0.2853, 'recent_quality_edge': 0.028, 'season_weight': 0.65, 'recent_weight': 0.35, 'recent_reliability': 1.0, 'alignment': 'conflict', 'blended_quality_edge': -0.1757} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Simulation flip control is implemented and its runtime trace passed. | {'pre_simulation_score': {'away_runs': 4, 'home_runs': 2, 'score_text': 'NYY 4 - 2 TB', 'winner': 'NYY'}, 'final_simulation_score': {'away_runs': 4, 'home_runs': 2, 'score_text': 'NYY 4 - 2 TB', 'winner': 'NYY'}, 'winner_flipped_by_simulation': False, 'simulation_would_flip_winner': False, 'sim_flipped_pre_winner': False, 'sim_flip_trusted': False, 'sim_flip_policy': 'diagnostic_only_unless_independently_supported', 'independent_margin_support': False, 'independent_margin_support_evidence': {'pitcher_matchup_edge_home_minus_away': -0.02, 'recent_form_edge_home_minus_away': -0.182, 'winner_direction': 'away', 'thresholds': {'pitcher_matchup': 0.35, 'recent_form': 0.75}}, 'margin_widening_capped': False, 'simulation_winner_agrees': True, 'away_run_delta': 0, 'home_run_delta': 0, 'total_run_delta': 0, 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_usage': 'organic_simulation_realized_target', 'final_prediction_source': 'stable_final_prediction_policy', 'final_decision_policy': {'policy_version': 'model_target_authoritative_simulation_realizes_v3', 'away_runs': 4, 'home_runs': 2, 'winner': 'NYY', 'model_winner': 'NYY', 'simulation_winner': 'NYY', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 2, 'published_winner': 'NYY', 'published_winner_draw_share': 1.0, 'draw_majority_team': 'NYY', 'published_winner_is_draw_majority': True, 'sampling': 'target_conditioned_selection', 'is_unbiased_probability_sample': False, 'note': 'Draw shares are target-conditioned and diagnostic. A published winner holding a minority share is recorded, not suppressed.'}, 'simulation_score_enabled': True, 'independent_margin_support': False, 'margin_widening_capped': False, 'model_margin': 2, 'simulation_margin': 2, 'simulation_usage': 'organic_simulation_realized_target', 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_realized_target': True, 'model_score': {'away_runs': 4, 'home_runs': 2}, 'simulation_score': {'away_runs': 4, 'home_runs': 2}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 2, 'final_margin': 2, 'winner_quality_edge': 0.1757, 'winner': 'NYY', 'score_reviewed': {'away_runs': 4, 'home_runs': 2, 'source': 'enhanced_prediction.pre_simulation_target'}, 'reason': 'published margin is directionally supported or within review threshold'}} | ||||
| PASS | pipeline | PIPELINE_VERSION | Prediction pipeline version is current: enhanced_game_prediction_v4_continuous_learning__player_form_v3_5_10_season. | |||||
| PASS | pitch_by_pitch | PITCH_DETAIL_SANITY | Pitch-by-pitch speeds and zones are within sanity ranges. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | away pitcher pitch-by-pitch count matches pitch_count_summary total: 138. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | home pitcher pitch-by-pitch count matches pitch_count_summary total: 151. | |||||
| PASS | pitch_count | simulation | NYY | PITCH_COUNT_PITCHER_MATCH | NYY pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | NYY | PITCH_COUNT_TOTAL_MATCH | NYY pitch_count_summary total, row sum, and pitching total all match: 138. | |||
| PASS | pitch_count | simulation | TB | PITCH_COUNT_PITCHER_MATCH | TB pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | TB | PITCH_COUNT_TOTAL_MATCH | TB pitch_count_summary total, row sum, and pitching total all match: 151. | |||
| PASS | pitcher_opponent_strength | PITCHER_OPPONENT_STRENGTH_BOUNDS | Pitcher-opponent adjustment stayed inside supported bounds. | |||||
| PASS | pitching | PITCHER_APPEARANCE_COHERENT | All 8 pitchers in the box actually appeared. | |||||
| PASS | pitching | PUBLISHED_PITCHER_LINES_MATCH_BOX | Published pitcher lines cover the outs the box recorded. | |||||
| PASS | pitching | current | NYY | PITCHING_REALISM | current:NYY pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | NYY | STARTER_PRESENT | current:NYY includes a starter/opener role. | |||
| PASS | pitching | current | TB | PITCHING_REALISM | current:TB pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | TB | STARTER_PRESENT | current:TB includes a starter/opener role. | |||
| PASS | pitching | simulation | NYY | PITCHING_REALISM | simulation:NYY pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | NYY | STARTER_PRESENT | simulation:NYY includes a starter/opener role. | |||
| PASS | pitching | simulation | TB | PITCHING_REALISM | simulation:TB pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | TB | STARTER_PRESENT | simulation:TB includes a starter/opener role. | |||
| PASS | pitching_totals | current | NYY | PITCHING_TOTALS_SUM | current:NYY pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | NYY | PITCHING_TOTALS_SUM | current:NYY pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | current | TB | PITCHING_TOTALS_SUM | current:TB pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | TB | PITCHING_TOTALS_SUM | current:TB pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | NYY | PITCHING_TOTALS_SUM | simulation:NYY pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | NYY | PITCHING_TOTALS_SUM | simulation:NYY pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | TB | PITCHING_TOTALS_SUM | simulation:TB pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | TB | PITCHING_TOTALS_SUM | simulation:TB pitching totals equal summed pitcher lines for available fields. | |||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Enhanced AI score matches enhanced target: NYY 4 - 2 TB. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation score matches final score: NYY 4 - 2 TB. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation winner matches final score: NYY wins 4-2. | |||||
| PASS | prediction_comparison | SIMULATION_WINNER_FLIP_TRACE | Simulation decision is explicit: model=NYY, simulation=NYY, published=NYY. | |||||
| PASS | probability | CONFIDENCE_RANGE | Enhanced target confidence is in range: 0.540. | |||||
| PASS | recent_form | RECENT_FORM_RANGE | away recent_form record is coherent: 5/10 (0.500). | |||||
| PASS | recent_form | RECENT_FORM_RANGE | home recent_form record is coherent: 5/10 (0.500). | |||||
| PASS | report | REPORT_COMPLETE | All findings, passes, warnings, errors, and critical issues are rendered in the single HTML report. | |||||
| PASS | schema | SCHEMA_ROOTS_PRESENT | Both major schemas are present: game, scoring_simulation, game_summary, prediction_comparison. | |||||
| PASS | score | GAME_SUMMARY_MATCH | game_summary agrees with the published score (game.final_prediction): NYY wins 4-2. | |||||
| PASS | score | SCORE_NO_TIE | Final score has a clear winner: NYY wins 4-2. | |||||
| PASS | score | SCORE_STEP_FINAL_MATCH | simulation_result step matches final score: 4-2. | |||||
| PASS | score | SCORE_STEP_ORDER | Score evolution contains the expected ordered steps. | |||||
| PASS | score | TARGET_SCORE_DRIFT | Final score is close to enhanced target: target 4-2, final 4-2 (delta 0). | |||||
| PASS | score | TOTAL_RUNS_MATCH | total_runs field matches final score total: 6. | |||||
| PASS | score | WINNER_FIELD_MATCH | winner field is consistent: NYY wins 4-2. | |||||
| PASS | score | cross-schema | CURRENT_SCORE_MATCHES_SIM | game.predicted_runs matches scoring_simulation.final_score. | ||||
| PASS | team_recent_performance | current | NYY | RECENT_FORM_RANGE | NYY recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | NYY | TEAM_RECENT_RECORD | NYY wins and win_pct agree: 6/10 = 0.600. | |||
| PASS | team_recent_performance | current | TB | RECENT_FORM_RANGE | TB recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | TB | TEAM_RECENT_RECORD | TB wins and win_pct agree: 6/10 = 0.600. |
Passed checks
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| PASS | batting | current | NYY | BATTING_REALISM | current:NYY hitter lines pass basic baseball constraints. | |||
| PASS | batting | current | TB | BATTING_REALISM | current:TB hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | NYY | BATTING_REALISM | simulation:NYY hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | TB | BATTING_REALISM | simulation:TB hitter lines pass basic baseball constraints. | |||
| PASS | batting_totals | current | NYY | BATTING_TOTALS_SUM | current:NYY batting totals equal summed player lines. | |||
| PASS | batting_totals | current | TB | BATTING_TOTALS_SUM | current:TB batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | NYY | BATTING_TOTALS_SUM | simulation:NYY batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | TB | BATTING_TOTALS_SUM | simulation:TB batting totals equal summed player lines. | |||
| PASS | boxscore_crosscheck | simulation | NYY | BAT_PITCH_BB_MATCH | simulation:NYY batting walks match TB pitching: 3. | |||
| PASS | boxscore_crosscheck | simulation | NYY | BAT_PITCH_HR_MATCH | simulation:NYY batting home runs match TB pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | NYY | BAT_PITCH_H_MATCH | simulation:NYY batting hits match TB pitching: 8. | |||
| PASS | boxscore_crosscheck | simulation | NYY | BAT_PITCH_SO_MATCH | simulation:NYY batting strikeouts match TB pitching: 9. | |||
| PASS | boxscore_crosscheck | simulation | NYY | PA_BF_MATCH | simulation:NYY PA=38 matches TB BF=38. | |||
| PASS | boxscore_crosscheck | simulation | NYY | RUNS_MATCH_FINAL | simulation:NYY runs match final score and opposing pitching runs: 4. | |||
| PASS | boxscore_crosscheck | simulation | TB | BAT_PITCH_BB_MATCH | simulation:TB batting walks match NYY pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | TB | BAT_PITCH_HR_MATCH | simulation:TB batting home runs match NYY pitching: 0. | |||
| PASS | boxscore_crosscheck | simulation | TB | BAT_PITCH_H_MATCH | simulation:TB batting hits match NYY pitching: 5. | |||
| PASS | boxscore_crosscheck | simulation | TB | BAT_PITCH_SO_MATCH | simulation:TB batting strikeouts match NYY pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | TB | PA_BF_MATCH | simulation:TB PA=35 matches NYY BF=35. | |||
| PASS | boxscore_crosscheck | simulation | TB | RUNS_MATCH_FINAL | simulation:TB runs match final score and opposing pitching runs: 2. | |||
| PASS | confidence_calibration | CONFIDENCE_CALIBRATION_APPLIED | Empirical confidence blend verified: 0.485 -> 0.532 at weight 0.500. | {'method': 'empirical_hit_rate_weighted_v1', 'applied': True, 'reason': 'raw confidence blended with verified historical bucket hit rate', 'raw_confidence': 0.484824, 'sample_size': 485, 'empirical_hit_rate': 0.5794, 'empirical_weight': 0.5, 'blended_confidence': 0.532112, 'published_confidence': 0.539612, 'published_after_governors': True, 'governor_mode': 'shrinkage_not_clamp'} | ||||
| PASS | cross_schema | cross-schema | NYY | CURRENT_FINALIZED_MATCH_BOX | NYY current pitcher projected totals match final simulation pitching box score. | |||
| PASS | cross_schema | cross-schema | TB | CURRENT_FINALIZED_MATCH_BOX | TB current pitcher projected totals match final simulation pitching box score. | |||
| PASS | current_payload | current | NYY | CURRENT_LINEUP_SHAPE | NYY current lineup has 9 expected positions. | |||
| PASS | current_payload | current | NYY | CURRENT_MODEL_ZERO_FALLBACK | NYY current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | NYY | CURRENT_NAMES_PRESENT | NYY current hitter names are populated. | |||
| PASS | current_payload | current | NYY | CURRENT_PREDICTIONS_MATCH_FINALIZED | NYY hitter predictions mirror finalized stats. | |||
| PASS | current_payload | current | TB | CURRENT_LINEUP_SHAPE | TB current lineup has 9 expected positions. | |||
| PASS | current_payload | current | TB | CURRENT_MODEL_ZERO_FALLBACK | TB current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | TB | CURRENT_NAMES_PRESENT | TB current hitter names are populated. | |||
| PASS | current_payload | current | TB | CURRENT_PREDICTIONS_MATCH_FINALIZED | TB hitter predictions mirror finalized stats. | |||
| PASS | current_vs_final | cross-schema | NYY | CURRENT_FINALIZED_MATCH_BOX | NYY current finalized batting totals match final simulation box score. | |||
| PASS | current_vs_final | cross-schema | NYY | CURRENT_PLAYER_MATCH_BOX | NYY current finalized hitter lines mirror simulation box score. | |||
| PASS | current_vs_final | cross-schema | TB | CURRENT_FINALIZED_MATCH_BOX | TB current finalized batting totals match final simulation box score. | |||
| PASS | current_vs_final | cross-schema | TB | CURRENT_PLAYER_MATCH_BOX | TB current finalized hitter lines mirror simulation box score. | |||
| PASS | data_leakage | H2H_DATA_LEAKAGE | All head-to-head rows are dated before the prediction game date. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | Home + away win probabilities sum to approximately 1.0. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | away_win_probability is in [0,1]: 0.540. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | confidence is in [0,1]: 0.540. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | home_win_probability is in [0,1]: 0.460. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Final total runs 6 is reasonably close to low-score expected_total_runs 6.0. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Low-score analysis factors are non-negative. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Low-score probability/confidence are valid: 0.690/0.900. | |||||
| PASS | final_decision | FINAL_DECISION_POLICY | Final decision policy preserved model ownership of the winner. | |||||
| PASS | innings | GAME_ENDING_COHERENT | The game ends coherently for its score. | |||||
| PASS | innings | INNINGS_COUNT | inning_by_inning_summary contains 9 innings. | |||||
| PASS | innings | INNING_PLAY_SUMS | Detailed play totals match every half-inning line. | |||||
| PASS | innings | INNING_SEQUENCE | Inning numbers are sequential. | |||||
| PASS | innings | INNING_TOTAL_HITS | Inning hits match batting totals: NYY 8, TB 5. | |||||
| PASS | innings | INNING_TOTAL_RUNS | Inning runs sum to final score: NYY 4 - TB 2. | |||||
| PASS | kpi | LUNA_KPI_TRACE | Luna KPI trace coherent (no_promoted_kpis). | |||||
| PASS | matchup_recency | GUARDRAIL_FINAL_WINNER_SYNC | Guardrail predicted_team matches final predicted winner: NYY. | |||||
| PASS | matchup_recency | MATCHUP_RECENCY_GUARDRAIL | Matchup recency guardrail applied for NYY; cap=0.54, reasons=predicted side recently lost this matchup by 5+ runs; 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. | {'applied': True, 'confidence_cap': 0.54, 'winner_flipped': False, 'reasons': ['predicted side recently lost this matchup by 5+ runs', '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'], 'signals': {'predicted_team': 'NYY', 'opponent_team': 'TB', 'h2h_net_margin': 4, 'opponent_breakout': False, 'opponent_blowout_win': True, 'split_recent_h2h': True, 'recent_h2h': [{'date': '2026-09-24', 'predicted_team_runs': 6, 'opponent_runs': 4, 'margin_for_predicted_team': 2, 'winner': 'NYY'}, {'date': '2026-09-23', 'predicted_team_runs': 9, 'opponent_runs': 2, 'margin_for_predicted_team': 7, 'winner': 'NYY'}, {'date': '2026-09-22', 'predicted_team_runs': 1, 'opponent_runs': 6, 'margin_for_predicted_team': -5, 'winner': 'TB'}], 'prediction_memory': {'available': True, 'reason': 'verified_prior_matchup_predictions_available', 'verification_policy': 'pregame_artifact_matched_to_one_official_final', 'verified_outcome_count': 7, 'consecutive_same_pick_count': 0, 'same_pick_actual_loss_count': 2, 'same_pick_blowout_loss_count': 1, 'prior_predictions': [{'date': '20261003', 'away': 'NYY', 'home': 'TB', 'game_number': 1, 'predicted_team': 'TB', 'actual_winner': 'TB', 'actual_margin': 1, 'raw_pick_probability': 0.518365, 'artifact': '20261003_NYY@TB.json', 'verification': 'pregame_official_final'}, {'date': '20260924', 'away': 'TB', 'home': 'NYY', 'game_number': 1, 'predicted_team': 'NYY', 'actual_winner': 'NYY', 'actual_margin': 2, 'raw_pick_probability': 0.531136, 'artifact': '20260924_TB@NYY.json', 'verification': 'pregame_official_final'}, {'date': '20260923', 'away': 'TB', 'home': 'NYY', 'game_number': 1, 'predicted_team': 'TB', 'actual_winner': 'NYY', 'actual_margin': 7, 'raw_pick_probability': 0.505259, 'artifact': '20260923_TB@NYY.json', 'verification': 'pregame_official_final'}, {'date': '20260922', 'away': 'TB', 'home': 'NYY', 'game_number': 1, 'predicted_team': 'NYY', 'actual_winner': 'NYY', 'actual_margin': 2, 'raw_pick_probability': 0.534918, 'artifact': '20260922_TB@NYY.json', 'verification': 'pregame_official_final'}, {'date': '20260922', 'away': 'TB', 'home': 'NYY', 'game_number': 2, 'predicted_team': 'NYY', 'actual_winner': 'TB', 'actual_margin': 5, 'raw_pick_probability': 0.520635, 'artifact': '20260922_TB@NYY_2.json', 'verification': 'pregame_official_final'}]}, 'guardrail_predicted_team': 'NYY', 'guardrail_opponent_team': 'TB', 'output_pre_simulation_winner': 'NYY', 'output_opponent_team': 'TB', 'simulation_score_winner': 'NYY', 'final_score_winner': 'NYY', 'pre_simulation_winner': 'NYY', 'winner_flipped_by_simulation': False, 'simulation_would_flip_winner': False}, 'hard_flip_suppressed': False, 'flip_authority': 'caps_confidence_and_shifts_runs_only'} | ||||
| PASS | metadata | DATE_PARSE | Date is valid ISO format: 2026-10-05. | |||||
| PASS | metadata | FILENAME_GAME_ID_MATCH | Filename contains game_id: filename=20261005_NYY@TB__20261006T003901Z, game_id=20261005_NYY@TB. | |||||
| PASS | metadata | FILENAME_TEAM_MATCH | Filename teams match JSON teams: NYY@TB. | |||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | H2H base feature is implemented and its runtime trace passed. | {'method': 'h2h_net_margin_monotonic_v1', 'available': True, 'sample_size': 5, 'sample_weight': 0.0577, 'home_net_margin': -14.0, 'absolute_net_margin': 14.0, 'home_average_margin': -2.8, 'home_run_delta': -0.0808, 'away_run_delta': 0.0808, 'evidence': [{'game_id': None, 'home_margin': -2.0}, {'game_id': None, 'home_margin': -7.0}, {'game_id': None, 'home_margin': 5.0}, {'game_id': None, 'home_margin': -2.0}, {'game_id': None, 'home_margin': -8.0}], 'adaptive_parameters': {'h2h.history_limit': 5, 'h2h.maximum_weight': 0.15, 'h2h.prior_games': 8.0, 'h2h.maximum_total_shift': 0.65}} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Score distribution widening is implemented and its runtime trace passed. | {'most_likely': [{'home_runs': 3, 'away_runs': 3, 'probability': 0.028425001857791943}, {'home_runs': 3, 'away_runs': 4, 'probability': 0.026624637022712536}, {'home_runs': 2, 'away_runs': 3, 'probability': 0.02655888481906244}, {'home_runs': 3, 'away_runs': 2, 'probability': 0.026233106036805034}, {'home_runs': 4, 'away_runs': 3, 'probability': 0.026168542020327538}], 'home_distribution': {'0': 0.08835713498291922, '1': 0.1278072747072023, '2': 0.1590222455882233, '3': 0.17019568619203276, '4': 0.15668505451913656, '5': 0.12407804914258759, '6': 0.08451828939924737, '7': 0.04952161498021102, '8': 0.024959004456441655, '9': 0.010820518614672165, '10': 0.004035127417326009}, 'away_distribution': {'0': 0.08480018763735535, '1': 0.1229653602338988, '2': 0.15413496442680732, '3': 0.16701364466852497, '4': 0.15643543980704544, '5': 0.12666328533417143, '6': 0.08865408588729988, '7': 0.05363881451733485, '8': 0.02805381911797119, '9': 0.012683444737746479, '10': 0.004956953631844255}, 'model': 'overdispersed_score_distribution', 'variance_multiplier': 2.25, 'variance_floor': 2.75, 'roadmap_status': 'implemented_above_requested_1.4x'} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Season/recent-form quality blend is implemented and its runtime trace passed. | {'method': 'season_recent_quality_blend_v2_adaptive', 'recent_window': 10, 'season_quality_edge': -0.2853, 'recent_quality_edge': 0.028, 'season_weight': 0.65, 'recent_weight': 0.35, 'recent_reliability': 1.0, 'alignment': 'conflict', 'blended_quality_edge': -0.1757} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Simulation flip control is implemented and its runtime trace passed. | {'pre_simulation_score': {'away_runs': 4, 'home_runs': 2, 'score_text': 'NYY 4 - 2 TB', 'winner': 'NYY'}, 'final_simulation_score': {'away_runs': 4, 'home_runs': 2, 'score_text': 'NYY 4 - 2 TB', 'winner': 'NYY'}, 'winner_flipped_by_simulation': False, 'simulation_would_flip_winner': False, 'sim_flipped_pre_winner': False, 'sim_flip_trusted': False, 'sim_flip_policy': 'diagnostic_only_unless_independently_supported', 'independent_margin_support': False, 'independent_margin_support_evidence': {'pitcher_matchup_edge_home_minus_away': -0.02, 'recent_form_edge_home_minus_away': -0.182, 'winner_direction': 'away', 'thresholds': {'pitcher_matchup': 0.35, 'recent_form': 0.75}}, 'margin_widening_capped': False, 'simulation_winner_agrees': True, 'away_run_delta': 0, 'home_run_delta': 0, 'total_run_delta': 0, 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_usage': 'organic_simulation_realized_target', 'final_prediction_source': 'stable_final_prediction_policy', 'final_decision_policy': {'policy_version': 'model_target_authoritative_simulation_realizes_v3', 'away_runs': 4, 'home_runs': 2, 'winner': 'NYY', 'model_winner': 'NYY', 'simulation_winner': 'NYY', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 2, 'published_winner': 'NYY', 'published_winner_draw_share': 1.0, 'draw_majority_team': 'NYY', 'published_winner_is_draw_majority': True, 'sampling': 'target_conditioned_selection', 'is_unbiased_probability_sample': False, 'note': 'Draw shares are target-conditioned and diagnostic. A published winner holding a minority share is recorded, not suppressed.'}, 'simulation_score_enabled': True, 'independent_margin_support': False, 'margin_widening_capped': False, 'model_margin': 2, 'simulation_margin': 2, 'simulation_usage': 'organic_simulation_realized_target', 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_realized_target': True, 'model_score': {'away_runs': 4, 'home_runs': 2}, 'simulation_score': {'away_runs': 4, 'home_runs': 2}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 2, 'final_margin': 2, 'winner_quality_edge': 0.1757, 'winner': 'NYY', 'score_reviewed': {'away_runs': 4, 'home_runs': 2, 'source': 'enhanced_prediction.pre_simulation_target'}, 'reason': 'published margin is directionally supported or within review threshold'}} | ||||
| PASS | pipeline | PIPELINE_VERSION | Prediction pipeline version is current: enhanced_game_prediction_v4_continuous_learning__player_form_v3_5_10_season. | |||||
| PASS | pitch_by_pitch | PITCH_DETAIL_SANITY | Pitch-by-pitch speeds and zones are within sanity ranges. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | away pitcher pitch-by-pitch count matches pitch_count_summary total: 138. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | home pitcher pitch-by-pitch count matches pitch_count_summary total: 151. | |||||
| PASS | pitch_count | simulation | NYY | PITCH_COUNT_PITCHER_MATCH | NYY pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | NYY | PITCH_COUNT_TOTAL_MATCH | NYY pitch_count_summary total, row sum, and pitching total all match: 138. | |||
| PASS | pitch_count | simulation | TB | PITCH_COUNT_PITCHER_MATCH | TB pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | TB | PITCH_COUNT_TOTAL_MATCH | TB pitch_count_summary total, row sum, and pitching total all match: 151. | |||
| PASS | pitcher_opponent_strength | PITCHER_OPPONENT_STRENGTH_BOUNDS | Pitcher-opponent adjustment stayed inside supported bounds. | |||||
| PASS | pitching | PITCHER_APPEARANCE_COHERENT | All 8 pitchers in the box actually appeared. | |||||
| PASS | pitching | PUBLISHED_PITCHER_LINES_MATCH_BOX | Published pitcher lines cover the outs the box recorded. | |||||
| PASS | pitching | current | NYY | PITCHING_REALISM | current:NYY pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | NYY | STARTER_PRESENT | current:NYY includes a starter/opener role. | |||
| PASS | pitching | current | TB | PITCHING_REALISM | current:TB pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | TB | STARTER_PRESENT | current:TB includes a starter/opener role. | |||
| PASS | pitching | simulation | NYY | PITCHING_REALISM | simulation:NYY pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | NYY | STARTER_PRESENT | simulation:NYY includes a starter/opener role. | |||
| PASS | pitching | simulation | TB | PITCHING_REALISM | simulation:TB pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | TB | STARTER_PRESENT | simulation:TB includes a starter/opener role. | |||
| PASS | pitching_totals | current | NYY | PITCHING_TOTALS_SUM | current:NYY pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | NYY | PITCHING_TOTALS_SUM | current:NYY pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | current | TB | PITCHING_TOTALS_SUM | current:TB pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | TB | PITCHING_TOTALS_SUM | current:TB pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | NYY | PITCHING_TOTALS_SUM | simulation:NYY pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | NYY | PITCHING_TOTALS_SUM | simulation:NYY pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | TB | PITCHING_TOTALS_SUM | simulation:TB pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | TB | PITCHING_TOTALS_SUM | simulation:TB pitching totals equal summed pitcher lines for available fields. | |||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Enhanced AI score matches enhanced target: NYY 4 - 2 TB. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation score matches final score: NYY 4 - 2 TB. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation winner matches final score: NYY wins 4-2. | |||||
| PASS | prediction_comparison | SIMULATION_WINNER_FLIP_TRACE | Simulation decision is explicit: model=NYY, simulation=NYY, published=NYY. | |||||
| PASS | probability | CONFIDENCE_RANGE | Enhanced target confidence is in range: 0.540. | |||||
| PASS | recent_form | RECENT_FORM_RANGE | away recent_form record is coherent: 5/10 (0.500). | |||||
| PASS | recent_form | RECENT_FORM_RANGE | home recent_form record is coherent: 5/10 (0.500). | |||||
| PASS | report | REPORT_COMPLETE | All findings, passes, warnings, errors, and critical issues are rendered in the single HTML report. | |||||
| PASS | schema | SCHEMA_ROOTS_PRESENT | Both major schemas are present: game, scoring_simulation, game_summary, prediction_comparison. | |||||
| PASS | score | GAME_SUMMARY_MATCH | game_summary agrees with the published score (game.final_prediction): NYY wins 4-2. | |||||
| PASS | score | SCORE_NO_TIE | Final score has a clear winner: NYY wins 4-2. | |||||
| PASS | score | SCORE_STEP_FINAL_MATCH | simulation_result step matches final score: 4-2. | |||||
| PASS | score | SCORE_STEP_ORDER | Score evolution contains the expected ordered steps. | |||||
| PASS | score | TARGET_SCORE_DRIFT | Final score is close to enhanced target: target 4-2, final 4-2 (delta 0). | |||||
| PASS | score | TOTAL_RUNS_MATCH | total_runs field matches final score total: 6. | |||||
| PASS | score | WINNER_FIELD_MATCH | winner field is consistent: NYY wins 4-2. | |||||
| PASS | score | cross-schema | CURRENT_SCORE_MATCHES_SIM | game.predicted_runs matches scoring_simulation.final_score. | ||||
| PASS | team_recent_performance | current | NYY | RECENT_FORM_RANGE | NYY recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | NYY | TEAM_RECENT_RECORD | NYY wins and win_pct agree: 6/10 = 0.600. | |||
| PASS | team_recent_performance | current | TB | RECENT_FORM_RANGE | TB recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | TB | TEAM_RECENT_RECORD | TB wins and win_pct agree: 6/10 = 0.600. |
Info/context findings
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| INFO | score_reconciliation | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
Score evolution
| step | away_runs | home_runs | confidence | description |
|---|---|---|---|---|
| historical_ml | 4.864972693493641 | 2.9968524001566985 | Base ML historical model prediction | |
| variance_applied | 5 | 3 | Deterministic baseline target (variance factor 1.0) | |
| enhanced_prediction | 4 | 3 | 0.540 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| kpi_layer | 4 | 3 | Savant KPI blend applied to the model target | |
| embedded_savant_run_environment | 4 | 2 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality | |
| fundamental_edge_target_review | 4 | 2 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments | |
| capped_target | 4 | 2 | Capped at max 12 realistic runs | |
| simulation_result | 4 | 2 | Final inning-by-inning simulation result |
Inning-by-inning linescore
| team | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | R | H |
|---|---|---|---|---|---|---|---|---|---|---|---|
| NYY | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 3 | 0 | 4 | 8 |
| TB | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 2 | 5 |
Team totals - current + final simulation
| src | team | type | PA | AB | H | 2B | 3B | HR | RBI | R | BB | SO | SF | HBP | SB | CS | IP | ER | BF | Pitches |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| current | NYY | batting | 35 | 8 | 3 | 0 | 1 | 4 | 4 | 3 | 9 | 0 | 0 | 0 | 0 | |||||
| current | NYY | pitching | 5 | 0 | 2 | 1 | 7 | 9.0 | 0 | 0 | 0 | |||||||||
| current | TB | batting | 34 | 5 | 1 | 0 | 0 | 2 | 2 | 1 | 7 | 0 | 0 | 0 | 0 | |||||
| current | TB | pitching | 8 | 1 | 4 | 3 | 9 | 9.0 | 4 | 0 | 0 | |||||||||
| simulation | NYY | batting | 35 | 8 | 3 | 0 | 1 | 4 | 4 | 3 | 9 | 0 | 0 | |||||||
| simulation | NYY | pitching | 5 | 0 | 2 | 1 | 7 | 9.0 | 0 | 35 | 138 | |||||||||
| simulation | TB | batting | 34 | 5 | 1 | 0 | 0 | 2 | 2 | 1 | 7 | 0 | 0 | |||||||
| simulation | TB | pitching | 8 | 1 | 4 | 3 | 9 | 9.0 | 4 | 38 | 151 |
Batting lines - current + final simulation
| src | team | order | pos | name | PA | AB | H | 2B | 3B | HR | R | RBI | BB | SO | HBP | AVG |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| current | NYY | DH | Ben Rice | 0 | 5 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0 | 0.200 | |
| current | NYY | LF | Cody Bellinger | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0.250 | |
| current | NYY | 1B | Luis García Jr. | 0 | 4 | 1 | 0 | 0 | 1 | 1 | 1 | 0 | 1 | 0 | 0.250 | |
| current | NYY | RF | Spencer Jones | 0 | 4 | 1 | 1 | 0 | 0 | 1 | 2 | 0 | 2 | 0 | 0.250 | |
| current | NYY | SS | George Lombard Jr. | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0.333 | |
| current | NYY | 2B | Jazz Chisholm Jr. | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.250 | |
| current | NYY | CF | Trent Grisham | 0 | 4 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.250 | |
| current | NYY | C | Austin Wells | 0 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.000 | |
| current | NYY | 3B | Ryan McMahon | 0 | 3 | 1 | 1 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0.333 | |
| current | TB | DH | Yandy Díaz | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.250 | |
| current | TB | 1B | Jonathan Aranda | 0 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.000 | |
| current | TB | 3B | Junior Caminero | 0 | 3 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0.000 | |
| current | TB | C | Liam Hicks | 0 | 4 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.250 | |
| current | TB | LF | Chandler Simpson | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.250 | |
| current | TB | RF | Victor Mesa Jr. | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.250 | |
| current | TB | CF | Jonny DeLuca | 0 | 4 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.000 | |
| current | TB | 2B | Richie Palacios | 0 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 | |
| current | TB | SS | Taylor Walls | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.333 | |
| simulation | NYY | 1 | DH | Ben Rice | 5 | 5 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0 | 0.200 |
| simulation | NYY | 2 | LF | Cody Bellinger | 5 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0.250 |
| simulation | NYY | 3 | 1B | Luis García Jr. | 4 | 4 | 1 | 0 | 0 | 1 | 1 | 1 | 0 | 1 | 0 | 0.250 |
| simulation | NYY | 4 | RF | Spencer Jones | 4 | 4 | 1 | 1 | 0 | 0 | 1 | 2 | 0 | 2 | 0 | 0.250 |
| simulation | NYY | 5 | SS | George Lombard Jr. | 4 | 3 | 1 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0.333 |
| simulation | NYY | 6 | 2B | Jazz Chisholm Jr. | 4 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.250 |
| simulation | NYY | 7 | CF | Trent Grisham | 4 | 4 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.250 |
| simulation | NYY | 8 | C | Austin Wells | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.000 |
| simulation | NYY | 9 | 3B | Ryan McMahon | 4 | 3 | 1 | 1 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0.333 |
| simulation | TB | 1 | DH | Yandy Díaz | 4 | 4 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.250 |
| simulation | TB | 2 | 1B | Jonathan Aranda | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.000 |
| simulation | TB | 3 | 3B | Junior Caminero | 4 | 3 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0.000 |
| simulation | TB | 4 | C | Liam Hicks | 4 | 4 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.250 |
| simulation | TB | 5 | LF | Chandler Simpson | 4 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.250 |
| simulation | TB | 6 | RF | Victor Mesa Jr. | 4 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.250 |
| simulation | TB | 7 | CF | Jonny DeLuca | 4 | 4 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.000 |
| simulation | TB | 8 | 2B | Richie Palacios | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 |
| simulation | TB | 9 | SS | Taylor Walls | 3 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.333 |
Pitching lines - current + final simulation
| src | team | order | name | role | IP | H | R | ER | BB | SO | HR | BF | Pitches | sim_ERA | season_ERA | season_WHIP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| current | NYY | 1 | Cam Schlittler | Starter | 5.2 | 1 | 0 | 0 | 1 | 5 | 0 | 0 | 0 | 0.00 | 1.89 | 0.91 |
| current | NYY | 4 | Paul Blackburn | Middle Reliever (High Leverage) | 1.1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.00 | 1.53 | 1.06 |
| current | NYY | 5 | John Schreiber | Middle Reliever (High Leverage) | 1.0 | 2 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 3.23 | 1.22 |
| current | NYY | 6 | Brent Headrick | Setup Man | 1.0 | 2 | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 0.00 | 2.16 | 1.22 |
| current | TB | 1 | Freddy Peralta | Starter | 5.1 | 2 | 1 | 1 | 1 | 6 | 1 | 0 | 0 | 1.69 | 4.42 | 1.33 |
| current | TB | 3 | Cole Sulser | Setup Man | 1.0 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.00 | 3.83 | 1.19 |
| current | TB | 4 | Bryan Baker | Closer | 1.0 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 9.00 | 1.28 | 0.85 |
| current | TB | 5 | Steven Matz | Middle Reliever | 1.2 | 4 | 2 | 2 | 1 | 2 | 0 | 0 | 0 | 10.80 | 5.49 | 1.23 |
| simulation | NYY | 1 | Cam Schlittler | Starter | 5.2 | 1 | 0 | 0 | 1 | 5 | 0 | 19 | 74 | 0.00 | 1.89 | 0.91 |
| simulation | NYY | 2 | Paul Blackburn | Middle Reliever (High Leverage) | 1.1 | 0 | 0 | 0 | 0 | 1 | 0 | 4 | 24 | 0.00 | 1.53 | 1.06 |
| simulation | NYY | 3 | John Schreiber | Middle Reliever (High Leverage) | 1.0 | 2 | 1 | 0 | 0 | 0 | 0 | 6 | 18 | 0.00 | 3.23 | 1.22 |
| simulation | NYY | 4 | Brent Headrick | Setup Man | 1.0 | 2 | 1 | 0 | 0 | 1 | 0 | 6 | 22 | 0.00 | 2.16 | 1.22 |
| simulation | TB | 1 | Freddy Peralta | Starter | 5.1 | 2 | 1 | 1 | 1 | 6 | 1 | 19 | 73 | 1.69 | 4.42 | 1.33 |
| simulation | TB | 2 | Cole Sulser | Setup Man | 1.0 | 1 | 0 | 0 | 0 | 1 | 0 | 4 | 16 | 0.00 | 3.83 | 1.19 |
| simulation | TB | 3 | Bryan Baker | Closer | 1.0 | 1 | 1 | 1 | 1 | 0 | 0 | 5 | 23 | 9.00 | 1.28 | 0.85 |
| simulation | TB | 4 | Steven Matz | Middle Reliever | 1.2 | 4 | 2 | 2 | 1 | 2 | 0 | 10 | 39 | 10.80 | 5.49 | 1.23 |
Pitch count summary
| team | pitcher | role | IP | R | H | BB | SO | BF | Pitches |
|---|---|---|---|---|---|---|---|---|---|
| NYY | Cam Schlittler | Starter | 5.2 | 0 | 1 | 1 | 5 | 19 | 74 |
| NYY | Paul Blackburn | Middle Reliever (High Leverage) | 1.1 | 0 | 0 | 0 | 1 | 4 | 24 |
| NYY | John Schreiber | Middle Reliever (High Leverage) | 1.0 | 1 | 2 | 0 | 0 | 6 | 18 |
| NYY | Brent Headrick | Setup Man | 1.0 | 1 | 2 | 0 | 1 | 6 | 22 |
| TB | Freddy Peralta | Starter | 5.1 | 1 | 2 | 1 | 6 | 19 | 73 |
| TB | Cole Sulser | Setup Man | 1.0 | 0 | 1 | 0 | 1 | 4 | 16 |
| TB | Bryan Baker | Closer | 1.0 | 1 | 1 | 1 | 0 | 5 | 23 |
| TB | Steven Matz | Middle Reliever | 1.2 | 2 | 4 | 1 | 2 | 10 | 39 |
Audit rule catalog
| rule | status | critical | error | warning | pass | description |
|---|---|---|---|---|---|---|
| BATTING_REALISM | good | 0 | 0 | 0 | 4 | Player/team batting lines obey baseball constraints. |
| BATTING_TOTALS_SUM | good | 0 | 0 | 0 | 4 | Team batting totals equal the sum of player batting lines. |
| BAT_PITCH_BB_MATCH | good | 0 | 0 | 0 | 2 | Batting walks match opposing pitching walks allowed. |
| BAT_PITCH_HR_MATCH | good | 0 | 0 | 0 | 2 | Batting home runs match opposing pitching home runs allowed. |
| BAT_PITCH_H_MATCH | good | 0 | 0 | 0 | 2 | Batting hits match opposing pitching hits allowed. |
| BAT_PITCH_SO_MATCH | good | 0 | 0 | 0 | 2 | Batting strikeouts match opposing pitching strikeouts. |
| CONFIDENCE_CALIBRATION_APPLIED | good | 0 | 0 | 0 | 1 | Empirical confidence blending uses the requested sample weight and remains between raw confidence and empirical hit rate. |
| CONFIDENCE_RANGE | good | 0 | 0 | 0 | 5 | Confidence values are between 0 and 1. |
| CURRENT_FINALIZED_MATCH_BOX | good | 0 | 0 | 0 | 4 | Current finalized player totals agree with final simulation box score unless model/simulation sources are separated. |
| CURRENT_LINEUP_SHAPE | good | 0 | 0 | 0 | 2 | Current predicted_performance contains a plausible 9-player lineup. |
| CURRENT_MODEL_ZERO_FALLBACK | good | 0 | 0 | 0 | 2 | Current model payload did not rely too heavily on all-zero model predictions. |
| CURRENT_NAMES_PRESENT | good | 0 | 0 | 0 | 2 | Current predicted_performance has usable player names. |
| CURRENT_PITCHER_DUPLICATION | not triggered | 0 | 0 | 0 | 0 | Pitcher lists duplicated across current sections are detected and reconciled. |
| CURRENT_PLAYER_MATCH_BOX | good | 0 | 0 | 0 | 2 | Current finalized hitter lines mirror the simulation box score unless model/simulation sources are separated. |
| CURRENT_PREDICTIONS_MATCH_FINALIZED | good | 0 | 0 | 0 | 2 | Current hitter predictions mirror finalized stats. |
| CURRENT_SCORE_MATCHES_SIM | good | 0 | 0 | 0 | 1 | game.predicted_runs is either synced to simulation or paired with game.simulation_runs. |
| DATE_PARSE | good | 0 | 0 | 0 | 1 | Game date can be parsed as an ISO date. |
| FILENAME_GAME_ID_MATCH | good | 0 | 0 | 0 | 1 | Filename and game_id identify the same game. |
| FILENAME_TEAM_MATCH | good | 0 | 0 | 0 | 1 | Filename teams match the teams inside the JSON. |
| FINAL_DECISION_POLICY | good | 0 | 0 | 0 | 1 | One organic simulation cannot replace a disagreeing model winner. |
| GAME_ENDING_COHERENT | good | 0 | 0 | 0 | 1 | The inning line ends the way a real game with the published score ends. |
| GAME_SUMMARY_MATCH | good | 0 | 0 | 0 | 1 | game_summary text agrees with final score. |
| GUARDRAIL_FINAL_WINNER_SYNC | good | 0 | 0 | 0 | 1 | Guardrail trace predicted_team matches the final predicted winner. |
| H2H_DATA_LEAKAGE | good | 0 | 0 | 0 | 1 | Head-to-head history does not include same-day or future games in pregame mode. |
| INNINGS_COUNT | good | 0 | 0 | 0 | 1 | Inning count is valid for MLB. |
| INNING_OUTS | not triggered | 0 | 0 | 0 | 0 | Each played half inning has valid outs. |
| INNING_PLAY_SUMS | good | 0 | 0 | 0 | 1 | Detailed plays agree with inning runs, hits, outs, and pitches. |
| INNING_SEQUENCE | good | 0 | 0 | 0 | 1 | Innings are sequential and unique. |
| INNING_TOTAL_HITS | good | 0 | 0 | 0 | 1 | Inning hits sum to batting team hits. |
| INNING_TOTAL_RUNS | good | 0 | 0 | 0 | 1 | Inning runs sum to final score. |
| LOW_SCORE_ANALYSIS | good | 0 | 0 | 0 | 3 | Low-score probability factors are valid and directionally consistent. |
| LUNA_KPI_TRACE | good | 0 | 0 | 0 | 1 | Promoted Luna KPIs are traced per hitter and the per-game totals agree. |
| MATCHUP_RECENCY_GUARDRAIL | good | 0 | 0 | 0 | 1 | Repeat picks are capped when recent same-matchup results contradict high confidence. |
| OPTIMIZATION_ROADMAP_STATUS | good | 0 | 0 | 0 | 4 | H2H, score-distribution, simulation-flip, and recent-form roadmap signals are explicitly traced and satisfy their configured safeguards. |
| PA_BF_MATCH | good | 0 | 0 | 0 | 2 | Team plate appearances match opposing batters faced. |
| PIPELINE_VERSION | good | 0 | 0 | 0 | 1 | Prediction artifacts identify the stable pipeline version that created them. |
| PITCHER_APPEARANCE_COHERENT | good | 0 | 0 | 0 | 1 | Every pitcher in the box actually appeared: no 0-inning 0-batter line, and no pitch without a batter faced. |
| PITCHER_OPPONENT_STRENGTH_BOUNDS | good | 0 | 0 | 0 | 1 | Pitcher-opponent run factors and score deltas remain inside supported bounds. |
| PITCHING_REALISM | good | 0 | 0 | 0 | 4 | Pitcher/team pitching lines obey baseball constraints. |
| PITCHING_TOTALS_SUM | good | 0 | 0 | 0 | 8 | Team pitching totals equal the sum of pitcher lines. |
| PITCH_COUNT_PITCHER_MATCH | good | 0 | 0 | 0 | 2 | Pitch count summary pitcher rows agree with pitching box score. |
| PITCH_COUNT_TOTAL_MATCH | good | 0 | 0 | 0 | 4 | Pitch count summary totals match team pitching totals. |
| PITCH_DETAIL_SANITY | good | 0 | 0 | 0 | 1 | Pitch-by-pitch details have plausible values. |
| PREDICTION_COMPARISON_MATCH | good | 0 | 0 | 0 | 3 | prediction_comparison scores agree with target/final result. |
| PUBLISHED_PITCHER_LINES_MATCH_BOX | good | 0 | 0 | 0 | 1 | Published staff lines cover the outs the box recorded, extra innings included. |
| RECENT_FORM_RANGE | good | 0 | 0 | 0 | 4 | Recent-form metrics are within valid numeric ranges. |
| RECONCILIATION_PROPAGATION | info | 0 | 0 | 0 | 0 | When score_target_reconciliation is used, all final-facing sections are regenerated from the reconciled score. |
| REPORT_COMPLETE | good | 0 | 0 | 0 | 1 | Report includes every audit result in the all-findings table. |
| REPORT_CSV_EXPORT | not triggered | 0 | 0 | 0 | 0 | Optional CSV exports were written for summary and problem rows. |
| RUNS_MATCH_FINAL | good | 0 | 0 | 0 | 2 | Batting/pitching runs agree with final score. |
| SCHEMA_ROOTS_PRESENT | good | 0 | 0 | 0 | 1 | Expected JSON root sections exist and can be audited. |
| SCORE_NO_TIE | good | 0 | 0 | 0 | 1 | Final MLB score has a clear winner. |
| SCORE_STEP_FINAL_MATCH | good | 0 | 0 | 0 | 1 | score_evolution simulation_result matches final score. |
| SCORE_STEP_ORDER | good | 0 | 0 | 0 | 1 | Score evolution contains the expected ordered steps. |
| SIMULATION_WINNER_FLIP_TRACE | good | 0 | 0 | 0 | 1 | Simulation winner reversals are explicitly recorded. |
| STARTER_PRESENT | good | 0 | 0 | 0 | 4 | Pitching staff includes a starter or opener when expected. |
| SYNTHETIC_SCORE_PLAYS | not triggered | 0 | 0 | 0 | 0 | Score reconciliation must not inject synthetic run or out plays. |
| TARGET_SCORE_DRIFT | good | 0 | 0 | 0 | 1 | Final score does not drift too far from enhanced target. |
| TEAM_RECENT_RECORD | good | 0 | 0 | 0 | 2 | team_recent_performance wins and win_pct agree with games_analyzed. |
| TOTAL_RUNS_MATCH | good | 0 | 0 | 0 | 1 | total_runs equals away + home runs. |
| WINNER_FIELD_MATCH | good | 0 | 0 | 0 | 1 | winner field agrees with the final score. |
20261005_NYY@TB
20261005_NYY@TB__20261006T013857Z.json • 2026-10-05
Clean: no problems detected. Risk score: 0.
No action required
No critical, error, or warning findings were detected.
Problems table - exact rows
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|
All findings - complete audit trail
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| INFO | score_reconciliation | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. | |||||
| PASS | batting | current | NYY | BATTING_REALISM | current:NYY hitter lines pass basic baseball constraints. | |||
| PASS | batting | current | TB | BATTING_REALISM | current:TB hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | NYY | BATTING_REALISM | simulation:NYY hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | TB | BATTING_REALISM | simulation:TB hitter lines pass basic baseball constraints. | |||
| PASS | batting_totals | current | NYY | BATTING_TOTALS_SUM | current:NYY batting totals equal summed player lines. | |||
| PASS | batting_totals | current | TB | BATTING_TOTALS_SUM | current:TB batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | NYY | BATTING_TOTALS_SUM | simulation:NYY batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | TB | BATTING_TOTALS_SUM | simulation:TB batting totals equal summed player lines. | |||
| PASS | boxscore_crosscheck | simulation | NYY | BAT_PITCH_BB_MATCH | simulation:NYY batting walks match TB pitching: 3. | |||
| PASS | boxscore_crosscheck | simulation | NYY | BAT_PITCH_HR_MATCH | simulation:NYY batting home runs match TB pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | NYY | BAT_PITCH_H_MATCH | simulation:NYY batting hits match TB pitching: 8. | |||
| PASS | boxscore_crosscheck | simulation | NYY | BAT_PITCH_SO_MATCH | simulation:NYY batting strikeouts match TB pitching: 9. | |||
| PASS | boxscore_crosscheck | simulation | NYY | PA_BF_MATCH | simulation:NYY PA=38 matches TB BF=38. | |||
| PASS | boxscore_crosscheck | simulation | NYY | RUNS_MATCH_FINAL | simulation:NYY runs match final score and opposing pitching runs: 4. | |||
| PASS | boxscore_crosscheck | simulation | TB | BAT_PITCH_BB_MATCH | simulation:TB batting walks match NYY pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | TB | BAT_PITCH_HR_MATCH | simulation:TB batting home runs match NYY pitching: 0. | |||
| PASS | boxscore_crosscheck | simulation | TB | BAT_PITCH_H_MATCH | simulation:TB batting hits match NYY pitching: 5. | |||
| PASS | boxscore_crosscheck | simulation | TB | BAT_PITCH_SO_MATCH | simulation:TB batting strikeouts match NYY pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | TB | PA_BF_MATCH | simulation:TB PA=35 matches NYY BF=35. | |||
| PASS | boxscore_crosscheck | simulation | TB | RUNS_MATCH_FINAL | simulation:TB runs match final score and opposing pitching runs: 2. | |||
| PASS | confidence_calibration | CONFIDENCE_CALIBRATION_APPLIED | Empirical confidence blend verified: 0.485 -> 0.532 at weight 0.500. | {'method': 'empirical_hit_rate_weighted_v1', 'applied': True, 'reason': 'raw confidence blended with verified historical bucket hit rate', 'raw_confidence': 0.484824, 'sample_size': 485, 'empirical_hit_rate': 0.5794, 'empirical_weight': 0.5, 'blended_confidence': 0.532112, 'published_confidence': 0.539612, 'published_after_governors': True, 'governor_mode': 'shrinkage_not_clamp'} | ||||
| PASS | cross_schema | cross-schema | NYY | CURRENT_FINALIZED_MATCH_BOX | NYY current pitcher projected totals match final simulation pitching box score. | |||
| PASS | cross_schema | cross-schema | TB | CURRENT_FINALIZED_MATCH_BOX | TB current pitcher projected totals match final simulation pitching box score. | |||
| PASS | current_payload | current | NYY | CURRENT_LINEUP_SHAPE | NYY current lineup has 9 expected positions. | |||
| PASS | current_payload | current | NYY | CURRENT_MODEL_ZERO_FALLBACK | NYY current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | NYY | CURRENT_NAMES_PRESENT | NYY current hitter names are populated. | |||
| PASS | current_payload | current | NYY | CURRENT_PREDICTIONS_MATCH_FINALIZED | NYY hitter predictions mirror finalized stats. | |||
| PASS | current_payload | current | TB | CURRENT_LINEUP_SHAPE | TB current lineup has 9 expected positions. | |||
| PASS | current_payload | current | TB | CURRENT_MODEL_ZERO_FALLBACK | TB current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | TB | CURRENT_NAMES_PRESENT | TB current hitter names are populated. | |||
| PASS | current_payload | current | TB | CURRENT_PREDICTIONS_MATCH_FINALIZED | TB hitter predictions mirror finalized stats. | |||
| PASS | current_vs_final | cross-schema | NYY | CURRENT_FINALIZED_MATCH_BOX | NYY current finalized batting totals match final simulation box score. | |||
| PASS | current_vs_final | cross-schema | NYY | CURRENT_PLAYER_MATCH_BOX | NYY current finalized hitter lines mirror simulation box score. | |||
| PASS | current_vs_final | cross-schema | TB | CURRENT_FINALIZED_MATCH_BOX | TB current finalized batting totals match final simulation box score. | |||
| PASS | current_vs_final | cross-schema | TB | CURRENT_PLAYER_MATCH_BOX | TB current finalized hitter lines mirror simulation box score. | |||
| PASS | data_leakage | H2H_DATA_LEAKAGE | All head-to-head rows are dated before the prediction game date. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | Home + away win probabilities sum to approximately 1.0. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | away_win_probability is in [0,1]: 0.540. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | confidence is in [0,1]: 0.540. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | home_win_probability is in [0,1]: 0.460. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Final total runs 6 is reasonably close to low-score expected_total_runs 6.0. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Low-score analysis factors are non-negative. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Low-score probability/confidence are valid: 0.690/0.900. | |||||
| PASS | final_decision | FINAL_DECISION_POLICY | Final decision policy preserved model ownership of the winner. | |||||
| PASS | innings | GAME_ENDING_COHERENT | The game ends coherently for its score. | |||||
| PASS | innings | INNINGS_COUNT | inning_by_inning_summary contains 9 innings. | |||||
| PASS | innings | INNING_PLAY_SUMS | Detailed play totals match every half-inning line. | |||||
| PASS | innings | INNING_SEQUENCE | Inning numbers are sequential. | |||||
| PASS | innings | INNING_TOTAL_HITS | Inning hits match batting totals: NYY 8, TB 5. | |||||
| PASS | innings | INNING_TOTAL_RUNS | Inning runs sum to final score: NYY 4 - TB 2. | |||||
| PASS | kpi | LUNA_KPI_TRACE | Luna KPI trace coherent (no_promoted_kpis). | |||||
| PASS | matchup_recency | GUARDRAIL_FINAL_WINNER_SYNC | Guardrail predicted_team matches final predicted winner: NYY. | |||||
| PASS | matchup_recency | MATCHUP_RECENCY_GUARDRAIL | Matchup recency guardrail applied for NYY; cap=0.54, reasons=predicted side recently lost this matchup by 5+ runs; 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. | {'applied': True, 'confidence_cap': 0.54, 'winner_flipped': False, 'reasons': ['predicted side recently lost this matchup by 5+ runs', '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'], 'signals': {'predicted_team': 'NYY', 'opponent_team': 'TB', 'h2h_net_margin': 4, 'opponent_breakout': False, 'opponent_blowout_win': True, 'split_recent_h2h': True, 'recent_h2h': [{'date': '2026-09-24', 'predicted_team_runs': 6, 'opponent_runs': 4, 'margin_for_predicted_team': 2, 'winner': 'NYY'}, {'date': '2026-09-23', 'predicted_team_runs': 9, 'opponent_runs': 2, 'margin_for_predicted_team': 7, 'winner': 'NYY'}, {'date': '2026-09-22', 'predicted_team_runs': 1, 'opponent_runs': 6, 'margin_for_predicted_team': -5, 'winner': 'TB'}], 'prediction_memory': {'available': True, 'reason': 'verified_prior_matchup_predictions_available', 'verification_policy': 'pregame_artifact_matched_to_one_official_final', 'verified_outcome_count': 7, 'consecutive_same_pick_count': 0, 'same_pick_actual_loss_count': 2, 'same_pick_blowout_loss_count': 1, 'prior_predictions': [{'date': '20261003', 'away': 'NYY', 'home': 'TB', 'game_number': 1, 'predicted_team': 'TB', 'actual_winner': 'TB', 'actual_margin': 1, 'raw_pick_probability': 0.518365, 'artifact': '20261003_NYY@TB.json', 'verification': 'pregame_official_final'}, {'date': '20260924', 'away': 'TB', 'home': 'NYY', 'game_number': 1, 'predicted_team': 'NYY', 'actual_winner': 'NYY', 'actual_margin': 2, 'raw_pick_probability': 0.531136, 'artifact': '20260924_TB@NYY.json', 'verification': 'pregame_official_final'}, {'date': '20260923', 'away': 'TB', 'home': 'NYY', 'game_number': 1, 'predicted_team': 'TB', 'actual_winner': 'NYY', 'actual_margin': 7, 'raw_pick_probability': 0.505259, 'artifact': '20260923_TB@NYY.json', 'verification': 'pregame_official_final'}, {'date': '20260922', 'away': 'TB', 'home': 'NYY', 'game_number': 1, 'predicted_team': 'NYY', 'actual_winner': 'NYY', 'actual_margin': 2, 'raw_pick_probability': 0.534918, 'artifact': '20260922_TB@NYY.json', 'verification': 'pregame_official_final'}, {'date': '20260922', 'away': 'TB', 'home': 'NYY', 'game_number': 2, 'predicted_team': 'NYY', 'actual_winner': 'TB', 'actual_margin': 5, 'raw_pick_probability': 0.520635, 'artifact': '20260922_TB@NYY_2.json', 'verification': 'pregame_official_final'}]}, 'guardrail_predicted_team': 'NYY', 'guardrail_opponent_team': 'TB', 'output_pre_simulation_winner': 'NYY', 'output_opponent_team': 'TB', 'simulation_score_winner': 'NYY', 'final_score_winner': 'NYY', 'pre_simulation_winner': 'NYY', 'winner_flipped_by_simulation': False, 'simulation_would_flip_winner': False}, 'hard_flip_suppressed': False, 'flip_authority': 'caps_confidence_and_shifts_runs_only'} | ||||
| PASS | metadata | DATE_PARSE | Date is valid ISO format: 2026-10-05. | |||||
| PASS | metadata | FILENAME_GAME_ID_MATCH | Filename contains game_id: filename=20261005_NYY@TB__20261006T013857Z, game_id=20261005_NYY@TB. | |||||
| PASS | metadata | FILENAME_TEAM_MATCH | Filename teams match JSON teams: NYY@TB. | |||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | H2H base feature is implemented and its runtime trace passed. | {'method': 'h2h_net_margin_monotonic_v1', 'available': True, 'sample_size': 5, 'sample_weight': 0.0577, 'home_net_margin': -14.0, 'absolute_net_margin': 14.0, 'home_average_margin': -2.8, 'home_run_delta': -0.0808, 'away_run_delta': 0.0808, 'evidence': [{'game_id': None, 'home_margin': -2.0}, {'game_id': None, 'home_margin': -7.0}, {'game_id': None, 'home_margin': 5.0}, {'game_id': None, 'home_margin': -2.0}, {'game_id': None, 'home_margin': -8.0}], 'adaptive_parameters': {'h2h.history_limit': 5, 'h2h.maximum_weight': 0.15, 'h2h.prior_games': 8.0, 'h2h.maximum_total_shift': 0.65}} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Score distribution widening is implemented and its runtime trace passed. | {'most_likely': [{'home_runs': 3, 'away_runs': 3, 'probability': 0.028425001857791943}, {'home_runs': 3, 'away_runs': 4, 'probability': 0.026624637022712536}, {'home_runs': 2, 'away_runs': 3, 'probability': 0.02655888481906244}, {'home_runs': 3, 'away_runs': 2, 'probability': 0.026233106036805034}, {'home_runs': 4, 'away_runs': 3, 'probability': 0.026168542020327538}], 'home_distribution': {'0': 0.08835713498291922, '1': 0.1278072747072023, '2': 0.1590222455882233, '3': 0.17019568619203276, '4': 0.15668505451913656, '5': 0.12407804914258759, '6': 0.08451828939924737, '7': 0.04952161498021102, '8': 0.024959004456441655, '9': 0.010820518614672165, '10': 0.004035127417326009}, 'away_distribution': {'0': 0.08480018763735535, '1': 0.1229653602338988, '2': 0.15413496442680732, '3': 0.16701364466852497, '4': 0.15643543980704544, '5': 0.12666328533417143, '6': 0.08865408588729988, '7': 0.05363881451733485, '8': 0.02805381911797119, '9': 0.012683444737746479, '10': 0.004956953631844255}, 'model': 'overdispersed_score_distribution', 'variance_multiplier': 2.25, 'variance_floor': 2.75, 'roadmap_status': 'implemented_above_requested_1.4x'} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Season/recent-form quality blend is implemented and its runtime trace passed. | {'method': 'season_recent_quality_blend_v2_adaptive', 'recent_window': 10, 'season_quality_edge': -0.2853, 'recent_quality_edge': 0.028, 'season_weight': 0.65, 'recent_weight': 0.35, 'recent_reliability': 1.0, 'alignment': 'conflict', 'blended_quality_edge': -0.1757} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Simulation flip control is implemented and its runtime trace passed. | {'pre_simulation_score': {'away_runs': 4, 'home_runs': 2, 'score_text': 'NYY 4 - 2 TB', 'winner': 'NYY'}, 'final_simulation_score': {'away_runs': 4, 'home_runs': 2, 'score_text': 'NYY 4 - 2 TB', 'winner': 'NYY'}, 'winner_flipped_by_simulation': False, 'simulation_would_flip_winner': False, 'sim_flipped_pre_winner': False, 'sim_flip_trusted': False, 'sim_flip_policy': 'diagnostic_only_unless_independently_supported', 'independent_margin_support': False, 'independent_margin_support_evidence': {'pitcher_matchup_edge_home_minus_away': -0.02, 'recent_form_edge_home_minus_away': -0.182, 'winner_direction': 'away', 'thresholds': {'pitcher_matchup': 0.35, 'recent_form': 0.75}}, 'margin_widening_capped': False, 'simulation_winner_agrees': True, 'away_run_delta': 0, 'home_run_delta': 0, 'total_run_delta': 0, 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_usage': 'organic_simulation_realized_target', 'final_prediction_source': 'stable_final_prediction_policy', 'final_decision_policy': {'policy_version': 'model_target_authoritative_simulation_realizes_v3', 'away_runs': 4, 'home_runs': 2, 'winner': 'NYY', 'model_winner': 'NYY', 'simulation_winner': 'NYY', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 2, 'published_winner': 'NYY', 'published_winner_draw_share': 1.0, 'draw_majority_team': 'NYY', 'published_winner_is_draw_majority': True, 'sampling': 'target_conditioned_selection', 'is_unbiased_probability_sample': False, 'note': 'Draw shares are target-conditioned and diagnostic. A published winner holding a minority share is recorded, not suppressed.'}, 'simulation_score_enabled': True, 'independent_margin_support': False, 'margin_widening_capped': False, 'model_margin': 2, 'simulation_margin': 2, 'simulation_usage': 'organic_simulation_realized_target', 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_realized_target': True, 'model_score': {'away_runs': 4, 'home_runs': 2}, 'simulation_score': {'away_runs': 4, 'home_runs': 2}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 2, 'final_margin': 2, 'winner_quality_edge': 0.1757, 'winner': 'NYY', 'score_reviewed': {'away_runs': 4, 'home_runs': 2, 'source': 'enhanced_prediction.pre_simulation_target'}, 'reason': 'published margin is directionally supported or within review threshold'}} | ||||
| PASS | pipeline | PIPELINE_VERSION | Prediction pipeline version is current: enhanced_game_prediction_v4_continuous_learning__player_form_v3_5_10_season. | |||||
| PASS | pitch_by_pitch | PITCH_DETAIL_SANITY | Pitch-by-pitch speeds and zones are within sanity ranges. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | away pitcher pitch-by-pitch count matches pitch_count_summary total: 138. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | home pitcher pitch-by-pitch count matches pitch_count_summary total: 151. | |||||
| PASS | pitch_count | simulation | NYY | PITCH_COUNT_PITCHER_MATCH | NYY pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | NYY | PITCH_COUNT_TOTAL_MATCH | NYY pitch_count_summary total, row sum, and pitching total all match: 138. | |||
| PASS | pitch_count | simulation | TB | PITCH_COUNT_PITCHER_MATCH | TB pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | TB | PITCH_COUNT_TOTAL_MATCH | TB pitch_count_summary total, row sum, and pitching total all match: 151. | |||
| PASS | pitcher_opponent_strength | PITCHER_OPPONENT_STRENGTH_BOUNDS | Pitcher-opponent adjustment stayed inside supported bounds. | |||||
| PASS | pitching | PITCHER_APPEARANCE_COHERENT | All 8 pitchers in the box actually appeared. | |||||
| PASS | pitching | PUBLISHED_PITCHER_LINES_MATCH_BOX | Published pitcher lines cover the outs the box recorded. | |||||
| PASS | pitching | current | NYY | PITCHING_REALISM | current:NYY pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | NYY | STARTER_PRESENT | current:NYY includes a starter/opener role. | |||
| PASS | pitching | current | TB | PITCHING_REALISM | current:TB pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | TB | STARTER_PRESENT | current:TB includes a starter/opener role. | |||
| PASS | pitching | simulation | NYY | PITCHING_REALISM | simulation:NYY pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | NYY | STARTER_PRESENT | simulation:NYY includes a starter/opener role. | |||
| PASS | pitching | simulation | TB | PITCHING_REALISM | simulation:TB pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | TB | STARTER_PRESENT | simulation:TB includes a starter/opener role. | |||
| PASS | pitching_totals | current | NYY | PITCHING_TOTALS_SUM | current:NYY pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | NYY | PITCHING_TOTALS_SUM | current:NYY pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | current | TB | PITCHING_TOTALS_SUM | current:TB pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | TB | PITCHING_TOTALS_SUM | current:TB pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | NYY | PITCHING_TOTALS_SUM | simulation:NYY pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | NYY | PITCHING_TOTALS_SUM | simulation:NYY pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | TB | PITCHING_TOTALS_SUM | simulation:TB pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | TB | PITCHING_TOTALS_SUM | simulation:TB pitching totals equal summed pitcher lines for available fields. | |||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Enhanced AI score matches enhanced target: NYY 4 - 2 TB. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation score matches final score: NYY 4 - 2 TB. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation winner matches final score: NYY wins 4-2. | |||||
| PASS | prediction_comparison | SIMULATION_WINNER_FLIP_TRACE | Simulation decision is explicit: model=NYY, simulation=NYY, published=NYY. | |||||
| PASS | probability | CONFIDENCE_RANGE | Enhanced target confidence is in range: 0.540. | |||||
| PASS | recent_form | RECENT_FORM_RANGE | away recent_form record is coherent: 5/10 (0.500). | |||||
| PASS | recent_form | RECENT_FORM_RANGE | home recent_form record is coherent: 5/10 (0.500). | |||||
| PASS | report | REPORT_COMPLETE | All findings, passes, warnings, errors, and critical issues are rendered in the single HTML report. | |||||
| PASS | schema | SCHEMA_ROOTS_PRESENT | Both major schemas are present: game, scoring_simulation, game_summary, prediction_comparison. | |||||
| PASS | score | GAME_SUMMARY_MATCH | game_summary agrees with the published score (game.final_prediction): NYY wins 4-2. | |||||
| PASS | score | SCORE_NO_TIE | Final score has a clear winner: NYY wins 4-2. | |||||
| PASS | score | SCORE_STEP_FINAL_MATCH | simulation_result step matches final score: 4-2. | |||||
| PASS | score | SCORE_STEP_ORDER | Score evolution contains the expected ordered steps. | |||||
| PASS | score | TARGET_SCORE_DRIFT | Final score is close to enhanced target: target 4-2, final 4-2 (delta 0). | |||||
| PASS | score | TOTAL_RUNS_MATCH | total_runs field matches final score total: 6. | |||||
| PASS | score | WINNER_FIELD_MATCH | winner field is consistent: NYY wins 4-2. | |||||
| PASS | score | cross-schema | CURRENT_SCORE_MATCHES_SIM | game.predicted_runs matches scoring_simulation.final_score. | ||||
| PASS | team_recent_performance | current | NYY | RECENT_FORM_RANGE | NYY recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | NYY | TEAM_RECENT_RECORD | NYY wins and win_pct agree: 6/10 = 0.600. | |||
| PASS | team_recent_performance | current | TB | RECENT_FORM_RANGE | TB recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | TB | TEAM_RECENT_RECORD | TB wins and win_pct agree: 6/10 = 0.600. |
Passed checks
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| PASS | batting | current | NYY | BATTING_REALISM | current:NYY hitter lines pass basic baseball constraints. | |||
| PASS | batting | current | TB | BATTING_REALISM | current:TB hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | NYY | BATTING_REALISM | simulation:NYY hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | TB | BATTING_REALISM | simulation:TB hitter lines pass basic baseball constraints. | |||
| PASS | batting_totals | current | NYY | BATTING_TOTALS_SUM | current:NYY batting totals equal summed player lines. | |||
| PASS | batting_totals | current | TB | BATTING_TOTALS_SUM | current:TB batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | NYY | BATTING_TOTALS_SUM | simulation:NYY batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | TB | BATTING_TOTALS_SUM | simulation:TB batting totals equal summed player lines. | |||
| PASS | boxscore_crosscheck | simulation | NYY | BAT_PITCH_BB_MATCH | simulation:NYY batting walks match TB pitching: 3. | |||
| PASS | boxscore_crosscheck | simulation | NYY | BAT_PITCH_HR_MATCH | simulation:NYY batting home runs match TB pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | NYY | BAT_PITCH_H_MATCH | simulation:NYY batting hits match TB pitching: 8. | |||
| PASS | boxscore_crosscheck | simulation | NYY | BAT_PITCH_SO_MATCH | simulation:NYY batting strikeouts match TB pitching: 9. | |||
| PASS | boxscore_crosscheck | simulation | NYY | PA_BF_MATCH | simulation:NYY PA=38 matches TB BF=38. | |||
| PASS | boxscore_crosscheck | simulation | NYY | RUNS_MATCH_FINAL | simulation:NYY runs match final score and opposing pitching runs: 4. | |||
| PASS | boxscore_crosscheck | simulation | TB | BAT_PITCH_BB_MATCH | simulation:TB batting walks match NYY pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | TB | BAT_PITCH_HR_MATCH | simulation:TB batting home runs match NYY pitching: 0. | |||
| PASS | boxscore_crosscheck | simulation | TB | BAT_PITCH_H_MATCH | simulation:TB batting hits match NYY pitching: 5. | |||
| PASS | boxscore_crosscheck | simulation | TB | BAT_PITCH_SO_MATCH | simulation:TB batting strikeouts match NYY pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | TB | PA_BF_MATCH | simulation:TB PA=35 matches NYY BF=35. | |||
| PASS | boxscore_crosscheck | simulation | TB | RUNS_MATCH_FINAL | simulation:TB runs match final score and opposing pitching runs: 2. | |||
| PASS | confidence_calibration | CONFIDENCE_CALIBRATION_APPLIED | Empirical confidence blend verified: 0.485 -> 0.532 at weight 0.500. | {'method': 'empirical_hit_rate_weighted_v1', 'applied': True, 'reason': 'raw confidence blended with verified historical bucket hit rate', 'raw_confidence': 0.484824, 'sample_size': 485, 'empirical_hit_rate': 0.5794, 'empirical_weight': 0.5, 'blended_confidence': 0.532112, 'published_confidence': 0.539612, 'published_after_governors': True, 'governor_mode': 'shrinkage_not_clamp'} | ||||
| PASS | cross_schema | cross-schema | NYY | CURRENT_FINALIZED_MATCH_BOX | NYY current pitcher projected totals match final simulation pitching box score. | |||
| PASS | cross_schema | cross-schema | TB | CURRENT_FINALIZED_MATCH_BOX | TB current pitcher projected totals match final simulation pitching box score. | |||
| PASS | current_payload | current | NYY | CURRENT_LINEUP_SHAPE | NYY current lineup has 9 expected positions. | |||
| PASS | current_payload | current | NYY | CURRENT_MODEL_ZERO_FALLBACK | NYY current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | NYY | CURRENT_NAMES_PRESENT | NYY current hitter names are populated. | |||
| PASS | current_payload | current | NYY | CURRENT_PREDICTIONS_MATCH_FINALIZED | NYY hitter predictions mirror finalized stats. | |||
| PASS | current_payload | current | TB | CURRENT_LINEUP_SHAPE | TB current lineup has 9 expected positions. | |||
| PASS | current_payload | current | TB | CURRENT_MODEL_ZERO_FALLBACK | TB current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | TB | CURRENT_NAMES_PRESENT | TB current hitter names are populated. | |||
| PASS | current_payload | current | TB | CURRENT_PREDICTIONS_MATCH_FINALIZED | TB hitter predictions mirror finalized stats. | |||
| PASS | current_vs_final | cross-schema | NYY | CURRENT_FINALIZED_MATCH_BOX | NYY current finalized batting totals match final simulation box score. | |||
| PASS | current_vs_final | cross-schema | NYY | CURRENT_PLAYER_MATCH_BOX | NYY current finalized hitter lines mirror simulation box score. | |||
| PASS | current_vs_final | cross-schema | TB | CURRENT_FINALIZED_MATCH_BOX | TB current finalized batting totals match final simulation box score. | |||
| PASS | current_vs_final | cross-schema | TB | CURRENT_PLAYER_MATCH_BOX | TB current finalized hitter lines mirror simulation box score. | |||
| PASS | data_leakage | H2H_DATA_LEAKAGE | All head-to-head rows are dated before the prediction game date. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | Home + away win probabilities sum to approximately 1.0. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | away_win_probability is in [0,1]: 0.540. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | confidence is in [0,1]: 0.540. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | home_win_probability is in [0,1]: 0.460. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Final total runs 6 is reasonably close to low-score expected_total_runs 6.0. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Low-score analysis factors are non-negative. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Low-score probability/confidence are valid: 0.690/0.900. | |||||
| PASS | final_decision | FINAL_DECISION_POLICY | Final decision policy preserved model ownership of the winner. | |||||
| PASS | innings | GAME_ENDING_COHERENT | The game ends coherently for its score. | |||||
| PASS | innings | INNINGS_COUNT | inning_by_inning_summary contains 9 innings. | |||||
| PASS | innings | INNING_PLAY_SUMS | Detailed play totals match every half-inning line. | |||||
| PASS | innings | INNING_SEQUENCE | Inning numbers are sequential. | |||||
| PASS | innings | INNING_TOTAL_HITS | Inning hits match batting totals: NYY 8, TB 5. | |||||
| PASS | innings | INNING_TOTAL_RUNS | Inning runs sum to final score: NYY 4 - TB 2. | |||||
| PASS | kpi | LUNA_KPI_TRACE | Luna KPI trace coherent (no_promoted_kpis). | |||||
| PASS | matchup_recency | GUARDRAIL_FINAL_WINNER_SYNC | Guardrail predicted_team matches final predicted winner: NYY. | |||||
| PASS | matchup_recency | MATCHUP_RECENCY_GUARDRAIL | Matchup recency guardrail applied for NYY; cap=0.54, reasons=predicted side recently lost this matchup by 5+ runs; 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. | {'applied': True, 'confidence_cap': 0.54, 'winner_flipped': False, 'reasons': ['predicted side recently lost this matchup by 5+ runs', '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'], 'signals': {'predicted_team': 'NYY', 'opponent_team': 'TB', 'h2h_net_margin': 4, 'opponent_breakout': False, 'opponent_blowout_win': True, 'split_recent_h2h': True, 'recent_h2h': [{'date': '2026-09-24', 'predicted_team_runs': 6, 'opponent_runs': 4, 'margin_for_predicted_team': 2, 'winner': 'NYY'}, {'date': '2026-09-23', 'predicted_team_runs': 9, 'opponent_runs': 2, 'margin_for_predicted_team': 7, 'winner': 'NYY'}, {'date': '2026-09-22', 'predicted_team_runs': 1, 'opponent_runs': 6, 'margin_for_predicted_team': -5, 'winner': 'TB'}], 'prediction_memory': {'available': True, 'reason': 'verified_prior_matchup_predictions_available', 'verification_policy': 'pregame_artifact_matched_to_one_official_final', 'verified_outcome_count': 7, 'consecutive_same_pick_count': 0, 'same_pick_actual_loss_count': 2, 'same_pick_blowout_loss_count': 1, 'prior_predictions': [{'date': '20261003', 'away': 'NYY', 'home': 'TB', 'game_number': 1, 'predicted_team': 'TB', 'actual_winner': 'TB', 'actual_margin': 1, 'raw_pick_probability': 0.518365, 'artifact': '20261003_NYY@TB.json', 'verification': 'pregame_official_final'}, {'date': '20260924', 'away': 'TB', 'home': 'NYY', 'game_number': 1, 'predicted_team': 'NYY', 'actual_winner': 'NYY', 'actual_margin': 2, 'raw_pick_probability': 0.531136, 'artifact': '20260924_TB@NYY.json', 'verification': 'pregame_official_final'}, {'date': '20260923', 'away': 'TB', 'home': 'NYY', 'game_number': 1, 'predicted_team': 'TB', 'actual_winner': 'NYY', 'actual_margin': 7, 'raw_pick_probability': 0.505259, 'artifact': '20260923_TB@NYY.json', 'verification': 'pregame_official_final'}, {'date': '20260922', 'away': 'TB', 'home': 'NYY', 'game_number': 1, 'predicted_team': 'NYY', 'actual_winner': 'NYY', 'actual_margin': 2, 'raw_pick_probability': 0.534918, 'artifact': '20260922_TB@NYY.json', 'verification': 'pregame_official_final'}, {'date': '20260922', 'away': 'TB', 'home': 'NYY', 'game_number': 2, 'predicted_team': 'NYY', 'actual_winner': 'TB', 'actual_margin': 5, 'raw_pick_probability': 0.520635, 'artifact': '20260922_TB@NYY_2.json', 'verification': 'pregame_official_final'}]}, 'guardrail_predicted_team': 'NYY', 'guardrail_opponent_team': 'TB', 'output_pre_simulation_winner': 'NYY', 'output_opponent_team': 'TB', 'simulation_score_winner': 'NYY', 'final_score_winner': 'NYY', 'pre_simulation_winner': 'NYY', 'winner_flipped_by_simulation': False, 'simulation_would_flip_winner': False}, 'hard_flip_suppressed': False, 'flip_authority': 'caps_confidence_and_shifts_runs_only'} | ||||
| PASS | metadata | DATE_PARSE | Date is valid ISO format: 2026-10-05. | |||||
| PASS | metadata | FILENAME_GAME_ID_MATCH | Filename contains game_id: filename=20261005_NYY@TB__20261006T013857Z, game_id=20261005_NYY@TB. | |||||
| PASS | metadata | FILENAME_TEAM_MATCH | Filename teams match JSON teams: NYY@TB. | |||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | H2H base feature is implemented and its runtime trace passed. | {'method': 'h2h_net_margin_monotonic_v1', 'available': True, 'sample_size': 5, 'sample_weight': 0.0577, 'home_net_margin': -14.0, 'absolute_net_margin': 14.0, 'home_average_margin': -2.8, 'home_run_delta': -0.0808, 'away_run_delta': 0.0808, 'evidence': [{'game_id': None, 'home_margin': -2.0}, {'game_id': None, 'home_margin': -7.0}, {'game_id': None, 'home_margin': 5.0}, {'game_id': None, 'home_margin': -2.0}, {'game_id': None, 'home_margin': -8.0}], 'adaptive_parameters': {'h2h.history_limit': 5, 'h2h.maximum_weight': 0.15, 'h2h.prior_games': 8.0, 'h2h.maximum_total_shift': 0.65}} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Score distribution widening is implemented and its runtime trace passed. | {'most_likely': [{'home_runs': 3, 'away_runs': 3, 'probability': 0.028425001857791943}, {'home_runs': 3, 'away_runs': 4, 'probability': 0.026624637022712536}, {'home_runs': 2, 'away_runs': 3, 'probability': 0.02655888481906244}, {'home_runs': 3, 'away_runs': 2, 'probability': 0.026233106036805034}, {'home_runs': 4, 'away_runs': 3, 'probability': 0.026168542020327538}], 'home_distribution': {'0': 0.08835713498291922, '1': 0.1278072747072023, '2': 0.1590222455882233, '3': 0.17019568619203276, '4': 0.15668505451913656, '5': 0.12407804914258759, '6': 0.08451828939924737, '7': 0.04952161498021102, '8': 0.024959004456441655, '9': 0.010820518614672165, '10': 0.004035127417326009}, 'away_distribution': {'0': 0.08480018763735535, '1': 0.1229653602338988, '2': 0.15413496442680732, '3': 0.16701364466852497, '4': 0.15643543980704544, '5': 0.12666328533417143, '6': 0.08865408588729988, '7': 0.05363881451733485, '8': 0.02805381911797119, '9': 0.012683444737746479, '10': 0.004956953631844255}, 'model': 'overdispersed_score_distribution', 'variance_multiplier': 2.25, 'variance_floor': 2.75, 'roadmap_status': 'implemented_above_requested_1.4x'} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Season/recent-form quality blend is implemented and its runtime trace passed. | {'method': 'season_recent_quality_blend_v2_adaptive', 'recent_window': 10, 'season_quality_edge': -0.2853, 'recent_quality_edge': 0.028, 'season_weight': 0.65, 'recent_weight': 0.35, 'recent_reliability': 1.0, 'alignment': 'conflict', 'blended_quality_edge': -0.1757} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Simulation flip control is implemented and its runtime trace passed. | {'pre_simulation_score': {'away_runs': 4, 'home_runs': 2, 'score_text': 'NYY 4 - 2 TB', 'winner': 'NYY'}, 'final_simulation_score': {'away_runs': 4, 'home_runs': 2, 'score_text': 'NYY 4 - 2 TB', 'winner': 'NYY'}, 'winner_flipped_by_simulation': False, 'simulation_would_flip_winner': False, 'sim_flipped_pre_winner': False, 'sim_flip_trusted': False, 'sim_flip_policy': 'diagnostic_only_unless_independently_supported', 'independent_margin_support': False, 'independent_margin_support_evidence': {'pitcher_matchup_edge_home_minus_away': -0.02, 'recent_form_edge_home_minus_away': -0.182, 'winner_direction': 'away', 'thresholds': {'pitcher_matchup': 0.35, 'recent_form': 0.75}}, 'margin_widening_capped': False, 'simulation_winner_agrees': True, 'away_run_delta': 0, 'home_run_delta': 0, 'total_run_delta': 0, 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_usage': 'organic_simulation_realized_target', 'final_prediction_source': 'stable_final_prediction_policy', 'final_decision_policy': {'policy_version': 'model_target_authoritative_simulation_realizes_v3', 'away_runs': 4, 'home_runs': 2, 'winner': 'NYY', 'model_winner': 'NYY', 'simulation_winner': 'NYY', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 2, 'published_winner': 'NYY', 'published_winner_draw_share': 1.0, 'draw_majority_team': 'NYY', 'published_winner_is_draw_majority': True, 'sampling': 'target_conditioned_selection', 'is_unbiased_probability_sample': False, 'note': 'Draw shares are target-conditioned and diagnostic. A published winner holding a minority share is recorded, not suppressed.'}, 'simulation_score_enabled': True, 'independent_margin_support': False, 'margin_widening_capped': False, 'model_margin': 2, 'simulation_margin': 2, 'simulation_usage': 'organic_simulation_realized_target', 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_realized_target': True, 'model_score': {'away_runs': 4, 'home_runs': 2}, 'simulation_score': {'away_runs': 4, 'home_runs': 2}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 2, 'final_margin': 2, 'winner_quality_edge': 0.1757, 'winner': 'NYY', 'score_reviewed': {'away_runs': 4, 'home_runs': 2, 'source': 'enhanced_prediction.pre_simulation_target'}, 'reason': 'published margin is directionally supported or within review threshold'}} | ||||
| PASS | pipeline | PIPELINE_VERSION | Prediction pipeline version is current: enhanced_game_prediction_v4_continuous_learning__player_form_v3_5_10_season. | |||||
| PASS | pitch_by_pitch | PITCH_DETAIL_SANITY | Pitch-by-pitch speeds and zones are within sanity ranges. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | away pitcher pitch-by-pitch count matches pitch_count_summary total: 138. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | home pitcher pitch-by-pitch count matches pitch_count_summary total: 151. | |||||
| PASS | pitch_count | simulation | NYY | PITCH_COUNT_PITCHER_MATCH | NYY pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | NYY | PITCH_COUNT_TOTAL_MATCH | NYY pitch_count_summary total, row sum, and pitching total all match: 138. | |||
| PASS | pitch_count | simulation | TB | PITCH_COUNT_PITCHER_MATCH | TB pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | TB | PITCH_COUNT_TOTAL_MATCH | TB pitch_count_summary total, row sum, and pitching total all match: 151. | |||
| PASS | pitcher_opponent_strength | PITCHER_OPPONENT_STRENGTH_BOUNDS | Pitcher-opponent adjustment stayed inside supported bounds. | |||||
| PASS | pitching | PITCHER_APPEARANCE_COHERENT | All 8 pitchers in the box actually appeared. | |||||
| PASS | pitching | PUBLISHED_PITCHER_LINES_MATCH_BOX | Published pitcher lines cover the outs the box recorded. | |||||
| PASS | pitching | current | NYY | PITCHING_REALISM | current:NYY pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | NYY | STARTER_PRESENT | current:NYY includes a starter/opener role. | |||
| PASS | pitching | current | TB | PITCHING_REALISM | current:TB pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | TB | STARTER_PRESENT | current:TB includes a starter/opener role. | |||
| PASS | pitching | simulation | NYY | PITCHING_REALISM | simulation:NYY pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | NYY | STARTER_PRESENT | simulation:NYY includes a starter/opener role. | |||
| PASS | pitching | simulation | TB | PITCHING_REALISM | simulation:TB pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | TB | STARTER_PRESENT | simulation:TB includes a starter/opener role. | |||
| PASS | pitching_totals | current | NYY | PITCHING_TOTALS_SUM | current:NYY pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | NYY | PITCHING_TOTALS_SUM | current:NYY pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | current | TB | PITCHING_TOTALS_SUM | current:TB pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | TB | PITCHING_TOTALS_SUM | current:TB pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | NYY | PITCHING_TOTALS_SUM | simulation:NYY pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | NYY | PITCHING_TOTALS_SUM | simulation:NYY pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | TB | PITCHING_TOTALS_SUM | simulation:TB pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | TB | PITCHING_TOTALS_SUM | simulation:TB pitching totals equal summed pitcher lines for available fields. | |||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Enhanced AI score matches enhanced target: NYY 4 - 2 TB. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation score matches final score: NYY 4 - 2 TB. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation winner matches final score: NYY wins 4-2. | |||||
| PASS | prediction_comparison | SIMULATION_WINNER_FLIP_TRACE | Simulation decision is explicit: model=NYY, simulation=NYY, published=NYY. | |||||
| PASS | probability | CONFIDENCE_RANGE | Enhanced target confidence is in range: 0.540. | |||||
| PASS | recent_form | RECENT_FORM_RANGE | away recent_form record is coherent: 5/10 (0.500). | |||||
| PASS | recent_form | RECENT_FORM_RANGE | home recent_form record is coherent: 5/10 (0.500). | |||||
| PASS | report | REPORT_COMPLETE | All findings, passes, warnings, errors, and critical issues are rendered in the single HTML report. | |||||
| PASS | schema | SCHEMA_ROOTS_PRESENT | Both major schemas are present: game, scoring_simulation, game_summary, prediction_comparison. | |||||
| PASS | score | GAME_SUMMARY_MATCH | game_summary agrees with the published score (game.final_prediction): NYY wins 4-2. | |||||
| PASS | score | SCORE_NO_TIE | Final score has a clear winner: NYY wins 4-2. | |||||
| PASS | score | SCORE_STEP_FINAL_MATCH | simulation_result step matches final score: 4-2. | |||||
| PASS | score | SCORE_STEP_ORDER | Score evolution contains the expected ordered steps. | |||||
| PASS | score | TARGET_SCORE_DRIFT | Final score is close to enhanced target: target 4-2, final 4-2 (delta 0). | |||||
| PASS | score | TOTAL_RUNS_MATCH | total_runs field matches final score total: 6. | |||||
| PASS | score | WINNER_FIELD_MATCH | winner field is consistent: NYY wins 4-2. | |||||
| PASS | score | cross-schema | CURRENT_SCORE_MATCHES_SIM | game.predicted_runs matches scoring_simulation.final_score. | ||||
| PASS | team_recent_performance | current | NYY | RECENT_FORM_RANGE | NYY recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | NYY | TEAM_RECENT_RECORD | NYY wins and win_pct agree: 6/10 = 0.600. | |||
| PASS | team_recent_performance | current | TB | RECENT_FORM_RANGE | TB recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | TB | TEAM_RECENT_RECORD | TB wins and win_pct agree: 6/10 = 0.600. |
Info/context findings
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| INFO | score_reconciliation | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
Score evolution
| step | away_runs | home_runs | confidence | description |
|---|---|---|---|---|
| historical_ml | 4.864972693493641 | 2.9968524001566985 | Base ML historical model prediction | |
| variance_applied | 5 | 3 | Deterministic baseline target (variance factor 1.0) | |
| enhanced_prediction | 4 | 3 | 0.540 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| kpi_layer | 4 | 3 | Savant KPI blend applied to the model target | |
| embedded_savant_run_environment | 4 | 2 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality | |
| fundamental_edge_target_review | 4 | 2 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments | |
| capped_target | 4 | 2 | Capped at max 12 realistic runs | |
| simulation_result | 4 | 2 | Final inning-by-inning simulation result |
Inning-by-inning linescore
| team | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | R | H |
|---|---|---|---|---|---|---|---|---|---|---|---|
| NYY | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 3 | 0 | 4 | 8 |
| TB | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 2 | 5 |
Team totals - current + final simulation
| src | team | type | PA | AB | H | 2B | 3B | HR | RBI | R | BB | SO | SF | HBP | SB | CS | IP | ER | BF | Pitches |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| current | NYY | batting | 35 | 8 | 3 | 0 | 1 | 4 | 4 | 3 | 9 | 0 | 0 | 0 | 0 | |||||
| current | NYY | pitching | 5 | 0 | 2 | 1 | 7 | 9.0 | 0 | 0 | 0 | |||||||||
| current | TB | batting | 34 | 5 | 1 | 0 | 0 | 2 | 2 | 1 | 7 | 0 | 0 | 0 | 0 | |||||
| current | TB | pitching | 8 | 1 | 4 | 3 | 9 | 9.0 | 4 | 0 | 0 | |||||||||
| simulation | NYY | batting | 35 | 8 | 3 | 0 | 1 | 4 | 4 | 3 | 9 | 0 | 0 | |||||||
| simulation | NYY | pitching | 5 | 0 | 2 | 1 | 7 | 9.0 | 0 | 35 | 138 | |||||||||
| simulation | TB | batting | 34 | 5 | 1 | 0 | 0 | 2 | 2 | 1 | 7 | 0 | 0 | |||||||
| simulation | TB | pitching | 8 | 1 | 4 | 3 | 9 | 9.0 | 4 | 38 | 151 |
Batting lines - current + final simulation
| src | team | order | pos | name | PA | AB | H | 2B | 3B | HR | R | RBI | BB | SO | HBP | AVG |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| current | NYY | DH | Ben Rice | 0 | 5 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0 | 0.200 | |
| current | NYY | LF | Cody Bellinger | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0.250 | |
| current | NYY | 1B | Luis García Jr. | 0 | 4 | 1 | 0 | 0 | 1 | 1 | 1 | 0 | 1 | 0 | 0.250 | |
| current | NYY | RF | Spencer Jones | 0 | 4 | 1 | 1 | 0 | 0 | 1 | 2 | 0 | 2 | 0 | 0.250 | |
| current | NYY | SS | George Lombard Jr. | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0.333 | |
| current | NYY | 2B | Jazz Chisholm Jr. | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.250 | |
| current | NYY | CF | Trent Grisham | 0 | 4 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.250 | |
| current | NYY | C | Austin Wells | 0 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.000 | |
| current | NYY | 3B | Ryan McMahon | 0 | 3 | 1 | 1 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0.333 | |
| current | TB | DH | Yandy Díaz | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.250 | |
| current | TB | 1B | Jonathan Aranda | 0 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.000 | |
| current | TB | 3B | Junior Caminero | 0 | 3 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0.000 | |
| current | TB | C | Liam Hicks | 0 | 4 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.250 | |
| current | TB | LF | Chandler Simpson | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.250 | |
| current | TB | RF | Victor Mesa Jr. | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.250 | |
| current | TB | CF | Jonny DeLuca | 0 | 4 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.000 | |
| current | TB | 2B | Richie Palacios | 0 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 | |
| current | TB | SS | Taylor Walls | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.333 | |
| simulation | NYY | 1 | DH | Ben Rice | 5 | 5 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0 | 0.200 |
| simulation | NYY | 2 | LF | Cody Bellinger | 5 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0.250 |
| simulation | NYY | 3 | 1B | Luis García Jr. | 4 | 4 | 1 | 0 | 0 | 1 | 1 | 1 | 0 | 1 | 0 | 0.250 |
| simulation | NYY | 4 | RF | Spencer Jones | 4 | 4 | 1 | 1 | 0 | 0 | 1 | 2 | 0 | 2 | 0 | 0.250 |
| simulation | NYY | 5 | SS | George Lombard Jr. | 4 | 3 | 1 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0.333 |
| simulation | NYY | 6 | 2B | Jazz Chisholm Jr. | 4 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.250 |
| simulation | NYY | 7 | CF | Trent Grisham | 4 | 4 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.250 |
| simulation | NYY | 8 | C | Austin Wells | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.000 |
| simulation | NYY | 9 | 3B | Ryan McMahon | 4 | 3 | 1 | 1 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0.333 |
| simulation | TB | 1 | DH | Yandy Díaz | 4 | 4 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.250 |
| simulation | TB | 2 | 1B | Jonathan Aranda | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.000 |
| simulation | TB | 3 | 3B | Junior Caminero | 4 | 3 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0.000 |
| simulation | TB | 4 | C | Liam Hicks | 4 | 4 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.250 |
| simulation | TB | 5 | LF | Chandler Simpson | 4 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.250 |
| simulation | TB | 6 | RF | Victor Mesa Jr. | 4 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.250 |
| simulation | TB | 7 | CF | Jonny DeLuca | 4 | 4 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.000 |
| simulation | TB | 8 | 2B | Richie Palacios | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 |
| simulation | TB | 9 | SS | Taylor Walls | 3 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.333 |
Pitching lines - current + final simulation
| src | team | order | name | role | IP | H | R | ER | BB | SO | HR | BF | Pitches | sim_ERA | season_ERA | season_WHIP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| current | NYY | 1 | Cam Schlittler | Starter | 5.2 | 1 | 0 | 0 | 1 | 5 | 0 | 0 | 0 | 0.00 | 1.89 | 0.91 |
| current | NYY | 4 | Paul Blackburn | Middle Reliever (High Leverage) | 1.1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.00 | 1.53 | 1.06 |
| current | NYY | 5 | John Schreiber | Middle Reliever (High Leverage) | 1.0 | 2 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 3.23 | 1.22 |
| current | NYY | 6 | Brent Headrick | Setup Man | 1.0 | 2 | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 0.00 | 2.16 | 1.22 |
| current | TB | 1 | Freddy Peralta | Starter | 5.1 | 2 | 1 | 1 | 1 | 6 | 1 | 0 | 0 | 1.69 | 4.42 | 1.33 |
| current | TB | 3 | Cole Sulser | Setup Man | 1.0 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.00 | 3.83 | 1.19 |
| current | TB | 4 | Bryan Baker | Closer | 1.0 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 9.00 | 1.28 | 0.85 |
| current | TB | 5 | Steven Matz | Middle Reliever | 1.2 | 4 | 2 | 2 | 1 | 2 | 0 | 0 | 0 | 10.80 | 5.49 | 1.23 |
| simulation | NYY | 1 | Cam Schlittler | Starter | 5.2 | 1 | 0 | 0 | 1 | 5 | 0 | 19 | 74 | 0.00 | 1.89 | 0.91 |
| simulation | NYY | 2 | Paul Blackburn | Middle Reliever (High Leverage) | 1.1 | 0 | 0 | 0 | 0 | 1 | 0 | 4 | 24 | 0.00 | 1.53 | 1.06 |
| simulation | NYY | 3 | John Schreiber | Middle Reliever (High Leverage) | 1.0 | 2 | 1 | 0 | 0 | 0 | 0 | 6 | 18 | 0.00 | 3.23 | 1.22 |
| simulation | NYY | 4 | Brent Headrick | Setup Man | 1.0 | 2 | 1 | 0 | 0 | 1 | 0 | 6 | 22 | 0.00 | 2.16 | 1.22 |
| simulation | TB | 1 | Freddy Peralta | Starter | 5.1 | 2 | 1 | 1 | 1 | 6 | 1 | 19 | 73 | 1.69 | 4.42 | 1.33 |
| simulation | TB | 2 | Cole Sulser | Setup Man | 1.0 | 1 | 0 | 0 | 0 | 1 | 0 | 4 | 16 | 0.00 | 3.83 | 1.19 |
| simulation | TB | 3 | Bryan Baker | Closer | 1.0 | 1 | 1 | 1 | 1 | 0 | 0 | 5 | 23 | 9.00 | 1.28 | 0.85 |
| simulation | TB | 4 | Steven Matz | Middle Reliever | 1.2 | 4 | 2 | 2 | 1 | 2 | 0 | 10 | 39 | 10.80 | 5.49 | 1.23 |
Pitch count summary
| team | pitcher | role | IP | R | H | BB | SO | BF | Pitches |
|---|---|---|---|---|---|---|---|---|---|
| NYY | Cam Schlittler | Starter | 5.2 | 0 | 1 | 1 | 5 | 19 | 74 |
| NYY | Paul Blackburn | Middle Reliever (High Leverage) | 1.1 | 0 | 0 | 0 | 1 | 4 | 24 |
| NYY | John Schreiber | Middle Reliever (High Leverage) | 1.0 | 1 | 2 | 0 | 0 | 6 | 18 |
| NYY | Brent Headrick | Setup Man | 1.0 | 1 | 2 | 0 | 1 | 6 | 22 |
| TB | Freddy Peralta | Starter | 5.1 | 1 | 2 | 1 | 6 | 19 | 73 |
| TB | Cole Sulser | Setup Man | 1.0 | 0 | 1 | 0 | 1 | 4 | 16 |
| TB | Bryan Baker | Closer | 1.0 | 1 | 1 | 1 | 0 | 5 | 23 |
| TB | Steven Matz | Middle Reliever | 1.2 | 2 | 4 | 1 | 2 | 10 | 39 |
Audit rule catalog
| rule | status | critical | error | warning | pass | description |
|---|---|---|---|---|---|---|
| BATTING_REALISM | good | 0 | 0 | 0 | 4 | Player/team batting lines obey baseball constraints. |
| BATTING_TOTALS_SUM | good | 0 | 0 | 0 | 4 | Team batting totals equal the sum of player batting lines. |
| BAT_PITCH_BB_MATCH | good | 0 | 0 | 0 | 2 | Batting walks match opposing pitching walks allowed. |
| BAT_PITCH_HR_MATCH | good | 0 | 0 | 0 | 2 | Batting home runs match opposing pitching home runs allowed. |
| BAT_PITCH_H_MATCH | good | 0 | 0 | 0 | 2 | Batting hits match opposing pitching hits allowed. |
| BAT_PITCH_SO_MATCH | good | 0 | 0 | 0 | 2 | Batting strikeouts match opposing pitching strikeouts. |
| CONFIDENCE_CALIBRATION_APPLIED | good | 0 | 0 | 0 | 1 | Empirical confidence blending uses the requested sample weight and remains between raw confidence and empirical hit rate. |
| CONFIDENCE_RANGE | good | 0 | 0 | 0 | 5 | Confidence values are between 0 and 1. |
| CURRENT_FINALIZED_MATCH_BOX | good | 0 | 0 | 0 | 4 | Current finalized player totals agree with final simulation box score unless model/simulation sources are separated. |
| CURRENT_LINEUP_SHAPE | good | 0 | 0 | 0 | 2 | Current predicted_performance contains a plausible 9-player lineup. |
| CURRENT_MODEL_ZERO_FALLBACK | good | 0 | 0 | 0 | 2 | Current model payload did not rely too heavily on all-zero model predictions. |
| CURRENT_NAMES_PRESENT | good | 0 | 0 | 0 | 2 | Current predicted_performance has usable player names. |
| CURRENT_PITCHER_DUPLICATION | not triggered | 0 | 0 | 0 | 0 | Pitcher lists duplicated across current sections are detected and reconciled. |
| CURRENT_PLAYER_MATCH_BOX | good | 0 | 0 | 0 | 2 | Current finalized hitter lines mirror the simulation box score unless model/simulation sources are separated. |
| CURRENT_PREDICTIONS_MATCH_FINALIZED | good | 0 | 0 | 0 | 2 | Current hitter predictions mirror finalized stats. |
| CURRENT_SCORE_MATCHES_SIM | good | 0 | 0 | 0 | 1 | game.predicted_runs is either synced to simulation or paired with game.simulation_runs. |
| DATE_PARSE | good | 0 | 0 | 0 | 1 | Game date can be parsed as an ISO date. |
| FILENAME_GAME_ID_MATCH | good | 0 | 0 | 0 | 1 | Filename and game_id identify the same game. |
| FILENAME_TEAM_MATCH | good | 0 | 0 | 0 | 1 | Filename teams match the teams inside the JSON. |
| FINAL_DECISION_POLICY | good | 0 | 0 | 0 | 1 | One organic simulation cannot replace a disagreeing model winner. |
| GAME_ENDING_COHERENT | good | 0 | 0 | 0 | 1 | The inning line ends the way a real game with the published score ends. |
| GAME_SUMMARY_MATCH | good | 0 | 0 | 0 | 1 | game_summary text agrees with final score. |
| GUARDRAIL_FINAL_WINNER_SYNC | good | 0 | 0 | 0 | 1 | Guardrail trace predicted_team matches the final predicted winner. |
| H2H_DATA_LEAKAGE | good | 0 | 0 | 0 | 1 | Head-to-head history does not include same-day or future games in pregame mode. |
| INNINGS_COUNT | good | 0 | 0 | 0 | 1 | Inning count is valid for MLB. |
| INNING_OUTS | not triggered | 0 | 0 | 0 | 0 | Each played half inning has valid outs. |
| INNING_PLAY_SUMS | good | 0 | 0 | 0 | 1 | Detailed plays agree with inning runs, hits, outs, and pitches. |
| INNING_SEQUENCE | good | 0 | 0 | 0 | 1 | Innings are sequential and unique. |
| INNING_TOTAL_HITS | good | 0 | 0 | 0 | 1 | Inning hits sum to batting team hits. |
| INNING_TOTAL_RUNS | good | 0 | 0 | 0 | 1 | Inning runs sum to final score. |
| LOW_SCORE_ANALYSIS | good | 0 | 0 | 0 | 3 | Low-score probability factors are valid and directionally consistent. |
| LUNA_KPI_TRACE | good | 0 | 0 | 0 | 1 | Promoted Luna KPIs are traced per hitter and the per-game totals agree. |
| MATCHUP_RECENCY_GUARDRAIL | good | 0 | 0 | 0 | 1 | Repeat picks are capped when recent same-matchup results contradict high confidence. |
| OPTIMIZATION_ROADMAP_STATUS | good | 0 | 0 | 0 | 4 | H2H, score-distribution, simulation-flip, and recent-form roadmap signals are explicitly traced and satisfy their configured safeguards. |
| PA_BF_MATCH | good | 0 | 0 | 0 | 2 | Team plate appearances match opposing batters faced. |
| PIPELINE_VERSION | good | 0 | 0 | 0 | 1 | Prediction artifacts identify the stable pipeline version that created them. |
| PITCHER_APPEARANCE_COHERENT | good | 0 | 0 | 0 | 1 | Every pitcher in the box actually appeared: no 0-inning 0-batter line, and no pitch without a batter faced. |
| PITCHER_OPPONENT_STRENGTH_BOUNDS | good | 0 | 0 | 0 | 1 | Pitcher-opponent run factors and score deltas remain inside supported bounds. |
| PITCHING_REALISM | good | 0 | 0 | 0 | 4 | Pitcher/team pitching lines obey baseball constraints. |
| PITCHING_TOTALS_SUM | good | 0 | 0 | 0 | 8 | Team pitching totals equal the sum of pitcher lines. |
| PITCH_COUNT_PITCHER_MATCH | good | 0 | 0 | 0 | 2 | Pitch count summary pitcher rows agree with pitching box score. |
| PITCH_COUNT_TOTAL_MATCH | good | 0 | 0 | 0 | 4 | Pitch count summary totals match team pitching totals. |
| PITCH_DETAIL_SANITY | good | 0 | 0 | 0 | 1 | Pitch-by-pitch details have plausible values. |
| PREDICTION_COMPARISON_MATCH | good | 0 | 0 | 0 | 3 | prediction_comparison scores agree with target/final result. |
| PUBLISHED_PITCHER_LINES_MATCH_BOX | good | 0 | 0 | 0 | 1 | Published staff lines cover the outs the box recorded, extra innings included. |
| RECENT_FORM_RANGE | good | 0 | 0 | 0 | 4 | Recent-form metrics are within valid numeric ranges. |
| RECONCILIATION_PROPAGATION | info | 0 | 0 | 0 | 0 | When score_target_reconciliation is used, all final-facing sections are regenerated from the reconciled score. |
| REPORT_COMPLETE | good | 0 | 0 | 0 | 1 | Report includes every audit result in the all-findings table. |
| REPORT_CSV_EXPORT | not triggered | 0 | 0 | 0 | 0 | Optional CSV exports were written for summary and problem rows. |
| RUNS_MATCH_FINAL | good | 0 | 0 | 0 | 2 | Batting/pitching runs agree with final score. |
| SCHEMA_ROOTS_PRESENT | good | 0 | 0 | 0 | 1 | Expected JSON root sections exist and can be audited. |
| SCORE_NO_TIE | good | 0 | 0 | 0 | 1 | Final MLB score has a clear winner. |
| SCORE_STEP_FINAL_MATCH | good | 0 | 0 | 0 | 1 | score_evolution simulation_result matches final score. |
| SCORE_STEP_ORDER | good | 0 | 0 | 0 | 1 | Score evolution contains the expected ordered steps. |
| SIMULATION_WINNER_FLIP_TRACE | good | 0 | 0 | 0 | 1 | Simulation winner reversals are explicitly recorded. |
| STARTER_PRESENT | good | 0 | 0 | 0 | 4 | Pitching staff includes a starter or opener when expected. |
| SYNTHETIC_SCORE_PLAYS | not triggered | 0 | 0 | 0 | 0 | Score reconciliation must not inject synthetic run or out plays. |
| TARGET_SCORE_DRIFT | good | 0 | 0 | 0 | 1 | Final score does not drift too far from enhanced target. |
| TEAM_RECENT_RECORD | good | 0 | 0 | 0 | 2 | team_recent_performance wins and win_pct agree with games_analyzed. |
| TOTAL_RUNS_MATCH | good | 0 | 0 | 0 | 1 | total_runs equals away + home runs. |
| WINNER_FIELD_MATCH | good | 0 | 0 | 0 | 1 | winner field agrees with the final score. |
20261005_NYY@TB
20261005_NYY@TB__20261006T023852Z.json • 2026-10-05
Clean: no problems detected. Risk score: 0.
No action required
No critical, error, or warning findings were detected.
Problems table - exact rows
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|
All findings - complete audit trail
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| INFO | score_reconciliation | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. | |||||
| PASS | batting | current | NYY | BATTING_REALISM | current:NYY hitter lines pass basic baseball constraints. | |||
| PASS | batting | current | TB | BATTING_REALISM | current:TB hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | NYY | BATTING_REALISM | simulation:NYY hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | TB | BATTING_REALISM | simulation:TB hitter lines pass basic baseball constraints. | |||
| PASS | batting_totals | current | NYY | BATTING_TOTALS_SUM | current:NYY batting totals equal summed player lines. | |||
| PASS | batting_totals | current | TB | BATTING_TOTALS_SUM | current:TB batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | NYY | BATTING_TOTALS_SUM | simulation:NYY batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | TB | BATTING_TOTALS_SUM | simulation:TB batting totals equal summed player lines. | |||
| PASS | boxscore_crosscheck | simulation | NYY | BAT_PITCH_BB_MATCH | simulation:NYY batting walks match TB pitching: 3. | |||
| PASS | boxscore_crosscheck | simulation | NYY | BAT_PITCH_HR_MATCH | simulation:NYY batting home runs match TB pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | NYY | BAT_PITCH_H_MATCH | simulation:NYY batting hits match TB pitching: 8. | |||
| PASS | boxscore_crosscheck | simulation | NYY | BAT_PITCH_SO_MATCH | simulation:NYY batting strikeouts match TB pitching: 9. | |||
| PASS | boxscore_crosscheck | simulation | NYY | PA_BF_MATCH | simulation:NYY PA=38 matches TB BF=38. | |||
| PASS | boxscore_crosscheck | simulation | NYY | RUNS_MATCH_FINAL | simulation:NYY runs match final score and opposing pitching runs: 4. | |||
| PASS | boxscore_crosscheck | simulation | TB | BAT_PITCH_BB_MATCH | simulation:TB batting walks match NYY pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | TB | BAT_PITCH_HR_MATCH | simulation:TB batting home runs match NYY pitching: 0. | |||
| PASS | boxscore_crosscheck | simulation | TB | BAT_PITCH_H_MATCH | simulation:TB batting hits match NYY pitching: 5. | |||
| PASS | boxscore_crosscheck | simulation | TB | BAT_PITCH_SO_MATCH | simulation:TB batting strikeouts match NYY pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | TB | PA_BF_MATCH | simulation:TB PA=35 matches NYY BF=35. | |||
| PASS | boxscore_crosscheck | simulation | TB | RUNS_MATCH_FINAL | simulation:TB runs match final score and opposing pitching runs: 2. | |||
| PASS | confidence_calibration | CONFIDENCE_CALIBRATION_APPLIED | Empirical confidence blend verified: 0.485 -> 0.532 at weight 0.500. | {'method': 'empirical_hit_rate_weighted_v1', 'applied': True, 'reason': 'raw confidence blended with verified historical bucket hit rate', 'raw_confidence': 0.484824, 'sample_size': 485, 'empirical_hit_rate': 0.5794, 'empirical_weight': 0.5, 'blended_confidence': 0.532112, 'published_confidence': 0.539612, 'published_after_governors': True, 'governor_mode': 'shrinkage_not_clamp'} | ||||
| PASS | cross_schema | cross-schema | NYY | CURRENT_FINALIZED_MATCH_BOX | NYY current pitcher projected totals match final simulation pitching box score. | |||
| PASS | cross_schema | cross-schema | TB | CURRENT_FINALIZED_MATCH_BOX | TB current pitcher projected totals match final simulation pitching box score. | |||
| PASS | current_payload | current | NYY | CURRENT_LINEUP_SHAPE | NYY current lineup has 9 expected positions. | |||
| PASS | current_payload | current | NYY | CURRENT_MODEL_ZERO_FALLBACK | NYY current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | NYY | CURRENT_NAMES_PRESENT | NYY current hitter names are populated. | |||
| PASS | current_payload | current | NYY | CURRENT_PREDICTIONS_MATCH_FINALIZED | NYY hitter predictions mirror finalized stats. | |||
| PASS | current_payload | current | TB | CURRENT_LINEUP_SHAPE | TB current lineup has 9 expected positions. | |||
| PASS | current_payload | current | TB | CURRENT_MODEL_ZERO_FALLBACK | TB current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | TB | CURRENT_NAMES_PRESENT | TB current hitter names are populated. | |||
| PASS | current_payload | current | TB | CURRENT_PREDICTIONS_MATCH_FINALIZED | TB hitter predictions mirror finalized stats. | |||
| PASS | current_vs_final | cross-schema | NYY | CURRENT_FINALIZED_MATCH_BOX | NYY current finalized batting totals match final simulation box score. | |||
| PASS | current_vs_final | cross-schema | NYY | CURRENT_PLAYER_MATCH_BOX | NYY current finalized hitter lines mirror simulation box score. | |||
| PASS | current_vs_final | cross-schema | TB | CURRENT_FINALIZED_MATCH_BOX | TB current finalized batting totals match final simulation box score. | |||
| PASS | current_vs_final | cross-schema | TB | CURRENT_PLAYER_MATCH_BOX | TB current finalized hitter lines mirror simulation box score. | |||
| PASS | data_leakage | H2H_DATA_LEAKAGE | All head-to-head rows are dated before the prediction game date. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | Home + away win probabilities sum to approximately 1.0. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | away_win_probability is in [0,1]: 0.540. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | confidence is in [0,1]: 0.540. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | home_win_probability is in [0,1]: 0.460. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Final total runs 6 is reasonably close to low-score expected_total_runs 6.0. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Low-score analysis factors are non-negative. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Low-score probability/confidence are valid: 0.690/0.900. | |||||
| PASS | final_decision | FINAL_DECISION_POLICY | Final decision policy preserved model ownership of the winner. | |||||
| PASS | innings | GAME_ENDING_COHERENT | The game ends coherently for its score. | |||||
| PASS | innings | INNINGS_COUNT | inning_by_inning_summary contains 9 innings. | |||||
| PASS | innings | INNING_PLAY_SUMS | Detailed play totals match every half-inning line. | |||||
| PASS | innings | INNING_SEQUENCE | Inning numbers are sequential. | |||||
| PASS | innings | INNING_TOTAL_HITS | Inning hits match batting totals: NYY 8, TB 5. | |||||
| PASS | innings | INNING_TOTAL_RUNS | Inning runs sum to final score: NYY 4 - TB 2. | |||||
| PASS | kpi | LUNA_KPI_TRACE | Luna KPI trace coherent (no_promoted_kpis). | |||||
| PASS | matchup_recency | GUARDRAIL_FINAL_WINNER_SYNC | Guardrail predicted_team matches final predicted winner: NYY. | |||||
| PASS | matchup_recency | MATCHUP_RECENCY_GUARDRAIL | Matchup recency guardrail applied for NYY; cap=0.54, reasons=predicted side recently lost this matchup by 5+ runs; 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. | {'applied': True, 'confidence_cap': 0.54, 'winner_flipped': False, 'reasons': ['predicted side recently lost this matchup by 5+ runs', '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'], 'signals': {'predicted_team': 'NYY', 'opponent_team': 'TB', 'h2h_net_margin': 4, 'opponent_breakout': False, 'opponent_blowout_win': True, 'split_recent_h2h': True, 'recent_h2h': [{'date': '2026-09-24', 'predicted_team_runs': 6, 'opponent_runs': 4, 'margin_for_predicted_team': 2, 'winner': 'NYY'}, {'date': '2026-09-23', 'predicted_team_runs': 9, 'opponent_runs': 2, 'margin_for_predicted_team': 7, 'winner': 'NYY'}, {'date': '2026-09-22', 'predicted_team_runs': 1, 'opponent_runs': 6, 'margin_for_predicted_team': -5, 'winner': 'TB'}], 'prediction_memory': {'available': True, 'reason': 'verified_prior_matchup_predictions_available', 'verification_policy': 'pregame_artifact_matched_to_one_official_final', 'verified_outcome_count': 7, 'consecutive_same_pick_count': 0, 'same_pick_actual_loss_count': 2, 'same_pick_blowout_loss_count': 1, 'prior_predictions': [{'date': '20261003', 'away': 'NYY', 'home': 'TB', 'game_number': 1, 'predicted_team': 'TB', 'actual_winner': 'TB', 'actual_margin': 1, 'raw_pick_probability': 0.518365, 'artifact': '20261003_NYY@TB.json', 'verification': 'pregame_official_final'}, {'date': '20260924', 'away': 'TB', 'home': 'NYY', 'game_number': 1, 'predicted_team': 'NYY', 'actual_winner': 'NYY', 'actual_margin': 2, 'raw_pick_probability': 0.531136, 'artifact': '20260924_TB@NYY.json', 'verification': 'pregame_official_final'}, {'date': '20260923', 'away': 'TB', 'home': 'NYY', 'game_number': 1, 'predicted_team': 'TB', 'actual_winner': 'NYY', 'actual_margin': 7, 'raw_pick_probability': 0.505259, 'artifact': '20260923_TB@NYY.json', 'verification': 'pregame_official_final'}, {'date': '20260922', 'away': 'TB', 'home': 'NYY', 'game_number': 1, 'predicted_team': 'NYY', 'actual_winner': 'NYY', 'actual_margin': 2, 'raw_pick_probability': 0.534918, 'artifact': '20260922_TB@NYY.json', 'verification': 'pregame_official_final'}, {'date': '20260922', 'away': 'TB', 'home': 'NYY', 'game_number': 2, 'predicted_team': 'NYY', 'actual_winner': 'TB', 'actual_margin': 5, 'raw_pick_probability': 0.520635, 'artifact': '20260922_TB@NYY_2.json', 'verification': 'pregame_official_final'}]}, 'guardrail_predicted_team': 'NYY', 'guardrail_opponent_team': 'TB', 'output_pre_simulation_winner': 'NYY', 'output_opponent_team': 'TB', 'simulation_score_winner': 'NYY', 'final_score_winner': 'NYY', 'pre_simulation_winner': 'NYY', 'winner_flipped_by_simulation': False, 'simulation_would_flip_winner': False}, 'hard_flip_suppressed': False, 'flip_authority': 'caps_confidence_and_shifts_runs_only'} | ||||
| PASS | metadata | DATE_PARSE | Date is valid ISO format: 2026-10-05. | |||||
| PASS | metadata | FILENAME_GAME_ID_MATCH | Filename contains game_id: filename=20261005_NYY@TB__20261006T023852Z, game_id=20261005_NYY@TB. | |||||
| PASS | metadata | FILENAME_TEAM_MATCH | Filename teams match JSON teams: NYY@TB. | |||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | H2H base feature is implemented and its runtime trace passed. | {'method': 'h2h_net_margin_monotonic_v1', 'available': True, 'sample_size': 5, 'sample_weight': 0.0577, 'home_net_margin': -14.0, 'absolute_net_margin': 14.0, 'home_average_margin': -2.8, 'home_run_delta': -0.0808, 'away_run_delta': 0.0808, 'evidence': [{'game_id': None, 'home_margin': -2.0}, {'game_id': None, 'home_margin': -7.0}, {'game_id': None, 'home_margin': 5.0}, {'game_id': None, 'home_margin': -2.0}, {'game_id': None, 'home_margin': -8.0}], 'adaptive_parameters': {'h2h.history_limit': 5, 'h2h.maximum_weight': 0.15, 'h2h.prior_games': 8.0, 'h2h.maximum_total_shift': 0.65}} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Score distribution widening is implemented and its runtime trace passed. | {'most_likely': [{'home_runs': 3, 'away_runs': 3, 'probability': 0.028425001857791943}, {'home_runs': 3, 'away_runs': 4, 'probability': 0.026624637022712536}, {'home_runs': 2, 'away_runs': 3, 'probability': 0.02655888481906244}, {'home_runs': 3, 'away_runs': 2, 'probability': 0.026233106036805034}, {'home_runs': 4, 'away_runs': 3, 'probability': 0.026168542020327538}], 'home_distribution': {'0': 0.08835713498291922, '1': 0.1278072747072023, '2': 0.1590222455882233, '3': 0.17019568619203276, '4': 0.15668505451913656, '5': 0.12407804914258759, '6': 0.08451828939924737, '7': 0.04952161498021102, '8': 0.024959004456441655, '9': 0.010820518614672165, '10': 0.004035127417326009}, 'away_distribution': {'0': 0.08480018763735535, '1': 0.1229653602338988, '2': 0.15413496442680732, '3': 0.16701364466852497, '4': 0.15643543980704544, '5': 0.12666328533417143, '6': 0.08865408588729988, '7': 0.05363881451733485, '8': 0.02805381911797119, '9': 0.012683444737746479, '10': 0.004956953631844255}, 'model': 'overdispersed_score_distribution', 'variance_multiplier': 2.25, 'variance_floor': 2.75, 'roadmap_status': 'implemented_above_requested_1.4x'} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Season/recent-form quality blend is implemented and its runtime trace passed. | {'method': 'season_recent_quality_blend_v2_adaptive', 'recent_window': 10, 'season_quality_edge': -0.2853, 'recent_quality_edge': 0.028, 'season_weight': 0.65, 'recent_weight': 0.35, 'recent_reliability': 1.0, 'alignment': 'conflict', 'blended_quality_edge': -0.1757} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Simulation flip control is implemented and its runtime trace passed. | {'pre_simulation_score': {'away_runs': 4, 'home_runs': 2, 'score_text': 'NYY 4 - 2 TB', 'winner': 'NYY'}, 'final_simulation_score': {'away_runs': 4, 'home_runs': 2, 'score_text': 'NYY 4 - 2 TB', 'winner': 'NYY'}, 'winner_flipped_by_simulation': False, 'simulation_would_flip_winner': False, 'sim_flipped_pre_winner': False, 'sim_flip_trusted': False, 'sim_flip_policy': 'diagnostic_only_unless_independently_supported', 'independent_margin_support': False, 'independent_margin_support_evidence': {'pitcher_matchup_edge_home_minus_away': -0.02, 'recent_form_edge_home_minus_away': -0.182, 'winner_direction': 'away', 'thresholds': {'pitcher_matchup': 0.35, 'recent_form': 0.75}}, 'margin_widening_capped': False, 'simulation_winner_agrees': True, 'away_run_delta': 0, 'home_run_delta': 0, 'total_run_delta': 0, 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_usage': 'organic_simulation_realized_target', 'final_prediction_source': 'stable_final_prediction_policy', 'final_decision_policy': {'policy_version': 'model_target_authoritative_simulation_realizes_v3', 'away_runs': 4, 'home_runs': 2, 'winner': 'NYY', 'model_winner': 'NYY', 'simulation_winner': 'NYY', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 2, 'published_winner': 'NYY', 'published_winner_draw_share': 1.0, 'draw_majority_team': 'NYY', 'published_winner_is_draw_majority': True, 'sampling': 'target_conditioned_selection', 'is_unbiased_probability_sample': False, 'note': 'Draw shares are target-conditioned and diagnostic. A published winner holding a minority share is recorded, not suppressed.'}, 'simulation_score_enabled': True, 'independent_margin_support': False, 'margin_widening_capped': False, 'model_margin': 2, 'simulation_margin': 2, 'simulation_usage': 'organic_simulation_realized_target', 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_realized_target': True, 'model_score': {'away_runs': 4, 'home_runs': 2}, 'simulation_score': {'away_runs': 4, 'home_runs': 2}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 2, 'final_margin': 2, 'winner_quality_edge': 0.1757, 'winner': 'NYY', 'score_reviewed': {'away_runs': 4, 'home_runs': 2, 'source': 'enhanced_prediction.pre_simulation_target'}, 'reason': 'published margin is directionally supported or within review threshold'}} | ||||
| PASS | pipeline | PIPELINE_VERSION | Prediction pipeline version is current: enhanced_game_prediction_v4_continuous_learning__player_form_v3_5_10_season. | |||||
| PASS | pitch_by_pitch | PITCH_DETAIL_SANITY | Pitch-by-pitch speeds and zones are within sanity ranges. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | away pitcher pitch-by-pitch count matches pitch_count_summary total: 138. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | home pitcher pitch-by-pitch count matches pitch_count_summary total: 151. | |||||
| PASS | pitch_count | simulation | NYY | PITCH_COUNT_PITCHER_MATCH | NYY pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | NYY | PITCH_COUNT_TOTAL_MATCH | NYY pitch_count_summary total, row sum, and pitching total all match: 138. | |||
| PASS | pitch_count | simulation | TB | PITCH_COUNT_PITCHER_MATCH | TB pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | TB | PITCH_COUNT_TOTAL_MATCH | TB pitch_count_summary total, row sum, and pitching total all match: 151. | |||
| PASS | pitcher_opponent_strength | PITCHER_OPPONENT_STRENGTH_BOUNDS | Pitcher-opponent adjustment stayed inside supported bounds. | |||||
| PASS | pitching | PITCHER_APPEARANCE_COHERENT | All 8 pitchers in the box actually appeared. | |||||
| PASS | pitching | PUBLISHED_PITCHER_LINES_MATCH_BOX | Published pitcher lines cover the outs the box recorded. | |||||
| PASS | pitching | current | NYY | PITCHING_REALISM | current:NYY pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | NYY | STARTER_PRESENT | current:NYY includes a starter/opener role. | |||
| PASS | pitching | current | TB | PITCHING_REALISM | current:TB pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | TB | STARTER_PRESENT | current:TB includes a starter/opener role. | |||
| PASS | pitching | simulation | NYY | PITCHING_REALISM | simulation:NYY pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | NYY | STARTER_PRESENT | simulation:NYY includes a starter/opener role. | |||
| PASS | pitching | simulation | TB | PITCHING_REALISM | simulation:TB pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | TB | STARTER_PRESENT | simulation:TB includes a starter/opener role. | |||
| PASS | pitching_totals | current | NYY | PITCHING_TOTALS_SUM | current:NYY pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | NYY | PITCHING_TOTALS_SUM | current:NYY pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | current | TB | PITCHING_TOTALS_SUM | current:TB pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | TB | PITCHING_TOTALS_SUM | current:TB pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | NYY | PITCHING_TOTALS_SUM | simulation:NYY pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | NYY | PITCHING_TOTALS_SUM | simulation:NYY pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | TB | PITCHING_TOTALS_SUM | simulation:TB pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | TB | PITCHING_TOTALS_SUM | simulation:TB pitching totals equal summed pitcher lines for available fields. | |||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Enhanced AI score matches enhanced target: NYY 4 - 2 TB. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation score matches final score: NYY 4 - 2 TB. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation winner matches final score: NYY wins 4-2. | |||||
| PASS | prediction_comparison | SIMULATION_WINNER_FLIP_TRACE | Simulation decision is explicit: model=NYY, simulation=NYY, published=NYY. | |||||
| PASS | probability | CONFIDENCE_RANGE | Enhanced target confidence is in range: 0.540. | |||||
| PASS | recent_form | RECENT_FORM_RANGE | away recent_form record is coherent: 5/10 (0.500). | |||||
| PASS | recent_form | RECENT_FORM_RANGE | home recent_form record is coherent: 5/10 (0.500). | |||||
| PASS | report | REPORT_COMPLETE | All findings, passes, warnings, errors, and critical issues are rendered in the single HTML report. | |||||
| PASS | schema | SCHEMA_ROOTS_PRESENT | Both major schemas are present: game, scoring_simulation, game_summary, prediction_comparison. | |||||
| PASS | score | GAME_SUMMARY_MATCH | game_summary agrees with the published score (game.final_prediction): NYY wins 4-2. | |||||
| PASS | score | SCORE_NO_TIE | Final score has a clear winner: NYY wins 4-2. | |||||
| PASS | score | SCORE_STEP_FINAL_MATCH | simulation_result step matches final score: 4-2. | |||||
| PASS | score | SCORE_STEP_ORDER | Score evolution contains the expected ordered steps. | |||||
| PASS | score | TARGET_SCORE_DRIFT | Final score is close to enhanced target: target 4-2, final 4-2 (delta 0). | |||||
| PASS | score | TOTAL_RUNS_MATCH | total_runs field matches final score total: 6. | |||||
| PASS | score | WINNER_FIELD_MATCH | winner field is consistent: NYY wins 4-2. | |||||
| PASS | score | cross-schema | CURRENT_SCORE_MATCHES_SIM | game.predicted_runs matches scoring_simulation.final_score. | ||||
| PASS | team_recent_performance | current | NYY | RECENT_FORM_RANGE | NYY recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | NYY | TEAM_RECENT_RECORD | NYY wins and win_pct agree: 6/10 = 0.600. | |||
| PASS | team_recent_performance | current | TB | RECENT_FORM_RANGE | TB recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | TB | TEAM_RECENT_RECORD | TB wins and win_pct agree: 6/10 = 0.600. |
Passed checks
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| PASS | batting | current | NYY | BATTING_REALISM | current:NYY hitter lines pass basic baseball constraints. | |||
| PASS | batting | current | TB | BATTING_REALISM | current:TB hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | NYY | BATTING_REALISM | simulation:NYY hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | TB | BATTING_REALISM | simulation:TB hitter lines pass basic baseball constraints. | |||
| PASS | batting_totals | current | NYY | BATTING_TOTALS_SUM | current:NYY batting totals equal summed player lines. | |||
| PASS | batting_totals | current | TB | BATTING_TOTALS_SUM | current:TB batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | NYY | BATTING_TOTALS_SUM | simulation:NYY batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | TB | BATTING_TOTALS_SUM | simulation:TB batting totals equal summed player lines. | |||
| PASS | boxscore_crosscheck | simulation | NYY | BAT_PITCH_BB_MATCH | simulation:NYY batting walks match TB pitching: 3. | |||
| PASS | boxscore_crosscheck | simulation | NYY | BAT_PITCH_HR_MATCH | simulation:NYY batting home runs match TB pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | NYY | BAT_PITCH_H_MATCH | simulation:NYY batting hits match TB pitching: 8. | |||
| PASS | boxscore_crosscheck | simulation | NYY | BAT_PITCH_SO_MATCH | simulation:NYY batting strikeouts match TB pitching: 9. | |||
| PASS | boxscore_crosscheck | simulation | NYY | PA_BF_MATCH | simulation:NYY PA=38 matches TB BF=38. | |||
| PASS | boxscore_crosscheck | simulation | NYY | RUNS_MATCH_FINAL | simulation:NYY runs match final score and opposing pitching runs: 4. | |||
| PASS | boxscore_crosscheck | simulation | TB | BAT_PITCH_BB_MATCH | simulation:TB batting walks match NYY pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | TB | BAT_PITCH_HR_MATCH | simulation:TB batting home runs match NYY pitching: 0. | |||
| PASS | boxscore_crosscheck | simulation | TB | BAT_PITCH_H_MATCH | simulation:TB batting hits match NYY pitching: 5. | |||
| PASS | boxscore_crosscheck | simulation | TB | BAT_PITCH_SO_MATCH | simulation:TB batting strikeouts match NYY pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | TB | PA_BF_MATCH | simulation:TB PA=35 matches NYY BF=35. | |||
| PASS | boxscore_crosscheck | simulation | TB | RUNS_MATCH_FINAL | simulation:TB runs match final score and opposing pitching runs: 2. | |||
| PASS | confidence_calibration | CONFIDENCE_CALIBRATION_APPLIED | Empirical confidence blend verified: 0.485 -> 0.532 at weight 0.500. | {'method': 'empirical_hit_rate_weighted_v1', 'applied': True, 'reason': 'raw confidence blended with verified historical bucket hit rate', 'raw_confidence': 0.484824, 'sample_size': 485, 'empirical_hit_rate': 0.5794, 'empirical_weight': 0.5, 'blended_confidence': 0.532112, 'published_confidence': 0.539612, 'published_after_governors': True, 'governor_mode': 'shrinkage_not_clamp'} | ||||
| PASS | cross_schema | cross-schema | NYY | CURRENT_FINALIZED_MATCH_BOX | NYY current pitcher projected totals match final simulation pitching box score. | |||
| PASS | cross_schema | cross-schema | TB | CURRENT_FINALIZED_MATCH_BOX | TB current pitcher projected totals match final simulation pitching box score. | |||
| PASS | current_payload | current | NYY | CURRENT_LINEUP_SHAPE | NYY current lineup has 9 expected positions. | |||
| PASS | current_payload | current | NYY | CURRENT_MODEL_ZERO_FALLBACK | NYY current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | NYY | CURRENT_NAMES_PRESENT | NYY current hitter names are populated. | |||
| PASS | current_payload | current | NYY | CURRENT_PREDICTIONS_MATCH_FINALIZED | NYY hitter predictions mirror finalized stats. | |||
| PASS | current_payload | current | TB | CURRENT_LINEUP_SHAPE | TB current lineup has 9 expected positions. | |||
| PASS | current_payload | current | TB | CURRENT_MODEL_ZERO_FALLBACK | TB current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | TB | CURRENT_NAMES_PRESENT | TB current hitter names are populated. | |||
| PASS | current_payload | current | TB | CURRENT_PREDICTIONS_MATCH_FINALIZED | TB hitter predictions mirror finalized stats. | |||
| PASS | current_vs_final | cross-schema | NYY | CURRENT_FINALIZED_MATCH_BOX | NYY current finalized batting totals match final simulation box score. | |||
| PASS | current_vs_final | cross-schema | NYY | CURRENT_PLAYER_MATCH_BOX | NYY current finalized hitter lines mirror simulation box score. | |||
| PASS | current_vs_final | cross-schema | TB | CURRENT_FINALIZED_MATCH_BOX | TB current finalized batting totals match final simulation box score. | |||
| PASS | current_vs_final | cross-schema | TB | CURRENT_PLAYER_MATCH_BOX | TB current finalized hitter lines mirror simulation box score. | |||
| PASS | data_leakage | H2H_DATA_LEAKAGE | All head-to-head rows are dated before the prediction game date. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | Home + away win probabilities sum to approximately 1.0. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | away_win_probability is in [0,1]: 0.540. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | confidence is in [0,1]: 0.540. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | home_win_probability is in [0,1]: 0.460. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Final total runs 6 is reasonably close to low-score expected_total_runs 6.0. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Low-score analysis factors are non-negative. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Low-score probability/confidence are valid: 0.690/0.900. | |||||
| PASS | final_decision | FINAL_DECISION_POLICY | Final decision policy preserved model ownership of the winner. | |||||
| PASS | innings | GAME_ENDING_COHERENT | The game ends coherently for its score. | |||||
| PASS | innings | INNINGS_COUNT | inning_by_inning_summary contains 9 innings. | |||||
| PASS | innings | INNING_PLAY_SUMS | Detailed play totals match every half-inning line. | |||||
| PASS | innings | INNING_SEQUENCE | Inning numbers are sequential. | |||||
| PASS | innings | INNING_TOTAL_HITS | Inning hits match batting totals: NYY 8, TB 5. | |||||
| PASS | innings | INNING_TOTAL_RUNS | Inning runs sum to final score: NYY 4 - TB 2. | |||||
| PASS | kpi | LUNA_KPI_TRACE | Luna KPI trace coherent (no_promoted_kpis). | |||||
| PASS | matchup_recency | GUARDRAIL_FINAL_WINNER_SYNC | Guardrail predicted_team matches final predicted winner: NYY. | |||||
| PASS | matchup_recency | MATCHUP_RECENCY_GUARDRAIL | Matchup recency guardrail applied for NYY; cap=0.54, reasons=predicted side recently lost this matchup by 5+ runs; 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. | {'applied': True, 'confidence_cap': 0.54, 'winner_flipped': False, 'reasons': ['predicted side recently lost this matchup by 5+ runs', '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'], 'signals': {'predicted_team': 'NYY', 'opponent_team': 'TB', 'h2h_net_margin': 4, 'opponent_breakout': False, 'opponent_blowout_win': True, 'split_recent_h2h': True, 'recent_h2h': [{'date': '2026-09-24', 'predicted_team_runs': 6, 'opponent_runs': 4, 'margin_for_predicted_team': 2, 'winner': 'NYY'}, {'date': '2026-09-23', 'predicted_team_runs': 9, 'opponent_runs': 2, 'margin_for_predicted_team': 7, 'winner': 'NYY'}, {'date': '2026-09-22', 'predicted_team_runs': 1, 'opponent_runs': 6, 'margin_for_predicted_team': -5, 'winner': 'TB'}], 'prediction_memory': {'available': True, 'reason': 'verified_prior_matchup_predictions_available', 'verification_policy': 'pregame_artifact_matched_to_one_official_final', 'verified_outcome_count': 7, 'consecutive_same_pick_count': 0, 'same_pick_actual_loss_count': 2, 'same_pick_blowout_loss_count': 1, 'prior_predictions': [{'date': '20261003', 'away': 'NYY', 'home': 'TB', 'game_number': 1, 'predicted_team': 'TB', 'actual_winner': 'TB', 'actual_margin': 1, 'raw_pick_probability': 0.518365, 'artifact': '20261003_NYY@TB.json', 'verification': 'pregame_official_final'}, {'date': '20260924', 'away': 'TB', 'home': 'NYY', 'game_number': 1, 'predicted_team': 'NYY', 'actual_winner': 'NYY', 'actual_margin': 2, 'raw_pick_probability': 0.531136, 'artifact': '20260924_TB@NYY.json', 'verification': 'pregame_official_final'}, {'date': '20260923', 'away': 'TB', 'home': 'NYY', 'game_number': 1, 'predicted_team': 'TB', 'actual_winner': 'NYY', 'actual_margin': 7, 'raw_pick_probability': 0.505259, 'artifact': '20260923_TB@NYY.json', 'verification': 'pregame_official_final'}, {'date': '20260922', 'away': 'TB', 'home': 'NYY', 'game_number': 1, 'predicted_team': 'NYY', 'actual_winner': 'NYY', 'actual_margin': 2, 'raw_pick_probability': 0.534918, 'artifact': '20260922_TB@NYY.json', 'verification': 'pregame_official_final'}, {'date': '20260922', 'away': 'TB', 'home': 'NYY', 'game_number': 2, 'predicted_team': 'NYY', 'actual_winner': 'TB', 'actual_margin': 5, 'raw_pick_probability': 0.520635, 'artifact': '20260922_TB@NYY_2.json', 'verification': 'pregame_official_final'}]}, 'guardrail_predicted_team': 'NYY', 'guardrail_opponent_team': 'TB', 'output_pre_simulation_winner': 'NYY', 'output_opponent_team': 'TB', 'simulation_score_winner': 'NYY', 'final_score_winner': 'NYY', 'pre_simulation_winner': 'NYY', 'winner_flipped_by_simulation': False, 'simulation_would_flip_winner': False}, 'hard_flip_suppressed': False, 'flip_authority': 'caps_confidence_and_shifts_runs_only'} | ||||
| PASS | metadata | DATE_PARSE | Date is valid ISO format: 2026-10-05. | |||||
| PASS | metadata | FILENAME_GAME_ID_MATCH | Filename contains game_id: filename=20261005_NYY@TB__20261006T023852Z, game_id=20261005_NYY@TB. | |||||
| PASS | metadata | FILENAME_TEAM_MATCH | Filename teams match JSON teams: NYY@TB. | |||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | H2H base feature is implemented and its runtime trace passed. | {'method': 'h2h_net_margin_monotonic_v1', 'available': True, 'sample_size': 5, 'sample_weight': 0.0577, 'home_net_margin': -14.0, 'absolute_net_margin': 14.0, 'home_average_margin': -2.8, 'home_run_delta': -0.0808, 'away_run_delta': 0.0808, 'evidence': [{'game_id': None, 'home_margin': -2.0}, {'game_id': None, 'home_margin': -7.0}, {'game_id': None, 'home_margin': 5.0}, {'game_id': None, 'home_margin': -2.0}, {'game_id': None, 'home_margin': -8.0}], 'adaptive_parameters': {'h2h.history_limit': 5, 'h2h.maximum_weight': 0.15, 'h2h.prior_games': 8.0, 'h2h.maximum_total_shift': 0.65}} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Score distribution widening is implemented and its runtime trace passed. | {'most_likely': [{'home_runs': 3, 'away_runs': 3, 'probability': 0.028425001857791943}, {'home_runs': 3, 'away_runs': 4, 'probability': 0.026624637022712536}, {'home_runs': 2, 'away_runs': 3, 'probability': 0.02655888481906244}, {'home_runs': 3, 'away_runs': 2, 'probability': 0.026233106036805034}, {'home_runs': 4, 'away_runs': 3, 'probability': 0.026168542020327538}], 'home_distribution': {'0': 0.08835713498291922, '1': 0.1278072747072023, '2': 0.1590222455882233, '3': 0.17019568619203276, '4': 0.15668505451913656, '5': 0.12407804914258759, '6': 0.08451828939924737, '7': 0.04952161498021102, '8': 0.024959004456441655, '9': 0.010820518614672165, '10': 0.004035127417326009}, 'away_distribution': {'0': 0.08480018763735535, '1': 0.1229653602338988, '2': 0.15413496442680732, '3': 0.16701364466852497, '4': 0.15643543980704544, '5': 0.12666328533417143, '6': 0.08865408588729988, '7': 0.05363881451733485, '8': 0.02805381911797119, '9': 0.012683444737746479, '10': 0.004956953631844255}, 'model': 'overdispersed_score_distribution', 'variance_multiplier': 2.25, 'variance_floor': 2.75, 'roadmap_status': 'implemented_above_requested_1.4x'} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Season/recent-form quality blend is implemented and its runtime trace passed. | {'method': 'season_recent_quality_blend_v2_adaptive', 'recent_window': 10, 'season_quality_edge': -0.2853, 'recent_quality_edge': 0.028, 'season_weight': 0.65, 'recent_weight': 0.35, 'recent_reliability': 1.0, 'alignment': 'conflict', 'blended_quality_edge': -0.1757} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Simulation flip control is implemented and its runtime trace passed. | {'pre_simulation_score': {'away_runs': 4, 'home_runs': 2, 'score_text': 'NYY 4 - 2 TB', 'winner': 'NYY'}, 'final_simulation_score': {'away_runs': 4, 'home_runs': 2, 'score_text': 'NYY 4 - 2 TB', 'winner': 'NYY'}, 'winner_flipped_by_simulation': False, 'simulation_would_flip_winner': False, 'sim_flipped_pre_winner': False, 'sim_flip_trusted': False, 'sim_flip_policy': 'diagnostic_only_unless_independently_supported', 'independent_margin_support': False, 'independent_margin_support_evidence': {'pitcher_matchup_edge_home_minus_away': -0.02, 'recent_form_edge_home_minus_away': -0.182, 'winner_direction': 'away', 'thresholds': {'pitcher_matchup': 0.35, 'recent_form': 0.75}}, 'margin_widening_capped': False, 'simulation_winner_agrees': True, 'away_run_delta': 0, 'home_run_delta': 0, 'total_run_delta': 0, 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_usage': 'organic_simulation_realized_target', 'final_prediction_source': 'stable_final_prediction_policy', 'final_decision_policy': {'policy_version': 'model_target_authoritative_simulation_realizes_v3', 'away_runs': 4, 'home_runs': 2, 'winner': 'NYY', 'model_winner': 'NYY', 'simulation_winner': 'NYY', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 2, 'published_winner': 'NYY', 'published_winner_draw_share': 1.0, 'draw_majority_team': 'NYY', 'published_winner_is_draw_majority': True, 'sampling': 'target_conditioned_selection', 'is_unbiased_probability_sample': False, 'note': 'Draw shares are target-conditioned and diagnostic. A published winner holding a minority share is recorded, not suppressed.'}, 'simulation_score_enabled': True, 'independent_margin_support': False, 'margin_widening_capped': False, 'model_margin': 2, 'simulation_margin': 2, 'simulation_usage': 'organic_simulation_realized_target', 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_realized_target': True, 'model_score': {'away_runs': 4, 'home_runs': 2}, 'simulation_score': {'away_runs': 4, 'home_runs': 2}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 2, 'final_margin': 2, 'winner_quality_edge': 0.1757, 'winner': 'NYY', 'score_reviewed': {'away_runs': 4, 'home_runs': 2, 'source': 'enhanced_prediction.pre_simulation_target'}, 'reason': 'published margin is directionally supported or within review threshold'}} | ||||
| PASS | pipeline | PIPELINE_VERSION | Prediction pipeline version is current: enhanced_game_prediction_v4_continuous_learning__player_form_v3_5_10_season. | |||||
| PASS | pitch_by_pitch | PITCH_DETAIL_SANITY | Pitch-by-pitch speeds and zones are within sanity ranges. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | away pitcher pitch-by-pitch count matches pitch_count_summary total: 138. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | home pitcher pitch-by-pitch count matches pitch_count_summary total: 151. | |||||
| PASS | pitch_count | simulation | NYY | PITCH_COUNT_PITCHER_MATCH | NYY pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | NYY | PITCH_COUNT_TOTAL_MATCH | NYY pitch_count_summary total, row sum, and pitching total all match: 138. | |||
| PASS | pitch_count | simulation | TB | PITCH_COUNT_PITCHER_MATCH | TB pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | TB | PITCH_COUNT_TOTAL_MATCH | TB pitch_count_summary total, row sum, and pitching total all match: 151. | |||
| PASS | pitcher_opponent_strength | PITCHER_OPPONENT_STRENGTH_BOUNDS | Pitcher-opponent adjustment stayed inside supported bounds. | |||||
| PASS | pitching | PITCHER_APPEARANCE_COHERENT | All 8 pitchers in the box actually appeared. | |||||
| PASS | pitching | PUBLISHED_PITCHER_LINES_MATCH_BOX | Published pitcher lines cover the outs the box recorded. | |||||
| PASS | pitching | current | NYY | PITCHING_REALISM | current:NYY pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | NYY | STARTER_PRESENT | current:NYY includes a starter/opener role. | |||
| PASS | pitching | current | TB | PITCHING_REALISM | current:TB pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | TB | STARTER_PRESENT | current:TB includes a starter/opener role. | |||
| PASS | pitching | simulation | NYY | PITCHING_REALISM | simulation:NYY pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | NYY | STARTER_PRESENT | simulation:NYY includes a starter/opener role. | |||
| PASS | pitching | simulation | TB | PITCHING_REALISM | simulation:TB pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | TB | STARTER_PRESENT | simulation:TB includes a starter/opener role. | |||
| PASS | pitching_totals | current | NYY | PITCHING_TOTALS_SUM | current:NYY pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | NYY | PITCHING_TOTALS_SUM | current:NYY pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | current | TB | PITCHING_TOTALS_SUM | current:TB pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | TB | PITCHING_TOTALS_SUM | current:TB pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | NYY | PITCHING_TOTALS_SUM | simulation:NYY pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | NYY | PITCHING_TOTALS_SUM | simulation:NYY pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | TB | PITCHING_TOTALS_SUM | simulation:TB pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | TB | PITCHING_TOTALS_SUM | simulation:TB pitching totals equal summed pitcher lines for available fields. | |||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Enhanced AI score matches enhanced target: NYY 4 - 2 TB. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation score matches final score: NYY 4 - 2 TB. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation winner matches final score: NYY wins 4-2. | |||||
| PASS | prediction_comparison | SIMULATION_WINNER_FLIP_TRACE | Simulation decision is explicit: model=NYY, simulation=NYY, published=NYY. | |||||
| PASS | probability | CONFIDENCE_RANGE | Enhanced target confidence is in range: 0.540. | |||||
| PASS | recent_form | RECENT_FORM_RANGE | away recent_form record is coherent: 5/10 (0.500). | |||||
| PASS | recent_form | RECENT_FORM_RANGE | home recent_form record is coherent: 5/10 (0.500). | |||||
| PASS | report | REPORT_COMPLETE | All findings, passes, warnings, errors, and critical issues are rendered in the single HTML report. | |||||
| PASS | schema | SCHEMA_ROOTS_PRESENT | Both major schemas are present: game, scoring_simulation, game_summary, prediction_comparison. | |||||
| PASS | score | GAME_SUMMARY_MATCH | game_summary agrees with the published score (game.final_prediction): NYY wins 4-2. | |||||
| PASS | score | SCORE_NO_TIE | Final score has a clear winner: NYY wins 4-2. | |||||
| PASS | score | SCORE_STEP_FINAL_MATCH | simulation_result step matches final score: 4-2. | |||||
| PASS | score | SCORE_STEP_ORDER | Score evolution contains the expected ordered steps. | |||||
| PASS | score | TARGET_SCORE_DRIFT | Final score is close to enhanced target: target 4-2, final 4-2 (delta 0). | |||||
| PASS | score | TOTAL_RUNS_MATCH | total_runs field matches final score total: 6. | |||||
| PASS | score | WINNER_FIELD_MATCH | winner field is consistent: NYY wins 4-2. | |||||
| PASS | score | cross-schema | CURRENT_SCORE_MATCHES_SIM | game.predicted_runs matches scoring_simulation.final_score. | ||||
| PASS | team_recent_performance | current | NYY | RECENT_FORM_RANGE | NYY recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | NYY | TEAM_RECENT_RECORD | NYY wins and win_pct agree: 6/10 = 0.600. | |||
| PASS | team_recent_performance | current | TB | RECENT_FORM_RANGE | TB recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | TB | TEAM_RECENT_RECORD | TB wins and win_pct agree: 6/10 = 0.600. |
Info/context findings
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| INFO | score_reconciliation | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
Score evolution
| step | away_runs | home_runs | confidence | description |
|---|---|---|---|---|
| historical_ml | 4.864972693493641 | 2.9968524001566985 | Base ML historical model prediction | |
| variance_applied | 5 | 3 | Deterministic baseline target (variance factor 1.0) | |
| enhanced_prediction | 4 | 3 | 0.540 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| kpi_layer | 4 | 3 | Savant KPI blend applied to the model target | |
| embedded_savant_run_environment | 4 | 2 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality | |
| fundamental_edge_target_review | 4 | 2 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments | |
| capped_target | 4 | 2 | Capped at max 12 realistic runs | |
| simulation_result | 4 | 2 | Final inning-by-inning simulation result |
Inning-by-inning linescore
| team | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | R | H |
|---|---|---|---|---|---|---|---|---|---|---|---|
| NYY | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 3 | 0 | 4 | 8 |
| TB | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 2 | 5 |
Team totals - current + final simulation
| src | team | type | PA | AB | H | 2B | 3B | HR | RBI | R | BB | SO | SF | HBP | SB | CS | IP | ER | BF | Pitches |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| current | NYY | batting | 35 | 8 | 3 | 0 | 1 | 4 | 4 | 3 | 9 | 0 | 0 | 0 | 0 | |||||
| current | NYY | pitching | 5 | 0 | 2 | 1 | 7 | 9.0 | 0 | 0 | 0 | |||||||||
| current | TB | batting | 34 | 5 | 1 | 0 | 0 | 2 | 2 | 1 | 7 | 0 | 0 | 0 | 0 | |||||
| current | TB | pitching | 8 | 1 | 4 | 3 | 9 | 9.0 | 4 | 0 | 0 | |||||||||
| simulation | NYY | batting | 35 | 8 | 3 | 0 | 1 | 4 | 4 | 3 | 9 | 0 | 0 | |||||||
| simulation | NYY | pitching | 5 | 0 | 2 | 1 | 7 | 9.0 | 0 | 35 | 138 | |||||||||
| simulation | TB | batting | 34 | 5 | 1 | 0 | 0 | 2 | 2 | 1 | 7 | 0 | 0 | |||||||
| simulation | TB | pitching | 8 | 1 | 4 | 3 | 9 | 9.0 | 4 | 38 | 151 |
Batting lines - current + final simulation
| src | team | order | pos | name | PA | AB | H | 2B | 3B | HR | R | RBI | BB | SO | HBP | AVG |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| current | NYY | DH | Ben Rice | 0 | 5 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0 | 0.200 | |
| current | NYY | LF | Cody Bellinger | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0.250 | |
| current | NYY | 1B | Luis García Jr. | 0 | 4 | 1 | 0 | 0 | 1 | 1 | 1 | 0 | 1 | 0 | 0.250 | |
| current | NYY | RF | Spencer Jones | 0 | 4 | 1 | 1 | 0 | 0 | 1 | 2 | 0 | 2 | 0 | 0.250 | |
| current | NYY | SS | George Lombard Jr. | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0.333 | |
| current | NYY | 2B | Jazz Chisholm Jr. | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.250 | |
| current | NYY | CF | Trent Grisham | 0 | 4 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.250 | |
| current | NYY | C | Austin Wells | 0 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.000 | |
| current | NYY | 3B | Ryan McMahon | 0 | 3 | 1 | 1 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0.333 | |
| current | TB | DH | Yandy Díaz | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.250 | |
| current | TB | 1B | Jonathan Aranda | 0 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.000 | |
| current | TB | 3B | Junior Caminero | 0 | 3 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0.000 | |
| current | TB | C | Liam Hicks | 0 | 4 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.250 | |
| current | TB | LF | Chandler Simpson | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.250 | |
| current | TB | RF | Victor Mesa Jr. | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.250 | |
| current | TB | CF | Jonny DeLuca | 0 | 4 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.000 | |
| current | TB | 2B | Richie Palacios | 0 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 | |
| current | TB | SS | Taylor Walls | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.333 | |
| simulation | NYY | 1 | DH | Ben Rice | 5 | 5 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0 | 0.200 |
| simulation | NYY | 2 | LF | Cody Bellinger | 5 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0.250 |
| simulation | NYY | 3 | 1B | Luis García Jr. | 4 | 4 | 1 | 0 | 0 | 1 | 1 | 1 | 0 | 1 | 0 | 0.250 |
| simulation | NYY | 4 | RF | Spencer Jones | 4 | 4 | 1 | 1 | 0 | 0 | 1 | 2 | 0 | 2 | 0 | 0.250 |
| simulation | NYY | 5 | SS | George Lombard Jr. | 4 | 3 | 1 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0.333 |
| simulation | NYY | 6 | 2B | Jazz Chisholm Jr. | 4 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.250 |
| simulation | NYY | 7 | CF | Trent Grisham | 4 | 4 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.250 |
| simulation | NYY | 8 | C | Austin Wells | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.000 |
| simulation | NYY | 9 | 3B | Ryan McMahon | 4 | 3 | 1 | 1 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0.333 |
| simulation | TB | 1 | DH | Yandy Díaz | 4 | 4 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.250 |
| simulation | TB | 2 | 1B | Jonathan Aranda | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.000 |
| simulation | TB | 3 | 3B | Junior Caminero | 4 | 3 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0.000 |
| simulation | TB | 4 | C | Liam Hicks | 4 | 4 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.250 |
| simulation | TB | 5 | LF | Chandler Simpson | 4 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.250 |
| simulation | TB | 6 | RF | Victor Mesa Jr. | 4 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.250 |
| simulation | TB | 7 | CF | Jonny DeLuca | 4 | 4 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.000 |
| simulation | TB | 8 | 2B | Richie Palacios | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 |
| simulation | TB | 9 | SS | Taylor Walls | 3 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.333 |
Pitching lines - current + final simulation
| src | team | order | name | role | IP | H | R | ER | BB | SO | HR | BF | Pitches | sim_ERA | season_ERA | season_WHIP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| current | NYY | 1 | Cam Schlittler | Starter | 5.2 | 1 | 0 | 0 | 1 | 5 | 0 | 0 | 0 | 0.00 | 1.89 | 0.91 |
| current | NYY | 4 | Paul Blackburn | Middle Reliever (High Leverage) | 1.1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.00 | 1.53 | 1.06 |
| current | NYY | 5 | John Schreiber | Middle Reliever (High Leverage) | 1.0 | 2 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 3.23 | 1.22 |
| current | NYY | 6 | Brent Headrick | Setup Man | 1.0 | 2 | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 0.00 | 2.16 | 1.22 |
| current | TB | 1 | Freddy Peralta | Starter | 5.1 | 2 | 1 | 1 | 1 | 6 | 1 | 0 | 0 | 1.69 | 4.42 | 1.33 |
| current | TB | 3 | Cole Sulser | Setup Man | 1.0 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.00 | 3.83 | 1.19 |
| current | TB | 4 | Bryan Baker | Closer | 1.0 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 9.00 | 1.28 | 0.85 |
| current | TB | 5 | Steven Matz | Middle Reliever | 1.2 | 4 | 2 | 2 | 1 | 2 | 0 | 0 | 0 | 10.80 | 5.49 | 1.23 |
| simulation | NYY | 1 | Cam Schlittler | Starter | 5.2 | 1 | 0 | 0 | 1 | 5 | 0 | 19 | 74 | 0.00 | 1.89 | 0.91 |
| simulation | NYY | 2 | Paul Blackburn | Middle Reliever (High Leverage) | 1.1 | 0 | 0 | 0 | 0 | 1 | 0 | 4 | 24 | 0.00 | 1.53 | 1.06 |
| simulation | NYY | 3 | John Schreiber | Middle Reliever (High Leverage) | 1.0 | 2 | 1 | 0 | 0 | 0 | 0 | 6 | 18 | 0.00 | 3.23 | 1.22 |
| simulation | NYY | 4 | Brent Headrick | Setup Man | 1.0 | 2 | 1 | 0 | 0 | 1 | 0 | 6 | 22 | 0.00 | 2.16 | 1.22 |
| simulation | TB | 1 | Freddy Peralta | Starter | 5.1 | 2 | 1 | 1 | 1 | 6 | 1 | 19 | 73 | 1.69 | 4.42 | 1.33 |
| simulation | TB | 2 | Cole Sulser | Setup Man | 1.0 | 1 | 0 | 0 | 0 | 1 | 0 | 4 | 16 | 0.00 | 3.83 | 1.19 |
| simulation | TB | 3 | Bryan Baker | Closer | 1.0 | 1 | 1 | 1 | 1 | 0 | 0 | 5 | 23 | 9.00 | 1.28 | 0.85 |
| simulation | TB | 4 | Steven Matz | Middle Reliever | 1.2 | 4 | 2 | 2 | 1 | 2 | 0 | 10 | 39 | 10.80 | 5.49 | 1.23 |
Pitch count summary
| team | pitcher | role | IP | R | H | BB | SO | BF | Pitches |
|---|---|---|---|---|---|---|---|---|---|
| NYY | Cam Schlittler | Starter | 5.2 | 0 | 1 | 1 | 5 | 19 | 74 |
| NYY | Paul Blackburn | Middle Reliever (High Leverage) | 1.1 | 0 | 0 | 0 | 1 | 4 | 24 |
| NYY | John Schreiber | Middle Reliever (High Leverage) | 1.0 | 1 | 2 | 0 | 0 | 6 | 18 |
| NYY | Brent Headrick | Setup Man | 1.0 | 1 | 2 | 0 | 1 | 6 | 22 |
| TB | Freddy Peralta | Starter | 5.1 | 1 | 2 | 1 | 6 | 19 | 73 |
| TB | Cole Sulser | Setup Man | 1.0 | 0 | 1 | 0 | 1 | 4 | 16 |
| TB | Bryan Baker | Closer | 1.0 | 1 | 1 | 1 | 0 | 5 | 23 |
| TB | Steven Matz | Middle Reliever | 1.2 | 2 | 4 | 1 | 2 | 10 | 39 |
Audit rule catalog
| rule | status | critical | error | warning | pass | description |
|---|---|---|---|---|---|---|
| BATTING_REALISM | good | 0 | 0 | 0 | 4 | Player/team batting lines obey baseball constraints. |
| BATTING_TOTALS_SUM | good | 0 | 0 | 0 | 4 | Team batting totals equal the sum of player batting lines. |
| BAT_PITCH_BB_MATCH | good | 0 | 0 | 0 | 2 | Batting walks match opposing pitching walks allowed. |
| BAT_PITCH_HR_MATCH | good | 0 | 0 | 0 | 2 | Batting home runs match opposing pitching home runs allowed. |
| BAT_PITCH_H_MATCH | good | 0 | 0 | 0 | 2 | Batting hits match opposing pitching hits allowed. |
| BAT_PITCH_SO_MATCH | good | 0 | 0 | 0 | 2 | Batting strikeouts match opposing pitching strikeouts. |
| CONFIDENCE_CALIBRATION_APPLIED | good | 0 | 0 | 0 | 1 | Empirical confidence blending uses the requested sample weight and remains between raw confidence and empirical hit rate. |
| CONFIDENCE_RANGE | good | 0 | 0 | 0 | 5 | Confidence values are between 0 and 1. |
| CURRENT_FINALIZED_MATCH_BOX | good | 0 | 0 | 0 | 4 | Current finalized player totals agree with final simulation box score unless model/simulation sources are separated. |
| CURRENT_LINEUP_SHAPE | good | 0 | 0 | 0 | 2 | Current predicted_performance contains a plausible 9-player lineup. |
| CURRENT_MODEL_ZERO_FALLBACK | good | 0 | 0 | 0 | 2 | Current model payload did not rely too heavily on all-zero model predictions. |
| CURRENT_NAMES_PRESENT | good | 0 | 0 | 0 | 2 | Current predicted_performance has usable player names. |
| CURRENT_PITCHER_DUPLICATION | not triggered | 0 | 0 | 0 | 0 | Pitcher lists duplicated across current sections are detected and reconciled. |
| CURRENT_PLAYER_MATCH_BOX | good | 0 | 0 | 0 | 2 | Current finalized hitter lines mirror the simulation box score unless model/simulation sources are separated. |
| CURRENT_PREDICTIONS_MATCH_FINALIZED | good | 0 | 0 | 0 | 2 | Current hitter predictions mirror finalized stats. |
| CURRENT_SCORE_MATCHES_SIM | good | 0 | 0 | 0 | 1 | game.predicted_runs is either synced to simulation or paired with game.simulation_runs. |
| DATE_PARSE | good | 0 | 0 | 0 | 1 | Game date can be parsed as an ISO date. |
| FILENAME_GAME_ID_MATCH | good | 0 | 0 | 0 | 1 | Filename and game_id identify the same game. |
| FILENAME_TEAM_MATCH | good | 0 | 0 | 0 | 1 | Filename teams match the teams inside the JSON. |
| FINAL_DECISION_POLICY | good | 0 | 0 | 0 | 1 | One organic simulation cannot replace a disagreeing model winner. |
| GAME_ENDING_COHERENT | good | 0 | 0 | 0 | 1 | The inning line ends the way a real game with the published score ends. |
| GAME_SUMMARY_MATCH | good | 0 | 0 | 0 | 1 | game_summary text agrees with final score. |
| GUARDRAIL_FINAL_WINNER_SYNC | good | 0 | 0 | 0 | 1 | Guardrail trace predicted_team matches the final predicted winner. |
| H2H_DATA_LEAKAGE | good | 0 | 0 | 0 | 1 | Head-to-head history does not include same-day or future games in pregame mode. |
| INNINGS_COUNT | good | 0 | 0 | 0 | 1 | Inning count is valid for MLB. |
| INNING_OUTS | not triggered | 0 | 0 | 0 | 0 | Each played half inning has valid outs. |
| INNING_PLAY_SUMS | good | 0 | 0 | 0 | 1 | Detailed plays agree with inning runs, hits, outs, and pitches. |
| INNING_SEQUENCE | good | 0 | 0 | 0 | 1 | Innings are sequential and unique. |
| INNING_TOTAL_HITS | good | 0 | 0 | 0 | 1 | Inning hits sum to batting team hits. |
| INNING_TOTAL_RUNS | good | 0 | 0 | 0 | 1 | Inning runs sum to final score. |
| LOW_SCORE_ANALYSIS | good | 0 | 0 | 0 | 3 | Low-score probability factors are valid and directionally consistent. |
| LUNA_KPI_TRACE | good | 0 | 0 | 0 | 1 | Promoted Luna KPIs are traced per hitter and the per-game totals agree. |
| MATCHUP_RECENCY_GUARDRAIL | good | 0 | 0 | 0 | 1 | Repeat picks are capped when recent same-matchup results contradict high confidence. |
| OPTIMIZATION_ROADMAP_STATUS | good | 0 | 0 | 0 | 4 | H2H, score-distribution, simulation-flip, and recent-form roadmap signals are explicitly traced and satisfy their configured safeguards. |
| PA_BF_MATCH | good | 0 | 0 | 0 | 2 | Team plate appearances match opposing batters faced. |
| PIPELINE_VERSION | good | 0 | 0 | 0 | 1 | Prediction artifacts identify the stable pipeline version that created them. |
| PITCHER_APPEARANCE_COHERENT | good | 0 | 0 | 0 | 1 | Every pitcher in the box actually appeared: no 0-inning 0-batter line, and no pitch without a batter faced. |
| PITCHER_OPPONENT_STRENGTH_BOUNDS | good | 0 | 0 | 0 | 1 | Pitcher-opponent run factors and score deltas remain inside supported bounds. |
| PITCHING_REALISM | good | 0 | 0 | 0 | 4 | Pitcher/team pitching lines obey baseball constraints. |
| PITCHING_TOTALS_SUM | good | 0 | 0 | 0 | 8 | Team pitching totals equal the sum of pitcher lines. |
| PITCH_COUNT_PITCHER_MATCH | good | 0 | 0 | 0 | 2 | Pitch count summary pitcher rows agree with pitching box score. |
| PITCH_COUNT_TOTAL_MATCH | good | 0 | 0 | 0 | 4 | Pitch count summary totals match team pitching totals. |
| PITCH_DETAIL_SANITY | good | 0 | 0 | 0 | 1 | Pitch-by-pitch details have plausible values. |
| PREDICTION_COMPARISON_MATCH | good | 0 | 0 | 0 | 3 | prediction_comparison scores agree with target/final result. |
| PUBLISHED_PITCHER_LINES_MATCH_BOX | good | 0 | 0 | 0 | 1 | Published staff lines cover the outs the box recorded, extra innings included. |
| RECENT_FORM_RANGE | good | 0 | 0 | 0 | 4 | Recent-form metrics are within valid numeric ranges. |
| RECONCILIATION_PROPAGATION | info | 0 | 0 | 0 | 0 | When score_target_reconciliation is used, all final-facing sections are regenerated from the reconciled score. |
| REPORT_COMPLETE | good | 0 | 0 | 0 | 1 | Report includes every audit result in the all-findings table. |
| REPORT_CSV_EXPORT | not triggered | 0 | 0 | 0 | 0 | Optional CSV exports were written for summary and problem rows. |
| RUNS_MATCH_FINAL | good | 0 | 0 | 0 | 2 | Batting/pitching runs agree with final score. |
| SCHEMA_ROOTS_PRESENT | good | 0 | 0 | 0 | 1 | Expected JSON root sections exist and can be audited. |
| SCORE_NO_TIE | good | 0 | 0 | 0 | 1 | Final MLB score has a clear winner. |
| SCORE_STEP_FINAL_MATCH | good | 0 | 0 | 0 | 1 | score_evolution simulation_result matches final score. |
| SCORE_STEP_ORDER | good | 0 | 0 | 0 | 1 | Score evolution contains the expected ordered steps. |
| SIMULATION_WINNER_FLIP_TRACE | good | 0 | 0 | 0 | 1 | Simulation winner reversals are explicitly recorded. |
| STARTER_PRESENT | good | 0 | 0 | 0 | 4 | Pitching staff includes a starter or opener when expected. |
| SYNTHETIC_SCORE_PLAYS | not triggered | 0 | 0 | 0 | 0 | Score reconciliation must not inject synthetic run or out plays. |
| TARGET_SCORE_DRIFT | good | 0 | 0 | 0 | 1 | Final score does not drift too far from enhanced target. |
| TEAM_RECENT_RECORD | good | 0 | 0 | 0 | 2 | team_recent_performance wins and win_pct agree with games_analyzed. |
| TOTAL_RUNS_MATCH | good | 0 | 0 | 0 | 1 | total_runs equals away + home runs. |
| WINNER_FIELD_MATCH | good | 0 | 0 | 0 | 1 | winner field agrees with the final score. |