20260907_ARI@KC
20260907_ARI@KC.json • 2026-09-07
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 | ARI | CURRENT_PITCHER_DUPLICATION | ARI pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_payload | current | KC | CURRENT_PITCHER_DUPLICATION | KC pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_vs_final | cross-schema | ARI | CURRENT_FINALIZED_MATCH_BOX | ARI model-prediction batting totals differ from final simulation box score (AB: current=36, sim=33; H: current=8, sim=7; 2B: current=1, sim=2; HR: current=1, sim=0; RBI: current=4, sim=3; R: current=4, sim=3; BB: current=3, sim=1; SF: current=0, sim=1). | New contract: model prediction totals may differ from scoring_simulation; simulation_stats_source links the simulation box score. | ||
| INFO | current_vs_final | cross-schema | ARI | CURRENT_PLAYER_MATCH_BOX | ARI current finalized hitter lines are model predictions and differ from the simulation box score: Ketel Marte: H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Gabriel Moreno: AB current=5 box=4, H current=1 box=2, 2B current=0 box=1, HR current=1 box=0; Ildemaro Vargas: RBI current=1 box=0, SO current=0 box=2; Nolan Arenado: AB current=4 box=3, H current=1 box=0, SO current=1 box=2, SF current=0 box=1; Corbin Carroll: AB current=5 box=4, H current=1 box=2, R current=1 box=0, BB current=1 box=0; Geraldo Perdomo: AB current=4 box=3, H current=1 box=0; Lourdes Gurriel Jr.: RBI current=0 box=1, R current=0 box=1; Jordan Lawlar: SO 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 | KC | CURRENT_FINALIZED_MATCH_BOX | KC model-prediction batting totals differ from final simulation box score (AB: current=35, sim=33; H: current=8, sim=9; 2B: current=2, sim=3; RBI: current=4, sim=5; R: current=4, sim=5; BB: current=3, sim=2; HBP: current=0, sim=1). | New contract: model prediction totals may differ from scoring_simulation; simulation_stats_source links the simulation box score. | ||
| INFO | current_vs_final | cross-schema | KC | CURRENT_PLAYER_MATCH_BOX | KC current finalized hitter lines are model predictions and differ from the simulation box score: Carter Jensen: AB current=4 box=3, H current=1 box=0, HR current=1 box=0, RBI current=1 box=0; Jac Caglianone: AB current=4 box=3, H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0; Salvador Perez: AB current=5 box=4, 2B current=0 box=1, R current=0 box=1, SO current=1 box=0; Bobby Witt Jr.: AB current=4 box=3, H current=1 box=0, 2B current=1 box=0, R current=1 box=0; Vinnie Pasquantino: 2B current=0 box=1, BB current=1 box=0, SO current=0 box=1; Nick Loftin: H current=1 box=3, HR current=0 box=1, RBI current=0 box=1, R current=0 box=1; Isaac Collins: AB current=3 box=4, H current=0 box=1, 2B current=0 box=1, BB current=1 box=0; Michael Massey: 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 | ARI | BATTING_REALISM | current:ARI hitter lines pass basic baseball constraints. | |||
| PASS | batting | current | KC | BATTING_REALISM | current:KC hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | ARI | BATTING_REALISM | simulation:ARI hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | KC | BATTING_REALISM | simulation:KC hitter lines pass basic baseball constraints. | |||
| PASS | batting_totals | current | ARI | BATTING_TOTALS_SUM | current:ARI batting totals equal summed player lines. | |||
| PASS | batting_totals | current | KC | BATTING_TOTALS_SUM | current:KC batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | ARI | BATTING_TOTALS_SUM | simulation:ARI batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | KC | BATTING_TOTALS_SUM | simulation:KC batting totals equal summed player lines. | |||
| PASS | boxscore_crosscheck | simulation | ARI | BAT_PITCH_BB_MATCH | simulation:ARI batting walks match KC pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | ARI | BAT_PITCH_HR_MATCH | simulation:ARI batting home runs match KC pitching: 0. | |||
| PASS | boxscore_crosscheck | simulation | ARI | BAT_PITCH_H_MATCH | simulation:ARI batting hits match KC pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | ARI | BAT_PITCH_SO_MATCH | simulation:ARI batting strikeouts match KC pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | ARI | PA_BF_MATCH | simulation:ARI PA=35 matches KC BF=35. | |||
| PASS | boxscore_crosscheck | simulation | ARI | RUNS_MATCH_FINAL | simulation:ARI runs match final score and opposing pitching runs: 3. | |||
| PASS | boxscore_crosscheck | simulation | KC | BAT_PITCH_BB_MATCH | simulation:KC batting walks match ARI pitching: 2. | |||
| PASS | boxscore_crosscheck | simulation | KC | BAT_PITCH_HR_MATCH | simulation:KC batting home runs match ARI pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | KC | BAT_PITCH_H_MATCH | simulation:KC batting hits match ARI pitching: 9. | |||
| PASS | boxscore_crosscheck | simulation | KC | BAT_PITCH_SO_MATCH | simulation:KC batting strikeouts match ARI pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | KC | PA_BF_MATCH | simulation:KC PA=36 matches ARI BF=36. | |||
| PASS | boxscore_crosscheck | simulation | KC | RUNS_MATCH_FINAL | simulation:KC runs match final score and opposing pitching runs: 5. | |||
| PASS | confidence_calibration | CONFIDENCE_CALIBRATION_APPLIED | Empirical confidence blend verified: 0.701 -> 0.627 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.701405, 'sample_size': 349, 'empirical_hit_rate': 0.553, 'empirical_weight': 0.5, 'blended_confidence': 0.627202, 'published_confidence': 0.579623, 'published_after_governors': True, 'governor_mode': 'shrinkage_not_clamp'} | ||||
| PASS | cross_schema | cross-schema | ARI | CURRENT_FINALIZED_MATCH_BOX | ARI current pitcher projected totals match final simulation pitching box score. | |||
| PASS | cross_schema | cross-schema | KC | CURRENT_FINALIZED_MATCH_BOX | KC current pitcher projected totals match final simulation pitching box score. | |||
| PASS | current_payload | current | ARI | CURRENT_LINEUP_SHAPE | ARI current lineup has 9 expected positions. | |||
| PASS | current_payload | current | ARI | CURRENT_MODEL_ZERO_FALLBACK | ARI current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | ARI | CURRENT_NAMES_PRESENT | ARI current hitter names are populated. | |||
| PASS | current_payload | current | ARI | CURRENT_PREDICTIONS_MATCH_FINALIZED | ARI hitter predictions mirror finalized stats. | |||
| PASS | current_payload | current | KC | CURRENT_LINEUP_SHAPE | KC current lineup has 9 expected positions. | |||
| PASS | current_payload | current | KC | CURRENT_MODEL_ZERO_FALLBACK | KC current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | KC | CURRENT_NAMES_PRESENT | KC current hitter names are populated. | |||
| PASS | current_payload | current | KC | CURRENT_PREDICTIONS_MATCH_FINALIZED | KC hitter predictions mirror finalized stats. | |||
| PASS | data_leakage | H2H_DATA_LEAKAGE | No head-to-head rows are present, so no H2H date leakage was detected. | |||||
| 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.420. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | confidence is in [0,1]: 0.580. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | home_win_probability is in [0,1]: 0.580. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Final total runs 8 is reasonably close to low-score expected_total_runs 8.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.571/0.762. | |||||
| PASS | final_decision | FINAL_DECISION_POLICY | Final decision policy preserved model ownership of the winner. | |||||
| 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: ARI 7, KC 9. | |||||
| PASS | innings | INNING_TOTAL_RUNS | Inning runs sum to final score: ARI 3 - KC 5. | |||||
| PASS | matchup_recency | GUARDRAIL_FINAL_WINNER_SYNC | Guardrail predicted_team matches final predicted winner: KC. | |||||
| PASS | matchup_recency | MATCHUP_RECENCY_GUARDRAIL | No stale repeat-pick pattern detected for KC. | {'winner_confidence': 0.579623, 'h2h_net_margin': 0, 'prediction_memory': {'available': False, 'reason': 'no_verified_prior_matchup_predictions', 'verification_policy': 'pregame_artifact_matched_to_one_official_final', 'verified_outcome_count': 0, 'consecutive_same_pick_count': 0, 'same_pick_actual_loss_count': 0, 'same_pick_blowout_loss_count': 0, 'prior_predictions': []}} | ||||
| PASS | metadata | DATE_PARSE | Date is valid ISO format: 2026-09-07. | |||||
| PASS | metadata | FILENAME_GAME_ID_MATCH | Filename matches game_id: 20260907_ARI@KC. | |||||
| PASS | metadata | FILENAME_TEAM_MATCH | Filename teams match JSON teams: ARI@KC. | |||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | H2H base feature is implemented and its runtime trace passed. | {'method': 'h2h_net_margin_monotonic_v1', 'available': False, 'sample_size': 0, 'home_net_margin': 0.0, 'home_average_margin': 0.0, 'home_run_delta': 0.0, 'away_run_delta': 0.0, 'evidence': []} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Score distribution widening is implemented and its runtime trace passed. | {'most_likely': [{'home_runs': 5, 'away_runs': 3, 'probability': 0.024796298914922542}, {'home_runs': 5, 'away_runs': 4, 'probability': 0.023975247411384248}, {'home_runs': 4, 'away_runs': 3, 'probability': 0.023912389140402546}, {'home_runs': 4, 'away_runs': 4, 'probability': 0.023120605530909725}, {'home_runs': 6, 'away_runs': 3, 'probability': 0.022829969867408397}], 'home_distribution': {'0': 0.036093479551014086, '1': 0.060224654613772056, '2': 0.08922251605273478, '3': 0.11736245780474185, '4': 0.1370687674624764, '5': 0.14213544744288809, '6': 0.1308642065231323, '7': 0.10697786672137474, '8': 0.07764644418985628, '9': 0.050038443571601005, '10': 0.028631268849733545, '11': 0.014545611347400062, '12': 0.00656111946086078, '13': 0.002627716408413938}, 'away_distribution': {'0': 0.06839984491955205, '1': 0.11109171525129279, '2': 0.15178357836832293, '3': 0.1744554181312584, '4': 0.1686788752750634, '5': 0.1371998039480956, '6': 0.09387778731128459, '7': 0.05403669247835809, '8': 0.026165632176479856, '9': 0.0106583570604965, '10': 0.003652295079795883}, 'model': 'overdispersed_score_distribution', 'variance_multiplier': 1.75, '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.7292, 'recent_quality_edge': 0.204, 'season_weight': 0.65, 'recent_weight': 0.35, 'recent_reliability': 1.0, 'alignment': 'conflict', 'blended_quality_edge': -0.4026} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Simulation flip control is implemented and its runtime trace passed. | {'pre_simulation_score': {'away_runs': 3, 'home_runs': 5, 'score_text': 'ARI 3 - 5 KC', 'winner': 'KC'}, 'final_simulation_score': {'away_runs': 3, 'home_runs': 5, 'score_text': 'ARI 3 - 5 KC', 'winner': 'KC'}, '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.0608, 'recent_form_edge_home_minus_away': 0.204, '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': 3, 'home_runs': 5, 'winner': 'KC', 'model_winner': 'KC', 'simulation_winner': 'KC', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 6, 'published_winner': 'KC', 'published_winner_draw_share': 0.6667, 'draw_majority_team': 'KC', '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': 3, 'home_runs': 5}, 'simulation_score': {'away_runs': 3, 'home_runs': 5}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 2, 'final_margin': 2, 'winner_quality_edge': -0.4026, 'winner': 'KC', 'score_reviewed': {'away_runs': 3, '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: 160. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | home pitcher pitch-by-pitch count matches pitch_count_summary total: 146. | |||||
| PASS | pitch_count | simulation | ARI | PITCH_COUNT_PITCHER_MATCH | ARI pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | ARI | PITCH_COUNT_TOTAL_MATCH | ARI pitch_count_summary total, row sum, and pitching total all match: 160. | |||
| PASS | pitch_count | simulation | KC | PITCH_COUNT_PITCHER_MATCH | KC pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | KC | PITCH_COUNT_TOTAL_MATCH | KC pitch_count_summary total, row sum, and pitching total all match: 146. | |||
| 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 | current | ARI | PITCHING_REALISM | current:ARI pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | ARI | STARTER_PRESENT | current:ARI includes a starter/opener role. | |||
| PASS | pitching | current | KC | PITCHING_REALISM | current:KC pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | KC | STARTER_PRESENT | current:KC includes a starter/opener role. | |||
| PASS | pitching | simulation | ARI | PITCHING_REALISM | simulation:ARI pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | ARI | STARTER_PRESENT | simulation:ARI includes a starter/opener role. | |||
| PASS | pitching | simulation | KC | PITCHING_REALISM | simulation:KC pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | KC | STARTER_PRESENT | simulation:KC includes a starter/opener role. | |||
| PASS | pitching_totals | current | ARI | PITCHING_TOTALS_SUM | current:ARI pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | current | ARI | PITCHING_TOTALS_SUM | current:ARI pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | current | KC | PITCHING_TOTALS_SUM | current:KC pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | KC | PITCHING_TOTALS_SUM | current:KC pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | ARI | PITCHING_TOTALS_SUM | simulation:ARI pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | simulation | ARI | PITCHING_TOTALS_SUM | simulation:ARI pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | KC | PITCHING_TOTALS_SUM | simulation:KC pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | KC | PITCHING_TOTALS_SUM | simulation:KC pitching totals equal summed pitcher lines for available fields. | |||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Enhanced AI score matches enhanced target: ARI 3 - 5 KC. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation score matches final score: ARI 3 - 5 KC. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation winner matches final score: KC wins 5-3. | |||||
| PASS | prediction_comparison | SIMULATION_WINNER_FLIP_TRACE | Simulation decision is explicit: model=KC, simulation=KC, published=KC. | |||||
| PASS | probability | CONFIDENCE_RANGE | Enhanced target confidence is in range: 0.580. | |||||
| 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): KC wins 5-3. | |||||
| PASS | score | SCORE_NO_TIE | Final score has a clear winner: KC wins 3-5. | |||||
| PASS | score | SCORE_STEP_FINAL_MATCH | simulation_result step matches final score: 3-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 3-5, final 3-5 (delta 0). | |||||
| PASS | score | TOTAL_RUNS_MATCH | total_runs field matches final score total: 8. | |||||
| PASS | score | WINNER_FIELD_MATCH | winner field is consistent: KC wins 5-3. | |||||
| PASS | score | cross-schema | CURRENT_SCORE_MATCHES_SIM | game.predicted_runs matches scoring_simulation.final_score. | ||||
| PASS | team_recent_performance | current | ARI | RECENT_FORM_RANGE | ARI recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | ARI | TEAM_RECENT_RECORD | ARI wins and win_pct agree: 3/10 = 0.300. | |||
| PASS | team_recent_performance | current | KC | RECENT_FORM_RANGE | KC recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | KC | TEAM_RECENT_RECORD | KC wins and win_pct agree: 5/10 = 0.500. |
Passed checks
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| PASS | batting | current | ARI | BATTING_REALISM | current:ARI hitter lines pass basic baseball constraints. | |||
| PASS | batting | current | KC | BATTING_REALISM | current:KC hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | ARI | BATTING_REALISM | simulation:ARI hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | KC | BATTING_REALISM | simulation:KC hitter lines pass basic baseball constraints. | |||
| PASS | batting_totals | current | ARI | BATTING_TOTALS_SUM | current:ARI batting totals equal summed player lines. | |||
| PASS | batting_totals | current | KC | BATTING_TOTALS_SUM | current:KC batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | ARI | BATTING_TOTALS_SUM | simulation:ARI batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | KC | BATTING_TOTALS_SUM | simulation:KC batting totals equal summed player lines. | |||
| PASS | boxscore_crosscheck | simulation | ARI | BAT_PITCH_BB_MATCH | simulation:ARI batting walks match KC pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | ARI | BAT_PITCH_HR_MATCH | simulation:ARI batting home runs match KC pitching: 0. | |||
| PASS | boxscore_crosscheck | simulation | ARI | BAT_PITCH_H_MATCH | simulation:ARI batting hits match KC pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | ARI | BAT_PITCH_SO_MATCH | simulation:ARI batting strikeouts match KC pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | ARI | PA_BF_MATCH | simulation:ARI PA=35 matches KC BF=35. | |||
| PASS | boxscore_crosscheck | simulation | ARI | RUNS_MATCH_FINAL | simulation:ARI runs match final score and opposing pitching runs: 3. | |||
| PASS | boxscore_crosscheck | simulation | KC | BAT_PITCH_BB_MATCH | simulation:KC batting walks match ARI pitching: 2. | |||
| PASS | boxscore_crosscheck | simulation | KC | BAT_PITCH_HR_MATCH | simulation:KC batting home runs match ARI pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | KC | BAT_PITCH_H_MATCH | simulation:KC batting hits match ARI pitching: 9. | |||
| PASS | boxscore_crosscheck | simulation | KC | BAT_PITCH_SO_MATCH | simulation:KC batting strikeouts match ARI pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | KC | PA_BF_MATCH | simulation:KC PA=36 matches ARI BF=36. | |||
| PASS | boxscore_crosscheck | simulation | KC | RUNS_MATCH_FINAL | simulation:KC runs match final score and opposing pitching runs: 5. | |||
| PASS | confidence_calibration | CONFIDENCE_CALIBRATION_APPLIED | Empirical confidence blend verified: 0.701 -> 0.627 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.701405, 'sample_size': 349, 'empirical_hit_rate': 0.553, 'empirical_weight': 0.5, 'blended_confidence': 0.627202, 'published_confidence': 0.579623, 'published_after_governors': True, 'governor_mode': 'shrinkage_not_clamp'} | ||||
| PASS | cross_schema | cross-schema | ARI | CURRENT_FINALIZED_MATCH_BOX | ARI current pitcher projected totals match final simulation pitching box score. | |||
| PASS | cross_schema | cross-schema | KC | CURRENT_FINALIZED_MATCH_BOX | KC current pitcher projected totals match final simulation pitching box score. | |||
| PASS | current_payload | current | ARI | CURRENT_LINEUP_SHAPE | ARI current lineup has 9 expected positions. | |||
| PASS | current_payload | current | ARI | CURRENT_MODEL_ZERO_FALLBACK | ARI current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | ARI | CURRENT_NAMES_PRESENT | ARI current hitter names are populated. | |||
| PASS | current_payload | current | ARI | CURRENT_PREDICTIONS_MATCH_FINALIZED | ARI hitter predictions mirror finalized stats. | |||
| PASS | current_payload | current | KC | CURRENT_LINEUP_SHAPE | KC current lineup has 9 expected positions. | |||
| PASS | current_payload | current | KC | CURRENT_MODEL_ZERO_FALLBACK | KC current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | KC | CURRENT_NAMES_PRESENT | KC current hitter names are populated. | |||
| PASS | current_payload | current | KC | CURRENT_PREDICTIONS_MATCH_FINALIZED | KC hitter predictions mirror finalized stats. | |||
| PASS | data_leakage | H2H_DATA_LEAKAGE | No head-to-head rows are present, so no H2H date leakage was detected. | |||||
| 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.420. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | confidence is in [0,1]: 0.580. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | home_win_probability is in [0,1]: 0.580. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Final total runs 8 is reasonably close to low-score expected_total_runs 8.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.571/0.762. | |||||
| PASS | final_decision | FINAL_DECISION_POLICY | Final decision policy preserved model ownership of the winner. | |||||
| 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: ARI 7, KC 9. | |||||
| PASS | innings | INNING_TOTAL_RUNS | Inning runs sum to final score: ARI 3 - KC 5. | |||||
| PASS | matchup_recency | GUARDRAIL_FINAL_WINNER_SYNC | Guardrail predicted_team matches final predicted winner: KC. | |||||
| PASS | matchup_recency | MATCHUP_RECENCY_GUARDRAIL | No stale repeat-pick pattern detected for KC. | {'winner_confidence': 0.579623, 'h2h_net_margin': 0, 'prediction_memory': {'available': False, 'reason': 'no_verified_prior_matchup_predictions', 'verification_policy': 'pregame_artifact_matched_to_one_official_final', 'verified_outcome_count': 0, 'consecutive_same_pick_count': 0, 'same_pick_actual_loss_count': 0, 'same_pick_blowout_loss_count': 0, 'prior_predictions': []}} | ||||
| PASS | metadata | DATE_PARSE | Date is valid ISO format: 2026-09-07. | |||||
| PASS | metadata | FILENAME_GAME_ID_MATCH | Filename matches game_id: 20260907_ARI@KC. | |||||
| PASS | metadata | FILENAME_TEAM_MATCH | Filename teams match JSON teams: ARI@KC. | |||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | H2H base feature is implemented and its runtime trace passed. | {'method': 'h2h_net_margin_monotonic_v1', 'available': False, 'sample_size': 0, 'home_net_margin': 0.0, 'home_average_margin': 0.0, 'home_run_delta': 0.0, 'away_run_delta': 0.0, 'evidence': []} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Score distribution widening is implemented and its runtime trace passed. | {'most_likely': [{'home_runs': 5, 'away_runs': 3, 'probability': 0.024796298914922542}, {'home_runs': 5, 'away_runs': 4, 'probability': 0.023975247411384248}, {'home_runs': 4, 'away_runs': 3, 'probability': 0.023912389140402546}, {'home_runs': 4, 'away_runs': 4, 'probability': 0.023120605530909725}, {'home_runs': 6, 'away_runs': 3, 'probability': 0.022829969867408397}], 'home_distribution': {'0': 0.036093479551014086, '1': 0.060224654613772056, '2': 0.08922251605273478, '3': 0.11736245780474185, '4': 0.1370687674624764, '5': 0.14213544744288809, '6': 0.1308642065231323, '7': 0.10697786672137474, '8': 0.07764644418985628, '9': 0.050038443571601005, '10': 0.028631268849733545, '11': 0.014545611347400062, '12': 0.00656111946086078, '13': 0.002627716408413938}, 'away_distribution': {'0': 0.06839984491955205, '1': 0.11109171525129279, '2': 0.15178357836832293, '3': 0.1744554181312584, '4': 0.1686788752750634, '5': 0.1371998039480956, '6': 0.09387778731128459, '7': 0.05403669247835809, '8': 0.026165632176479856, '9': 0.0106583570604965, '10': 0.003652295079795883}, 'model': 'overdispersed_score_distribution', 'variance_multiplier': 1.75, '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.7292, 'recent_quality_edge': 0.204, 'season_weight': 0.65, 'recent_weight': 0.35, 'recent_reliability': 1.0, 'alignment': 'conflict', 'blended_quality_edge': -0.4026} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Simulation flip control is implemented and its runtime trace passed. | {'pre_simulation_score': {'away_runs': 3, 'home_runs': 5, 'score_text': 'ARI 3 - 5 KC', 'winner': 'KC'}, 'final_simulation_score': {'away_runs': 3, 'home_runs': 5, 'score_text': 'ARI 3 - 5 KC', 'winner': 'KC'}, '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.0608, 'recent_form_edge_home_minus_away': 0.204, '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': 3, 'home_runs': 5, 'winner': 'KC', 'model_winner': 'KC', 'simulation_winner': 'KC', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 6, 'published_winner': 'KC', 'published_winner_draw_share': 0.6667, 'draw_majority_team': 'KC', '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': 3, 'home_runs': 5}, 'simulation_score': {'away_runs': 3, 'home_runs': 5}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 2, 'final_margin': 2, 'winner_quality_edge': -0.4026, 'winner': 'KC', 'score_reviewed': {'away_runs': 3, '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: 160. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | home pitcher pitch-by-pitch count matches pitch_count_summary total: 146. | |||||
| PASS | pitch_count | simulation | ARI | PITCH_COUNT_PITCHER_MATCH | ARI pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | ARI | PITCH_COUNT_TOTAL_MATCH | ARI pitch_count_summary total, row sum, and pitching total all match: 160. | |||
| PASS | pitch_count | simulation | KC | PITCH_COUNT_PITCHER_MATCH | KC pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | KC | PITCH_COUNT_TOTAL_MATCH | KC pitch_count_summary total, row sum, and pitching total all match: 146. | |||
| 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 | current | ARI | PITCHING_REALISM | current:ARI pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | ARI | STARTER_PRESENT | current:ARI includes a starter/opener role. | |||
| PASS | pitching | current | KC | PITCHING_REALISM | current:KC pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | KC | STARTER_PRESENT | current:KC includes a starter/opener role. | |||
| PASS | pitching | simulation | ARI | PITCHING_REALISM | simulation:ARI pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | ARI | STARTER_PRESENT | simulation:ARI includes a starter/opener role. | |||
| PASS | pitching | simulation | KC | PITCHING_REALISM | simulation:KC pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | KC | STARTER_PRESENT | simulation:KC includes a starter/opener role. | |||
| PASS | pitching_totals | current | ARI | PITCHING_TOTALS_SUM | current:ARI pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | current | ARI | PITCHING_TOTALS_SUM | current:ARI pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | current | KC | PITCHING_TOTALS_SUM | current:KC pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | KC | PITCHING_TOTALS_SUM | current:KC pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | ARI | PITCHING_TOTALS_SUM | simulation:ARI pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | simulation | ARI | PITCHING_TOTALS_SUM | simulation:ARI pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | KC | PITCHING_TOTALS_SUM | simulation:KC pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | KC | PITCHING_TOTALS_SUM | simulation:KC pitching totals equal summed pitcher lines for available fields. | |||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Enhanced AI score matches enhanced target: ARI 3 - 5 KC. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation score matches final score: ARI 3 - 5 KC. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation winner matches final score: KC wins 5-3. | |||||
| PASS | prediction_comparison | SIMULATION_WINNER_FLIP_TRACE | Simulation decision is explicit: model=KC, simulation=KC, published=KC. | |||||
| PASS | probability | CONFIDENCE_RANGE | Enhanced target confidence is in range: 0.580. | |||||
| 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): KC wins 5-3. | |||||
| PASS | score | SCORE_NO_TIE | Final score has a clear winner: KC wins 3-5. | |||||
| PASS | score | SCORE_STEP_FINAL_MATCH | simulation_result step matches final score: 3-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 3-5, final 3-5 (delta 0). | |||||
| PASS | score | TOTAL_RUNS_MATCH | total_runs field matches final score total: 8. | |||||
| PASS | score | WINNER_FIELD_MATCH | winner field is consistent: KC wins 5-3. | |||||
| PASS | score | cross-schema | CURRENT_SCORE_MATCHES_SIM | game.predicted_runs matches scoring_simulation.final_score. | ||||
| PASS | team_recent_performance | current | ARI | RECENT_FORM_RANGE | ARI recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | ARI | TEAM_RECENT_RECORD | ARI wins and win_pct agree: 3/10 = 0.300. | |||
| PASS | team_recent_performance | current | KC | RECENT_FORM_RANGE | KC recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | KC | TEAM_RECENT_RECORD | KC wins and win_pct agree: 5/10 = 0.500. |
Info/context findings
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| INFO | current_payload | current | ARI | CURRENT_PITCHER_DUPLICATION | ARI pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_payload | current | KC | CURRENT_PITCHER_DUPLICATION | KC pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_vs_final | cross-schema | ARI | CURRENT_FINALIZED_MATCH_BOX | ARI model-prediction batting totals differ from final simulation box score (AB: current=36, sim=33; H: current=8, sim=7; 2B: current=1, sim=2; HR: current=1, sim=0; RBI: current=4, sim=3; R: current=4, sim=3; BB: current=3, sim=1; SF: current=0, sim=1). | New contract: model prediction totals may differ from scoring_simulation; simulation_stats_source links the simulation box score. | ||
| INFO | current_vs_final | cross-schema | ARI | CURRENT_PLAYER_MATCH_BOX | ARI current finalized hitter lines are model predictions and differ from the simulation box score: Ketel Marte: H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Gabriel Moreno: AB current=5 box=4, H current=1 box=2, 2B current=0 box=1, HR current=1 box=0; Ildemaro Vargas: RBI current=1 box=0, SO current=0 box=2; Nolan Arenado: AB current=4 box=3, H current=1 box=0, SO current=1 box=2, SF current=0 box=1; Corbin Carroll: AB current=5 box=4, H current=1 box=2, R current=1 box=0, BB current=1 box=0; Geraldo Perdomo: AB current=4 box=3, H current=1 box=0; Lourdes Gurriel Jr.: RBI current=0 box=1, R current=0 box=1; Jordan Lawlar: SO 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 | KC | CURRENT_FINALIZED_MATCH_BOX | KC model-prediction batting totals differ from final simulation box score (AB: current=35, sim=33; H: current=8, sim=9; 2B: current=2, sim=3; RBI: current=4, sim=5; R: current=4, sim=5; BB: current=3, sim=2; HBP: current=0, sim=1). | New contract: model prediction totals may differ from scoring_simulation; simulation_stats_source links the simulation box score. | ||
| INFO | current_vs_final | cross-schema | KC | CURRENT_PLAYER_MATCH_BOX | KC current finalized hitter lines are model predictions and differ from the simulation box score: Carter Jensen: AB current=4 box=3, H current=1 box=0, HR current=1 box=0, RBI current=1 box=0; Jac Caglianone: AB current=4 box=3, H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0; Salvador Perez: AB current=5 box=4, 2B current=0 box=1, R current=0 box=1, SO current=1 box=0; Bobby Witt Jr.: AB current=4 box=3, H current=1 box=0, 2B current=1 box=0, R current=1 box=0; Vinnie Pasquantino: 2B current=0 box=1, BB current=1 box=0, SO current=0 box=1; Nick Loftin: H current=1 box=3, HR current=0 box=1, RBI current=0 box=1, R current=0 box=1; Isaac Collins: AB current=3 box=4, H current=0 box=1, 2B current=0 box=1, BB current=1 box=0; Michael Massey: 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.384379104758524 | 5.080996603961905 | Base ML historical model prediction | |
| variance_applied | 4 | 5 | Deterministic baseline target (variance factor 1.0) | |
| enhanced_prediction | 3 | 5 | 0.580 | Enhanced ML with recent form, H2H, low-score analysis |
| embedded_savant_run_environment | 3 | 5 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality | |
| fundamental_edge_target_review | 3 | 5 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments | |
| capped_target | 3 | 5 | Capped at max 12 realistic runs | |
| simulation_result | 3 | 5 | Final inning-by-inning simulation result |
Inning-by-inning linescore
| team | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | R | H |
|---|---|---|---|---|---|---|---|---|---|---|---|
| ARI | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 2 | 3 | 7 |
| KC | 0 | 2 | 0 | 0 | 0 | 0 | 1 | 2 | 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 | ARI | batting | 36 | 8 | 1 | 0 | 1 | 4 | 4 | 3 | 7 | 0 | 0 | 0 | 0 | |||||
| current | ARI | pitching | 9 | 1 | 5 | 2 | 7 | 8.0 | 5 | 0 | 0 | |||||||||
| current | KC | batting | 35 | 8 | 2 | 0 | 1 | 4 | 4 | 3 | 7 | 0 | 0 | 0 | 0 | |||||
| current | KC | pitching | 7 | 0 | 3 | 1 | 7 | 9.0 | 3 | 0 | 0 | |||||||||
| simulation | ARI | batting | 33 | 7 | 2 | 0 | 0 | 3 | 3 | 1 | 7 | 1 | 0 | |||||||
| simulation | ARI | pitching | 9 | 1 | 5 | 2 | 7 | 8.0 | 5 | 36 | 160 | |||||||||
| simulation | KC | batting | 33 | 9 | 3 | 0 | 1 | 5 | 5 | 2 | 7 | 0 | 1 | |||||||
| simulation | KC | pitching | 7 | 0 | 3 | 1 | 7 | 9.0 | 3 | 35 | 146 |
Batting lines - current + final simulation
| src | team | order | pos | name | PA | AB | H | 2B | 3B | HR | R | RBI | BB | SO | HBP | AVG |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| current | ARI | DH | Ketel Marte | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 0.250 | |
| current | ARI | C | Gabriel Moreno | 0 | 5 | 1 | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 0 | 0.200 | |
| current | ARI | 2B | Ildemaro Vargas | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.250 | |
| current | ARI | 3B | Nolan Arenado | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 0.250 | |
| current | ARI | RF | Corbin Carroll | 0 | 5 | 1 | 1 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0.200 | |
| current | ARI | SS | Geraldo Perdomo | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0.250 | |
| current | ARI | LF | Lourdes Gurriel Jr. | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.250 | |
| current | ARI | CF | Jordan Lawlar | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.333 | |
| current | ARI | 1B | Tim Tawa | 0 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 | |
| current | KC | C | Carter Jensen | 0 | 4 | 1 | 0 | 0 | 1 | 1 | 1 | 0 | 1 | 0 | 0.250 | |
| current | KC | RF | Jac Caglianone | 0 | 4 | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 0.250 | |
| current | KC | DH | Salvador Perez | 0 | 5 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0.200 | |
| current | KC | SS | Bobby Witt Jr. | 0 | 4 | 1 | 1 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0.250 | |
| current | KC | 1B | Vinnie Pasquantino | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 1 | 1 | 0 | 0 | 0.250 | |
| current | KC | 3B | Nick Loftin | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.250 | |
| current | KC | LF | Isaac Collins | 0 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0.000 | |
| current | KC | 2B | Michael Massey | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.250 | |
| current | KC | CF | Kyle Isbel | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.333 | |
| simulation | ARI | 1 | SS | Geraldo Perdomo | 4 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0.000 |
| simulation | ARI | 2 | RF | Corbin Carroll | 4 | 4 | 2 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.500 |
| simulation | ARI | 3 | C | Gabriel Moreno | 4 | 4 | 2 | 1 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 0.500 |
| simulation | ARI | 4 | DH | Ketel Marte | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 |
| simulation | ARI | 5 | 3B | Nolan Arenado | 4 | 3 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 2 | 0 | 0.000 |
| simulation | ARI | 6 | 2B | Ildemaro Vargas | 4 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.250 |
| simulation | ARI | 7 | LF | Lourdes Gurriel Jr. | 4 | 4 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 0.250 |
| simulation | ARI | 8 | 1B | Tim Tawa | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.000 |
| simulation | ARI | 9 | CF | Jordan Lawlar | 3 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.333 |
| simulation | KC | 1 | C | Carter Jensen | 4 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0.000 |
| simulation | KC | 2 | SS | Bobby Witt Jr. | 4 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0.000 |
| simulation | KC | 3 | RF | Jac Caglianone | 4 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 3 | 0 | 0.000 |
| simulation | KC | 4 | DH | Salvador Perez | 4 | 4 | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0.250 |
| simulation | KC | 5 | 1B | Vinnie Pasquantino | 4 | 4 | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 0.250 |
| simulation | KC | 6 | 3B | Nick Loftin | 4 | 4 | 3 | 0 | 0 | 1 | 1 | 1 | 0 | 0 | 0 | 0.750 |
| simulation | KC | 7 | 2B | Michael Massey | 4 | 4 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0.250 |
| simulation | KC | 8 | LF | Isaac Collins | 4 | 4 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.250 |
| simulation | KC | 9 | CF | Kyle Isbel | 4 | 4 | 2 | 0 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 0.500 |
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 | ARI | 1 | Jose Cabrera | Starter | 4.2 | 3 | 2 | 2 | 1 | 5 | 1 | 0 | 0 | 3.86 | 4.88 | 1.33 |
| current | ARI | 2 | Brandyn Garcia | Closer | 1.1 | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0.00 | 1.74 | 0.68 |
| current | ARI | 3 | Jonathan Loáisiga | Middle Reliever (High Leverage) | 1.0 | 3 | 2 | 2 | 0 | 0 | 0 | 0 | 0 | 18.00 | 2.80 | 1.11 |
| current | ARI | 4 | Juan Morillo | Setup Man | 1.0 | 2 | 1 | 1 | 0 | 2 | 0 | 0 | 0 | 9.00 | 2.54 | 0.98 |
| current | KC | 1 | Noah Cameron | Starter | 6.0 | 2 | 1 | 1 | 1 | 4 | 0 | 0 | 0 | 1.50 | 4.08 | 1.22 |
| current | KC | 2 | Craig Kimbrel | Middle Reliever (High Leverage) | 1.0 | 4 | 2 | 2 | 0 | 0 | 0 | 0 | 0 | 18.00 | 3.80 | 1.20 |
| current | KC | 3 | Nate Pearson | Setup Man | 1.0 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.00 | 2.19 | 1.16 |
| current | KC | 4 | Steven Cruz | Closer | 1.0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 | 0 | 0.00 | 4.27 | 1.23 |
| simulation | ARI | 1 | Jose Cabrera | Starter | 4.2 | 3 | 2 | 2 | 1 | 5 | 1 | 19 | 84 | 3.86 | 4.88 | 1.33 |
| simulation | ARI | 2 | Brandyn Garcia | Closer | 1.1 | 1 | 0 | 0 | 1 | 0 | 0 | 6 | 35 | 0.00 | 1.74 | 0.68 |
| simulation | ARI | 3 | Juan Morillo | Setup Man | 1.0 | 2 | 1 | 1 | 0 | 2 | 0 | 5 | 19 | 9.00 | 2.54 | 0.98 |
| simulation | ARI | 4 | Jonathan Loáisiga | Middle Reliever (High Leverage) | 1.0 | 3 | 2 | 2 | 0 | 0 | 0 | 6 | 22 | 18.00 | 2.80 | 1.11 |
| simulation | KC | 1 | Noah Cameron | Starter | 6.0 | 2 | 1 | 1 | 1 | 4 | 0 | 21 | 92 | 1.50 | 4.08 | 1.22 |
| simulation | KC | 2 | Steven Cruz | Closer | 1.0 | 0 | 0 | 0 | 0 | 2 | 0 | 3 | 13 | 0.00 | 4.27 | 1.23 |
| simulation | KC | 3 | Nate Pearson | Setup Man | 1.0 | 1 | 0 | 0 | 0 | 1 | 0 | 4 | 16 | 0.00 | 2.19 | 1.16 |
| simulation | KC | 4 | Craig Kimbrel | Middle Reliever (High Leverage) | 1.0 | 4 | 2 | 2 | 0 | 0 | 0 | 7 | 25 | 18.00 | 3.80 | 1.20 |
Pitch count summary
| team | pitcher | role | IP | R | H | BB | SO | BF | Pitches |
|---|---|---|---|---|---|---|---|---|---|
| ARI | Jose Cabrera | Starter | 4.2 | 2 | 3 | 1 | 5 | 19 | 84 |
| ARI | Brandyn Garcia | Closer | 1.1 | 0 | 1 | 1 | 0 | 6 | 35 |
| ARI | Jonathan Loáisiga | Middle Reliever (High Leverage) | 1.0 | 2 | 3 | 0 | 0 | 6 | 22 |
| ARI | Juan Morillo | Setup Man | 1.0 | 1 | 2 | 0 | 2 | 5 | 19 |
| KC | Noah Cameron | Starter | 6.0 | 1 | 2 | 1 | 4 | 21 | 92 |
| KC | Craig Kimbrel | Middle Reliever (High Leverage) | 1.0 | 2 | 4 | 0 | 0 | 7 | 25 |
| KC | Nate Pearson | Setup Man | 1.0 | 0 | 1 | 0 | 1 | 4 | 16 |
| KC | Steven Cruz | Closer | 1.0 | 0 | 0 | 0 | 2 | 3 | 13 |
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_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. |
| 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. |
| 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. |
20260907_ATL@PHI
20260907_ATL@PHI.json • 2026-09-07
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 | ATL | CURRENT_PITCHER_DUPLICATION | ATL pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_payload | current | PHI | CURRENT_PITCHER_DUPLICATION | PHI pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_vs_final | cross-schema | ATL | CURRENT_FINALIZED_MATCH_BOX | ATL model pitcher projections differ from final simulation pitching box score (HR: current=0, sim=1). | New contract: model pitcher projections may differ; simulation_box_score_stats carries the simulation draw. | ||
| INFO | current_vs_final | cross-schema | ATL | CURRENT_FINALIZED_MATCH_BOX | ATL model-prediction batting totals differ from final simulation box score (AB: current=38, sim=35; H: current=9, sim=8; RBI: current=4, sim=3; R: current=5, sim=3; BB: current=3, sim=0; SO: current=8, sim=5). | New contract: model prediction totals may differ from scoring_simulation; simulation_stats_source links the simulation box score. | ||
| INFO | current_vs_final | cross-schema | ATL | CURRENT_PLAYER_MATCH_BOX | ATL current finalized hitter lines are model predictions and differ from the simulation box score: Ronald Acuña Jr.: RBI current=1 box=0, R current=1 box=0, BB current=1 box=0; Lane Thomas: AB current=3 box=4, HR current=0 box=1, RBI current=0 box=2, R current=0 box=1; Drake Baldwin: AB current=6 box=4, H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Ozzie Albies: AB current=5 box=4, H current=1 box=2, 2B current=1 box=0, SO current=1 box=0; Matt Olson: H current=1 box=0, 2B current=1 box=0, R current=1 box=0, SO current=1 box=0; Michael Harris II: AB current=5 box=4, 2B current=0 box=1, HR current=1 box=0, RBI current=1 box=0; Ha-Seong Kim: SO current=1 box=0; Austin Riley: RBI 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 | PHI | CURRENT_FINALIZED_MATCH_BOX | PHI model-prediction batting totals differ from final simulation box score (AB: current=35, sim=29; H: current=8, sim=5; BB: current=3, sim=1; SO: current=8, sim=7). | New contract: model prediction totals may differ from scoring_simulation; simulation_stats_source links the simulation box score. | ||
| INFO | current_vs_final | cross-schema | PHI | CURRENT_PLAYER_MATCH_BOX | PHI current finalized hitter lines are model predictions and differ from the simulation box score: Bryce Harper: RBI current=1 box=0, BB current=1 box=0; Alec Bohm: AB current=4 box=3, RBI current=1 box=2, R current=0 box=1, SO current=1 box=0; Bryson Stott: AB current=4 box=2, H current=1 box=0, RBI current=1 box=0, SO current=1 box=0; Brandon Marsh: AB current=4 box=3, H current=1 box=0; Trea Turner: AB current=5 box=4, 2B current=1 box=0, HR current=0 box=1, RBI current=0 box=2; Luis Arraez: AB current=4 box=3, 2B current=0 box=1, SO current=1 box=0; Kyle Schwarber: HR current=1 box=0, RBI current=1 box=0, BB current=1 box=0; J.T. Realmuto: H current=1 box=0, R current=1 box=0, SO current=1 box=2 | 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 | ATL | BATTING_REALISM | current:ATL hitter lines pass basic baseball constraints. | |||
| PASS | batting | current | PHI | BATTING_REALISM | current:PHI hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | ATL | BATTING_REALISM | simulation:ATL hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | PHI | BATTING_REALISM | simulation:PHI hitter lines pass basic baseball constraints. | |||
| PASS | batting_totals | current | ATL | BATTING_TOTALS_SUM | current:ATL batting totals equal summed player lines. | |||
| PASS | batting_totals | current | PHI | BATTING_TOTALS_SUM | current:PHI batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | ATL | BATTING_TOTALS_SUM | simulation:ATL batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | PHI | BATTING_TOTALS_SUM | simulation:PHI batting totals equal summed player lines. | |||
| PASS | boxscore_crosscheck | simulation | ATL | BAT_PITCH_BB_MATCH | simulation:ATL batting walks match PHI pitching: 0. | |||
| PASS | boxscore_crosscheck | simulation | ATL | BAT_PITCH_HR_MATCH | simulation:ATL batting home runs match PHI pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | ATL | BAT_PITCH_H_MATCH | simulation:ATL batting hits match PHI pitching: 8. | |||
| PASS | boxscore_crosscheck | simulation | ATL | BAT_PITCH_SO_MATCH | simulation:ATL batting strikeouts match PHI pitching: 5. | |||
| PASS | boxscore_crosscheck | simulation | ATL | PA_BF_MATCH | simulation:ATL PA=35 matches PHI BF=35. | |||
| PASS | boxscore_crosscheck | simulation | ATL | RUNS_MATCH_FINAL | simulation:ATL runs match final score and opposing pitching runs: 3. | |||
| PASS | boxscore_crosscheck | simulation | PHI | BAT_PITCH_BB_MATCH | simulation:PHI batting walks match ATL pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | PHI | BAT_PITCH_HR_MATCH | simulation:PHI batting home runs match ATL pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | PHI | BAT_PITCH_H_MATCH | simulation:PHI batting hits match ATL pitching: 5. | |||
| PASS | boxscore_crosscheck | simulation | PHI | BAT_PITCH_SO_MATCH | simulation:PHI batting strikeouts match ATL pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | PHI | PA_BF_MATCH | simulation:PHI PA=30 matches ATL BF=30. | |||
| PASS | boxscore_crosscheck | simulation | PHI | RUNS_MATCH_FINAL | simulation:PHI runs match final score and opposing pitching runs: 4. | |||
| PASS | confidence_calibration | CONFIDENCE_CALIBRATION_APPLIED | Empirical confidence blend verified: 0.535 -> 0.544 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.534761, 'sample_size': 334, 'empirical_hit_rate': 0.5539, 'empirical_weight': 0.5, 'blended_confidence': 0.544331, 'published_confidence': 0.53, 'published_after_governors': True, 'governor_mode': 'shrinkage_not_clamp'} | ||||
| PASS | cross_schema | cross-schema | PHI | CURRENT_FINALIZED_MATCH_BOX | PHI current pitcher projected totals match final simulation pitching box score. | |||
| PASS | current_payload | current | ATL | CURRENT_LINEUP_SHAPE | ATL current lineup has 9 expected positions. | |||
| PASS | current_payload | current | ATL | CURRENT_MODEL_ZERO_FALLBACK | ATL current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | ATL | CURRENT_NAMES_PRESENT | ATL current hitter names are populated. | |||
| PASS | current_payload | current | ATL | CURRENT_PREDICTIONS_MATCH_FINALIZED | ATL hitter predictions mirror finalized stats. | |||
| PASS | current_payload | current | PHI | CURRENT_LINEUP_SHAPE | PHI current lineup has 9 expected positions. | |||
| PASS | current_payload | current | PHI | CURRENT_MODEL_ZERO_FALLBACK | PHI current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | PHI | CURRENT_NAMES_PRESENT | PHI current hitter names are populated. | |||
| PASS | current_payload | current | PHI | CURRENT_PREDICTIONS_MATCH_FINALIZED | PHI 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.470. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | confidence is in [0,1]: 0.530. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | home_win_probability is in [0,1]: 0.530. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Final total runs 7 is reasonably close to low-score expected_total_runs 7.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.754/0.900. | |||||
| PASS | final_decision | FINAL_DECISION_POLICY | Final decision policy preserved model ownership of the winner. | |||||
| 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: ATL 8, PHI 5. | |||||
| PASS | innings | INNING_TOTAL_RUNS | Inning runs sum to final score: ATL 3 - PHI 4. | |||||
| PASS | matchup_recency | GUARDRAIL_FINAL_WINNER_SYNC | Guardrail predicted_team matches final predicted winner: PHI. | |||||
| PASS | matchup_recency | MATCHUP_RECENCY_GUARDRAIL | Matchup recency guardrail applied for PHI; cap=0.53, reasons=latest same-matchup result beat the predicted side; 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.53, 'winner_flipped': False, 'reasons': ['latest same-matchup result beat the predicted side', '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', 'latest-series evidence cleared the reversal bar; confidence capped and runs shifted, winner unchanged by design'], 'signals': {'predicted_team': 'PHI', 'opponent_team': 'ATL', 'h2h_net_margin': -2, 'opponent_breakout': False, 'opponent_blowout_win': False, 'split_recent_h2h': True, 'recent_h2h': [{'date': '2026-09-06', 'predicted_team_runs': 4, 'opponent_runs': 5, 'margin_for_predicted_team': -1, 'winner': 'ATL'}, {'date': '2026-09-05', 'predicted_team_runs': 4, 'opponent_runs': 2, 'margin_for_predicted_team': 2, 'winner': 'PHI'}, {'date': '2026-09-04', 'predicted_team_runs': 2, 'opponent_runs': 5, 'margin_for_predicted_team': -3, 'winner': 'ATL'}], 'prediction_memory': {'available': True, 'reason': 'verified_prior_matchup_predictions_available', 'verification_policy': 'pregame_artifact_matched_to_one_official_final', 'verified_outcome_count': 3, 'consecutive_same_pick_count': 1, 'same_pick_actual_loss_count': 1, 'same_pick_blowout_loss_count': 0, 'prior_predictions': [{'date': '20260906', 'away': 'ATL', 'home': 'PHI', 'game_number': 1, 'predicted_team': 'PHI', 'actual_winner': 'ATL', 'actual_margin': 1, 'raw_pick_probability': 0.550646, 'artifact': '20260906_ATL@PHI.json', 'verification': 'pregame_official_final'}, {'date': '20260905', 'away': 'ATL', 'home': 'PHI', 'game_number': 1, 'predicted_team': 'ATL', 'actual_winner': 'PHI', 'actual_margin': 2, 'raw_pick_probability': 0.537979, 'artifact': '20260905_ATL@PHI.json', 'verification': 'pregame_official_final'}, {'date': '20260904', 'away': 'ATL', 'home': 'PHI', 'game_number': 1, 'predicted_team': 'ATL', 'actual_winner': 'ATL', 'actual_margin': 3, 'raw_pick_probability': 0.5599339999999999, 'artifact': '20260904_ATL@PHI.json', 'verification': 'pregame_official_final'}]}, 'guardrail_predicted_team': 'PHI', 'guardrail_opponent_team': 'ATL', 'output_pre_simulation_winner': 'PHI', 'output_opponent_team': 'ATL', 'simulation_score_winner': 'PHI', 'final_score_winner': 'PHI', 'pre_simulation_winner': 'PHI', 'winner_flipped_by_simulation': False, 'simulation_would_flip_winner': False}, 'hard_flip_suppressed': True, 'flip_authority': 'caps_confidence_and_shifts_runs_only', 'final_prediction_sync': {'pre_simulation_score': {'away_runs': 3, 'home_runs': 4, 'score_text': 'ATL 3 - 4 PHI', 'winner': 'PHI'}, 'final_simulation_score': {'away_runs': 3, 'home_runs': 4, 'score_text': 'ATL 3 - 4 PHI', 'winner': 'PHI'}, 'winner_flipped_by_simulation': False, 'simulation_would_flip_winner': False, 'sim_flipped_pre_winner': False, 'sim_flip_trusted': False, 'sim_flip_policy': 'diagnostic_only_unless_independently_supported', 'independent_margin_support': False, 'independent_margin_support_evidence': {'pitcher_matchup_edge_home_minus_away': -0.1125, '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': 3, 'home_runs': 4, 'winner': 'PHI', 'model_winner': 'PHI', 'simulation_winner': 'PHI', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 3, 'published_winner': 'PHI', 'published_winner_draw_share': 0.6667, 'draw_majority_team': 'PHI', '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': 3, 'home_runs': 4}, 'simulation_score': {'away_runs': 3, 'home_runs': 4}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 1, 'final_margin': 1, 'winner_quality_edge': -0.39, 'winner': 'PHI', 'score_reviewed': {'away_runs': 3, 'home_runs': 4, '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-09-07. | |||||
| PASS | metadata | FILENAME_GAME_ID_MATCH | Filename matches game_id: 20260907_ATL@PHI. | |||||
| PASS | metadata | FILENAME_TEAM_MATCH | Filename teams match JSON teams: ATL@PHI. | |||||
| 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': -3.0, 'absolute_net_margin': 3.0, 'home_average_margin': -0.6, 'home_run_delta': -0.0173, 'away_run_delta': 0.0173, 'evidence': [{'game_id': None, 'home_margin': -1.0}, {'game_id': None, 'home_margin': 2.0}, {'game_id': None, 'home_margin': -3.0}, {'game_id': None, 'home_margin': -4.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': 3, 'away_runs': 3, 'probability': 0.0340912473441638}, {'home_runs': 4, 'away_runs': 3, 'probability': 0.03155680192017258}, {'home_runs': 3, 'away_runs': 2, 'probability': 0.031077585947288856}, {'home_runs': 3, 'away_runs': 4, 'probability': 0.03087801992773876}, {'home_runs': 2, 'away_runs': 3, 'probability': 0.030598623509534753}], 'home_distribution': {'0': 0.07576952819658792, '1': 0.12229745052577544, '2': 0.16400206436731454, '3': 0.18272177961068692, '4': 0.1691376952994651, '5': 0.13007672416401203, '6': 0.08311279057536743, '7': 0.0441209878946299, '8': 0.01945950022427745, '9': 0.0071306189142583114, '10': 0.0021708602276249837}, 'away_distribution': {'0': 0.07956068927924816, '1': 0.12801836622042634, '2': 0.1700814539651693, '3': 0.1865746240913357, '4': 0.1689892687862853, '5': 0.12637949461235076, '6': 0.07803780365952655, '7': 0.03978729348670852, '8': 0.016749224089926868, '9': 0.005821781809022664}, 'model': 'overdispersed_score_distribution', 'variance_multiplier': 1.75, '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.6538, 'recent_quality_edge': 0.1, 'season_weight': 0.65, 'recent_weight': 0.35, 'recent_reliability': 1.0, 'alignment': 'conflict', 'blended_quality_edge': -0.39} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Simulation flip control is implemented and its runtime trace passed. | {'pre_simulation_score': {'away_runs': 3, 'home_runs': 4, 'score_text': 'ATL 3 - 4 PHI', 'winner': 'PHI'}, 'final_simulation_score': {'away_runs': 3, 'home_runs': 4, 'score_text': 'ATL 3 - 4 PHI', 'winner': 'PHI'}, 'winner_flipped_by_simulation': False, 'simulation_would_flip_winner': False, 'sim_flipped_pre_winner': False, 'sim_flip_trusted': False, 'sim_flip_policy': 'diagnostic_only_unless_independently_supported', 'independent_margin_support': False, 'independent_margin_support_evidence': {'pitcher_matchup_edge_home_minus_away': -0.1125, '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': 3, 'home_runs': 4, 'winner': 'PHI', 'model_winner': 'PHI', 'simulation_winner': 'PHI', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 3, 'published_winner': 'PHI', 'published_winner_draw_share': 0.6667, 'draw_majority_team': 'PHI', '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': 3, 'home_runs': 4}, 'simulation_score': {'away_runs': 3, 'home_runs': 4}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 1, 'final_margin': 1, 'winner_quality_edge': -0.39, 'winner': 'PHI', 'score_reviewed': {'away_runs': 3, 'home_runs': 4, '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: 131. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | home pitcher pitch-by-pitch count matches pitch_count_summary total: 141. | |||||
| PASS | pitch_count | simulation | ATL | PITCH_COUNT_PITCHER_MATCH | ATL pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | ATL | PITCH_COUNT_TOTAL_MATCH | ATL pitch_count_summary total, row sum, and pitching total all match: 131. | |||
| PASS | pitch_count | simulation | PHI | PITCH_COUNT_PITCHER_MATCH | PHI pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | PHI | PITCH_COUNT_TOTAL_MATCH | PHI pitch_count_summary total, row sum, and pitching total all match: 141. | |||
| 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 | current | ATL | PITCHING_REALISM | current:ATL pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | ATL | STARTER_PRESENT | current:ATL includes a starter/opener role. | |||
| PASS | pitching | current | PHI | PITCHING_REALISM | current:PHI pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | PHI | STARTER_PRESENT | current:PHI includes a starter/opener role. | |||
| PASS | pitching | simulation | ATL | PITCHING_REALISM | simulation:ATL pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | ATL | STARTER_PRESENT | simulation:ATL includes a starter/opener role. | |||
| PASS | pitching | simulation | PHI | PITCHING_REALISM | simulation:PHI pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | PHI | STARTER_PRESENT | simulation:PHI includes a starter/opener role. | |||
| PASS | pitching_totals | current | ATL | PITCHING_TOTALS_SUM | current:ATL pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | current | ATL | PITCHING_TOTALS_SUM | current:ATL pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | current | PHI | PITCHING_TOTALS_SUM | current:PHI pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | PHI | PITCHING_TOTALS_SUM | current:PHI pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | ATL | PITCHING_TOTALS_SUM | simulation:ATL pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | simulation | ATL | PITCHING_TOTALS_SUM | simulation:ATL pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | PHI | PITCHING_TOTALS_SUM | simulation:PHI pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | PHI | PITCHING_TOTALS_SUM | simulation:PHI pitching totals equal summed pitcher lines for available fields. | |||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Enhanced AI score matches enhanced target: ATL 3 - 4 PHI. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation score matches final score: ATL 3 - 4 PHI. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation winner matches final score: PHI wins 4-3. | |||||
| PASS | prediction_comparison | SIMULATION_WINNER_FLIP_TRACE | Simulation decision is explicit: model=PHI, simulation=PHI, published=PHI. | |||||
| PASS | probability | CONFIDENCE_RANGE | Enhanced target confidence is in range: 0.530. | |||||
| 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: 7/10 (0.700). | |||||
| 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): PHI wins 4-3. | |||||
| PASS | score | SCORE_NO_TIE | Final score has a clear winner: PHI wins 3-4. | |||||
| PASS | score | SCORE_STEP_FINAL_MATCH | simulation_result step matches final score: 3-4. | |||||
| 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 3-4, final 3-4 (delta 0). | |||||
| PASS | score | TOTAL_RUNS_MATCH | total_runs field matches final score total: 7. | |||||
| PASS | score | WINNER_FIELD_MATCH | winner field is consistent: PHI wins 4-3. | |||||
| PASS | score | cross-schema | CURRENT_SCORE_MATCHES_SIM | game.predicted_runs matches scoring_simulation.final_score. | ||||
| PASS | team_recent_performance | current | ATL | RECENT_FORM_RANGE | ATL recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | ATL | TEAM_RECENT_RECORD | ATL wins and win_pct agree: 6/10 = 0.600. | |||
| PASS | team_recent_performance | current | PHI | RECENT_FORM_RANGE | PHI recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | PHI | TEAM_RECENT_RECORD | PHI wins and win_pct agree: 6/10 = 0.600. |
Passed checks
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| PASS | batting | current | ATL | BATTING_REALISM | current:ATL hitter lines pass basic baseball constraints. | |||
| PASS | batting | current | PHI | BATTING_REALISM | current:PHI hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | ATL | BATTING_REALISM | simulation:ATL hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | PHI | BATTING_REALISM | simulation:PHI hitter lines pass basic baseball constraints. | |||
| PASS | batting_totals | current | ATL | BATTING_TOTALS_SUM | current:ATL batting totals equal summed player lines. | |||
| PASS | batting_totals | current | PHI | BATTING_TOTALS_SUM | current:PHI batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | ATL | BATTING_TOTALS_SUM | simulation:ATL batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | PHI | BATTING_TOTALS_SUM | simulation:PHI batting totals equal summed player lines. | |||
| PASS | boxscore_crosscheck | simulation | ATL | BAT_PITCH_BB_MATCH | simulation:ATL batting walks match PHI pitching: 0. | |||
| PASS | boxscore_crosscheck | simulation | ATL | BAT_PITCH_HR_MATCH | simulation:ATL batting home runs match PHI pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | ATL | BAT_PITCH_H_MATCH | simulation:ATL batting hits match PHI pitching: 8. | |||
| PASS | boxscore_crosscheck | simulation | ATL | BAT_PITCH_SO_MATCH | simulation:ATL batting strikeouts match PHI pitching: 5. | |||
| PASS | boxscore_crosscheck | simulation | ATL | PA_BF_MATCH | simulation:ATL PA=35 matches PHI BF=35. | |||
| PASS | boxscore_crosscheck | simulation | ATL | RUNS_MATCH_FINAL | simulation:ATL runs match final score and opposing pitching runs: 3. | |||
| PASS | boxscore_crosscheck | simulation | PHI | BAT_PITCH_BB_MATCH | simulation:PHI batting walks match ATL pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | PHI | BAT_PITCH_HR_MATCH | simulation:PHI batting home runs match ATL pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | PHI | BAT_PITCH_H_MATCH | simulation:PHI batting hits match ATL pitching: 5. | |||
| PASS | boxscore_crosscheck | simulation | PHI | BAT_PITCH_SO_MATCH | simulation:PHI batting strikeouts match ATL pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | PHI | PA_BF_MATCH | simulation:PHI PA=30 matches ATL BF=30. | |||
| PASS | boxscore_crosscheck | simulation | PHI | RUNS_MATCH_FINAL | simulation:PHI runs match final score and opposing pitching runs: 4. | |||
| PASS | confidence_calibration | CONFIDENCE_CALIBRATION_APPLIED | Empirical confidence blend verified: 0.535 -> 0.544 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.534761, 'sample_size': 334, 'empirical_hit_rate': 0.5539, 'empirical_weight': 0.5, 'blended_confidence': 0.544331, 'published_confidence': 0.53, 'published_after_governors': True, 'governor_mode': 'shrinkage_not_clamp'} | ||||
| PASS | cross_schema | cross-schema | PHI | CURRENT_FINALIZED_MATCH_BOX | PHI current pitcher projected totals match final simulation pitching box score. | |||
| PASS | current_payload | current | ATL | CURRENT_LINEUP_SHAPE | ATL current lineup has 9 expected positions. | |||
| PASS | current_payload | current | ATL | CURRENT_MODEL_ZERO_FALLBACK | ATL current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | ATL | CURRENT_NAMES_PRESENT | ATL current hitter names are populated. | |||
| PASS | current_payload | current | ATL | CURRENT_PREDICTIONS_MATCH_FINALIZED | ATL hitter predictions mirror finalized stats. | |||
| PASS | current_payload | current | PHI | CURRENT_LINEUP_SHAPE | PHI current lineup has 9 expected positions. | |||
| PASS | current_payload | current | PHI | CURRENT_MODEL_ZERO_FALLBACK | PHI current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | PHI | CURRENT_NAMES_PRESENT | PHI current hitter names are populated. | |||
| PASS | current_payload | current | PHI | CURRENT_PREDICTIONS_MATCH_FINALIZED | PHI 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.470. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | confidence is in [0,1]: 0.530. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | home_win_probability is in [0,1]: 0.530. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Final total runs 7 is reasonably close to low-score expected_total_runs 7.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.754/0.900. | |||||
| PASS | final_decision | FINAL_DECISION_POLICY | Final decision policy preserved model ownership of the winner. | |||||
| 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: ATL 8, PHI 5. | |||||
| PASS | innings | INNING_TOTAL_RUNS | Inning runs sum to final score: ATL 3 - PHI 4. | |||||
| PASS | matchup_recency | GUARDRAIL_FINAL_WINNER_SYNC | Guardrail predicted_team matches final predicted winner: PHI. | |||||
| PASS | matchup_recency | MATCHUP_RECENCY_GUARDRAIL | Matchup recency guardrail applied for PHI; cap=0.53, reasons=latest same-matchup result beat the predicted side; 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.53, 'winner_flipped': False, 'reasons': ['latest same-matchup result beat the predicted side', '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', 'latest-series evidence cleared the reversal bar; confidence capped and runs shifted, winner unchanged by design'], 'signals': {'predicted_team': 'PHI', 'opponent_team': 'ATL', 'h2h_net_margin': -2, 'opponent_breakout': False, 'opponent_blowout_win': False, 'split_recent_h2h': True, 'recent_h2h': [{'date': '2026-09-06', 'predicted_team_runs': 4, 'opponent_runs': 5, 'margin_for_predicted_team': -1, 'winner': 'ATL'}, {'date': '2026-09-05', 'predicted_team_runs': 4, 'opponent_runs': 2, 'margin_for_predicted_team': 2, 'winner': 'PHI'}, {'date': '2026-09-04', 'predicted_team_runs': 2, 'opponent_runs': 5, 'margin_for_predicted_team': -3, 'winner': 'ATL'}], 'prediction_memory': {'available': True, 'reason': 'verified_prior_matchup_predictions_available', 'verification_policy': 'pregame_artifact_matched_to_one_official_final', 'verified_outcome_count': 3, 'consecutive_same_pick_count': 1, 'same_pick_actual_loss_count': 1, 'same_pick_blowout_loss_count': 0, 'prior_predictions': [{'date': '20260906', 'away': 'ATL', 'home': 'PHI', 'game_number': 1, 'predicted_team': 'PHI', 'actual_winner': 'ATL', 'actual_margin': 1, 'raw_pick_probability': 0.550646, 'artifact': '20260906_ATL@PHI.json', 'verification': 'pregame_official_final'}, {'date': '20260905', 'away': 'ATL', 'home': 'PHI', 'game_number': 1, 'predicted_team': 'ATL', 'actual_winner': 'PHI', 'actual_margin': 2, 'raw_pick_probability': 0.537979, 'artifact': '20260905_ATL@PHI.json', 'verification': 'pregame_official_final'}, {'date': '20260904', 'away': 'ATL', 'home': 'PHI', 'game_number': 1, 'predicted_team': 'ATL', 'actual_winner': 'ATL', 'actual_margin': 3, 'raw_pick_probability': 0.5599339999999999, 'artifact': '20260904_ATL@PHI.json', 'verification': 'pregame_official_final'}]}, 'guardrail_predicted_team': 'PHI', 'guardrail_opponent_team': 'ATL', 'output_pre_simulation_winner': 'PHI', 'output_opponent_team': 'ATL', 'simulation_score_winner': 'PHI', 'final_score_winner': 'PHI', 'pre_simulation_winner': 'PHI', 'winner_flipped_by_simulation': False, 'simulation_would_flip_winner': False}, 'hard_flip_suppressed': True, 'flip_authority': 'caps_confidence_and_shifts_runs_only', 'final_prediction_sync': {'pre_simulation_score': {'away_runs': 3, 'home_runs': 4, 'score_text': 'ATL 3 - 4 PHI', 'winner': 'PHI'}, 'final_simulation_score': {'away_runs': 3, 'home_runs': 4, 'score_text': 'ATL 3 - 4 PHI', 'winner': 'PHI'}, 'winner_flipped_by_simulation': False, 'simulation_would_flip_winner': False, 'sim_flipped_pre_winner': False, 'sim_flip_trusted': False, 'sim_flip_policy': 'diagnostic_only_unless_independently_supported', 'independent_margin_support': False, 'independent_margin_support_evidence': {'pitcher_matchup_edge_home_minus_away': -0.1125, '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': 3, 'home_runs': 4, 'winner': 'PHI', 'model_winner': 'PHI', 'simulation_winner': 'PHI', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 3, 'published_winner': 'PHI', 'published_winner_draw_share': 0.6667, 'draw_majority_team': 'PHI', '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': 3, 'home_runs': 4}, 'simulation_score': {'away_runs': 3, 'home_runs': 4}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 1, 'final_margin': 1, 'winner_quality_edge': -0.39, 'winner': 'PHI', 'score_reviewed': {'away_runs': 3, 'home_runs': 4, '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-09-07. | |||||
| PASS | metadata | FILENAME_GAME_ID_MATCH | Filename matches game_id: 20260907_ATL@PHI. | |||||
| PASS | metadata | FILENAME_TEAM_MATCH | Filename teams match JSON teams: ATL@PHI. | |||||
| 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': -3.0, 'absolute_net_margin': 3.0, 'home_average_margin': -0.6, 'home_run_delta': -0.0173, 'away_run_delta': 0.0173, 'evidence': [{'game_id': None, 'home_margin': -1.0}, {'game_id': None, 'home_margin': 2.0}, {'game_id': None, 'home_margin': -3.0}, {'game_id': None, 'home_margin': -4.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': 3, 'away_runs': 3, 'probability': 0.0340912473441638}, {'home_runs': 4, 'away_runs': 3, 'probability': 0.03155680192017258}, {'home_runs': 3, 'away_runs': 2, 'probability': 0.031077585947288856}, {'home_runs': 3, 'away_runs': 4, 'probability': 0.03087801992773876}, {'home_runs': 2, 'away_runs': 3, 'probability': 0.030598623509534753}], 'home_distribution': {'0': 0.07576952819658792, '1': 0.12229745052577544, '2': 0.16400206436731454, '3': 0.18272177961068692, '4': 0.1691376952994651, '5': 0.13007672416401203, '6': 0.08311279057536743, '7': 0.0441209878946299, '8': 0.01945950022427745, '9': 0.0071306189142583114, '10': 0.0021708602276249837}, 'away_distribution': {'0': 0.07956068927924816, '1': 0.12801836622042634, '2': 0.1700814539651693, '3': 0.1865746240913357, '4': 0.1689892687862853, '5': 0.12637949461235076, '6': 0.07803780365952655, '7': 0.03978729348670852, '8': 0.016749224089926868, '9': 0.005821781809022664}, 'model': 'overdispersed_score_distribution', 'variance_multiplier': 1.75, '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.6538, 'recent_quality_edge': 0.1, 'season_weight': 0.65, 'recent_weight': 0.35, 'recent_reliability': 1.0, 'alignment': 'conflict', 'blended_quality_edge': -0.39} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Simulation flip control is implemented and its runtime trace passed. | {'pre_simulation_score': {'away_runs': 3, 'home_runs': 4, 'score_text': 'ATL 3 - 4 PHI', 'winner': 'PHI'}, 'final_simulation_score': {'away_runs': 3, 'home_runs': 4, 'score_text': 'ATL 3 - 4 PHI', 'winner': 'PHI'}, 'winner_flipped_by_simulation': False, 'simulation_would_flip_winner': False, 'sim_flipped_pre_winner': False, 'sim_flip_trusted': False, 'sim_flip_policy': 'diagnostic_only_unless_independently_supported', 'independent_margin_support': False, 'independent_margin_support_evidence': {'pitcher_matchup_edge_home_minus_away': -0.1125, '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': 3, 'home_runs': 4, 'winner': 'PHI', 'model_winner': 'PHI', 'simulation_winner': 'PHI', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 3, 'published_winner': 'PHI', 'published_winner_draw_share': 0.6667, 'draw_majority_team': 'PHI', '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': 3, 'home_runs': 4}, 'simulation_score': {'away_runs': 3, 'home_runs': 4}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 1, 'final_margin': 1, 'winner_quality_edge': -0.39, 'winner': 'PHI', 'score_reviewed': {'away_runs': 3, 'home_runs': 4, '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: 131. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | home pitcher pitch-by-pitch count matches pitch_count_summary total: 141. | |||||
| PASS | pitch_count | simulation | ATL | PITCH_COUNT_PITCHER_MATCH | ATL pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | ATL | PITCH_COUNT_TOTAL_MATCH | ATL pitch_count_summary total, row sum, and pitching total all match: 131. | |||
| PASS | pitch_count | simulation | PHI | PITCH_COUNT_PITCHER_MATCH | PHI pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | PHI | PITCH_COUNT_TOTAL_MATCH | PHI pitch_count_summary total, row sum, and pitching total all match: 141. | |||
| 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 | current | ATL | PITCHING_REALISM | current:ATL pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | ATL | STARTER_PRESENT | current:ATL includes a starter/opener role. | |||
| PASS | pitching | current | PHI | PITCHING_REALISM | current:PHI pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | PHI | STARTER_PRESENT | current:PHI includes a starter/opener role. | |||
| PASS | pitching | simulation | ATL | PITCHING_REALISM | simulation:ATL pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | ATL | STARTER_PRESENT | simulation:ATL includes a starter/opener role. | |||
| PASS | pitching | simulation | PHI | PITCHING_REALISM | simulation:PHI pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | PHI | STARTER_PRESENT | simulation:PHI includes a starter/opener role. | |||
| PASS | pitching_totals | current | ATL | PITCHING_TOTALS_SUM | current:ATL pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | current | ATL | PITCHING_TOTALS_SUM | current:ATL pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | current | PHI | PITCHING_TOTALS_SUM | current:PHI pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | PHI | PITCHING_TOTALS_SUM | current:PHI pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | ATL | PITCHING_TOTALS_SUM | simulation:ATL pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | simulation | ATL | PITCHING_TOTALS_SUM | simulation:ATL pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | PHI | PITCHING_TOTALS_SUM | simulation:PHI pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | PHI | PITCHING_TOTALS_SUM | simulation:PHI pitching totals equal summed pitcher lines for available fields. | |||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Enhanced AI score matches enhanced target: ATL 3 - 4 PHI. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation score matches final score: ATL 3 - 4 PHI. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation winner matches final score: PHI wins 4-3. | |||||
| PASS | prediction_comparison | SIMULATION_WINNER_FLIP_TRACE | Simulation decision is explicit: model=PHI, simulation=PHI, published=PHI. | |||||
| PASS | probability | CONFIDENCE_RANGE | Enhanced target confidence is in range: 0.530. | |||||
| 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: 7/10 (0.700). | |||||
| 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): PHI wins 4-3. | |||||
| PASS | score | SCORE_NO_TIE | Final score has a clear winner: PHI wins 3-4. | |||||
| PASS | score | SCORE_STEP_FINAL_MATCH | simulation_result step matches final score: 3-4. | |||||
| 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 3-4, final 3-4 (delta 0). | |||||
| PASS | score | TOTAL_RUNS_MATCH | total_runs field matches final score total: 7. | |||||
| PASS | score | WINNER_FIELD_MATCH | winner field is consistent: PHI wins 4-3. | |||||
| PASS | score | cross-schema | CURRENT_SCORE_MATCHES_SIM | game.predicted_runs matches scoring_simulation.final_score. | ||||
| PASS | team_recent_performance | current | ATL | RECENT_FORM_RANGE | ATL recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | ATL | TEAM_RECENT_RECORD | ATL wins and win_pct agree: 6/10 = 0.600. | |||
| PASS | team_recent_performance | current | PHI | RECENT_FORM_RANGE | PHI recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | PHI | TEAM_RECENT_RECORD | PHI wins and win_pct agree: 6/10 = 0.600. |
Info/context findings
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| INFO | current_payload | current | ATL | CURRENT_PITCHER_DUPLICATION | ATL pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_payload | current | PHI | CURRENT_PITCHER_DUPLICATION | PHI pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_vs_final | cross-schema | ATL | CURRENT_FINALIZED_MATCH_BOX | ATL model pitcher projections differ from final simulation pitching box score (HR: current=0, sim=1). | New contract: model pitcher projections may differ; simulation_box_score_stats carries the simulation draw. | ||
| INFO | current_vs_final | cross-schema | ATL | CURRENT_FINALIZED_MATCH_BOX | ATL model-prediction batting totals differ from final simulation box score (AB: current=38, sim=35; H: current=9, sim=8; RBI: current=4, sim=3; R: current=5, sim=3; BB: current=3, sim=0; SO: current=8, sim=5). | New contract: model prediction totals may differ from scoring_simulation; simulation_stats_source links the simulation box score. | ||
| INFO | current_vs_final | cross-schema | ATL | CURRENT_PLAYER_MATCH_BOX | ATL current finalized hitter lines are model predictions and differ from the simulation box score: Ronald Acuña Jr.: RBI current=1 box=0, R current=1 box=0, BB current=1 box=0; Lane Thomas: AB current=3 box=4, HR current=0 box=1, RBI current=0 box=2, R current=0 box=1; Drake Baldwin: AB current=6 box=4, H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Ozzie Albies: AB current=5 box=4, H current=1 box=2, 2B current=1 box=0, SO current=1 box=0; Matt Olson: H current=1 box=0, 2B current=1 box=0, R current=1 box=0, SO current=1 box=0; Michael Harris II: AB current=5 box=4, 2B current=0 box=1, HR current=1 box=0, RBI current=1 box=0; Ha-Seong Kim: SO current=1 box=0; Austin Riley: RBI 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 | PHI | CURRENT_FINALIZED_MATCH_BOX | PHI model-prediction batting totals differ from final simulation box score (AB: current=35, sim=29; H: current=8, sim=5; BB: current=3, sim=1; SO: current=8, sim=7). | New contract: model prediction totals may differ from scoring_simulation; simulation_stats_source links the simulation box score. | ||
| INFO | current_vs_final | cross-schema | PHI | CURRENT_PLAYER_MATCH_BOX | PHI current finalized hitter lines are model predictions and differ from the simulation box score: Bryce Harper: RBI current=1 box=0, BB current=1 box=0; Alec Bohm: AB current=4 box=3, RBI current=1 box=2, R current=0 box=1, SO current=1 box=0; Bryson Stott: AB current=4 box=2, H current=1 box=0, RBI current=1 box=0, SO current=1 box=0; Brandon Marsh: AB current=4 box=3, H current=1 box=0; Trea Turner: AB current=5 box=4, 2B current=1 box=0, HR current=0 box=1, RBI current=0 box=2; Luis Arraez: AB current=4 box=3, 2B current=0 box=1, SO current=1 box=0; Kyle Schwarber: HR current=1 box=0, RBI current=1 box=0, BB current=1 box=0; J.T. Realmuto: H current=1 box=0, R current=1 box=0, SO current=1 box=2 | 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 | 3.6087731717341067 | 5.641923515322539 | Base ML historical model prediction | |
| variance_applied | 4 | 6 | Deterministic baseline target (variance factor 1.0) | |
| enhanced_prediction | 3 | 4 | 0.530 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 3 | 4 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality | |
| fundamental_edge_target_review | 3 | 4 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments | |
| capped_target | 3 | 4 | Capped at max 12 realistic runs | |
| simulation_result | 3 | 4 | Final inning-by-inning simulation result |
Inning-by-inning linescore
| team | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | R | H |
|---|---|---|---|---|---|---|---|---|---|---|---|
| ATL | 0 | 0 | 0 | 2 | 0 | 0 | 0 | 0 | 1 | 3 | 8 |
| PHI | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 2 | 0 | 4 | 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 | ATL | batting | 38 | 9 | 2 | 0 | 1 | 4 | 5 | 3 | 8 | 0 | 0 | 0 | 0 | |||||
| current | ATL | pitching | 5 | 0 | 4 | 1 | 7 | 8.0 | 4 | 0 | 0 | |||||||||
| current | PHI | batting | 35 | 8 | 2 | 0 | 1 | 4 | 4 | 3 | 8 | 0 | 0 | 0 | 0 | |||||
| current | PHI | pitching | 8 | 1 | 3 | 0 | 5 | 9.0 | 3 | 0 | 0 | |||||||||
| simulation | ATL | batting | 35 | 8 | 2 | 0 | 1 | 3 | 3 | 0 | 5 | 0 | 0 | |||||||
| simulation | ATL | pitching | 5 | 1 | 4 | 1 | 7 | 8.0 | 4 | 30 | 131 | |||||||||
| simulation | PHI | batting | 29 | 5 | 2 | 0 | 1 | 4 | 4 | 1 | 7 | 0 | 0 | |||||||
| simulation | PHI | pitching | 8 | 1 | 3 | 0 | 5 | 9.0 | 3 | 35 | 141 |
Batting lines - current + final simulation
| src | team | order | pos | name | PA | AB | H | 2B | 3B | HR | R | RBI | BB | SO | HBP | AVG |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| current | ATL | DH | Ronald Acuña Jr. | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 0.250 | |
| current | ATL | RF | Lane Thomas | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0.333 | |
| current | ATL | C | Drake Baldwin | 0 | 6 | 1 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 0.167 | |
| current | ATL | 2B | Ozzie Albies | 0 | 5 | 1 | 1 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.200 | |
| current | ATL | 1B | Matt Olson | 0 | 4 | 1 | 1 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.250 | |
| current | ATL | CF | Michael Harris II | 0 | 5 | 1 | 0 | 0 | 1 | 1 | 1 | 0 | 1 | 0 | 0.200 | |
| current | ATL | SS | Ha-Seong Kim | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.333 | |
| current | ATL | 3B | Austin Riley | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0.250 | |
| current | ATL | LF | Mauricio Dubón | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.250 | |
| current | PHI | RF | Bryce Harper | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 0.250 | |
| current | PHI | 1B | Alec Bohm | 0 | 4 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0.250 | |
| current | PHI | 3B | Bryson Stott | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 0 | 0.250 | |
| current | PHI | LF | Brandon Marsh | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.250 | |
| current | PHI | SS | Trea Turner | 0 | 5 | 1 | 1 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.200 | |
| current | PHI | 2B | Luis Arraez | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.250 | |
| current | PHI | DH | Kyle Schwarber | 0 | 4 | 1 | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 0 | 0.250 | |
| current | PHI | C | J.T. Realmuto | 0 | 3 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.333 | |
| current | PHI | CF | Justin Crawford | 0 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.000 | |
| simulation | ATL | 1 | DH | Ronald Acuña Jr. | 4 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.250 |
| simulation | ATL | 2 | C | Drake Baldwin | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.000 |
| simulation | ATL | 3 | 2B | Ozzie Albies | 4 | 4 | 2 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0.500 |
| simulation | ATL | 4 | 1B | Matt Olson | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.000 |
| simulation | ATL | 5 | RF | Lane Thomas | 4 | 4 | 1 | 0 | 0 | 1 | 1 | 2 | 0 | 1 | 0 | 0.250 |
| simulation | ATL | 6 | CF | Michael Harris II | 4 | 4 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.250 |
| simulation | ATL | 7 | LF | Mauricio Dubón | 4 | 4 | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0.250 |
| simulation | ATL | 8 | 3B | Austin Riley | 4 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.250 |
| simulation | ATL | 9 | SS | Ha-Seong Kim | 3 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.333 |
| simulation | PHI | 1 | DH | Kyle Schwarber | 4 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.250 |
| simulation | PHI | 2 | SS | Trea Turner | 4 | 4 | 1 | 0 | 0 | 1 | 1 | 2 | 0 | 2 | 0 | 0.250 |
| simulation | PHI | 3 | RF | Bryce Harper | 4 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.250 |
| simulation | PHI | 4 | 2B | Luis Arraez | 3 | 3 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.333 |
| simulation | PHI | 5 | 1B | Alec Bohm | 3 | 3 | 1 | 1 | 0 | 0 | 1 | 2 | 0 | 0 | 0 | 0.333 |
| simulation | PHI | 6 | 3B | Bryson Stott | 3 | 2 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0.000 |
| simulation | PHI | 7 | LF | Brandon Marsh | 3 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 |
| simulation | PHI | 8 | C | J.T. Realmuto | 3 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.000 |
| simulation | PHI | 9 | CF | Justin Crawford | 3 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.000 |
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 | ATL | 1 | Grant Holmes | Starter | 4.2 | 2 | 2 | 2 | 1 | 6 | 0 | 0 | 0 | 3.86 | 3.77 | 1.34 |
| current | ATL | 4 | Dylan Lee | Setup Man | 1.2 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.00 | 2.32 | 0.82 |
| current | ATL | 5 | Raisel Iglesias | Closer | 1.2 | 2 | 2 | 2 | 0 | 0 | 0 | 0 | 0 | 10.80 | 2.72 | 1.15 |
| current | PHI | 1 | Jesús Luzardo | Starter | 6.1 | 5 | 2 | 2 | 0 | 5 | 1 | 0 | 0 | 2.84 | 3.02 | 1.12 |
| current | PHI | 2 | Jhoan Duran | Closer | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 1.38 | 0.99 |
| current | PHI | 3 | Jonathan Bowlan | Setup Man | 1.0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 3.06 | 0.98 |
| current | PHI | 4 | Orion Kerkering | Middle Reliever (High Leverage) | 0.2 | 2 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 13.50 | 4.12 | 1.30 |
| simulation | ATL | 1 | Grant Holmes | Starter | 4.2 | 2 | 2 | 2 | 1 | 6 | 0 | 17 | 80 | 3.86 | 3.77 | 1.34 |
| simulation | ATL | 2 | Raisel Iglesias | Closer | 1.2 | 2 | 2 | 2 | 0 | 0 | 0 | 7 | 27 | 10.80 | 2.72 | 1.15 |
| simulation | ATL | 3 | Dylan Lee | Setup Man | 1.2 | 1 | 0 | 0 | 0 | 1 | 1 | 6 | 24 | 0.00 | 2.32 | 0.82 |
| simulation | PHI | 1 | Jesús Luzardo | Starter | 6.1 | 5 | 2 | 2 | 0 | 5 | 1 | 24 | 98 | 2.84 | 3.02 | 1.12 |
| simulation | PHI | 2 | Jhoan Duran | Closer | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 13 | 0.00 | 1.38 | 0.99 |
| simulation | PHI | 3 | Jonathan Bowlan | Setup Man | 1.0 | 1 | 0 | 0 | 0 | 0 | 0 | 4 | 16 | 0.00 | 3.06 | 0.98 |
| simulation | PHI | 4 | Orion Kerkering | Middle Reliever (High Leverage) | 0.2 | 2 | 1 | 1 | 0 | 0 | 0 | 4 | 14 | 13.50 | 4.12 | 1.30 |
Pitch count summary
| team | pitcher | role | IP | R | H | BB | SO | BF | Pitches |
|---|---|---|---|---|---|---|---|---|---|
| ATL | Grant Holmes | Starter | 4.2 | 2 | 2 | 1 | 6 | 17 | 80 |
| ATL | Dylan Lee | Setup Man | 1.2 | 0 | 1 | 0 | 1 | 6 | 24 |
| ATL | Raisel Iglesias | Closer | 1.2 | 2 | 2 | 0 | 0 | 7 | 27 |
| PHI | Jesús Luzardo | Starter | 6.1 | 2 | 5 | 0 | 5 | 24 | 98 |
| PHI | Jhoan Duran | Closer | 1.0 | 0 | 0 | 0 | 0 | 3 | 13 |
| PHI | Jonathan Bowlan | Setup Man | 1.0 | 0 | 1 | 0 | 0 | 4 | 16 |
| PHI | Orion Kerkering | Middle Reliever (High Leverage) | 0.2 | 1 | 2 | 0 | 0 | 4 | 14 |
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 | 1 | 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_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. |
| 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. |
| 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. |
20260907_CHC@MIL
20260907_CHC@MIL.json • 2026-09-07
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 | CHC | CURRENT_PITCHER_DUPLICATION | CHC pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_payload | current | MIL | CURRENT_PITCHER_DUPLICATION | MIL pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_vs_final | cross-schema | CHC | CURRENT_FINALIZED_MATCH_BOX | CHC model-prediction batting totals differ from final simulation box score (AB: current=33, sim=35; 2B: current=2, sim=3; 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 | CHC | CURRENT_PLAYER_MATCH_BOX | CHC current finalized hitter lines are model predictions and differ from the simulation box score: Seiya Suzuki: 2B current=1 box=0, RBI current=1 box=0, BB current=1 box=0; Nico Hoerner: H current=1 box=0; Alex Bregman: AB current=4 box=3, SO current=1 box=0; Tyrone Taylor: AB current=3 box=4, H current=1 box=3, HR current=0 box=1, RBI current=1 box=3; BJ Murray Jr.: AB current=3 box=4, H current=1 box=0; Matt Shaw: AB current=3 box=4, H current=0 box=2, 2B current=0 box=1, SO current=1 box=0; Pete Crow-Armstrong: AB current=5 box=4, 2B current=0 box=1, HR current=1 box=0, BB current=1 box=0; Carson Kelly: H current=1 box=0, RBI current=1 box=0, R current=1 box=0, SO current=1 box=2 | New contract: compare model predictions separately; simulation_box_score_stats/scoring_simulation hold the simulation draw. | ||
| INFO | current_vs_final | cross-schema | MIL | CURRENT_FINALIZED_MATCH_BOX | MIL model-prediction batting totals differ from final simulation box score (AB: current=34, sim=36; H: current=9, sim=12; 2B: current=2, sim=3; 3B: current=0, sim=1; HR: current=1, sim=2; RBI: current=5, sim=7; R: current=5, sim=7; SO: current=8, 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 | MIL | CURRENT_PLAYER_MATCH_BOX | MIL current finalized hitter lines are model predictions and differ from the simulation box score: William Contreras: H current=1 box=2, HR current=1 box=0, SO current=1 box=0; Brice Turang: AB current=5 box=4, H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0; Luis Lara: AB current=3 box=4, 2B current=0 box=1, RBI current=1 box=0, R current=0 box=1; Jackson Chourio: H current=1 box=3, BB current=1 box=0, SO current=1 box=0; Andrew Vaughn: 2B current=0 box=1, RBI current=0 box=1, R current=0 box=1, SO current=0 box=1; Joey Ortiz: AB current=3 box=4, RBI current=0 box=1, R current=0 box=1; Cooper Pratt: AB current=3 box=4, HR current=0 box=1, RBI current=1 box=2, R current=0 box=1; Christian Yelich: AB current=4 box=3, H current=1 box=0, R current=1 box=0, BB 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 | CHC | BATTING_REALISM | current:CHC hitter lines pass basic baseball constraints. | |||
| PASS | batting | current | MIL | BATTING_REALISM | current:MIL hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | CHC | BATTING_REALISM | simulation:CHC hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | MIL | BATTING_REALISM | simulation:MIL hitter lines pass basic baseball constraints. | |||
| PASS | batting_totals | current | CHC | BATTING_TOTALS_SUM | current:CHC batting totals equal summed player lines. | |||
| PASS | batting_totals | current | MIL | BATTING_TOTALS_SUM | current:MIL batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | CHC | BATTING_TOTALS_SUM | simulation:CHC batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | MIL | BATTING_TOTALS_SUM | simulation:MIL batting totals equal summed player lines. | |||
| PASS | boxscore_crosscheck | simulation | CHC | BAT_PITCH_BB_MATCH | simulation:CHC batting walks match MIL pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | CHC | BAT_PITCH_HR_MATCH | simulation:CHC batting home runs match MIL pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | CHC | BAT_PITCH_H_MATCH | simulation:CHC batting hits match MIL pitching: 8. | |||
| PASS | boxscore_crosscheck | simulation | CHC | BAT_PITCH_SO_MATCH | simulation:CHC batting strikeouts match MIL pitching: 6. | |||
| PASS | boxscore_crosscheck | simulation | CHC | PA_BF_MATCH | simulation:CHC PA=36 matches MIL BF=36. | |||
| PASS | boxscore_crosscheck | simulation | CHC | RUNS_MATCH_FINAL | simulation:CHC runs match final score and opposing pitching runs: 5. | |||
| PASS | boxscore_crosscheck | simulation | MIL | BAT_PITCH_BB_MATCH | simulation:MIL batting walks match CHC pitching: 3. | |||
| PASS | boxscore_crosscheck | simulation | MIL | BAT_PITCH_HR_MATCH | simulation:MIL batting home runs match CHC pitching: 2. | |||
| PASS | boxscore_crosscheck | simulation | MIL | BAT_PITCH_H_MATCH | simulation:MIL batting hits match CHC pitching: 12. | |||
| PASS | boxscore_crosscheck | simulation | MIL | BAT_PITCH_SO_MATCH | simulation:MIL batting strikeouts match CHC pitching: 6. | |||
| PASS | boxscore_crosscheck | simulation | MIL | PA_BF_MATCH | simulation:MIL PA=39 matches CHC BF=39. | |||
| PASS | boxscore_crosscheck | simulation | MIL | RUNS_MATCH_FINAL | simulation:MIL runs match final score and opposing pitching runs: 7. | |||
| PASS | confidence_calibration | CONFIDENCE_CALIBRATION_APPLIED | Empirical confidence blend verified: 0.510 -> 0.524 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.5101, 'sample_size': 398, 'empirical_hit_rate': 0.5377, 'empirical_weight': 0.5, 'blended_confidence': 0.5239, 'published_confidence': 0.506818, 'published_after_governors': True, 'governor_mode': 'shrinkage_not_clamp'} | ||||
| PASS | cross_schema | cross-schema | CHC | CURRENT_FINALIZED_MATCH_BOX | CHC current pitcher projected totals match final simulation pitching box score. | |||
| PASS | cross_schema | cross-schema | MIL | CURRENT_FINALIZED_MATCH_BOX | MIL current pitcher projected totals match final simulation pitching box score. | |||
| PASS | current_payload | current | CHC | CURRENT_LINEUP_SHAPE | CHC current lineup has 9 expected positions. | |||
| PASS | current_payload | current | CHC | CURRENT_MODEL_ZERO_FALLBACK | CHC current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | CHC | CURRENT_NAMES_PRESENT | CHC current hitter names are populated. | |||
| PASS | current_payload | current | CHC | CURRENT_PREDICTIONS_MATCH_FINALIZED | CHC hitter predictions mirror finalized stats. | |||
| PASS | current_payload | current | MIL | CURRENT_LINEUP_SHAPE | MIL current lineup has 9 expected positions. | |||
| PASS | current_payload | current | MIL | CURRENT_MODEL_ZERO_FALLBACK | MIL current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | MIL | CURRENT_NAMES_PRESENT | MIL current hitter names are populated. | |||
| PASS | current_payload | current | MIL | CURRENT_PREDICTIONS_MATCH_FINALIZED | MIL 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.493. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | confidence is in [0,1]: 0.507. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | home_win_probability is in [0,1]: 0.507. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Final total runs 12 is reasonably close to low-score expected_total_runs 12.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.571/0.762. | |||||
| PASS | final_decision | FINAL_DECISION_POLICY | Final decision policy preserved model ownership of the winner. | |||||
| 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: CHC 8, MIL 12. | |||||
| PASS | innings | INNING_TOTAL_RUNS | Inning runs sum to final score: CHC 5 - MIL 7. | |||||
| PASS | matchup_recency | GUARDRAIL_FINAL_WINNER_SYNC | Guardrail predicted_team matches final predicted winner: MIL. | |||||
| PASS | matchup_recency | MATCHUP_RECENCY_GUARDRAIL | Matchup recency guardrail applied for MIL; cap=0.53, reasons=latest same-matchup result beat the predicted side; local prediction memory shows 2 straight prior same-side picks; 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.53, 'winner_flipped': False, 'reasons': ['latest same-matchup result beat the predicted side', 'local prediction memory shows 2 straight prior same-side picks', 'a prior same-side pick already missed against the actual result', 'a prior same-side pick missed by 5+ actual runs', 'latest-series evidence cleared the reversal bar; confidence capped and runs shifted, winner unchanged by design'], 'signals': {'predicted_team': 'MIL', 'opponent_team': 'CHC', 'h2h_net_margin': 8, 'opponent_breakout': False, 'opponent_blowout_win': False, 'split_recent_h2h': True, 'recent_h2h': [{'date': '2026-09-03', 'predicted_team_runs': 1, 'opponent_runs': 2, 'margin_for_predicted_team': -1, 'winner': 'CHC'}, {'date': '2026-09-02', 'predicted_team_runs': 9, 'opponent_runs': 5, 'margin_for_predicted_team': 4, 'winner': 'MIL'}, {'date': '2026-09-01', 'predicted_team_runs': 9, 'opponent_runs': 4, 'margin_for_predicted_team': 5, 'winner': 'MIL'}], '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': 2, 'same_pick_actual_loss_count': 4, 'same_pick_blowout_loss_count': 2, 'prior_predictions': [{'date': '20260903', 'away': 'MIL', 'home': 'CHC', 'game_number': 1, 'predicted_team': 'MIL', 'actual_winner': 'CHC', 'actual_margin': 1, 'raw_pick_probability': 0.533686, 'artifact': '20260903_MIL@CHC.json', 'verification': 'pregame_official_final'}, {'date': '20260902', 'away': 'MIL', 'home': 'CHC', 'game_number': 1, 'predicted_team': 'MIL', 'actual_winner': 'MIL', 'actual_margin': 4, 'raw_pick_probability': 0.5396270000000001, 'artifact': '20260902_MIL@CHC.json', 'verification': 'pregame_official_final'}, {'date': '20260901', 'away': 'MIL', 'home': 'CHC', 'game_number': 1, 'predicted_team': 'CHC', 'actual_winner': 'MIL', 'actual_margin': 5, 'raw_pick_probability': 0.698612, 'artifact': '20260901_MIL@CHC.json', 'verification': 'pregame_official_final'}, {'date': '20260831', 'away': 'MIL', 'home': 'CHC', 'game_number': 1, 'predicted_team': 'MIL', 'actual_winner': 'CHC', 'actual_margin': 14, 'raw_pick_probability': 0.53, 'artifact': '20260831_MIL@CHC.json', 'verification': 'pregame_official_final'}, {'date': '20260628', 'away': 'CHC', 'home': 'MIL', 'game_number': 1, 'predicted_team': 'MIL', 'actual_winner': 'CHC', 'actual_margin': 1, 'raw_pick_probability': 0.51, 'artifact': '20260628_CHC@MIL.json', 'verification': 'pregame_official_final'}]}, 'guardrail_predicted_team': 'MIL', 'guardrail_opponent_team': 'CHC', 'output_pre_simulation_winner': 'MIL', 'output_opponent_team': 'CHC', 'simulation_score_winner': 'MIL', 'final_score_winner': 'MIL', 'pre_simulation_winner': 'MIL', 'winner_flipped_by_simulation': False, 'simulation_would_flip_winner': False}, 'hard_flip_suppressed': True, 'flip_authority': 'caps_confidence_and_shifts_runs_only', 'final_prediction_sync': {'pre_simulation_score': {'away_runs': 5, 'home_runs': 7, 'score_text': 'CHC 5 - 7 MIL', 'winner': 'MIL'}, 'final_simulation_score': {'away_runs': 5, 'home_runs': 7, 'score_text': 'CHC 5 - 7 MIL', 'winner': 'MIL'}, '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.0785, 'recent_form_edge_home_minus_away': -0.346, 'winner_direction': 'home', 'thresholds': {'pitcher_matchup': 0.35, 'recent_form': 0.75}}, 'margin_widening_capped': False, 'simulation_winner_agrees': True, 'away_run_delta': 0, 'home_run_delta': 0, 'total_run_delta': 0, 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_usage': 'organic_simulation_realized_target', 'final_prediction_source': 'stable_final_prediction_policy', 'final_decision_policy': {'policy_version': 'model_target_authoritative_simulation_realizes_v3', 'away_runs': 5, 'home_runs': 7, 'winner': 'MIL', 'model_winner': 'MIL', 'simulation_winner': 'MIL', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 3, 'published_winner': 'MIL', 'published_winner_draw_share': 0.6667, 'draw_majority_team': 'MIL', 'published_winner_is_draw_majority': True, 'sampling': 'target_conditioned_selection', 'is_unbiased_probability_sample': False, 'note': 'Draw shares are target-conditioned and diagnostic. A published winner holding a minority share is recorded, not suppressed.'}, 'simulation_score_enabled': True, 'independent_margin_support': False, 'margin_widening_capped': False, 'model_margin': 2, 'simulation_margin': 2, 'simulation_usage': 'organic_simulation_realized_target', 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_realized_target': True, 'model_score': {'away_runs': 5, 'home_runs': 7}, 'simulation_score': {'away_runs': 5, 'home_runs': 7}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 2, 'final_margin': 2, 'winner_quality_edge': 0.1133, 'winner': 'MIL', 'score_reviewed': {'away_runs': 5, 'home_runs': 7, '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-09-07. | |||||
| PASS | metadata | FILENAME_GAME_ID_MATCH | Filename matches game_id: 20260907_CHC@MIL. | |||||
| PASS | metadata | FILENAME_TEAM_MATCH | Filename teams match JSON teams: CHC@MIL. | |||||
| 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': -7.0, 'absolute_net_margin': 7.0, 'home_average_margin': -1.4, 'home_run_delta': -0.0404, 'away_run_delta': 0.0404, 'evidence': [{'game_id': None, 'home_margin': -1.0}, {'game_id': None, 'home_margin': 4.0}, {'game_id': None, 'home_margin': 5.0}, {'game_id': None, 'home_margin': -14.0}, {'game_id': None, 'home_margin': -1.0}], 'adaptive_parameters': {'h2h.history_limit': 5, 'h2h.maximum_weight': 0.15, 'h2h.prior_games': 8.0, 'h2h.maximum_total_shift': 0.65}} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Score distribution widening is implemented and its runtime trace passed. | {'most_likely': [{'home_runs': 5, 'away_runs': 5, 'probability': 0.01761534432505743}, {'home_runs': 6, 'away_runs': 5, 'probability': 0.017494199794390396}, {'home_runs': 5, 'away_runs': 6, 'probability': 0.017305559625265872}, {'home_runs': 6, 'away_runs': 6, 'probability': 0.017186545550942556}, {'home_runs': 5, 'away_runs': 4, 'probability': 0.016109205541609713}], 'home_distribution': {'0': 0.0281787986523683, '1': 0.04734319217480396, '2': 0.0716021688431654, '3': 0.09748288950079621, '4': 0.11947146421769282, '5': 0.13180550681520795, '6': 0.13089905185368073, '7': 0.11702348370811154, '8': 0.09417662460305636, '9': 0.06822551071026271, '10': 0.04449221694955567, '11': 0.02611889945136033, '12': 0.013802548350916707, '13': 0.006565945252147213, '14': 0.0028116989168742047}, 'away_distribution': {'0': 0.029285152260871552, '1': 0.04915350713520482, '2': 0.07412061805240833, '3': 0.10041556841879996, '4': 0.12221951821933288, '5': 0.13364649740889992, '6': 0.1312961805877228, '7': 0.11588416648734888, '8': 0.09189113326985521, '9': 0.06546370954507161, '10': 0.04189914032838918, '11': 0.024092790871117323, '12': 0.012446481756929407, '13': 0.005776750363315139, '14': 0.0024087852947330467}, 'model': 'overdispersed_score_distribution', 'variance_multiplier': 1.75, '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.3229, 'recent_quality_edge': -0.276, 'season_weight': 0.65, 'recent_weight': 0.35, 'recent_reliability': 1.0, 'alignment': 'conflict', 'blended_quality_edge': 0.1133} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Simulation flip control is implemented and its runtime trace passed. | {'pre_simulation_score': {'away_runs': 5, 'home_runs': 7, 'score_text': 'CHC 5 - 7 MIL', 'winner': 'MIL'}, 'final_simulation_score': {'away_runs': 5, 'home_runs': 7, 'score_text': 'CHC 5 - 7 MIL', 'winner': 'MIL'}, '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.0785, 'recent_form_edge_home_minus_away': -0.346, 'winner_direction': 'home', 'thresholds': {'pitcher_matchup': 0.35, 'recent_form': 0.75}}, 'margin_widening_capped': False, 'simulation_winner_agrees': True, 'away_run_delta': 0, 'home_run_delta': 0, 'total_run_delta': 0, 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_usage': 'organic_simulation_realized_target', 'final_prediction_source': 'stable_final_prediction_policy', 'final_decision_policy': {'policy_version': 'model_target_authoritative_simulation_realizes_v3', 'away_runs': 5, 'home_runs': 7, 'winner': 'MIL', 'model_winner': 'MIL', 'simulation_winner': 'MIL', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 3, 'published_winner': 'MIL', 'published_winner_draw_share': 0.6667, 'draw_majority_team': 'MIL', 'published_winner_is_draw_majority': True, 'sampling': 'target_conditioned_selection', 'is_unbiased_probability_sample': False, 'note': 'Draw shares are target-conditioned and diagnostic. A published winner holding a minority share is recorded, not suppressed.'}, 'simulation_score_enabled': True, 'independent_margin_support': False, 'margin_widening_capped': False, 'model_margin': 2, 'simulation_margin': 2, 'simulation_usage': 'organic_simulation_realized_target', 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_realized_target': True, 'model_score': {'away_runs': 5, 'home_runs': 7}, 'simulation_score': {'away_runs': 5, 'home_runs': 7}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 2, 'final_margin': 2, 'winner_quality_edge': 0.1133, 'winner': 'MIL', 'score_reviewed': {'away_runs': 5, 'home_runs': 7, '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: 169. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | home pitcher pitch-by-pitch count matches pitch_count_summary total: 136. | |||||
| PASS | pitch_count | simulation | CHC | PITCH_COUNT_PITCHER_MATCH | CHC pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | CHC | PITCH_COUNT_TOTAL_MATCH | CHC pitch_count_summary total, row sum, and pitching total all match: 169. | |||
| PASS | pitch_count | simulation | MIL | PITCH_COUNT_PITCHER_MATCH | MIL pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | MIL | PITCH_COUNT_TOTAL_MATCH | MIL pitch_count_summary total, row sum, and pitching total all match: 136. | |||
| 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 | current | CHC | PITCHING_REALISM | current:CHC pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | CHC | STARTER_PRESENT | current:CHC includes a starter/opener role. | |||
| PASS | pitching | current | MIL | PITCHING_REALISM | current:MIL pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | MIL | STARTER_PRESENT | current:MIL includes a starter/opener role. | |||
| PASS | pitching | simulation | CHC | PITCHING_REALISM | simulation:CHC pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | CHC | STARTER_PRESENT | simulation:CHC includes a starter/opener role. | |||
| PASS | pitching | simulation | MIL | PITCHING_REALISM | simulation:MIL pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | MIL | STARTER_PRESENT | simulation:MIL includes a starter/opener role. | |||
| PASS | pitching_totals | current | CHC | PITCHING_TOTALS_SUM | current:CHC pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | current | CHC | PITCHING_TOTALS_SUM | current:CHC pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | current | MIL | PITCHING_TOTALS_SUM | current:MIL pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | MIL | PITCHING_TOTALS_SUM | current:MIL pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | CHC | PITCHING_TOTALS_SUM | simulation:CHC pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | simulation | CHC | PITCHING_TOTALS_SUM | simulation:CHC pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | MIL | PITCHING_TOTALS_SUM | simulation:MIL pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | MIL | PITCHING_TOTALS_SUM | simulation:MIL pitching totals equal summed pitcher lines for available fields. | |||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Enhanced AI score matches enhanced target: CHC 5 - 7 MIL. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation score matches final score: CHC 5 - 7 MIL. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation winner matches final score: MIL wins 7-5. | |||||
| PASS | prediction_comparison | SIMULATION_WINNER_FLIP_TRACE | Simulation decision is explicit: model=MIL, simulation=MIL, published=MIL. | |||||
| PASS | probability | CONFIDENCE_RANGE | Enhanced target confidence is in range: 0.507. | |||||
| 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): MIL wins 7-5. | |||||
| PASS | score | SCORE_NO_TIE | Final score has a clear winner: MIL wins 5-7. | |||||
| PASS | score | SCORE_STEP_FINAL_MATCH | simulation_result step matches final score: 5-7. | |||||
| 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 5-7, final 5-7 (delta 0). | |||||
| PASS | score | TOTAL_RUNS_MATCH | total_runs field matches final score total: 12. | |||||
| PASS | score | WINNER_FIELD_MATCH | winner field is consistent: MIL wins 7-5. | |||||
| PASS | score | cross-schema | CURRENT_SCORE_MATCHES_SIM | game.predicted_runs matches scoring_simulation.final_score. | ||||
| PASS | team_recent_performance | current | CHC | RECENT_FORM_RANGE | CHC recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | CHC | TEAM_RECENT_RECORD | CHC wins and win_pct agree: 5/10 = 0.500. | |||
| PASS | team_recent_performance | current | MIL | RECENT_FORM_RANGE | MIL recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | MIL | TEAM_RECENT_RECORD | MIL wins and win_pct agree: 5/10 = 0.500. |
Passed checks
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| PASS | batting | current | CHC | BATTING_REALISM | current:CHC hitter lines pass basic baseball constraints. | |||
| PASS | batting | current | MIL | BATTING_REALISM | current:MIL hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | CHC | BATTING_REALISM | simulation:CHC hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | MIL | BATTING_REALISM | simulation:MIL hitter lines pass basic baseball constraints. | |||
| PASS | batting_totals | current | CHC | BATTING_TOTALS_SUM | current:CHC batting totals equal summed player lines. | |||
| PASS | batting_totals | current | MIL | BATTING_TOTALS_SUM | current:MIL batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | CHC | BATTING_TOTALS_SUM | simulation:CHC batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | MIL | BATTING_TOTALS_SUM | simulation:MIL batting totals equal summed player lines. | |||
| PASS | boxscore_crosscheck | simulation | CHC | BAT_PITCH_BB_MATCH | simulation:CHC batting walks match MIL pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | CHC | BAT_PITCH_HR_MATCH | simulation:CHC batting home runs match MIL pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | CHC | BAT_PITCH_H_MATCH | simulation:CHC batting hits match MIL pitching: 8. | |||
| PASS | boxscore_crosscheck | simulation | CHC | BAT_PITCH_SO_MATCH | simulation:CHC batting strikeouts match MIL pitching: 6. | |||
| PASS | boxscore_crosscheck | simulation | CHC | PA_BF_MATCH | simulation:CHC PA=36 matches MIL BF=36. | |||
| PASS | boxscore_crosscheck | simulation | CHC | RUNS_MATCH_FINAL | simulation:CHC runs match final score and opposing pitching runs: 5. | |||
| PASS | boxscore_crosscheck | simulation | MIL | BAT_PITCH_BB_MATCH | simulation:MIL batting walks match CHC pitching: 3. | |||
| PASS | boxscore_crosscheck | simulation | MIL | BAT_PITCH_HR_MATCH | simulation:MIL batting home runs match CHC pitching: 2. | |||
| PASS | boxscore_crosscheck | simulation | MIL | BAT_PITCH_H_MATCH | simulation:MIL batting hits match CHC pitching: 12. | |||
| PASS | boxscore_crosscheck | simulation | MIL | BAT_PITCH_SO_MATCH | simulation:MIL batting strikeouts match CHC pitching: 6. | |||
| PASS | boxscore_crosscheck | simulation | MIL | PA_BF_MATCH | simulation:MIL PA=39 matches CHC BF=39. | |||
| PASS | boxscore_crosscheck | simulation | MIL | RUNS_MATCH_FINAL | simulation:MIL runs match final score and opposing pitching runs: 7. | |||
| PASS | confidence_calibration | CONFIDENCE_CALIBRATION_APPLIED | Empirical confidence blend verified: 0.510 -> 0.524 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.5101, 'sample_size': 398, 'empirical_hit_rate': 0.5377, 'empirical_weight': 0.5, 'blended_confidence': 0.5239, 'published_confidence': 0.506818, 'published_after_governors': True, 'governor_mode': 'shrinkage_not_clamp'} | ||||
| PASS | cross_schema | cross-schema | CHC | CURRENT_FINALIZED_MATCH_BOX | CHC current pitcher projected totals match final simulation pitching box score. | |||
| PASS | cross_schema | cross-schema | MIL | CURRENT_FINALIZED_MATCH_BOX | MIL current pitcher projected totals match final simulation pitching box score. | |||
| PASS | current_payload | current | CHC | CURRENT_LINEUP_SHAPE | CHC current lineup has 9 expected positions. | |||
| PASS | current_payload | current | CHC | CURRENT_MODEL_ZERO_FALLBACK | CHC current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | CHC | CURRENT_NAMES_PRESENT | CHC current hitter names are populated. | |||
| PASS | current_payload | current | CHC | CURRENT_PREDICTIONS_MATCH_FINALIZED | CHC hitter predictions mirror finalized stats. | |||
| PASS | current_payload | current | MIL | CURRENT_LINEUP_SHAPE | MIL current lineup has 9 expected positions. | |||
| PASS | current_payload | current | MIL | CURRENT_MODEL_ZERO_FALLBACK | MIL current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | MIL | CURRENT_NAMES_PRESENT | MIL current hitter names are populated. | |||
| PASS | current_payload | current | MIL | CURRENT_PREDICTIONS_MATCH_FINALIZED | MIL 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.493. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | confidence is in [0,1]: 0.507. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | home_win_probability is in [0,1]: 0.507. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Final total runs 12 is reasonably close to low-score expected_total_runs 12.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.571/0.762. | |||||
| PASS | final_decision | FINAL_DECISION_POLICY | Final decision policy preserved model ownership of the winner. | |||||
| 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: CHC 8, MIL 12. | |||||
| PASS | innings | INNING_TOTAL_RUNS | Inning runs sum to final score: CHC 5 - MIL 7. | |||||
| PASS | matchup_recency | GUARDRAIL_FINAL_WINNER_SYNC | Guardrail predicted_team matches final predicted winner: MIL. | |||||
| PASS | matchup_recency | MATCHUP_RECENCY_GUARDRAIL | Matchup recency guardrail applied for MIL; cap=0.53, reasons=latest same-matchup result beat the predicted side; local prediction memory shows 2 straight prior same-side picks; 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.53, 'winner_flipped': False, 'reasons': ['latest same-matchup result beat the predicted side', 'local prediction memory shows 2 straight prior same-side picks', 'a prior same-side pick already missed against the actual result', 'a prior same-side pick missed by 5+ actual runs', 'latest-series evidence cleared the reversal bar; confidence capped and runs shifted, winner unchanged by design'], 'signals': {'predicted_team': 'MIL', 'opponent_team': 'CHC', 'h2h_net_margin': 8, 'opponent_breakout': False, 'opponent_blowout_win': False, 'split_recent_h2h': True, 'recent_h2h': [{'date': '2026-09-03', 'predicted_team_runs': 1, 'opponent_runs': 2, 'margin_for_predicted_team': -1, 'winner': 'CHC'}, {'date': '2026-09-02', 'predicted_team_runs': 9, 'opponent_runs': 5, 'margin_for_predicted_team': 4, 'winner': 'MIL'}, {'date': '2026-09-01', 'predicted_team_runs': 9, 'opponent_runs': 4, 'margin_for_predicted_team': 5, 'winner': 'MIL'}], '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': 2, 'same_pick_actual_loss_count': 4, 'same_pick_blowout_loss_count': 2, 'prior_predictions': [{'date': '20260903', 'away': 'MIL', 'home': 'CHC', 'game_number': 1, 'predicted_team': 'MIL', 'actual_winner': 'CHC', 'actual_margin': 1, 'raw_pick_probability': 0.533686, 'artifact': '20260903_MIL@CHC.json', 'verification': 'pregame_official_final'}, {'date': '20260902', 'away': 'MIL', 'home': 'CHC', 'game_number': 1, 'predicted_team': 'MIL', 'actual_winner': 'MIL', 'actual_margin': 4, 'raw_pick_probability': 0.5396270000000001, 'artifact': '20260902_MIL@CHC.json', 'verification': 'pregame_official_final'}, {'date': '20260901', 'away': 'MIL', 'home': 'CHC', 'game_number': 1, 'predicted_team': 'CHC', 'actual_winner': 'MIL', 'actual_margin': 5, 'raw_pick_probability': 0.698612, 'artifact': '20260901_MIL@CHC.json', 'verification': 'pregame_official_final'}, {'date': '20260831', 'away': 'MIL', 'home': 'CHC', 'game_number': 1, 'predicted_team': 'MIL', 'actual_winner': 'CHC', 'actual_margin': 14, 'raw_pick_probability': 0.53, 'artifact': '20260831_MIL@CHC.json', 'verification': 'pregame_official_final'}, {'date': '20260628', 'away': 'CHC', 'home': 'MIL', 'game_number': 1, 'predicted_team': 'MIL', 'actual_winner': 'CHC', 'actual_margin': 1, 'raw_pick_probability': 0.51, 'artifact': '20260628_CHC@MIL.json', 'verification': 'pregame_official_final'}]}, 'guardrail_predicted_team': 'MIL', 'guardrail_opponent_team': 'CHC', 'output_pre_simulation_winner': 'MIL', 'output_opponent_team': 'CHC', 'simulation_score_winner': 'MIL', 'final_score_winner': 'MIL', 'pre_simulation_winner': 'MIL', 'winner_flipped_by_simulation': False, 'simulation_would_flip_winner': False}, 'hard_flip_suppressed': True, 'flip_authority': 'caps_confidence_and_shifts_runs_only', 'final_prediction_sync': {'pre_simulation_score': {'away_runs': 5, 'home_runs': 7, 'score_text': 'CHC 5 - 7 MIL', 'winner': 'MIL'}, 'final_simulation_score': {'away_runs': 5, 'home_runs': 7, 'score_text': 'CHC 5 - 7 MIL', 'winner': 'MIL'}, '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.0785, 'recent_form_edge_home_minus_away': -0.346, 'winner_direction': 'home', 'thresholds': {'pitcher_matchup': 0.35, 'recent_form': 0.75}}, 'margin_widening_capped': False, 'simulation_winner_agrees': True, 'away_run_delta': 0, 'home_run_delta': 0, 'total_run_delta': 0, 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_usage': 'organic_simulation_realized_target', 'final_prediction_source': 'stable_final_prediction_policy', 'final_decision_policy': {'policy_version': 'model_target_authoritative_simulation_realizes_v3', 'away_runs': 5, 'home_runs': 7, 'winner': 'MIL', 'model_winner': 'MIL', 'simulation_winner': 'MIL', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 3, 'published_winner': 'MIL', 'published_winner_draw_share': 0.6667, 'draw_majority_team': 'MIL', 'published_winner_is_draw_majority': True, 'sampling': 'target_conditioned_selection', 'is_unbiased_probability_sample': False, 'note': 'Draw shares are target-conditioned and diagnostic. A published winner holding a minority share is recorded, not suppressed.'}, 'simulation_score_enabled': True, 'independent_margin_support': False, 'margin_widening_capped': False, 'model_margin': 2, 'simulation_margin': 2, 'simulation_usage': 'organic_simulation_realized_target', 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_realized_target': True, 'model_score': {'away_runs': 5, 'home_runs': 7}, 'simulation_score': {'away_runs': 5, 'home_runs': 7}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 2, 'final_margin': 2, 'winner_quality_edge': 0.1133, 'winner': 'MIL', 'score_reviewed': {'away_runs': 5, 'home_runs': 7, '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-09-07. | |||||
| PASS | metadata | FILENAME_GAME_ID_MATCH | Filename matches game_id: 20260907_CHC@MIL. | |||||
| PASS | metadata | FILENAME_TEAM_MATCH | Filename teams match JSON teams: CHC@MIL. | |||||
| 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': -7.0, 'absolute_net_margin': 7.0, 'home_average_margin': -1.4, 'home_run_delta': -0.0404, 'away_run_delta': 0.0404, 'evidence': [{'game_id': None, 'home_margin': -1.0}, {'game_id': None, 'home_margin': 4.0}, {'game_id': None, 'home_margin': 5.0}, {'game_id': None, 'home_margin': -14.0}, {'game_id': None, 'home_margin': -1.0}], 'adaptive_parameters': {'h2h.history_limit': 5, 'h2h.maximum_weight': 0.15, 'h2h.prior_games': 8.0, 'h2h.maximum_total_shift': 0.65}} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Score distribution widening is implemented and its runtime trace passed. | {'most_likely': [{'home_runs': 5, 'away_runs': 5, 'probability': 0.01761534432505743}, {'home_runs': 6, 'away_runs': 5, 'probability': 0.017494199794390396}, {'home_runs': 5, 'away_runs': 6, 'probability': 0.017305559625265872}, {'home_runs': 6, 'away_runs': 6, 'probability': 0.017186545550942556}, {'home_runs': 5, 'away_runs': 4, 'probability': 0.016109205541609713}], 'home_distribution': {'0': 0.0281787986523683, '1': 0.04734319217480396, '2': 0.0716021688431654, '3': 0.09748288950079621, '4': 0.11947146421769282, '5': 0.13180550681520795, '6': 0.13089905185368073, '7': 0.11702348370811154, '8': 0.09417662460305636, '9': 0.06822551071026271, '10': 0.04449221694955567, '11': 0.02611889945136033, '12': 0.013802548350916707, '13': 0.006565945252147213, '14': 0.0028116989168742047}, 'away_distribution': {'0': 0.029285152260871552, '1': 0.04915350713520482, '2': 0.07412061805240833, '3': 0.10041556841879996, '4': 0.12221951821933288, '5': 0.13364649740889992, '6': 0.1312961805877228, '7': 0.11588416648734888, '8': 0.09189113326985521, '9': 0.06546370954507161, '10': 0.04189914032838918, '11': 0.024092790871117323, '12': 0.012446481756929407, '13': 0.005776750363315139, '14': 0.0024087852947330467}, 'model': 'overdispersed_score_distribution', 'variance_multiplier': 1.75, '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.3229, 'recent_quality_edge': -0.276, 'season_weight': 0.65, 'recent_weight': 0.35, 'recent_reliability': 1.0, 'alignment': 'conflict', 'blended_quality_edge': 0.1133} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Simulation flip control is implemented and its runtime trace passed. | {'pre_simulation_score': {'away_runs': 5, 'home_runs': 7, 'score_text': 'CHC 5 - 7 MIL', 'winner': 'MIL'}, 'final_simulation_score': {'away_runs': 5, 'home_runs': 7, 'score_text': 'CHC 5 - 7 MIL', 'winner': 'MIL'}, '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.0785, 'recent_form_edge_home_minus_away': -0.346, 'winner_direction': 'home', 'thresholds': {'pitcher_matchup': 0.35, 'recent_form': 0.75}}, 'margin_widening_capped': False, 'simulation_winner_agrees': True, 'away_run_delta': 0, 'home_run_delta': 0, 'total_run_delta': 0, 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_usage': 'organic_simulation_realized_target', 'final_prediction_source': 'stable_final_prediction_policy', 'final_decision_policy': {'policy_version': 'model_target_authoritative_simulation_realizes_v3', 'away_runs': 5, 'home_runs': 7, 'winner': 'MIL', 'model_winner': 'MIL', 'simulation_winner': 'MIL', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 3, 'published_winner': 'MIL', 'published_winner_draw_share': 0.6667, 'draw_majority_team': 'MIL', 'published_winner_is_draw_majority': True, 'sampling': 'target_conditioned_selection', 'is_unbiased_probability_sample': False, 'note': 'Draw shares are target-conditioned and diagnostic. A published winner holding a minority share is recorded, not suppressed.'}, 'simulation_score_enabled': True, 'independent_margin_support': False, 'margin_widening_capped': False, 'model_margin': 2, 'simulation_margin': 2, 'simulation_usage': 'organic_simulation_realized_target', 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_realized_target': True, 'model_score': {'away_runs': 5, 'home_runs': 7}, 'simulation_score': {'away_runs': 5, 'home_runs': 7}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 2, 'final_margin': 2, 'winner_quality_edge': 0.1133, 'winner': 'MIL', 'score_reviewed': {'away_runs': 5, 'home_runs': 7, '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: 169. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | home pitcher pitch-by-pitch count matches pitch_count_summary total: 136. | |||||
| PASS | pitch_count | simulation | CHC | PITCH_COUNT_PITCHER_MATCH | CHC pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | CHC | PITCH_COUNT_TOTAL_MATCH | CHC pitch_count_summary total, row sum, and pitching total all match: 169. | |||
| PASS | pitch_count | simulation | MIL | PITCH_COUNT_PITCHER_MATCH | MIL pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | MIL | PITCH_COUNT_TOTAL_MATCH | MIL pitch_count_summary total, row sum, and pitching total all match: 136. | |||
| 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 | current | CHC | PITCHING_REALISM | current:CHC pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | CHC | STARTER_PRESENT | current:CHC includes a starter/opener role. | |||
| PASS | pitching | current | MIL | PITCHING_REALISM | current:MIL pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | MIL | STARTER_PRESENT | current:MIL includes a starter/opener role. | |||
| PASS | pitching | simulation | CHC | PITCHING_REALISM | simulation:CHC pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | CHC | STARTER_PRESENT | simulation:CHC includes a starter/opener role. | |||
| PASS | pitching | simulation | MIL | PITCHING_REALISM | simulation:MIL pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | MIL | STARTER_PRESENT | simulation:MIL includes a starter/opener role. | |||
| PASS | pitching_totals | current | CHC | PITCHING_TOTALS_SUM | current:CHC pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | current | CHC | PITCHING_TOTALS_SUM | current:CHC pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | current | MIL | PITCHING_TOTALS_SUM | current:MIL pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | MIL | PITCHING_TOTALS_SUM | current:MIL pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | CHC | PITCHING_TOTALS_SUM | simulation:CHC pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | simulation | CHC | PITCHING_TOTALS_SUM | simulation:CHC pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | MIL | PITCHING_TOTALS_SUM | simulation:MIL pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | MIL | PITCHING_TOTALS_SUM | simulation:MIL pitching totals equal summed pitcher lines for available fields. | |||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Enhanced AI score matches enhanced target: CHC 5 - 7 MIL. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation score matches final score: CHC 5 - 7 MIL. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation winner matches final score: MIL wins 7-5. | |||||
| PASS | prediction_comparison | SIMULATION_WINNER_FLIP_TRACE | Simulation decision is explicit: model=MIL, simulation=MIL, published=MIL. | |||||
| PASS | probability | CONFIDENCE_RANGE | Enhanced target confidence is in range: 0.507. | |||||
| 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): MIL wins 7-5. | |||||
| PASS | score | SCORE_NO_TIE | Final score has a clear winner: MIL wins 5-7. | |||||
| PASS | score | SCORE_STEP_FINAL_MATCH | simulation_result step matches final score: 5-7. | |||||
| 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 5-7, final 5-7 (delta 0). | |||||
| PASS | score | TOTAL_RUNS_MATCH | total_runs field matches final score total: 12. | |||||
| PASS | score | WINNER_FIELD_MATCH | winner field is consistent: MIL wins 7-5. | |||||
| PASS | score | cross-schema | CURRENT_SCORE_MATCHES_SIM | game.predicted_runs matches scoring_simulation.final_score. | ||||
| PASS | team_recent_performance | current | CHC | RECENT_FORM_RANGE | CHC recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | CHC | TEAM_RECENT_RECORD | CHC wins and win_pct agree: 5/10 = 0.500. | |||
| PASS | team_recent_performance | current | MIL | RECENT_FORM_RANGE | MIL recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | MIL | TEAM_RECENT_RECORD | MIL wins and win_pct agree: 5/10 = 0.500. |
Info/context findings
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| INFO | current_payload | current | CHC | CURRENT_PITCHER_DUPLICATION | CHC pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_payload | current | MIL | CURRENT_PITCHER_DUPLICATION | MIL pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_vs_final | cross-schema | CHC | CURRENT_FINALIZED_MATCH_BOX | CHC model-prediction batting totals differ from final simulation box score (AB: current=33, sim=35; 2B: current=2, sim=3; 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 | CHC | CURRENT_PLAYER_MATCH_BOX | CHC current finalized hitter lines are model predictions and differ from the simulation box score: Seiya Suzuki: 2B current=1 box=0, RBI current=1 box=0, BB current=1 box=0; Nico Hoerner: H current=1 box=0; Alex Bregman: AB current=4 box=3, SO current=1 box=0; Tyrone Taylor: AB current=3 box=4, H current=1 box=3, HR current=0 box=1, RBI current=1 box=3; BJ Murray Jr.: AB current=3 box=4, H current=1 box=0; Matt Shaw: AB current=3 box=4, H current=0 box=2, 2B current=0 box=1, SO current=1 box=0; Pete Crow-Armstrong: AB current=5 box=4, 2B current=0 box=1, HR current=1 box=0, BB current=1 box=0; Carson Kelly: H current=1 box=0, RBI current=1 box=0, R current=1 box=0, SO current=1 box=2 | New contract: compare model predictions separately; simulation_box_score_stats/scoring_simulation hold the simulation draw. | ||
| INFO | current_vs_final | cross-schema | MIL | CURRENT_FINALIZED_MATCH_BOX | MIL model-prediction batting totals differ from final simulation box score (AB: current=34, sim=36; H: current=9, sim=12; 2B: current=2, sim=3; 3B: current=0, sim=1; HR: current=1, sim=2; RBI: current=5, sim=7; R: current=5, sim=7; SO: current=8, 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 | MIL | CURRENT_PLAYER_MATCH_BOX | MIL current finalized hitter lines are model predictions and differ from the simulation box score: William Contreras: H current=1 box=2, HR current=1 box=0, SO current=1 box=0; Brice Turang: AB current=5 box=4, H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0; Luis Lara: AB current=3 box=4, 2B current=0 box=1, RBI current=1 box=0, R current=0 box=1; Jackson Chourio: H current=1 box=3, BB current=1 box=0, SO current=1 box=0; Andrew Vaughn: 2B current=0 box=1, RBI current=0 box=1, R current=0 box=1, SO current=0 box=1; Joey Ortiz: AB current=3 box=4, RBI current=0 box=1, R current=0 box=1; Cooper Pratt: AB current=3 box=4, HR current=0 box=1, RBI current=1 box=2, R current=0 box=1; Christian Yelich: AB current=4 box=3, H current=1 box=0, R current=1 box=0, BB 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.480735857593602 | 4.525667720881253 | Base ML historical model prediction | |
| variance_applied | 4 | 5 | Deterministic baseline target (variance factor 1.0) | |
| enhanced_prediction | 5 | 6 | 0.507 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 5 | 7 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality | |
| fundamental_edge_target_review | 5 | 7 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments | |
| capped_target | 5 | 7 | Capped at max 12 realistic runs | |
| simulation_result | 5 | 7 | Final inning-by-inning simulation result |
Inning-by-inning linescore
| team | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | R | H |
|---|---|---|---|---|---|---|---|---|---|---|---|
| CHC | 0 | 1 | 0 | 1 | 0 | 2 | 0 | 1 | 0 | 5 | 8 |
| MIL | 1 | 1 | 1 | 0 | 1 | 0 | 0 | 3 | 0 | 7 | 12 |
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 | CHC | batting | 33 | 8 | 2 | 0 | 1 | 5 | 5 | 3 | 7 | 0 | 0 | 0 | 0 | |||||
| current | CHC | pitching | 12 | 2 | 7 | 3 | 6 | 8.0 | 7 | 0 | 0 | |||||||||
| current | MIL | batting | 34 | 9 | 2 | 0 | 1 | 5 | 5 | 3 | 8 | 0 | 0 | 0 | 0 | |||||
| current | MIL | pitching | 8 | 1 | 5 | 1 | 6 | 9.0 | 5 | 0 | 0 | |||||||||
| simulation | CHC | batting | 35 | 8 | 3 | 0 | 1 | 5 | 5 | 1 | 6 | 0 | 0 | |||||||
| simulation | CHC | pitching | 12 | 2 | 7 | 3 | 6 | 8.0 | 7 | 39 | 169 | |||||||||
| simulation | MIL | batting | 36 | 12 | 3 | 1 | 2 | 7 | 7 | 3 | 6 | 0 | 0 | |||||||
| simulation | MIL | pitching | 8 | 1 | 5 | 1 | 6 | 9.0 | 5 | 36 | 136 |
Batting lines - current + final simulation
| src | team | order | pos | name | PA | AB | H | 2B | 3B | HR | R | RBI | BB | SO | HBP | AVG |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| current | CHC | DH | Seiya Suzuki | 0 | 4 | 1 | 1 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 0.250 | |
| current | CHC | SS | Nico Hoerner | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.250 | |
| current | CHC | 3B | Alex Bregman | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 0.250 | |
| current | CHC | LF | Tyrone Taylor | 0 | 3 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.333 | |
| current | CHC | 1B | BJ Murray Jr. | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.333 | |
| current | CHC | RF | Matt Shaw | 0 | 3 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.000 | |
| current | CHC | CF | Pete Crow-Armstrong | 0 | 5 | 1 | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 0 | 0.200 | |
| current | CHC | C | Carson Kelly | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 0.250 | |
| current | CHC | 2B | Pedro Ramirez | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.333 | |
| current | MIL | C | William Contreras | 0 | 5 | 1 | 0 | 0 | 1 | 1 | 1 | 0 | 1 | 0 | 0.200 | |
| current | MIL | 2B | Brice Turang | 0 | 5 | 1 | 1 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 0.200 | |
| current | MIL | RF | Luis Lara | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0.333 | |
| current | MIL | LF | Jackson Chourio | 0 | 5 | 1 | 1 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 0.200 | |
| current | MIL | 1B | Andrew Vaughn | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0.333 | |
| current | MIL | 3B | Joey Ortiz | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.333 | |
| current | MIL | SS | Cooper Pratt | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0.333 | |
| current | MIL | DH | Christian Yelich | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.250 | |
| current | MIL | CF | Garrett Mitchell | 0 | 3 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.333 | |
| simulation | CHC | 1 | CF | Pete Crow-Armstrong | 4 | 4 | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0.250 |
| simulation | CHC | 2 | DH | Seiya Suzuki | 4 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.250 |
| simulation | CHC | 3 | 3B | Alex Bregman | 4 | 3 | 1 | 0 | 0 | 0 | 1 | 1 | 1 | 0 | 0 | 0.333 |
| simulation | CHC | 4 | LF | Tyrone Taylor | 4 | 4 | 3 | 1 | 0 | 1 | 1 | 3 | 0 | 0 | 0 | 0.750 |
| simulation | CHC | 5 | SS | Nico Hoerner | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.000 |
| simulation | CHC | 6 | RF | Matt Shaw | 4 | 4 | 2 | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0.500 |
| simulation | CHC | 7 | C | Carson Kelly | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.000 |
| simulation | CHC | 8 | 1B | BJ Murray Jr. | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 |
| simulation | CHC | 9 | 2B | Pedro Ramirez | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.000 |
| simulation | MIL | 1 | LF | Jackson Chourio | 5 | 5 | 3 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0.600 |
| simulation | MIL | 2 | 2B | Brice Turang | 5 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0.000 |
| simulation | MIL | 3 | C | William Contreras | 5 | 5 | 2 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0.400 |
| simulation | MIL | 4 | 1B | Andrew Vaughn | 4 | 3 | 1 | 1 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 0.333 |
| simulation | MIL | 5 | DH | Christian Yelich | 4 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0.000 |
| simulation | MIL | 6 | RF | Luis Lara | 4 | 4 | 1 | 1 | 0 | 0 | 1 | 0 | 0 | 2 | 0 | 0.250 |
| simulation | MIL | 7 | SS | Cooper Pratt | 4 | 4 | 1 | 0 | 0 | 1 | 1 | 2 | 0 | 1 | 0 | 0.250 |
| simulation | MIL | 8 | CF | Garrett Mitchell | 4 | 4 | 3 | 0 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0.750 |
| simulation | MIL | 9 | 3B | Joey Ortiz | 4 | 4 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | 1 | 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 | CHC | 1 | Matthew Boyd | Starter | 5.2 | 7 | 4 | 4 | 2 | 4 | 1 | 0 | 0 | 6.35 | 4.05 | 1.23 |
| current | CHC | 2 | Jacob Webb | Closer | 1.0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.00 | 3.15 | 1.23 |
| current | CHC | 3 | Trent Thornton | Setup Man | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 3.35 | 1.20 |
| current | CHC | 4 | Ryan Zeferjahn | Middle Reliever (High Leverage) | 0.1 | 5 | 3 | 3 | 1 | 1 | 1 | 0 | 0 | 81.00 | 4.06 | 1.24 |
| current | MIL | 1 | Robert Gasser | Starter | 5.0 | 5 | 4 | 4 | 0 | 5 | 1 | 0 | 0 | 7.20 | 4.57 | 1.29 |
| current | MIL | 2 | Aaron Ashby | Middle Reliever (High Leverage) | 1.0 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.00 | 3.19 | 1.35 |
| current | MIL | 3 | Abner Uribe | Setup Man | 1.0 | 2 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 9.00 | 1.95 | 0.99 |
| current | MIL | 5 | Trevor Megill | Closer | 2.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 1.49 | 0.79 |
| simulation | CHC | 1 | Matthew Boyd | Starter | 5.2 | 7 | 4 | 4 | 2 | 4 | 1 | 26 | 112 | 6.35 | 4.05 | 1.23 |
| simulation | CHC | 2 | Jacob Webb | Closer | 1.0 | 0 | 0 | 0 | 0 | 1 | 0 | 3 | 21 | 0.00 | 3.15 | 1.23 |
| simulation | CHC | 3 | Trent Thornton | Setup Man | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 13 | 0.00 | 3.35 | 1.20 |
| simulation | CHC | 4 | Ryan Zeferjahn | Middle Reliever (High Leverage) | 0.1 | 5 | 3 | 3 | 1 | 1 | 1 | 7 | 23 | 81.00 | 4.06 | 1.24 |
| simulation | MIL | 1 | Robert Gasser | Starter | 5.0 | 5 | 4 | 4 | 0 | 5 | 1 | 20 | 78 | 7.20 | 4.57 | 1.29 |
| simulation | MIL | 2 | Trevor Megill | Closer | 2.0 | 0 | 0 | 0 | 0 | 0 | 0 | 6 | 19 | 0.00 | 1.49 | 0.79 |
| simulation | MIL | 3 | Abner Uribe | Setup Man | 1.0 | 2 | 1 | 1 | 1 | 0 | 0 | 6 | 23 | 9.00 | 1.95 | 0.99 |
| simulation | MIL | 4 | Aaron Ashby | Middle Reliever (High Leverage) | 1.0 | 1 | 0 | 0 | 0 | 1 | 0 | 4 | 16 | 0.00 | 3.19 | 1.35 |
Pitch count summary
| team | pitcher | role | IP | R | H | BB | SO | BF | Pitches |
|---|---|---|---|---|---|---|---|---|---|
| CHC | Matthew Boyd | Starter | 5.2 | 4 | 7 | 2 | 4 | 26 | 112 |
| CHC | Jacob Webb | Closer | 1.0 | 0 | 0 | 0 | 1 | 3 | 21 |
| CHC | Trent Thornton | Setup Man | 1.0 | 0 | 0 | 0 | 0 | 3 | 13 |
| CHC | Ryan Zeferjahn | Middle Reliever (High Leverage) | 0.1 | 3 | 5 | 1 | 1 | 7 | 23 |
| MIL | Robert Gasser | Starter | 5.0 | 4 | 5 | 0 | 5 | 20 | 78 |
| MIL | Aaron Ashby | Middle Reliever (High Leverage) | 1.0 | 0 | 1 | 0 | 1 | 4 | 16 |
| MIL | Abner Uribe | Setup Man | 1.0 | 1 | 2 | 1 | 0 | 6 | 23 |
| MIL | Trevor Megill | Closer | 2.0 | 0 | 0 | 0 | 0 | 6 | 19 |
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_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. |
| 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. |
| 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. |
20260907_CIN@LAD
20260907_CIN@LAD.json • 2026-09-07
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 | CIN | CURRENT_PITCHER_DUPLICATION | CIN pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_payload | current | LAD | CURRENT_PITCHER_DUPLICATION | LAD pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_vs_final | cross-schema | CIN | CURRENT_FINALIZED_MATCH_BOX | CIN model pitcher projections differ from final simulation pitching box score (H: current=8, sim=10; HR: current=2, sim=4). | New contract: model pitcher projections may differ; simulation_box_score_stats carries the simulation draw. | ||
| INFO | current_vs_final | cross-schema | CIN | CURRENT_FINALIZED_MATCH_BOX | CIN model-prediction batting totals differ from final simulation box score (H: current=8, sim=6; 2B: current=1, sim=0; 3B: current=0, sim=1; HR: current=2, sim=3; R: current=4, sim=5; BB: current=3, sim=2; SO: current=10, sim=8). | New contract: model prediction totals may differ from scoring_simulation; simulation_stats_source links the simulation box score. | ||
| INFO | current_vs_final | cross-schema | CIN | CURRENT_PLAYER_MATCH_BOX | CIN current finalized hitter lines are model predictions and differ from the simulation box score: Héctor Rodríguez: AB current=4 box=3, H current=1 box=2, BB current=0 box=1, SO current=1 box=0; Elly De La Cruz: AB current=5 box=4, H current=1 box=2, 3B current=0 box=1, RBI current=1 box=3; JJ Bleday: H current=1 box=0, RBI current=1 box=0, BB current=1 box=0, SO current=1 box=0; Tyler Stephenson: 2B current=1 box=0, RBI current=1 box=0, R current=0 box=1, BB current=1 box=0; Sal Stewart: AB current=4 box=3, H current=1 box=0, RBI current=1 box=0, BB current=0 box=1; Eugenio Suárez: AB current=3 box=4, H current=1 box=0; Matt McLain: AB current=3 box=4, R current=1 box=0, SO current=1 box=2; Ke'Bryan Hayes: H current=1 box=0, SO 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 | LAD | CURRENT_FINALIZED_MATCH_BOX | LAD model-prediction batting totals differ from final simulation box score (AB: current=33, sim=36; H: current=8, sim=10; 2B: current=2, sim=1; 3B: current=0, sim=1; HR: current=1, sim=4; RBI: current=4, sim=6; R: current=5, sim=6; SO: current=8, sim=10). | New contract: model prediction totals may differ from scoring_simulation; simulation_stats_source links the simulation box score. | ||
| INFO | current_vs_final | cross-schema | LAD | CURRENT_PLAYER_MATCH_BOX | LAD current finalized hitter lines are model predictions and differ from the simulation box score: Shohei Ohtani: 2B current=0 box=1, HR current=1 box=0, RBI current=1 box=0; Tommy Edman: AB current=4 box=3, 3B current=0 box=1, RBI current=1 box=2, BB current=0 box=2; Freddie Freeman: 2B current=1 box=0, RBI current=1 box=0, R current=1 box=0, SO current=1 box=2; Teoscar Hernández: 2B current=1 box=0, RBI current=1 box=0, SO current=1 box=0; Alex Call: AB current=3 box=4, H current=1 box=0, SO current=0 box=1; Alex Freeland: AB current=3 box=4, H current=1 box=2, R current=0 box=1; Max Muncy: AB current=4 box=5, HR current=0 box=1, RBI current=0 box=1, BB current=1 box=0; Kyle Tucker: HR current=0 box=1, RBI current=0 box=1, BB current=1 box=0, SO current=1 box=2 | 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 | CIN | BATTING_REALISM | current:CIN hitter lines pass basic baseball constraints. | |||
| PASS | batting | current | LAD | BATTING_REALISM | current:LAD hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | CIN | BATTING_REALISM | simulation:CIN hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | LAD | BATTING_REALISM | simulation:LAD hitter lines pass basic baseball constraints. | |||
| PASS | batting_totals | current | CIN | BATTING_TOTALS_SUM | current:CIN batting totals equal summed player lines. | |||
| PASS | batting_totals | current | LAD | BATTING_TOTALS_SUM | current:LAD batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | CIN | BATTING_TOTALS_SUM | simulation:CIN batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | LAD | BATTING_TOTALS_SUM | simulation:LAD batting totals equal summed player lines. | |||
| PASS | boxscore_crosscheck | simulation | CIN | BAT_PITCH_BB_MATCH | simulation:CIN batting walks match LAD pitching: 2. | |||
| PASS | boxscore_crosscheck | simulation | CIN | BAT_PITCH_HR_MATCH | simulation:CIN batting home runs match LAD pitching: 3. | |||
| PASS | boxscore_crosscheck | simulation | CIN | BAT_PITCH_H_MATCH | simulation:CIN batting hits match LAD pitching: 6. | |||
| PASS | boxscore_crosscheck | simulation | CIN | BAT_PITCH_SO_MATCH | simulation:CIN batting strikeouts match LAD pitching: 8. | |||
| PASS | boxscore_crosscheck | simulation | CIN | PA_BF_MATCH | simulation:CIN PA=35 matches LAD BF=35. | |||
| PASS | boxscore_crosscheck | simulation | CIN | RUNS_MATCH_FINAL | simulation:CIN runs match final score and opposing pitching runs: 5. | |||
| PASS | boxscore_crosscheck | simulation | LAD | BAT_PITCH_BB_MATCH | simulation:LAD batting walks match CIN pitching: 4. | |||
| PASS | boxscore_crosscheck | simulation | LAD | BAT_PITCH_HR_MATCH | simulation:LAD batting home runs match CIN pitching: 4. | |||
| PASS | boxscore_crosscheck | simulation | LAD | BAT_PITCH_H_MATCH | simulation:LAD batting hits match CIN pitching: 10. | |||
| PASS | boxscore_crosscheck | simulation | LAD | BAT_PITCH_SO_MATCH | simulation:LAD batting strikeouts match CIN pitching: 10. | |||
| PASS | boxscore_crosscheck | simulation | LAD | PA_BF_MATCH | simulation:LAD PA=40 matches CIN BF=40. | |||
| PASS | boxscore_crosscheck | simulation | LAD | RUNS_MATCH_FINAL | simulation:LAD runs match final score and opposing pitching runs: 6. | |||
| PASS | confidence_calibration | CONFIDENCE_CALIBRATION_APPLIED | Empirical confidence blend verified: 0.593 -> 0.565 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.592676, 'sample_size': 550, 'empirical_hit_rate': 0.5382, 'empirical_weight': 0.5, 'blended_confidence': 0.565438, 'published_confidence': 0.532561, 'published_after_governors': True, 'governor_mode': 'shrinkage_not_clamp'} | ||||
| PASS | cross_schema | cross-schema | LAD | CURRENT_FINALIZED_MATCH_BOX | LAD current pitcher projected totals match final simulation pitching box score. | |||
| PASS | current_payload | current | CIN | CURRENT_LINEUP_SHAPE | CIN current lineup has 9 expected positions. | |||
| PASS | current_payload | current | CIN | CURRENT_MODEL_ZERO_FALLBACK | CIN current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | CIN | CURRENT_NAMES_PRESENT | CIN current hitter names are populated. | |||
| PASS | current_payload | current | CIN | CURRENT_PREDICTIONS_MATCH_FINALIZED | CIN hitter predictions mirror finalized stats. | |||
| PASS | current_payload | current | LAD | CURRENT_LINEUP_SHAPE | LAD current lineup has 9 expected positions. | |||
| PASS | current_payload | current | LAD | CURRENT_MODEL_ZERO_FALLBACK | LAD current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | LAD | CURRENT_NAMES_PRESENT | LAD current hitter names are populated. | |||
| PASS | current_payload | current | LAD | CURRENT_PREDICTIONS_MATCH_FINALIZED | LAD hitter predictions mirror finalized stats. | |||
| PASS | data_leakage | H2H_DATA_LEAKAGE | No head-to-head rows are present, so no H2H date leakage was detected. | |||||
| 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.467. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | confidence is in [0,1]: 0.533. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | home_win_probability is in [0,1]: 0.533. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Final total runs 11 is reasonably close to low-score expected_total_runs 11.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.529/0.713. | |||||
| PASS | final_decision | FINAL_DECISION_POLICY | Final decision policy preserved model ownership of the winner. | |||||
| 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: CIN 6, LAD 10. | |||||
| PASS | innings | INNING_TOTAL_RUNS | Inning runs sum to final score: CIN 5 - LAD 6. | |||||
| PASS | matchup_recency | GUARDRAIL_FINAL_WINNER_SYNC | Guardrail predicted_team matches final predicted winner: LAD. | |||||
| PASS | matchup_recency | MATCHUP_RECENCY_GUARDRAIL | No stale repeat-pick pattern detected for LAD. | {'winner_confidence': 0.5325606185, 'h2h_net_margin': 0, 'prediction_memory': {'available': False, 'reason': 'no_verified_prior_matchup_predictions', 'verification_policy': 'pregame_artifact_matched_to_one_official_final', 'verified_outcome_count': 0, 'consecutive_same_pick_count': 0, 'same_pick_actual_loss_count': 0, 'same_pick_blowout_loss_count': 0, 'prior_predictions': []}} | ||||
| PASS | metadata | DATE_PARSE | Date is valid ISO format: 2026-09-07. | |||||
| PASS | metadata | FILENAME_GAME_ID_MATCH | Filename matches game_id: 20260907_CIN@LAD. | |||||
| PASS | metadata | FILENAME_TEAM_MATCH | Filename teams match JSON teams: CIN@LAD. | |||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | H2H base feature is implemented and its runtime trace passed. | {'method': 'h2h_net_margin_monotonic_v1', 'available': False, 'sample_size': 0, 'home_net_margin': 0.0, 'home_average_margin': 0.0, 'home_run_delta': 0.0, 'away_run_delta': 0.0, 'evidence': []} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Score distribution widening is implemented and its runtime trace passed. | {'most_likely': [{'home_runs': 6, 'away_runs': 5, 'probability': 0.018122102775898048}, {'home_runs': 5, 'away_runs': 5, 'probability': 0.0175996200395061}, {'home_runs': 6, 'away_runs': 4, 'probability': 0.017367646598822693}, {'home_runs': 7, 'away_runs': 5, 'probability': 0.016908396978817433}, {'home_runs': 5, 'away_runs': 4, 'probability': 0.016866915771288165}], 'home_distribution': {'0': 0.02451095594575769, '1': 0.04131643102678156, '2': 0.0631064716508667, '3': 0.08734007246828296, '4': 0.10953218374556704, '5': 0.12446822437534345, '6': 0.1281633324696942, '7': 0.11957974912314574, '8': 0.10109741102471125, '9': 0.07744813774001598, '10': 0.053761388211292546, '11': 0.03381571065335981, '12': 0.01927325699890065, '13': 0.009953601644025405, '14': 0.004657940625986459, '15': 0.0019751322962687176}, 'away_distribution': {'0': 0.0352907435681597, '1': 0.05892597657736703, '2': 0.08747987979518458, '3': 0.1154688858541653, '4': 0.13551182123740024, '5': 0.14139849851503544, '6': 0.13118005916300982, '7': 0.10820473257893103, '8': 0.0793560602711087, '9': 0.05174511424289078, '10': 0.02999949959788974, '11': 0.015463723655621807, '12': 0.007087116280569878, '13': 0.0028878886626659216}, 'model': 'overdispersed_score_distribution', 'variance_multiplier': 1.75, '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': 1.9755, 'recent_quality_edge': -0.108, 'season_weight': 0.65, 'recent_weight': 0.35, 'recent_reliability': 1.0, 'alignment': 'conflict', 'blended_quality_edge': 1.2463} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Simulation flip control is implemented and its runtime trace passed. | {'pre_simulation_score': {'away_runs': 5, 'home_runs': 6, 'score_text': 'CIN 5 - 6 LAD', 'winner': 'LAD'}, 'final_simulation_score': {'away_runs': 5, 'home_runs': 6, 'score_text': 'CIN 5 - 6 LAD', 'winner': 'LAD'}, 'winner_flipped_by_simulation': False, 'simulation_would_flip_winner': False, 'sim_flipped_pre_winner': False, 'sim_flip_trusted': False, 'sim_flip_policy': 'diagnostic_only_unless_independently_supported', 'independent_margin_support': False, 'independent_margin_support_evidence': {'pitcher_matchup_edge_home_minus_away': 0.076, 'recent_form_edge_home_minus_away': -0.108, 'winner_direction': 'home', 'thresholds': {'pitcher_matchup': 0.35, 'recent_form': 0.75}}, 'margin_widening_capped': False, 'simulation_winner_agrees': True, 'away_run_delta': 0, 'home_run_delta': 0, 'total_run_delta': 0, 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_usage': 'organic_simulation_realized_target', 'final_prediction_source': 'stable_final_prediction_policy', 'final_decision_policy': {'policy_version': 'model_target_authoritative_simulation_realizes_v3', 'away_runs': 5, 'home_runs': 6, 'winner': 'LAD', 'model_winner': 'LAD', 'simulation_winner': 'LAD', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 1, 'published_winner': 'LAD', 'published_winner_draw_share': 1.0, 'draw_majority_team': 'LAD', 'published_winner_is_draw_majority': True, 'sampling': 'target_conditioned_selection', 'is_unbiased_probability_sample': False, 'note': 'Draw shares are target-conditioned and diagnostic. A published winner holding a minority share is recorded, not suppressed.'}, 'simulation_score_enabled': True, 'independent_margin_support': False, 'margin_widening_capped': False, 'model_margin': 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': 5, 'home_runs': 6}, 'simulation_score': {'away_runs': 5, 'home_runs': 6}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 1, 'final_margin': 1, 'winner_quality_edge': 1.2463, 'winner': 'LAD', 'score_reviewed': {'away_runs': 5, 'home_runs': 6, '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: 167. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | home pitcher pitch-by-pitch count matches pitch_count_summary total: 144. | |||||
| PASS | pitch_count | simulation | CIN | PITCH_COUNT_PITCHER_MATCH | CIN pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | CIN | PITCH_COUNT_TOTAL_MATCH | CIN pitch_count_summary total, row sum, and pitching total all match: 167. | |||
| PASS | pitch_count | simulation | LAD | PITCH_COUNT_PITCHER_MATCH | LAD pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | LAD | PITCH_COUNT_TOTAL_MATCH | LAD 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 | current | CIN | PITCHING_REALISM | current:CIN pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | CIN | STARTER_PRESENT | current:CIN includes a starter/opener role. | |||
| PASS | pitching | current | LAD | PITCHING_REALISM | current:LAD pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | LAD | STARTER_PRESENT | current:LAD includes a starter/opener role. | |||
| PASS | pitching | simulation | CIN | PITCHING_REALISM | simulation:CIN pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | CIN | STARTER_PRESENT | simulation:CIN includes a starter/opener role. | |||
| PASS | pitching | simulation | LAD | PITCHING_REALISM | simulation:LAD pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | LAD | STARTER_PRESENT | simulation:LAD includes a starter/opener role. | |||
| PASS | pitching_totals | current | CIN | PITCHING_TOTALS_SUM | current:CIN pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | current | CIN | PITCHING_TOTALS_SUM | current:CIN pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | current | LAD | PITCHING_TOTALS_SUM | current:LAD pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | LAD | PITCHING_TOTALS_SUM | current:LAD pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | CIN | PITCHING_TOTALS_SUM | simulation:CIN pitching IP total matches pitcher sum: 8.2. | |||
| PASS | pitching_totals | simulation | CIN | PITCHING_TOTALS_SUM | simulation:CIN pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | LAD | PITCHING_TOTALS_SUM | simulation:LAD pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | LAD | PITCHING_TOTALS_SUM | simulation:LAD pitching totals equal summed pitcher lines for available fields. | |||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Enhanced AI score matches enhanced target: CIN 5 - 6 LAD. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation score matches final score: CIN 5 - 6 LAD. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation winner matches final score: LAD wins 6-5. | |||||
| PASS | prediction_comparison | SIMULATION_WINNER_FLIP_TRACE | Simulation decision is explicit: model=LAD, simulation=LAD, published=LAD. | |||||
| PASS | probability | CONFIDENCE_RANGE | Enhanced target confidence is in range: 0.533. | |||||
| 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: 6/10 (0.600). | |||||
| 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): LAD wins 6-5. | |||||
| PASS | score | SCORE_NO_TIE | Final score has a clear winner: LAD wins 5-6. | |||||
| PASS | score | SCORE_STEP_FINAL_MATCH | simulation_result step matches final score: 5-6. | |||||
| 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 5-6, final 5-6 (delta 0). | |||||
| PASS | score | TOTAL_RUNS_MATCH | total_runs field matches final score total: 11. | |||||
| PASS | score | WINNER_FIELD_MATCH | winner field is consistent: LAD wins 6-5. | |||||
| PASS | score | cross-schema | CURRENT_SCORE_MATCHES_SIM | game.predicted_runs matches scoring_simulation.final_score. | ||||
| PASS | team_recent_performance | current | CIN | RECENT_FORM_RANGE | CIN recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | CIN | TEAM_RECENT_RECORD | CIN wins and win_pct agree: 7/10 = 0.700. | |||
| PASS | team_recent_performance | current | LAD | RECENT_FORM_RANGE | LAD recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | LAD | TEAM_RECENT_RECORD | LAD wins and win_pct agree: 5/10 = 0.500. |
Passed checks
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| PASS | batting | current | CIN | BATTING_REALISM | current:CIN hitter lines pass basic baseball constraints. | |||
| PASS | batting | current | LAD | BATTING_REALISM | current:LAD hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | CIN | BATTING_REALISM | simulation:CIN hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | LAD | BATTING_REALISM | simulation:LAD hitter lines pass basic baseball constraints. | |||
| PASS | batting_totals | current | CIN | BATTING_TOTALS_SUM | current:CIN batting totals equal summed player lines. | |||
| PASS | batting_totals | current | LAD | BATTING_TOTALS_SUM | current:LAD batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | CIN | BATTING_TOTALS_SUM | simulation:CIN batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | LAD | BATTING_TOTALS_SUM | simulation:LAD batting totals equal summed player lines. | |||
| PASS | boxscore_crosscheck | simulation | CIN | BAT_PITCH_BB_MATCH | simulation:CIN batting walks match LAD pitching: 2. | |||
| PASS | boxscore_crosscheck | simulation | CIN | BAT_PITCH_HR_MATCH | simulation:CIN batting home runs match LAD pitching: 3. | |||
| PASS | boxscore_crosscheck | simulation | CIN | BAT_PITCH_H_MATCH | simulation:CIN batting hits match LAD pitching: 6. | |||
| PASS | boxscore_crosscheck | simulation | CIN | BAT_PITCH_SO_MATCH | simulation:CIN batting strikeouts match LAD pitching: 8. | |||
| PASS | boxscore_crosscheck | simulation | CIN | PA_BF_MATCH | simulation:CIN PA=35 matches LAD BF=35. | |||
| PASS | boxscore_crosscheck | simulation | CIN | RUNS_MATCH_FINAL | simulation:CIN runs match final score and opposing pitching runs: 5. | |||
| PASS | boxscore_crosscheck | simulation | LAD | BAT_PITCH_BB_MATCH | simulation:LAD batting walks match CIN pitching: 4. | |||
| PASS | boxscore_crosscheck | simulation | LAD | BAT_PITCH_HR_MATCH | simulation:LAD batting home runs match CIN pitching: 4. | |||
| PASS | boxscore_crosscheck | simulation | LAD | BAT_PITCH_H_MATCH | simulation:LAD batting hits match CIN pitching: 10. | |||
| PASS | boxscore_crosscheck | simulation | LAD | BAT_PITCH_SO_MATCH | simulation:LAD batting strikeouts match CIN pitching: 10. | |||
| PASS | boxscore_crosscheck | simulation | LAD | PA_BF_MATCH | simulation:LAD PA=40 matches CIN BF=40. | |||
| PASS | boxscore_crosscheck | simulation | LAD | RUNS_MATCH_FINAL | simulation:LAD runs match final score and opposing pitching runs: 6. | |||
| PASS | confidence_calibration | CONFIDENCE_CALIBRATION_APPLIED | Empirical confidence blend verified: 0.593 -> 0.565 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.592676, 'sample_size': 550, 'empirical_hit_rate': 0.5382, 'empirical_weight': 0.5, 'blended_confidence': 0.565438, 'published_confidence': 0.532561, 'published_after_governors': True, 'governor_mode': 'shrinkage_not_clamp'} | ||||
| PASS | cross_schema | cross-schema | LAD | CURRENT_FINALIZED_MATCH_BOX | LAD current pitcher projected totals match final simulation pitching box score. | |||
| PASS | current_payload | current | CIN | CURRENT_LINEUP_SHAPE | CIN current lineup has 9 expected positions. | |||
| PASS | current_payload | current | CIN | CURRENT_MODEL_ZERO_FALLBACK | CIN current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | CIN | CURRENT_NAMES_PRESENT | CIN current hitter names are populated. | |||
| PASS | current_payload | current | CIN | CURRENT_PREDICTIONS_MATCH_FINALIZED | CIN hitter predictions mirror finalized stats. | |||
| PASS | current_payload | current | LAD | CURRENT_LINEUP_SHAPE | LAD current lineup has 9 expected positions. | |||
| PASS | current_payload | current | LAD | CURRENT_MODEL_ZERO_FALLBACK | LAD current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | LAD | CURRENT_NAMES_PRESENT | LAD current hitter names are populated. | |||
| PASS | current_payload | current | LAD | CURRENT_PREDICTIONS_MATCH_FINALIZED | LAD hitter predictions mirror finalized stats. | |||
| PASS | data_leakage | H2H_DATA_LEAKAGE | No head-to-head rows are present, so no H2H date leakage was detected. | |||||
| 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.467. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | confidence is in [0,1]: 0.533. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | home_win_probability is in [0,1]: 0.533. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Final total runs 11 is reasonably close to low-score expected_total_runs 11.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.529/0.713. | |||||
| PASS | final_decision | FINAL_DECISION_POLICY | Final decision policy preserved model ownership of the winner. | |||||
| 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: CIN 6, LAD 10. | |||||
| PASS | innings | INNING_TOTAL_RUNS | Inning runs sum to final score: CIN 5 - LAD 6. | |||||
| PASS | matchup_recency | GUARDRAIL_FINAL_WINNER_SYNC | Guardrail predicted_team matches final predicted winner: LAD. | |||||
| PASS | matchup_recency | MATCHUP_RECENCY_GUARDRAIL | No stale repeat-pick pattern detected for LAD. | {'winner_confidence': 0.5325606185, 'h2h_net_margin': 0, 'prediction_memory': {'available': False, 'reason': 'no_verified_prior_matchup_predictions', 'verification_policy': 'pregame_artifact_matched_to_one_official_final', 'verified_outcome_count': 0, 'consecutive_same_pick_count': 0, 'same_pick_actual_loss_count': 0, 'same_pick_blowout_loss_count': 0, 'prior_predictions': []}} | ||||
| PASS | metadata | DATE_PARSE | Date is valid ISO format: 2026-09-07. | |||||
| PASS | metadata | FILENAME_GAME_ID_MATCH | Filename matches game_id: 20260907_CIN@LAD. | |||||
| PASS | metadata | FILENAME_TEAM_MATCH | Filename teams match JSON teams: CIN@LAD. | |||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | H2H base feature is implemented and its runtime trace passed. | {'method': 'h2h_net_margin_monotonic_v1', 'available': False, 'sample_size': 0, 'home_net_margin': 0.0, 'home_average_margin': 0.0, 'home_run_delta': 0.0, 'away_run_delta': 0.0, 'evidence': []} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Score distribution widening is implemented and its runtime trace passed. | {'most_likely': [{'home_runs': 6, 'away_runs': 5, 'probability': 0.018122102775898048}, {'home_runs': 5, 'away_runs': 5, 'probability': 0.0175996200395061}, {'home_runs': 6, 'away_runs': 4, 'probability': 0.017367646598822693}, {'home_runs': 7, 'away_runs': 5, 'probability': 0.016908396978817433}, {'home_runs': 5, 'away_runs': 4, 'probability': 0.016866915771288165}], 'home_distribution': {'0': 0.02451095594575769, '1': 0.04131643102678156, '2': 0.0631064716508667, '3': 0.08734007246828296, '4': 0.10953218374556704, '5': 0.12446822437534345, '6': 0.1281633324696942, '7': 0.11957974912314574, '8': 0.10109741102471125, '9': 0.07744813774001598, '10': 0.053761388211292546, '11': 0.03381571065335981, '12': 0.01927325699890065, '13': 0.009953601644025405, '14': 0.004657940625986459, '15': 0.0019751322962687176}, 'away_distribution': {'0': 0.0352907435681597, '1': 0.05892597657736703, '2': 0.08747987979518458, '3': 0.1154688858541653, '4': 0.13551182123740024, '5': 0.14139849851503544, '6': 0.13118005916300982, '7': 0.10820473257893103, '8': 0.0793560602711087, '9': 0.05174511424289078, '10': 0.02999949959788974, '11': 0.015463723655621807, '12': 0.007087116280569878, '13': 0.0028878886626659216}, 'model': 'overdispersed_score_distribution', 'variance_multiplier': 1.75, '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': 1.9755, 'recent_quality_edge': -0.108, 'season_weight': 0.65, 'recent_weight': 0.35, 'recent_reliability': 1.0, 'alignment': 'conflict', 'blended_quality_edge': 1.2463} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Simulation flip control is implemented and its runtime trace passed. | {'pre_simulation_score': {'away_runs': 5, 'home_runs': 6, 'score_text': 'CIN 5 - 6 LAD', 'winner': 'LAD'}, 'final_simulation_score': {'away_runs': 5, 'home_runs': 6, 'score_text': 'CIN 5 - 6 LAD', 'winner': 'LAD'}, 'winner_flipped_by_simulation': False, 'simulation_would_flip_winner': False, 'sim_flipped_pre_winner': False, 'sim_flip_trusted': False, 'sim_flip_policy': 'diagnostic_only_unless_independently_supported', 'independent_margin_support': False, 'independent_margin_support_evidence': {'pitcher_matchup_edge_home_minus_away': 0.076, 'recent_form_edge_home_minus_away': -0.108, 'winner_direction': 'home', 'thresholds': {'pitcher_matchup': 0.35, 'recent_form': 0.75}}, 'margin_widening_capped': False, 'simulation_winner_agrees': True, 'away_run_delta': 0, 'home_run_delta': 0, 'total_run_delta': 0, 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_usage': 'organic_simulation_realized_target', 'final_prediction_source': 'stable_final_prediction_policy', 'final_decision_policy': {'policy_version': 'model_target_authoritative_simulation_realizes_v3', 'away_runs': 5, 'home_runs': 6, 'winner': 'LAD', 'model_winner': 'LAD', 'simulation_winner': 'LAD', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 1, 'published_winner': 'LAD', 'published_winner_draw_share': 1.0, 'draw_majority_team': 'LAD', 'published_winner_is_draw_majority': True, 'sampling': 'target_conditioned_selection', 'is_unbiased_probability_sample': False, 'note': 'Draw shares are target-conditioned and diagnostic. A published winner holding a minority share is recorded, not suppressed.'}, 'simulation_score_enabled': True, 'independent_margin_support': False, 'margin_widening_capped': False, 'model_margin': 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': 5, 'home_runs': 6}, 'simulation_score': {'away_runs': 5, 'home_runs': 6}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 1, 'final_margin': 1, 'winner_quality_edge': 1.2463, 'winner': 'LAD', 'score_reviewed': {'away_runs': 5, 'home_runs': 6, '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: 167. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | home pitcher pitch-by-pitch count matches pitch_count_summary total: 144. | |||||
| PASS | pitch_count | simulation | CIN | PITCH_COUNT_PITCHER_MATCH | CIN pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | CIN | PITCH_COUNT_TOTAL_MATCH | CIN pitch_count_summary total, row sum, and pitching total all match: 167. | |||
| PASS | pitch_count | simulation | LAD | PITCH_COUNT_PITCHER_MATCH | LAD pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | LAD | PITCH_COUNT_TOTAL_MATCH | LAD 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 | current | CIN | PITCHING_REALISM | current:CIN pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | CIN | STARTER_PRESENT | current:CIN includes a starter/opener role. | |||
| PASS | pitching | current | LAD | PITCHING_REALISM | current:LAD pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | LAD | STARTER_PRESENT | current:LAD includes a starter/opener role. | |||
| PASS | pitching | simulation | CIN | PITCHING_REALISM | simulation:CIN pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | CIN | STARTER_PRESENT | simulation:CIN includes a starter/opener role. | |||
| PASS | pitching | simulation | LAD | PITCHING_REALISM | simulation:LAD pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | LAD | STARTER_PRESENT | simulation:LAD includes a starter/opener role. | |||
| PASS | pitching_totals | current | CIN | PITCHING_TOTALS_SUM | current:CIN pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | current | CIN | PITCHING_TOTALS_SUM | current:CIN pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | current | LAD | PITCHING_TOTALS_SUM | current:LAD pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | LAD | PITCHING_TOTALS_SUM | current:LAD pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | CIN | PITCHING_TOTALS_SUM | simulation:CIN pitching IP total matches pitcher sum: 8.2. | |||
| PASS | pitching_totals | simulation | CIN | PITCHING_TOTALS_SUM | simulation:CIN pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | LAD | PITCHING_TOTALS_SUM | simulation:LAD pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | LAD | PITCHING_TOTALS_SUM | simulation:LAD pitching totals equal summed pitcher lines for available fields. | |||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Enhanced AI score matches enhanced target: CIN 5 - 6 LAD. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation score matches final score: CIN 5 - 6 LAD. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation winner matches final score: LAD wins 6-5. | |||||
| PASS | prediction_comparison | SIMULATION_WINNER_FLIP_TRACE | Simulation decision is explicit: model=LAD, simulation=LAD, published=LAD. | |||||
| PASS | probability | CONFIDENCE_RANGE | Enhanced target confidence is in range: 0.533. | |||||
| 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: 6/10 (0.600). | |||||
| 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): LAD wins 6-5. | |||||
| PASS | score | SCORE_NO_TIE | Final score has a clear winner: LAD wins 5-6. | |||||
| PASS | score | SCORE_STEP_FINAL_MATCH | simulation_result step matches final score: 5-6. | |||||
| 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 5-6, final 5-6 (delta 0). | |||||
| PASS | score | TOTAL_RUNS_MATCH | total_runs field matches final score total: 11. | |||||
| PASS | score | WINNER_FIELD_MATCH | winner field is consistent: LAD wins 6-5. | |||||
| PASS | score | cross-schema | CURRENT_SCORE_MATCHES_SIM | game.predicted_runs matches scoring_simulation.final_score. | ||||
| PASS | team_recent_performance | current | CIN | RECENT_FORM_RANGE | CIN recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | CIN | TEAM_RECENT_RECORD | CIN wins and win_pct agree: 7/10 = 0.700. | |||
| PASS | team_recent_performance | current | LAD | RECENT_FORM_RANGE | LAD recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | LAD | TEAM_RECENT_RECORD | LAD wins and win_pct agree: 5/10 = 0.500. |
Info/context findings
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| INFO | current_payload | current | CIN | CURRENT_PITCHER_DUPLICATION | CIN pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_payload | current | LAD | CURRENT_PITCHER_DUPLICATION | LAD pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_vs_final | cross-schema | CIN | CURRENT_FINALIZED_MATCH_BOX | CIN model pitcher projections differ from final simulation pitching box score (H: current=8, sim=10; HR: current=2, sim=4). | New contract: model pitcher projections may differ; simulation_box_score_stats carries the simulation draw. | ||
| INFO | current_vs_final | cross-schema | CIN | CURRENT_FINALIZED_MATCH_BOX | CIN model-prediction batting totals differ from final simulation box score (H: current=8, sim=6; 2B: current=1, sim=0; 3B: current=0, sim=1; HR: current=2, sim=3; R: current=4, sim=5; BB: current=3, sim=2; SO: current=10, sim=8). | New contract: model prediction totals may differ from scoring_simulation; simulation_stats_source links the simulation box score. | ||
| INFO | current_vs_final | cross-schema | CIN | CURRENT_PLAYER_MATCH_BOX | CIN current finalized hitter lines are model predictions and differ from the simulation box score: Héctor Rodríguez: AB current=4 box=3, H current=1 box=2, BB current=0 box=1, SO current=1 box=0; Elly De La Cruz: AB current=5 box=4, H current=1 box=2, 3B current=0 box=1, RBI current=1 box=3; JJ Bleday: H current=1 box=0, RBI current=1 box=0, BB current=1 box=0, SO current=1 box=0; Tyler Stephenson: 2B current=1 box=0, RBI current=1 box=0, R current=0 box=1, BB current=1 box=0; Sal Stewart: AB current=4 box=3, H current=1 box=0, RBI current=1 box=0, BB current=0 box=1; Eugenio Suárez: AB current=3 box=4, H current=1 box=0; Matt McLain: AB current=3 box=4, R current=1 box=0, SO current=1 box=2; Ke'Bryan Hayes: H current=1 box=0, SO 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 | LAD | CURRENT_FINALIZED_MATCH_BOX | LAD model-prediction batting totals differ from final simulation box score (AB: current=33, sim=36; H: current=8, sim=10; 2B: current=2, sim=1; 3B: current=0, sim=1; HR: current=1, sim=4; RBI: current=4, sim=6; R: current=5, sim=6; SO: current=8, sim=10). | New contract: model prediction totals may differ from scoring_simulation; simulation_stats_source links the simulation box score. | ||
| INFO | current_vs_final | cross-schema | LAD | CURRENT_PLAYER_MATCH_BOX | LAD current finalized hitter lines are model predictions and differ from the simulation box score: Shohei Ohtani: 2B current=0 box=1, HR current=1 box=0, RBI current=1 box=0; Tommy Edman: AB current=4 box=3, 3B current=0 box=1, RBI current=1 box=2, BB current=0 box=2; Freddie Freeman: 2B current=1 box=0, RBI current=1 box=0, R current=1 box=0, SO current=1 box=2; Teoscar Hernández: 2B current=1 box=0, RBI current=1 box=0, SO current=1 box=0; Alex Call: AB current=3 box=4, H current=1 box=0, SO current=0 box=1; Alex Freeland: AB current=3 box=4, H current=1 box=2, R current=0 box=1; Max Muncy: AB current=4 box=5, HR current=0 box=1, RBI current=0 box=1, BB current=1 box=0; Kyle Tucker: HR current=0 box=1, RBI current=0 box=1, BB current=1 box=0, SO current=1 box=2 | 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.23859906220732 | 3.664200065147538 | Base ML historical model prediction | |
| variance_applied | 4 | 4 | Deterministic baseline target (variance factor 1.0) | |
| enhanced_prediction | 5 | 6 | 0.533 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by winner_starter_is_below_average, starter_quality_favours_the_other_side, projected_margin_is_one_run, season_quality_guardrail) |
| embedded_savant_run_environment | 5 | 6 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality | |
| fundamental_edge_target_review | 5 | 6 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments | |
| capped_target | 5 | 6 | Capped at max 12 realistic runs | |
| simulation_result | 5 | 6 | Final inning-by-inning simulation result |
Inning-by-inning linescore
| team | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | R | H |
|---|---|---|---|---|---|---|---|---|---|---|---|
| CIN | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 2 | 0 | 5 | 6 |
| LAD | 0 | 0 | 0 | 0 | 2 | 1 | 0 | 2 | 1 | 6 | 10 |
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 | CIN | batting | 33 | 8 | 1 | 0 | 2 | 5 | 4 | 3 | 10 | 0 | 0 | 0 | 0 | |||||
| current | CIN | pitching | 8 | 2 | 6 | 4 | 10 | 8.0 | 6 | 0 | 0 | |||||||||
| current | LAD | batting | 33 | 8 | 2 | 0 | 1 | 4 | 5 | 4 | 8 | 0 | 0 | 0 | 0 | |||||
| current | LAD | pitching | 6 | 3 | 5 | 2 | 8 | 9.0 | 5 | 0 | 0 | |||||||||
| simulation | CIN | batting | 33 | 6 | 0 | 1 | 3 | 5 | 5 | 2 | 8 | 0 | 0 | |||||||
| simulation | CIN | pitching | 10 | 4 | 6 | 4 | 10 | 8.2 | 6 | 40 | 167 | |||||||||
| simulation | LAD | batting | 36 | 10 | 1 | 1 | 4 | 6 | 6 | 4 | 10 | 0 | 0 | |||||||
| simulation | LAD | pitching | 6 | 3 | 5 | 2 | 8 | 9.0 | 5 | 35 | 144 |
Batting lines - current + final simulation
| src | team | order | pos | name | PA | AB | H | 2B | 3B | HR | R | RBI | BB | SO | HBP | AVG |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| current | CIN | RF | Héctor Rodríguez | 0 | 4 | 1 | 0 | 0 | 1 | 1 | 1 | 0 | 1 | 0 | 0.250 | |
| current | CIN | SS | Elly De La Cruz | 0 | 5 | 1 | 0 | 0 | 1 | 1 | 1 | 1 | 2 | 0 | 0.200 | |
| current | CIN | LF | JJ Bleday | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 0 | 0.250 | |
| current | CIN | C | Tyler Stephenson | 0 | 4 | 1 | 1 | 0 | 0 | 0 | 1 | 1 | 1 | 0 | 0.250 | |
| current | CIN | 1B | Sal Stewart | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 0.250 | |
| current | CIN | DH | Eugenio Suárez | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.333 | |
| current | CIN | 2B | Matt McLain | 0 | 3 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.000 | |
| current | CIN | 3B | Ke'Bryan Hayes | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.333 | |
| current | CIN | CF | Carlos Jorge | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.333 | |
| current | LAD | DH | Shohei Ohtani | 0 | 4 | 1 | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 0 | 0.250 | |
| current | LAD | 2B | Tommy Edman | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 0.250 | |
| current | LAD | 1B | Freddie Freeman | 0 | 4 | 1 | 1 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 0.250 | |
| current | LAD | LF | Teoscar Hernández | 0 | 4 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0.250 | |
| current | LAD | CF | Alex Call | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.333 | |
| current | LAD | SS | Alex Freeland | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.333 | |
| current | LAD | 3B | Max Muncy | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0.250 | |
| current | LAD | RF | Kyle Tucker | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0.250 | |
| current | LAD | C | Hunter Feduccia | 0 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 | |
| simulation | CIN | 1 | RF | Héctor Rodríguez | 4 | 3 | 2 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 0 | 0.667 |
| simulation | CIN | 2 | SS | Elly De La Cruz | 4 | 4 | 2 | 0 | 1 | 1 | 1 | 3 | 0 | 0 | 0 | 0.500 |
| simulation | CIN | 3 | 1B | Sal Stewart | 4 | 3 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0.000 |
| simulation | CIN | 4 | LF | JJ Bleday | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.000 |
| simulation | CIN | 5 | C | Tyler Stephenson | 4 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.250 |
| simulation | CIN | 6 | DH | Eugenio Suárez | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 |
| simulation | CIN | 7 | 2B | Matt McLain | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.000 |
| simulation | CIN | 8 | CF | Carlos Jorge | 4 | 4 | 1 | 0 | 0 | 1 | 1 | 1 | 0 | 3 | 0 | 0.250 |
| simulation | CIN | 9 | 3B | Ke'Bryan Hayes | 3 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.000 |
| simulation | LAD | 1 | DH | Shohei Ohtani | 5 | 4 | 1 | 1 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0.250 |
| simulation | LAD | 2 | 1B | Freddie Freeman | 5 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 2 | 0 | 0.250 |
| simulation | LAD | 3 | 2B | Tommy Edman | 5 | 3 | 1 | 0 | 1 | 0 | 1 | 2 | 2 | 1 | 0 | 0.333 |
| simulation | LAD | 4 | 3B | Max Muncy | 5 | 5 | 1 | 0 | 0 | 1 | 1 | 1 | 0 | 1 | 0 | 0.200 |
| simulation | LAD | 5 | LF | Teoscar Hernández | 4 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.250 |
| simulation | LAD | 6 | RF | Kyle Tucker | 4 | 4 | 1 | 0 | 0 | 1 | 1 | 1 | 0 | 2 | 0 | 0.250 |
| simulation | LAD | 7 | C | Hunter Feduccia | 4 | 4 | 2 | 0 | 0 | 2 | 1 | 2 | 0 | 1 | 0 | 0.500 |
| simulation | LAD | 8 | CF | Alex Call | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 |
| simulation | LAD | 9 | SS | Alex Freeland | 4 | 4 | 2 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.500 |
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 | CIN | 1 | Chase Burns | Starter | 5.2 | 5 | 3 | 3 | 3 | 8 | 0 | 0 | 0 | 4.76 | 2.79 | 1.16 |
| current | CIN | 2 | Luis Mey | Setup Man | 1.1 | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0.00 | 3.81 | 1.42 |
| current | CIN | 3 | Brock Burke | Middle Reliever (High Leverage) | 1.0 | 2 | 3 | 3 | 0 | 2 | 2 | 0 | 0 | 27.00 | 2.50 | 1.30 |
| current | LAD | 1 | Emmet Sheehan | Starter | 5.0 | 4 | 2 | 2 | 1 | 5 | 1 | 0 | 0 | 3.60 | 5.29 | 1.29 |
| current | LAD | 3 | Brock Stewart | Middle Reliever (High Leverage) | 1.1 | 0 | 0 | 0 | 0 | 2 | 0 | 0 | 0 | 0.00 | 2.49 | 0.97 |
| current | LAD | 4 | Edgardo Henriquez | Setup Man | 1.0 | 1 | 2 | 2 | 1 | 0 | 1 | 0 | 0 | 18.00 | 2.65 | 0.95 |
| current | LAD | 5 | Tanner Scott | Closer | 1.2 | 1 | 1 | 1 | 0 | 1 | 1 | 0 | 0 | 5.40 | 2.67 | 0.98 |
| simulation | CIN | 1 | Chase Burns | Starter | 5.2 | 6 | 3 | 3 | 3 | 8 | 1 | 28 | 113 | 4.76 | 2.79 | 1.16 |
| simulation | CIN | 2 | Luis Mey | Setup Man | 1.1 | 1 | 0 | 0 | 1 | 0 | 0 | 6 | 32 | 0.00 | 3.81 | 1.42 |
| simulation | CIN | 3 | Brock Burke | Middle Reliever (High Leverage) | 1.2 | 3 | 3 | 3 | 0 | 2 | 3 | 6 | 22 | 16.20 | 2.50 | 1.30 |
| simulation | LAD | 1 | Emmet Sheehan | Starter | 5.0 | 4 | 2 | 2 | 1 | 5 | 1 | 20 | 83 | 3.60 | 5.29 | 1.29 |
| simulation | LAD | 2 | Tanner Scott | Closer | 1.2 | 1 | 1 | 1 | 0 | 1 | 1 | 6 | 24 | 5.40 | 2.67 | 0.98 |
| simulation | LAD | 3 | Edgardo Henriquez | Setup Man | 1.0 | 1 | 2 | 2 | 1 | 0 | 1 | 5 | 20 | 18.00 | 2.65 | 0.95 |
| simulation | LAD | 4 | Brock Stewart | Middle Reliever (High Leverage) | 1.1 | 0 | 0 | 0 | 0 | 2 | 0 | 4 | 17 | 0.00 | 2.49 | 0.97 |
Pitch count summary
| team | pitcher | role | IP | R | H | BB | SO | BF | Pitches |
|---|---|---|---|---|---|---|---|---|---|
| CIN | Chase Burns | Starter | 5.2 | 3 | 6 | 3 | 8 | 28 | 113 |
| CIN | Luis Mey | Setup Man | 1.1 | 0 | 1 | 1 | 0 | 6 | 32 |
| CIN | Brock Burke | Middle Reliever (High Leverage) | 1.2 | 3 | 3 | 0 | 2 | 6 | 22 |
| LAD | Emmet Sheehan | Starter | 5.0 | 2 | 4 | 1 | 5 | 20 | 83 |
| LAD | Brock Stewart | Middle Reliever (High Leverage) | 1.1 | 0 | 0 | 0 | 2 | 4 | 17 |
| LAD | Edgardo Henriquez | Setup Man | 1.0 | 2 | 1 | 1 | 0 | 5 | 20 |
| LAD | Tanner Scott | Closer | 1.2 | 1 | 1 | 0 | 1 | 6 | 24 |
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 | 1 | 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_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. |
| 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. |
| 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. |
20260907_CLE@BAL
20260907_CLE@BAL.json • 2026-09-07
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 | BAL | CURRENT_PITCHER_DUPLICATION | BAL pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| 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 | BAL | CURRENT_FINALIZED_MATCH_BOX | BAL model pitcher projections differ from final simulation pitching box score (H: current=6, sim=7). | New contract: model pitcher projections may differ; simulation_box_score_stats carries the simulation draw. | ||
| INFO | current_vs_final | cross-schema | BAL | CURRENT_FINALIZED_MATCH_BOX | BAL model-prediction batting totals differ from final simulation box score (AB: current=31, sim=39; H: current=7, sim=9; 2B: current=2, sim=0; HR: current=1, sim=2; BB: current=3, sim=0; SO: current=10, sim=12). | New contract: model prediction totals may differ from scoring_simulation; simulation_stats_source links the simulation box score. | ||
| INFO | current_vs_final | cross-schema | BAL | CURRENT_PLAYER_MATCH_BOX | BAL current finalized hitter lines are model predictions and differ from the simulation box score: Blaze Alexander: AB current=3 box=5, R current=0 box=1; Jackson Holliday: AB current=4 box=5, HR current=0 box=1, RBI current=0 box=2; Christian Encarnacion-Strand: AB current=3 box=4, 2B current=1 box=0, RBI current=1 box=0; Pete Alonso: AB current=4 box=5, H current=1 box=2, RBI current=1 box=2, BB current=1 box=0; Coby Mayo: AB current=3 box=4, H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Rece Hinds: AB current=3 box=4, H current=0 box=1, SO current=2 box=1; Gunnar Henderson: H current=1 box=0, 2B current=1 box=0, R current=1 box=0, BB current=1 box=0; Samuel Basallo: RBI current=1 box=0, BB current=1 box=0, SO current=1 box=2 | 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 (AB: current=33, sim=37; H: current=8, sim=7; R: current=4, sim=3; BB: current=3, sim=4; SO: current=7, sim=8; HBP: current=0, sim=1). | 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: Jo Adell: H current=1 box=2, RBI current=1 box=0, R current=0 box=1, BB current=0 box=1; Angel Martínez: AB current=4 box=5, 2B current=1 box=0, RBI current=1 box=0, SO current=1 box=2; David Fry: AB current=3 box=4, H current=1 box=0; Angel Genao: AB current=4 box=5, 2B current=0 box=1, R current=1 box=0; José Ramírez: H current=1 box=0, R current=1 box=0, SO current=0 box=1; Petey Halpin: SO current=1 box=0, HBP current=0 box=1; Austin Hedges: AB current=3 box=4, HR current=0 box=1, RBI current=0 box=2, R current=0 box=1; Steven Kwan: AB current=4 box=5, H current=1 box=2, RBI current=0 box=1, BB current=1 box=0 | 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 | BAL | BATTING_REALISM | current:BAL hitter lines pass basic baseball constraints. | |||
| PASS | batting | current | CLE | BATTING_REALISM | current:CLE hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | BAL | BATTING_REALISM | simulation:BAL hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | CLE | BATTING_REALISM | simulation:CLE hitter lines pass basic baseball constraints. | |||
| PASS | batting_totals | current | BAL | BATTING_TOTALS_SUM | current:BAL 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 | BAL | BATTING_TOTALS_SUM | simulation:BAL 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 | BAL | BAT_PITCH_BB_MATCH | simulation:BAL batting walks match CLE pitching: 0. | |||
| PASS | boxscore_crosscheck | simulation | BAL | BAT_PITCH_HR_MATCH | simulation:BAL batting home runs match CLE pitching: 2. | |||
| PASS | boxscore_crosscheck | simulation | BAL | BAT_PITCH_H_MATCH | simulation:BAL batting hits match CLE pitching: 9. | |||
| PASS | boxscore_crosscheck | simulation | BAL | BAT_PITCH_SO_MATCH | simulation:BAL batting strikeouts match CLE pitching: 12. | |||
| PASS | boxscore_crosscheck | simulation | BAL | PA_BF_MATCH | simulation:BAL PA=39 matches CLE BF=39. | |||
| PASS | boxscore_crosscheck | simulation | BAL | RUNS_MATCH_FINAL | simulation:BAL runs match final score and opposing pitching runs: 4. | |||
| PASS | boxscore_crosscheck | simulation | CLE | BAT_PITCH_BB_MATCH | simulation:CLE batting walks match BAL pitching: 4. | |||
| PASS | boxscore_crosscheck | simulation | CLE | BAT_PITCH_HR_MATCH | simulation:CLE batting home runs match BAL pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | CLE | BAT_PITCH_H_MATCH | simulation:CLE batting hits match BAL pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | CLE | BAT_PITCH_SO_MATCH | simulation:CLE batting strikeouts match BAL pitching: 8. | |||
| PASS | boxscore_crosscheck | simulation | CLE | PA_BF_MATCH | simulation:CLE PA=42 matches BAL BF=42. | |||
| PASS | boxscore_crosscheck | simulation | CLE | RUNS_MATCH_FINAL | simulation:CLE runs match final score and opposing pitching runs: 3. | |||
| PASS | confidence_calibration | CONFIDENCE_CALIBRATION_APPLIED | Empirical confidence blend verified: 0.510 -> 0.530 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.5101, 'sample_size': 477, 'empirical_hit_rate': 0.5493, 'empirical_weight': 0.5, 'blended_confidence': 0.5297, 'published_confidence': 0.507765, 'published_after_governors': True, 'governor_mode': 'shrinkage_not_clamp'} | ||||
| 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 | BAL | CURRENT_LINEUP_SHAPE | BAL current lineup has 9 expected positions. | |||
| PASS | current_payload | current | BAL | CURRENT_MODEL_ZERO_FALLBACK | BAL current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | BAL | CURRENT_NAMES_PRESENT | BAL current hitter names are populated. | |||
| PASS | current_payload | current | BAL | CURRENT_PREDICTIONS_MATCH_FINALIZED | BAL 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.492. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | confidence is in [0,1]: 0.508. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | home_win_probability is in [0,1]: 0.508. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Final total runs 7 is reasonably close to low-score expected_total_runs 7.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.571/0.762. | |||||
| PASS | final_decision | FINAL_DECISION_POLICY | Final decision policy preserved model ownership of the winner. | |||||
| PASS | innings | INNINGS_COUNT | inning_by_inning_summary contains 10 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: CLE 7, BAL 9. | |||||
| PASS | innings | INNING_TOTAL_RUNS | Inning runs sum to final score: CLE 3 - BAL 4. | |||||
| PASS | matchup_recency | GUARDRAIL_FINAL_WINNER_SYNC | Guardrail predicted_team matches final predicted winner: BAL. | |||||
| PASS | matchup_recency | MATCHUP_RECENCY_GUARDRAIL | Matchup recency guardrail applied for BAL; cap=0.53, reasons=latest same-matchup result beat the predicted side; latest-series evidence cleared the reversal bar; confidence capped and runs shifted, winner unchanged by design. | {'applied': True, 'confidence_cap': 0.53, 'winner_flipped': False, 'reasons': ['latest same-matchup result beat the predicted side', 'latest-series evidence cleared the reversal bar; confidence capped and runs shifted, winner unchanged by design'], 'signals': {'predicted_team': 'BAL', 'opponent_team': 'CLE', 'h2h_net_margin': -4, 'opponent_breakout': False, 'opponent_blowout_win': False, 'split_recent_h2h': True, 'recent_h2h': [{'date': '2026-04-19', 'predicted_team_runs': 4, 'opponent_runs': 8, 'margin_for_predicted_team': -4, 'winner': 'CLE'}, {'date': '2026-04-18', 'predicted_team_runs': 2, 'opponent_runs': 4, 'margin_for_predicted_team': -2, 'winner': 'CLE'}, {'date': '2026-04-17', 'predicted_team_runs': 6, 'opponent_runs': 4, 'margin_for_predicted_team': 2, 'winner': 'BAL'}], 'prediction_memory': {'available': False, 'reason': 'no_verified_prior_matchup_predictions', 'verification_policy': 'pregame_artifact_matched_to_one_official_final', 'verified_outcome_count': 0, 'consecutive_same_pick_count': 0, 'same_pick_actual_loss_count': 0, 'same_pick_blowout_loss_count': 0, 'prior_predictions': []}, 'guardrail_predicted_team': 'BAL', 'guardrail_opponent_team': 'CLE', 'output_pre_simulation_winner': 'BAL', 'output_opponent_team': 'CLE', 'simulation_score_winner': 'BAL', 'final_score_winner': 'BAL', 'pre_simulation_winner': 'BAL', 'winner_flipped_by_simulation': False, 'simulation_would_flip_winner': False}, 'hard_flip_suppressed': True, 'flip_authority': 'caps_confidence_and_shifts_runs_only', 'final_prediction_sync': {'pre_simulation_score': {'away_runs': 3, 'home_runs': 4, 'score_text': 'CLE 3 - 4 BAL', 'winner': 'BAL'}, 'final_simulation_score': {'away_runs': 3, 'home_runs': 4, 'score_text': 'CLE 3 - 4 BAL', 'winner': 'BAL'}, '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.0245, 'recent_form_edge_home_minus_away': -0.235, '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': 3, 'home_runs': 4, 'winner': 'BAL', 'model_winner': 'BAL', 'simulation_winner': 'BAL', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 6, 'published_winner': 'BAL', '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': 3, 'home_runs': 4}, 'simulation_score': {'away_runs': 3, 'home_runs': 4}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 1, 'final_margin': 1, 'winner_quality_edge': -0.1158, 'winner': 'BAL', 'score_reviewed': {'away_runs': 3, 'home_runs': 4, '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-09-07. | |||||
| PASS | metadata | FILENAME_GAME_ID_MATCH | Filename matches game_id: 20260907_CLE@BAL. | |||||
| PASS | metadata | FILENAME_TEAM_MATCH | Filename teams match JSON teams: CLE@BAL. | |||||
| 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': 4, 'sample_weight': 0.05, 'home_net_margin': -6.0, 'absolute_net_margin': 6.0, 'home_average_margin': -1.5, 'home_run_delta': -0.0375, 'away_run_delta': 0.0375, 'evidence': [{'game_id': None, 'home_margin': -4.0}, {'game_id': None, 'home_margin': -2.0}, {'game_id': None, 'home_margin': 2.0}, {'game_id': None, 'home_margin': -2.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': 4, 'away_runs': 3, 'probability': 0.0282262521866831}, {'home_runs': 3, 'away_runs': 3, 'probability': 0.02809506682398304}, {'home_runs': 4, 'away_runs': 4, 'probability': 0.02789314878419516}, {'home_runs': 3, 'away_runs': 4, 'probability': 0.027763511565059573}, {'home_runs': 4, 'away_runs': 2, 'probability': 0.024178570472246353}], 'home_distribution': {'0': 0.06178393357798275, '1': 0.10089746168895171, '2': 0.14013859117656097, '3': 0.1655419529651718, '4': 0.1663149242941908, '5': 0.14211083499014004, '6': 0.10327518478719701, '7': 0.06383187343967343, '8': 0.03355459659939616, '9': 0.015001658461214066, '10': 0.00570426044486288, '11': 0.001844727574658231}, 'away_distribution': {'0': 0.06470225090796573, '1': 0.10541405728406923, '2': 0.14537823694930355, '3': 0.16971569031745043, '4': 0.167712842984888, '5': 0.14029182850878563, '6': 0.09933908585119162, '7': 0.05954285729628326, '8': 0.030210708634162683, '9': 0.012975194661121122, '10': 0.004717246604778899}, 'model': 'overdispersed_score_distribution', 'variance_multiplier': 1.75, '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.1458, 'recent_quality_edge': -0.06, 'season_weight': 0.65, 'recent_weight': 0.35, 'recent_reliability': 1.0, 'alignment': 'aligned', 'blended_quality_edge': -0.1158} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Simulation flip control is implemented and its runtime trace passed. | {'pre_simulation_score': {'away_runs': 3, 'home_runs': 4, 'score_text': 'CLE 3 - 4 BAL', 'winner': 'BAL'}, 'final_simulation_score': {'away_runs': 3, 'home_runs': 4, 'score_text': 'CLE 3 - 4 BAL', 'winner': 'BAL'}, '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.0245, 'recent_form_edge_home_minus_away': -0.235, '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': 3, 'home_runs': 4, 'winner': 'BAL', 'model_winner': 'BAL', 'simulation_winner': 'BAL', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 6, 'published_winner': 'BAL', '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': 3, 'home_runs': 4}, 'simulation_score': {'away_runs': 3, 'home_runs': 4}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 1, 'final_margin': 1, 'winner_quality_edge': -0.1158, 'winner': 'BAL', 'score_reviewed': {'away_runs': 3, 'home_runs': 4, '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: 171. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | home pitcher pitch-by-pitch count matches pitch_count_summary total: 183. | |||||
| PASS | pitch_count | simulation | BAL | PITCH_COUNT_PITCHER_MATCH | BAL pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | BAL | PITCH_COUNT_TOTAL_MATCH | BAL pitch_count_summary total, row sum, and pitching total all match: 183. | |||
| 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: 171. | |||
| PASS | pitcher_opponent_strength | PITCHER_OPPONENT_STRENGTH_BOUNDS | Pitcher-opponent adjustment stayed inside supported bounds. | |||||
| PASS | pitching | PITCHER_APPEARANCE_COHERENT | All 11 pitchers in the box actually appeared. | |||||
| PASS | pitching | current | BAL | PITCHING_REALISM | current:BAL pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | BAL | STARTER_PRESENT | current:BAL 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 | BAL | PITCHING_REALISM | simulation:BAL pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | BAL | STARTER_PRESENT | simulation:BAL 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 | BAL | PITCHING_TOTALS_SUM | current:BAL pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | BAL | PITCHING_TOTALS_SUM | current:BAL 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: 8.0. | |||
| PASS | pitching_totals | current | CLE | PITCHING_TOTALS_SUM | current:CLE pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | BAL | PITCHING_TOTALS_SUM | simulation:BAL pitching IP total matches pitcher sum: 10.0. | |||
| PASS | pitching_totals | simulation | BAL | PITCHING_TOTALS_SUM | simulation:BAL 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: 10.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: CLE 3 - 4 BAL. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation score matches final score: CLE 3 - 4 BAL. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation winner matches final score: BAL wins 4-3 (Extra Innings - 10). | |||||
| PASS | prediction_comparison | SIMULATION_WINNER_FLIP_TRACE | Simulation decision is explicit: model=BAL, simulation=BAL, published=BAL. | |||||
| PASS | probability | CONFIDENCE_RANGE | Enhanced target confidence is in range: 0.508. | |||||
| 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: 4/10 (0.400). | |||||
| 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): BAL wins 4-3. | |||||
| PASS | score | SCORE_NO_TIE | Final score has a clear winner: BAL wins 3-4. | |||||
| PASS | score | SCORE_STEP_FINAL_MATCH | simulation_result step matches final score: 3-4. | |||||
| 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 3-4, final 3-4 (delta 0). | |||||
| PASS | score | TOTAL_RUNS_MATCH | total_runs field matches final score total: 7. | |||||
| PASS | score | WINNER_FIELD_MATCH | winner field is consistent: BAL wins 4-3 (Extra Innings - 10). | |||||
| PASS | score | cross-schema | CURRENT_SCORE_MATCHES_SIM | game.predicted_runs matches scoring_simulation.final_score. | ||||
| PASS | team_recent_performance | current | BAL | RECENT_FORM_RANGE | BAL recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | BAL | TEAM_RECENT_RECORD | BAL wins and win_pct agree: 3/10 = 0.300. | |||
| 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: 4/10 = 0.400. |
Passed checks
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| PASS | batting | current | BAL | BATTING_REALISM | current:BAL hitter lines pass basic baseball constraints. | |||
| PASS | batting | current | CLE | BATTING_REALISM | current:CLE hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | BAL | BATTING_REALISM | simulation:BAL hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | CLE | BATTING_REALISM | simulation:CLE hitter lines pass basic baseball constraints. | |||
| PASS | batting_totals | current | BAL | BATTING_TOTALS_SUM | current:BAL 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 | BAL | BATTING_TOTALS_SUM | simulation:BAL 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 | BAL | BAT_PITCH_BB_MATCH | simulation:BAL batting walks match CLE pitching: 0. | |||
| PASS | boxscore_crosscheck | simulation | BAL | BAT_PITCH_HR_MATCH | simulation:BAL batting home runs match CLE pitching: 2. | |||
| PASS | boxscore_crosscheck | simulation | BAL | BAT_PITCH_H_MATCH | simulation:BAL batting hits match CLE pitching: 9. | |||
| PASS | boxscore_crosscheck | simulation | BAL | BAT_PITCH_SO_MATCH | simulation:BAL batting strikeouts match CLE pitching: 12. | |||
| PASS | boxscore_crosscheck | simulation | BAL | PA_BF_MATCH | simulation:BAL PA=39 matches CLE BF=39. | |||
| PASS | boxscore_crosscheck | simulation | BAL | RUNS_MATCH_FINAL | simulation:BAL runs match final score and opposing pitching runs: 4. | |||
| PASS | boxscore_crosscheck | simulation | CLE | BAT_PITCH_BB_MATCH | simulation:CLE batting walks match BAL pitching: 4. | |||
| PASS | boxscore_crosscheck | simulation | CLE | BAT_PITCH_HR_MATCH | simulation:CLE batting home runs match BAL pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | CLE | BAT_PITCH_H_MATCH | simulation:CLE batting hits match BAL pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | CLE | BAT_PITCH_SO_MATCH | simulation:CLE batting strikeouts match BAL pitching: 8. | |||
| PASS | boxscore_crosscheck | simulation | CLE | PA_BF_MATCH | simulation:CLE PA=42 matches BAL BF=42. | |||
| PASS | boxscore_crosscheck | simulation | CLE | RUNS_MATCH_FINAL | simulation:CLE runs match final score and opposing pitching runs: 3. | |||
| PASS | confidence_calibration | CONFIDENCE_CALIBRATION_APPLIED | Empirical confidence blend verified: 0.510 -> 0.530 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.5101, 'sample_size': 477, 'empirical_hit_rate': 0.5493, 'empirical_weight': 0.5, 'blended_confidence': 0.5297, 'published_confidence': 0.507765, 'published_after_governors': True, 'governor_mode': 'shrinkage_not_clamp'} | ||||
| 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 | BAL | CURRENT_LINEUP_SHAPE | BAL current lineup has 9 expected positions. | |||
| PASS | current_payload | current | BAL | CURRENT_MODEL_ZERO_FALLBACK | BAL current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | BAL | CURRENT_NAMES_PRESENT | BAL current hitter names are populated. | |||
| PASS | current_payload | current | BAL | CURRENT_PREDICTIONS_MATCH_FINALIZED | BAL 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.492. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | confidence is in [0,1]: 0.508. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | home_win_probability is in [0,1]: 0.508. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Final total runs 7 is reasonably close to low-score expected_total_runs 7.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.571/0.762. | |||||
| PASS | final_decision | FINAL_DECISION_POLICY | Final decision policy preserved model ownership of the winner. | |||||
| PASS | innings | INNINGS_COUNT | inning_by_inning_summary contains 10 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: CLE 7, BAL 9. | |||||
| PASS | innings | INNING_TOTAL_RUNS | Inning runs sum to final score: CLE 3 - BAL 4. | |||||
| PASS | matchup_recency | GUARDRAIL_FINAL_WINNER_SYNC | Guardrail predicted_team matches final predicted winner: BAL. | |||||
| PASS | matchup_recency | MATCHUP_RECENCY_GUARDRAIL | Matchup recency guardrail applied for BAL; cap=0.53, reasons=latest same-matchup result beat the predicted side; latest-series evidence cleared the reversal bar; confidence capped and runs shifted, winner unchanged by design. | {'applied': True, 'confidence_cap': 0.53, 'winner_flipped': False, 'reasons': ['latest same-matchup result beat the predicted side', 'latest-series evidence cleared the reversal bar; confidence capped and runs shifted, winner unchanged by design'], 'signals': {'predicted_team': 'BAL', 'opponent_team': 'CLE', 'h2h_net_margin': -4, 'opponent_breakout': False, 'opponent_blowout_win': False, 'split_recent_h2h': True, 'recent_h2h': [{'date': '2026-04-19', 'predicted_team_runs': 4, 'opponent_runs': 8, 'margin_for_predicted_team': -4, 'winner': 'CLE'}, {'date': '2026-04-18', 'predicted_team_runs': 2, 'opponent_runs': 4, 'margin_for_predicted_team': -2, 'winner': 'CLE'}, {'date': '2026-04-17', 'predicted_team_runs': 6, 'opponent_runs': 4, 'margin_for_predicted_team': 2, 'winner': 'BAL'}], 'prediction_memory': {'available': False, 'reason': 'no_verified_prior_matchup_predictions', 'verification_policy': 'pregame_artifact_matched_to_one_official_final', 'verified_outcome_count': 0, 'consecutive_same_pick_count': 0, 'same_pick_actual_loss_count': 0, 'same_pick_blowout_loss_count': 0, 'prior_predictions': []}, 'guardrail_predicted_team': 'BAL', 'guardrail_opponent_team': 'CLE', 'output_pre_simulation_winner': 'BAL', 'output_opponent_team': 'CLE', 'simulation_score_winner': 'BAL', 'final_score_winner': 'BAL', 'pre_simulation_winner': 'BAL', 'winner_flipped_by_simulation': False, 'simulation_would_flip_winner': False}, 'hard_flip_suppressed': True, 'flip_authority': 'caps_confidence_and_shifts_runs_only', 'final_prediction_sync': {'pre_simulation_score': {'away_runs': 3, 'home_runs': 4, 'score_text': 'CLE 3 - 4 BAL', 'winner': 'BAL'}, 'final_simulation_score': {'away_runs': 3, 'home_runs': 4, 'score_text': 'CLE 3 - 4 BAL', 'winner': 'BAL'}, '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.0245, 'recent_form_edge_home_minus_away': -0.235, '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': 3, 'home_runs': 4, 'winner': 'BAL', 'model_winner': 'BAL', 'simulation_winner': 'BAL', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 6, 'published_winner': 'BAL', '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': 3, 'home_runs': 4}, 'simulation_score': {'away_runs': 3, 'home_runs': 4}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 1, 'final_margin': 1, 'winner_quality_edge': -0.1158, 'winner': 'BAL', 'score_reviewed': {'away_runs': 3, 'home_runs': 4, '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-09-07. | |||||
| PASS | metadata | FILENAME_GAME_ID_MATCH | Filename matches game_id: 20260907_CLE@BAL. | |||||
| PASS | metadata | FILENAME_TEAM_MATCH | Filename teams match JSON teams: CLE@BAL. | |||||
| 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': 4, 'sample_weight': 0.05, 'home_net_margin': -6.0, 'absolute_net_margin': 6.0, 'home_average_margin': -1.5, 'home_run_delta': -0.0375, 'away_run_delta': 0.0375, 'evidence': [{'game_id': None, 'home_margin': -4.0}, {'game_id': None, 'home_margin': -2.0}, {'game_id': None, 'home_margin': 2.0}, {'game_id': None, 'home_margin': -2.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': 4, 'away_runs': 3, 'probability': 0.0282262521866831}, {'home_runs': 3, 'away_runs': 3, 'probability': 0.02809506682398304}, {'home_runs': 4, 'away_runs': 4, 'probability': 0.02789314878419516}, {'home_runs': 3, 'away_runs': 4, 'probability': 0.027763511565059573}, {'home_runs': 4, 'away_runs': 2, 'probability': 0.024178570472246353}], 'home_distribution': {'0': 0.06178393357798275, '1': 0.10089746168895171, '2': 0.14013859117656097, '3': 0.1655419529651718, '4': 0.1663149242941908, '5': 0.14211083499014004, '6': 0.10327518478719701, '7': 0.06383187343967343, '8': 0.03355459659939616, '9': 0.015001658461214066, '10': 0.00570426044486288, '11': 0.001844727574658231}, 'away_distribution': {'0': 0.06470225090796573, '1': 0.10541405728406923, '2': 0.14537823694930355, '3': 0.16971569031745043, '4': 0.167712842984888, '5': 0.14029182850878563, '6': 0.09933908585119162, '7': 0.05954285729628326, '8': 0.030210708634162683, '9': 0.012975194661121122, '10': 0.004717246604778899}, 'model': 'overdispersed_score_distribution', 'variance_multiplier': 1.75, '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.1458, 'recent_quality_edge': -0.06, 'season_weight': 0.65, 'recent_weight': 0.35, 'recent_reliability': 1.0, 'alignment': 'aligned', 'blended_quality_edge': -0.1158} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Simulation flip control is implemented and its runtime trace passed. | {'pre_simulation_score': {'away_runs': 3, 'home_runs': 4, 'score_text': 'CLE 3 - 4 BAL', 'winner': 'BAL'}, 'final_simulation_score': {'away_runs': 3, 'home_runs': 4, 'score_text': 'CLE 3 - 4 BAL', 'winner': 'BAL'}, '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.0245, 'recent_form_edge_home_minus_away': -0.235, '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': 3, 'home_runs': 4, 'winner': 'BAL', 'model_winner': 'BAL', 'simulation_winner': 'BAL', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 6, 'published_winner': 'BAL', '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': 3, 'home_runs': 4}, 'simulation_score': {'away_runs': 3, 'home_runs': 4}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 1, 'final_margin': 1, 'winner_quality_edge': -0.1158, 'winner': 'BAL', 'score_reviewed': {'away_runs': 3, 'home_runs': 4, '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: 171. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | home pitcher pitch-by-pitch count matches pitch_count_summary total: 183. | |||||
| PASS | pitch_count | simulation | BAL | PITCH_COUNT_PITCHER_MATCH | BAL pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | BAL | PITCH_COUNT_TOTAL_MATCH | BAL pitch_count_summary total, row sum, and pitching total all match: 183. | |||
| 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: 171. | |||
| PASS | pitcher_opponent_strength | PITCHER_OPPONENT_STRENGTH_BOUNDS | Pitcher-opponent adjustment stayed inside supported bounds. | |||||
| PASS | pitching | PITCHER_APPEARANCE_COHERENT | All 11 pitchers in the box actually appeared. | |||||
| PASS | pitching | current | BAL | PITCHING_REALISM | current:BAL pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | BAL | STARTER_PRESENT | current:BAL 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 | BAL | PITCHING_REALISM | simulation:BAL pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | BAL | STARTER_PRESENT | simulation:BAL 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 | BAL | PITCHING_TOTALS_SUM | current:BAL pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | BAL | PITCHING_TOTALS_SUM | current:BAL 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: 8.0. | |||
| PASS | pitching_totals | current | CLE | PITCHING_TOTALS_SUM | current:CLE pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | BAL | PITCHING_TOTALS_SUM | simulation:BAL pitching IP total matches pitcher sum: 10.0. | |||
| PASS | pitching_totals | simulation | BAL | PITCHING_TOTALS_SUM | simulation:BAL 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: 10.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: CLE 3 - 4 BAL. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation score matches final score: CLE 3 - 4 BAL. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation winner matches final score: BAL wins 4-3 (Extra Innings - 10). | |||||
| PASS | prediction_comparison | SIMULATION_WINNER_FLIP_TRACE | Simulation decision is explicit: model=BAL, simulation=BAL, published=BAL. | |||||
| PASS | probability | CONFIDENCE_RANGE | Enhanced target confidence is in range: 0.508. | |||||
| 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: 4/10 (0.400). | |||||
| 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): BAL wins 4-3. | |||||
| PASS | score | SCORE_NO_TIE | Final score has a clear winner: BAL wins 3-4. | |||||
| PASS | score | SCORE_STEP_FINAL_MATCH | simulation_result step matches final score: 3-4. | |||||
| 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 3-4, final 3-4 (delta 0). | |||||
| PASS | score | TOTAL_RUNS_MATCH | total_runs field matches final score total: 7. | |||||
| PASS | score | WINNER_FIELD_MATCH | winner field is consistent: BAL wins 4-3 (Extra Innings - 10). | |||||
| PASS | score | cross-schema | CURRENT_SCORE_MATCHES_SIM | game.predicted_runs matches scoring_simulation.final_score. | ||||
| PASS | team_recent_performance | current | BAL | RECENT_FORM_RANGE | BAL recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | BAL | TEAM_RECENT_RECORD | BAL wins and win_pct agree: 3/10 = 0.300. | |||
| 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: 4/10 = 0.400. |
Info/context findings
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| INFO | current_payload | current | BAL | CURRENT_PITCHER_DUPLICATION | BAL pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| 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 | BAL | CURRENT_FINALIZED_MATCH_BOX | BAL model pitcher projections differ from final simulation pitching box score (H: current=6, sim=7). | New contract: model pitcher projections may differ; simulation_box_score_stats carries the simulation draw. | ||
| INFO | current_vs_final | cross-schema | BAL | CURRENT_FINALIZED_MATCH_BOX | BAL model-prediction batting totals differ from final simulation box score (AB: current=31, sim=39; H: current=7, sim=9; 2B: current=2, sim=0; HR: current=1, sim=2; BB: current=3, sim=0; SO: current=10, sim=12). | New contract: model prediction totals may differ from scoring_simulation; simulation_stats_source links the simulation box score. | ||
| INFO | current_vs_final | cross-schema | BAL | CURRENT_PLAYER_MATCH_BOX | BAL current finalized hitter lines are model predictions and differ from the simulation box score: Blaze Alexander: AB current=3 box=5, R current=0 box=1; Jackson Holliday: AB current=4 box=5, HR current=0 box=1, RBI current=0 box=2; Christian Encarnacion-Strand: AB current=3 box=4, 2B current=1 box=0, RBI current=1 box=0; Pete Alonso: AB current=4 box=5, H current=1 box=2, RBI current=1 box=2, BB current=1 box=0; Coby Mayo: AB current=3 box=4, H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Rece Hinds: AB current=3 box=4, H current=0 box=1, SO current=2 box=1; Gunnar Henderson: H current=1 box=0, 2B current=1 box=0, R current=1 box=0, BB current=1 box=0; Samuel Basallo: RBI current=1 box=0, BB current=1 box=0, SO current=1 box=2 | 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 (AB: current=33, sim=37; H: current=8, sim=7; R: current=4, sim=3; BB: current=3, sim=4; SO: current=7, sim=8; HBP: current=0, sim=1). | 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: Jo Adell: H current=1 box=2, RBI current=1 box=0, R current=0 box=1, BB current=0 box=1; Angel Martínez: AB current=4 box=5, 2B current=1 box=0, RBI current=1 box=0, SO current=1 box=2; David Fry: AB current=3 box=4, H current=1 box=0; Angel Genao: AB current=4 box=5, 2B current=0 box=1, R current=1 box=0; José Ramírez: H current=1 box=0, R current=1 box=0, SO current=0 box=1; Petey Halpin: SO current=1 box=0, HBP current=0 box=1; Austin Hedges: AB current=3 box=4, HR current=0 box=1, RBI current=0 box=2, R current=0 box=1; Steven Kwan: AB current=4 box=5, H current=1 box=2, RBI current=0 box=1, BB current=1 box=0 | 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.210411898746637 | 4.242162013408794 | Base ML historical model prediction | |
| variance_applied | 4 | 4 | Deterministic baseline target (variance factor 1.0) | |
| enhanced_prediction | 3 | 4 | 0.508 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 3 | 4 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality | |
| fundamental_edge_target_review | 3 | 4 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments | |
| capped_target | 3 | 4 | Capped at max 12 realistic runs | |
| simulation_result | 3 | 4 | Final inning-by-inning simulation result |
Inning-by-inning linescore
| team | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | R | H |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| CLE | 1 | 0 | 0 | 2 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 7 |
| BAL | 0 | 0 | 0 | 2 | 0 | 0 | 0 | 0 | 0 | 2 | 4 | 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 | CLE | batting | 33 | 8 | 1 | 0 | 1 | 3 | 4 | 3 | 7 | 0 | 0 | 0 | 0 | |||||
| current | CLE | pitching | 9 | 2 | 4 | 0 | 12 | 8.0 | 4 | 0 | 0 | |||||||||
| current | BAL | batting | 31 | 7 | 2 | 0 | 1 | 4 | 4 | 3 | 10 | 0 | 0 | 0 | 0 | |||||
| current | BAL | pitching | 6 | 1 | 3 | 4 | 8 | 9.0 | 3 | 0 | 0 | |||||||||
| simulation | CLE | batting | 37 | 7 | 1 | 0 | 1 | 3 | 3 | 4 | 8 | 0 | 1 | |||||||
| simulation | CLE | pitching | 9 | 2 | 4 | 0 | 12 | 10.0 | 4 | 39 | 171 | |||||||||
| simulation | BAL | batting | 39 | 9 | 0 | 0 | 2 | 4 | 4 | 0 | 12 | 0 | 0 | |||||||
| simulation | BAL | pitching | 7 | 1 | 3 | 4 | 8 | 10.0 | 3 | 42 | 183 |
Batting lines - current + final simulation
| src | team | order | pos | name | PA | AB | H | 2B | 3B | HR | R | RBI | BB | SO | HBP | AVG |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| current | CLE | DH | Jo Adell | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0.250 | |
| current | CLE | RF | Angel Martínez | 0 | 4 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0.250 | |
| current | CLE | 1B | David Fry | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0.333 | |
| current | CLE | 2B | Angel Genao | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.250 | |
| current | CLE | 3B | José Ramírez | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0 | 0.250 | |
| current | CLE | CF | Petey Halpin | 0 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 | |
| current | CLE | C | Austin Hedges | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.333 | |
| current | CLE | LF | Steven Kwan | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0 | 0.250 | |
| current | CLE | SS | Brayan Rocchio | 0 | 4 | 1 | 0 | 0 | 1 | 1 | 1 | 0 | 1 | 0 | 0.250 | |
| current | BAL | RF | Blaze Alexander | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.333 | |
| current | BAL | 2B | Jackson Holliday | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.250 | |
| current | BAL | DH | Christian Encarnacion-Strand | 0 | 3 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0.333 | |
| current | BAL | 1B | Pete Alonso | 0 | 4 | 1 | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 0 | 0.250 | |
| current | BAL | 3B | Coby Mayo | 0 | 3 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 0.333 | |
| current | BAL | CF | Rece Hinds | 0 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.000 | |
| current | BAL | SS | Gunnar Henderson | 0 | 4 | 1 | 1 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0.250 | |
| current | BAL | C | Samuel Basallo | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 0 | 0.250 | |
| current | BAL | LF | Dylan Beavers | 0 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 | |
| simulation | CLE | 1 | LF | Steven Kwan | 5 | 5 | 2 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0.400 |
| simulation | CLE | 2 | DH | Jo Adell | 5 | 4 | 2 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0 | 0.500 |
| simulation | CLE | 3 | 3B | José Ramírez | 5 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0.000 |
| simulation | CLE | 4 | RF | Angel Martínez | 5 | 5 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.200 |
| simulation | CLE | 5 | 1B | David Fry | 5 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0.000 |
| simulation | CLE | 6 | 2B | Angel Genao | 5 | 5 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.200 |
| simulation | CLE | 7 | C | Austin Hedges | 4 | 4 | 1 | 0 | 0 | 1 | 1 | 2 | 0 | 2 | 0 | 0.250 |
| simulation | CLE | 8 | CF | Petey Halpin | 4 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.000 |
| simulation | CLE | 9 | SS | Brayan Rocchio | 4 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0.000 |
| simulation | BAL | 1 | RF | Blaze Alexander | 5 | 5 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.200 |
| simulation | BAL | 2 | 1B | Pete Alonso | 5 | 5 | 2 | 0 | 0 | 1 | 1 | 2 | 0 | 3 | 0 | 0.400 |
| simulation | BAL | 3 | 2B | Jackson Holliday | 5 | 5 | 1 | 0 | 0 | 1 | 1 | 2 | 0 | 1 | 0 | 0.200 |
| simulation | BAL | 4 | 3B | Coby Mayo | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.000 |
| simulation | BAL | 5 | SS | Gunnar Henderson | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.000 |
| simulation | BAL | 6 | DH | Christian Encarnacion-Strand | 4 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.250 |
| simulation | BAL | 7 | C | Samuel Basallo | 4 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.250 |
| simulation | BAL | 8 | CF | Rece Hinds | 4 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.250 |
| simulation | BAL | 9 | LF | Dylan Beavers | 4 | 4 | 2 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.500 |
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 | CLE | 1 | Joey Cantillo | Starter | 4.2 | 2 | 2 | 2 | 0 | 6 | 1 | 0 | 0 | 3.86 | 3.81 | 1.48 |
| current | CLE | 2 | Cade Smith | Closer | 1.1 | 1 | 0 | 0 | 0 | 2 | 0 | 0 | 0 | 0.00 | 2.25 | 1.05 |
| current | CLE | 3 | Erik Sabrowski | Middle Reliever (High Leverage) | 1.0 | 3 | 0 | 0 | 0 | 2 | 0 | 0 | 0 | 0.00 | 2.55 | 1.06 |
| current | CLE | 4 | Hunter Gaddis | Setup Man | 1.0 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.00 | 2.66 | 1.14 |
| current | CLE | 5 | Tim Herrin | Middle Reliever (High Leverage) | 0.0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 3.08 | 1.25 | |
| current | CLE | 7 | Daniel Espino | Reliever | 0.0 | 1 | 2 | 2 | 0 | 1 | 1 | 0 | 0 | |||
| current | BAL | 1 | Trevor Rogers | Starter | 5.2 | 6 | 3 | 3 | 3 | 3 | 1 | 0 | 0 | 4.76 | 4.30 | 1.23 |
| current | BAL | 2 | Andrew Kittredge | Closer | 1.0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.00 | 3.27 | 1.39 |
| current | BAL | 3 | Josh Walker | Middle Reliever (High Leverage) | 1.0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 | 0 | 0.00 | 2.05 | 1.32 |
| current | BAL | 4 | Rico Garcia | Setup Man | 1.1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 2.55 | 0.90 |
| current | BAL | 5 | Yennier Cano | Middle Reliever (High Leverage) | 0.0 | 0 | 0 | 0 | 1 | 2 | 0 | 0 | 0 | 2.42 | 0.90 | |
| simulation | CLE | 1 | Joey Cantillo | Starter | 4.2 | 2 | 2 | 2 | 0 | 6 | 1 | 16 | 77 | 3.86 | 3.81 | 1.48 |
| simulation | CLE | 2 | Cade Smith | Closer | 1.1 | 1 | 0 | 0 | 0 | 2 | 0 | 5 | 20 | 0.00 | 2.25 | 1.05 |
| simulation | CLE | 3 | Hunter Gaddis | Setup Man | 1.0 | 1 | 0 | 0 | 0 | 1 | 0 | 4 | 16 | 0.00 | 2.66 | 1.14 |
| simulation | CLE | 4 | Erik Sabrowski | Middle Reliever (High Leverage) | 1.0 | 3 | 0 | 0 | 0 | 2 | 0 | 6 | 22 | 0.00 | 2.55 | 1.06 |
| simulation | CLE | 5 | Tim Herrin | Middle Reliever (High Leverage) | 0.1 | 1 | 0 | 0 | 0 | 0 | 0 | 2 | 7 | 0.00 | 3.08 | 1.25 |
| simulation | CLE | 6 | Daniel Espino | Reliever | 1.2 | 1 | 2 | 2 | 0 | 1 | 1 | 6 | 29 | 10.80 | 3.38 | 1.25 |
| simulation | BAL | 1 | Trevor Rogers | Starter | 5.2 | 6 | 3 | 3 | 3 | 3 | 1 | 27 | 113 | 4.76 | 4.30 | 1.23 |
| simulation | BAL | 2 | Andrew Kittredge | Closer | 1.0 | 0 | 0 | 0 | 0 | 1 | 0 | 3 | 13 | 0.00 | 3.27 | 1.39 |
| simulation | BAL | 3 | Rico Garcia | Setup Man | 1.2 | 0 | 0 | 0 | 0 | 0 | 0 | 5 | 29 | 0.00 | 2.55 | 0.90 |
| simulation | BAL | 4 | Yennier Cano | Middle Reliever (High Leverage) | 0.2 | 0 | 0 | 0 | 1 | 2 | 0 | 3 | 12 | 0.00 | 2.42 | 0.90 |
| simulation | BAL | 5 | Josh Walker | Middle Reliever (High Leverage) | 1.0 | 1 | 0 | 0 | 0 | 2 | 0 | 4 | 16 | 0.00 | 2.05 | 1.32 |
Pitch count summary
| team | pitcher | role | IP | R | H | BB | SO | BF | Pitches |
|---|---|---|---|---|---|---|---|---|---|
| CLE | Joey Cantillo | Starter | 4.2 | 2 | 2 | 0 | 6 | 16 | 77 |
| CLE | Cade Smith | Closer | 1.1 | 0 | 1 | 0 | 2 | 5 | 20 |
| CLE | Erik Sabrowski | Middle Reliever (High Leverage) | 1.0 | 0 | 3 | 0 | 2 | 6 | 22 |
| CLE | Hunter Gaddis | Setup Man | 1.0 | 0 | 1 | 0 | 1 | 4 | 16 |
| CLE | Tim Herrin | Middle Reliever (High Leverage) | 0.1 | 0 | 1 | 0 | 0 | 2 | 7 |
| CLE | Daniel Espino | Reliever | 1.2 | 2 | 1 | 0 | 1 | 6 | 29 |
| BAL | Trevor Rogers | Starter | 5.2 | 3 | 6 | 3 | 3 | 27 | 113 |
| BAL | Andrew Kittredge | Closer | 1.0 | 0 | 0 | 0 | 1 | 3 | 13 |
| BAL | Josh Walker | Middle Reliever (High Leverage) | 1.0 | 0 | 1 | 0 | 2 | 4 | 16 |
| BAL | Rico Garcia | Setup Man | 1.2 | 0 | 0 | 0 | 0 | 5 | 29 |
| BAL | Yennier Cano | Middle Reliever (High Leverage) | 0.2 | 0 | 0 | 1 | 2 | 3 | 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 | info | 0 | 0 | 0 | 1 | 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_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. |
| 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. |
| 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. |
20260907_LAA@BOS
20260907_LAA@BOS.json • 2026-09-07
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 | BOS | CURRENT_PITCHER_DUPLICATION | BOS pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_payload | current | LAA | CURRENT_PITCHER_DUPLICATION | LAA pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_vs_final | cross-schema | BOS | CURRENT_FINALIZED_MATCH_BOX | BOS model-prediction batting totals differ from final simulation box score (AB: current=34, sim=30; H: current=8, sim=6; 2B: current=2, sim=0; HR: current=1, sim=3; RBI: current=4, sim=5; R: current=4, sim=5; BB: current=3, sim=0; SO: current=7, sim=8). | New contract: model prediction totals may differ from scoring_simulation; simulation_stats_source links the simulation box score. | ||
| INFO | current_vs_final | cross-schema | BOS | CURRENT_PLAYER_MATCH_BOX | BOS current finalized hitter lines are model predictions and differ from the simulation box score: Roman Anthony: BB current=1 box=0, SO current=1 box=3; Mickey Gasper: AB current=3 box=4, H current=1 box=2, HR current=0 box=2, RBI current=1 box=4; Trevor Story: AB current=5 box=3, H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0; Adley Rutschman: AB current=5 box=4; Caleb Durbin: H current=1 box=0, SO current=0 box=1; Eli White: RBI current=1 box=0, R current=0 box=1; Wilyer Abreu: AB current=4 box=3, H current=1 box=0, 2B current=1 box=0, R current=1 box=0; Jarren Duran: AB current=4 box=3, R current=0 box=1, SO 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 | LAA | CURRENT_FINALIZED_MATCH_BOX | LAA model-prediction batting totals differ from final simulation box score (AB: current=31, sim=35; H: current=7, sim=9; 2B: current=1, sim=2; 3B: current=0, sim=2; BB: current=3, sim=2; SO: current=9, sim=6; SF: current=0, sim=1). | New contract: model prediction totals may differ from scoring_simulation; simulation_stats_source links the simulation box score. | ||
| INFO | current_vs_final | cross-schema | LAA | CURRENT_PLAYER_MATCH_BOX | LAA current finalized hitter lines are model predictions and differ from the simulation box score: Wade Meckler: AB current=3 box=4, H current=1 box=0, R current=1 box=0, SO current=1 box=2; Vaughn Grissom: AB current=4 box=3, H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0; Mike Trout: AB current=4 box=5, H current=1 box=0, HR current=1 box=0, RBI current=1 box=0; Moisés Ballesteros: AB current=3 box=4, H current=0 box=2, 2B current=0 box=1, SO current=1 box=2; Josh Lowe: AB current=3 box=4, H current=1 box=2, 2B current=0 box=1, HR current=0 box=1; Kyren Paris: 3B current=0 box=1, RBI current=0 box=1, R current=0 box=1, BB current=0 box=1; Zach Neto: RBI current=1 box=0, R current=1 box=0, BB current=1 box=0, SO current=1 box=0; Christian Moore: H current=1 box=2, 3B 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 | BOS | BATTING_REALISM | current:BOS hitter lines pass basic baseball constraints. | |||
| PASS | batting | current | LAA | BATTING_REALISM | current:LAA hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | BOS | BATTING_REALISM | simulation:BOS hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | LAA | BATTING_REALISM | simulation:LAA hitter lines pass basic baseball constraints. | |||
| PASS | batting_totals | current | BOS | BATTING_TOTALS_SUM | current:BOS batting totals equal summed player lines. | |||
| PASS | batting_totals | current | LAA | BATTING_TOTALS_SUM | current:LAA batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | BOS | BATTING_TOTALS_SUM | simulation:BOS batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | LAA | BATTING_TOTALS_SUM | simulation:LAA batting totals equal summed player lines. | |||
| PASS | boxscore_crosscheck | simulation | BOS | BAT_PITCH_BB_MATCH | simulation:BOS batting walks match LAA pitching: 0. | |||
| PASS | boxscore_crosscheck | simulation | BOS | BAT_PITCH_HR_MATCH | simulation:BOS batting home runs match LAA pitching: 3. | |||
| PASS | boxscore_crosscheck | simulation | BOS | BAT_PITCH_H_MATCH | simulation:BOS batting hits match LAA pitching: 6. | |||
| PASS | boxscore_crosscheck | simulation | BOS | BAT_PITCH_SO_MATCH | simulation:BOS batting strikeouts match LAA pitching: 8. | |||
| PASS | boxscore_crosscheck | simulation | BOS | PA_BF_MATCH | simulation:BOS PA=30 matches LAA BF=30. | |||
| PASS | boxscore_crosscheck | simulation | BOS | RUNS_MATCH_FINAL | simulation:BOS runs match final score and opposing pitching runs: 5. | |||
| PASS | boxscore_crosscheck | simulation | LAA | BAT_PITCH_BB_MATCH | simulation:LAA batting walks match BOS pitching: 2. | |||
| PASS | boxscore_crosscheck | simulation | LAA | BAT_PITCH_HR_MATCH | simulation:LAA batting home runs match BOS pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | LAA | BAT_PITCH_H_MATCH | simulation:LAA batting hits match BOS pitching: 9. | |||
| PASS | boxscore_crosscheck | simulation | LAA | BAT_PITCH_SO_MATCH | simulation:LAA batting strikeouts match BOS pitching: 6. | |||
| PASS | boxscore_crosscheck | simulation | LAA | PA_BF_MATCH | simulation:LAA PA=38 matches BOS BF=38. | |||
| PASS | boxscore_crosscheck | simulation | LAA | RUNS_MATCH_FINAL | simulation:LAA runs match final score and opposing pitching runs: 3. | |||
| PASS | confidence_calibration | CONFIDENCE_CALIBRATION_APPLIED | Empirical confidence blend verified: 0.776 -> 0.667 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.775922, 'sample_size': 269, 'empirical_hit_rate': 0.5576, 'empirical_weight': 0.5, 'blended_confidence': 0.666761, 'published_confidence': 0.62315, 'published_after_governors': True, 'governor_mode': 'shrinkage_not_clamp'} | ||||
| PASS | cross_schema | cross-schema | BOS | CURRENT_FINALIZED_MATCH_BOX | BOS current pitcher projected totals match final simulation pitching box score. | |||
| PASS | cross_schema | cross-schema | LAA | CURRENT_FINALIZED_MATCH_BOX | LAA current pitcher projected totals match final simulation pitching box score. | |||
| PASS | current_payload | current | BOS | CURRENT_LINEUP_SHAPE | BOS current lineup has 9 expected positions. | |||
| PASS | current_payload | current | BOS | CURRENT_MODEL_ZERO_FALLBACK | BOS current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | BOS | CURRENT_NAMES_PRESENT | BOS current hitter names are populated. | |||
| PASS | current_payload | current | BOS | CURRENT_PREDICTIONS_MATCH_FINALIZED | BOS hitter predictions mirror finalized stats. | |||
| PASS | current_payload | current | LAA | CURRENT_LINEUP_SHAPE | LAA current lineup has 9 expected positions. | |||
| PASS | current_payload | current | LAA | CURRENT_MODEL_ZERO_FALLBACK | LAA current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | LAA | CURRENT_NAMES_PRESENT | LAA current hitter names are populated. | |||
| PASS | current_payload | current | LAA | CURRENT_PREDICTIONS_MATCH_FINALIZED | LAA 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.377. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | confidence is in [0,1]: 0.623. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | home_win_probability is in [0,1]: 0.623. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Final total runs 8 is reasonably close to low-score expected_total_runs 8.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.571/0.762. | |||||
| PASS | final_decision | FINAL_DECISION_POLICY | Final decision policy preserved model ownership of the winner. | |||||
| 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: LAA 9, BOS 6. | |||||
| PASS | innings | INNING_TOTAL_RUNS | Inning runs sum to final score: LAA 3 - BOS 5. | |||||
| PASS | matchup_recency | GUARDRAIL_FINAL_WINNER_SYNC | Guardrail predicted_team matches final predicted winner: BOS. | |||||
| PASS | matchup_recency | MATCHUP_RECENCY_GUARDRAIL | No stale repeat-pick pattern detected for BOS. | {'winner_confidence': 0.6231496, 'h2h_net_margin': 12, 'prediction_memory': {'available': True, 'reason': 'verified_prior_matchup_predictions_available', 'verification_policy': 'pregame_artifact_matched_to_one_official_final', 'verified_outcome_count': 1, 'consecutive_same_pick_count': 1, 'same_pick_actual_loss_count': 0, 'same_pick_blowout_loss_count': 0, 'prior_predictions': [{'date': '20260704', 'away': 'BOS', 'home': 'LAA', 'game_number': 1, 'predicted_team': 'BOS', 'actual_winner': 'BOS', 'actual_margin': 7, 'raw_pick_probability': 0.64, 'artifact': '20260704_BOS@LAA.json', 'verification': 'pregame_official_final'}]}} | ||||
| PASS | metadata | DATE_PARSE | Date is valid ISO format: 2026-09-07. | |||||
| PASS | metadata | FILENAME_GAME_ID_MATCH | Filename matches game_id: 20260907_LAA@BOS. | |||||
| PASS | metadata | FILENAME_TEAM_MATCH | Filename teams match JSON teams: LAA@BOS. | |||||
| 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': 3, 'sample_weight': 0.0409, 'home_net_margin': 12.0, 'absolute_net_margin': 12.0, 'home_average_margin': 4.0, 'home_run_delta': 0.0818, 'away_run_delta': -0.0818, 'evidence': [{'game_id': None, 'home_margin': 2.0}, {'game_id': None, 'home_margin': 7.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': 3, 'probability': 0.02848451497061568}, {'home_runs': 4, 'away_runs': 3, 'probability': 0.028063643605635177}, {'home_runs': 5, 'away_runs': 2, 'probability': 0.02774660131814158}, {'home_runs': 4, 'away_runs': 2, 'probability': 0.02733663295524747}, {'home_runs': 6, 'away_runs': 3, 'probability': 0.0255482826090971}], 'home_distribution': {'0': 0.03887396343934308, '1': 0.0647099631449925, '2': 0.09518567489107813, '3': 0.123725764215555, '4': 0.14211398149999196, '5': 0.14424526944738827, '6': 0.1293762211738156, '7': 0.10254050580125491, '8': 0.07181655344967486, '9': 0.04444693041591734, '10': 0.024307880787255397, '11': 0.011747366892563393, '12': 0.005016745598100301, '13': 0.0018931792430691412}, 'away_distribution': {'0': 0.09488270477310329, '1': 0.150661221316622, '2': 0.19235709721670852, '3': 0.1974727842357774, '4': 0.16300412244320447, '5': 0.1081887817174226, '6': 0.05773752674741574, '7': 0.02477572810394622, '8': 0.008548442206900129, '9': 0.0023715912388995643}, 'model': 'overdispersed_score_distribution', 'variance_multiplier': 1.75, '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': 1.3922, 'recent_quality_edge': 0.308, 'season_weight': 0.65, 'recent_weight': 0.35, 'recent_reliability': 1.0, 'alignment': 'aligned', 'blended_quality_edge': 1.0127} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Simulation flip control is implemented and its runtime trace passed. | {'pre_simulation_score': {'away_runs': 3, 'home_runs': 5, 'score_text': 'LAA 3 - 5 BOS', 'winner': 'BOS'}, 'final_simulation_score': {'away_runs': 3, 'home_runs': 5, 'score_text': 'LAA 3 - 5 BOS', 'winner': 'BOS'}, '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.0198, 'recent_form_edge_home_minus_away': 0.658, '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': 3, 'home_runs': 5, 'winner': 'BOS', 'model_winner': 'BOS', 'simulation_winner': 'BOS', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 3, 'published_winner': 'BOS', 'published_winner_draw_share': 0.6667, 'draw_majority_team': 'BOS', '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': 3, 'home_runs': 5}, 'simulation_score': {'away_runs': 3, 'home_runs': 5}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 2, 'final_margin': 2, 'winner_quality_edge': 1.0127, 'winner': 'BOS', 'score_reviewed': {'away_runs': 3, '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: 129. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | home pitcher pitch-by-pitch count matches pitch_count_summary total: 135. | |||||
| PASS | pitch_count | simulation | BOS | PITCH_COUNT_PITCHER_MATCH | BOS pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | BOS | PITCH_COUNT_TOTAL_MATCH | BOS pitch_count_summary total, row sum, and pitching total all match: 135. | |||
| PASS | pitch_count | simulation | LAA | PITCH_COUNT_PITCHER_MATCH | LAA pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | LAA | PITCH_COUNT_TOTAL_MATCH | LAA pitch_count_summary total, row sum, and pitching total all match: 129. | |||
| 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 | current | BOS | PITCHING_REALISM | current:BOS pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | BOS | STARTER_PRESENT | current:BOS includes a starter/opener role. | |||
| PASS | pitching | current | LAA | PITCHING_REALISM | current:LAA pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | LAA | STARTER_PRESENT | current:LAA includes a starter/opener role. | |||
| PASS | pitching | simulation | BOS | PITCHING_REALISM | simulation:BOS pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | BOS | STARTER_PRESENT | simulation:BOS includes a starter/opener role. | |||
| PASS | pitching | simulation | LAA | PITCHING_REALISM | simulation:LAA pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | LAA | STARTER_PRESENT | simulation:LAA includes a starter/opener role. | |||
| PASS | pitching_totals | current | BOS | PITCHING_TOTALS_SUM | current:BOS pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | BOS | PITCHING_TOTALS_SUM | current:BOS pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | current | LAA | PITCHING_TOTALS_SUM | current:LAA pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | current | LAA | PITCHING_TOTALS_SUM | current:LAA pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | BOS | PITCHING_TOTALS_SUM | simulation:BOS pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | BOS | PITCHING_TOTALS_SUM | simulation:BOS pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | LAA | PITCHING_TOTALS_SUM | simulation:LAA pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | simulation | LAA | PITCHING_TOTALS_SUM | simulation:LAA pitching totals equal summed pitcher lines for available fields. | |||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Enhanced AI score matches enhanced target: LAA 3 - 5 BOS. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation score matches final score: LAA 3 - 5 BOS. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation winner matches final score: BOS wins 5-3. | |||||
| PASS | prediction_comparison | SIMULATION_WINNER_FLIP_TRACE | Simulation decision is explicit: model=BOS, simulation=BOS, published=BOS. | |||||
| PASS | probability | CONFIDENCE_RANGE | Enhanced target confidence is in range: 0.623. | |||||
| PASS | recent_form | RECENT_FORM_RANGE | away recent_form record is coherent: 2/10 (0.200). | |||||
| PASS | recent_form | RECENT_FORM_RANGE | home recent_form record is coherent: 6/10 (0.600). | |||||
| 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): BOS wins 5-3. | |||||
| PASS | score | SCORE_NO_TIE | Final score has a clear winner: BOS wins 3-5. | |||||
| PASS | score | SCORE_STEP_FINAL_MATCH | simulation_result step matches final score: 3-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 3-5, final 3-5 (delta 0). | |||||
| PASS | score | TOTAL_RUNS_MATCH | total_runs field matches final score total: 8. | |||||
| PASS | score | WINNER_FIELD_MATCH | winner field is consistent: BOS wins 5-3. | |||||
| PASS | score | cross-schema | CURRENT_SCORE_MATCHES_SIM | game.predicted_runs matches scoring_simulation.final_score. | ||||
| PASS | team_recent_performance | current | BOS | RECENT_FORM_RANGE | BOS recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | BOS | TEAM_RECENT_RECORD | BOS wins and win_pct agree: 5/10 = 0.500. | |||
| PASS | team_recent_performance | current | LAA | RECENT_FORM_RANGE | LAA recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | LAA | TEAM_RECENT_RECORD | LAA wins and win_pct agree: 2/10 = 0.200. |
Passed checks
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| PASS | batting | current | BOS | BATTING_REALISM | current:BOS hitter lines pass basic baseball constraints. | |||
| PASS | batting | current | LAA | BATTING_REALISM | current:LAA hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | BOS | BATTING_REALISM | simulation:BOS hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | LAA | BATTING_REALISM | simulation:LAA hitter lines pass basic baseball constraints. | |||
| PASS | batting_totals | current | BOS | BATTING_TOTALS_SUM | current:BOS batting totals equal summed player lines. | |||
| PASS | batting_totals | current | LAA | BATTING_TOTALS_SUM | current:LAA batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | BOS | BATTING_TOTALS_SUM | simulation:BOS batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | LAA | BATTING_TOTALS_SUM | simulation:LAA batting totals equal summed player lines. | |||
| PASS | boxscore_crosscheck | simulation | BOS | BAT_PITCH_BB_MATCH | simulation:BOS batting walks match LAA pitching: 0. | |||
| PASS | boxscore_crosscheck | simulation | BOS | BAT_PITCH_HR_MATCH | simulation:BOS batting home runs match LAA pitching: 3. | |||
| PASS | boxscore_crosscheck | simulation | BOS | BAT_PITCH_H_MATCH | simulation:BOS batting hits match LAA pitching: 6. | |||
| PASS | boxscore_crosscheck | simulation | BOS | BAT_PITCH_SO_MATCH | simulation:BOS batting strikeouts match LAA pitching: 8. | |||
| PASS | boxscore_crosscheck | simulation | BOS | PA_BF_MATCH | simulation:BOS PA=30 matches LAA BF=30. | |||
| PASS | boxscore_crosscheck | simulation | BOS | RUNS_MATCH_FINAL | simulation:BOS runs match final score and opposing pitching runs: 5. | |||
| PASS | boxscore_crosscheck | simulation | LAA | BAT_PITCH_BB_MATCH | simulation:LAA batting walks match BOS pitching: 2. | |||
| PASS | boxscore_crosscheck | simulation | LAA | BAT_PITCH_HR_MATCH | simulation:LAA batting home runs match BOS pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | LAA | BAT_PITCH_H_MATCH | simulation:LAA batting hits match BOS pitching: 9. | |||
| PASS | boxscore_crosscheck | simulation | LAA | BAT_PITCH_SO_MATCH | simulation:LAA batting strikeouts match BOS pitching: 6. | |||
| PASS | boxscore_crosscheck | simulation | LAA | PA_BF_MATCH | simulation:LAA PA=38 matches BOS BF=38. | |||
| PASS | boxscore_crosscheck | simulation | LAA | RUNS_MATCH_FINAL | simulation:LAA runs match final score and opposing pitching runs: 3. | |||
| PASS | confidence_calibration | CONFIDENCE_CALIBRATION_APPLIED | Empirical confidence blend verified: 0.776 -> 0.667 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.775922, 'sample_size': 269, 'empirical_hit_rate': 0.5576, 'empirical_weight': 0.5, 'blended_confidence': 0.666761, 'published_confidence': 0.62315, 'published_after_governors': True, 'governor_mode': 'shrinkage_not_clamp'} | ||||
| PASS | cross_schema | cross-schema | BOS | CURRENT_FINALIZED_MATCH_BOX | BOS current pitcher projected totals match final simulation pitching box score. | |||
| PASS | cross_schema | cross-schema | LAA | CURRENT_FINALIZED_MATCH_BOX | LAA current pitcher projected totals match final simulation pitching box score. | |||
| PASS | current_payload | current | BOS | CURRENT_LINEUP_SHAPE | BOS current lineup has 9 expected positions. | |||
| PASS | current_payload | current | BOS | CURRENT_MODEL_ZERO_FALLBACK | BOS current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | BOS | CURRENT_NAMES_PRESENT | BOS current hitter names are populated. | |||
| PASS | current_payload | current | BOS | CURRENT_PREDICTIONS_MATCH_FINALIZED | BOS hitter predictions mirror finalized stats. | |||
| PASS | current_payload | current | LAA | CURRENT_LINEUP_SHAPE | LAA current lineup has 9 expected positions. | |||
| PASS | current_payload | current | LAA | CURRENT_MODEL_ZERO_FALLBACK | LAA current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | LAA | CURRENT_NAMES_PRESENT | LAA current hitter names are populated. | |||
| PASS | current_payload | current | LAA | CURRENT_PREDICTIONS_MATCH_FINALIZED | LAA 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.377. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | confidence is in [0,1]: 0.623. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | home_win_probability is in [0,1]: 0.623. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Final total runs 8 is reasonably close to low-score expected_total_runs 8.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.571/0.762. | |||||
| PASS | final_decision | FINAL_DECISION_POLICY | Final decision policy preserved model ownership of the winner. | |||||
| 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: LAA 9, BOS 6. | |||||
| PASS | innings | INNING_TOTAL_RUNS | Inning runs sum to final score: LAA 3 - BOS 5. | |||||
| PASS | matchup_recency | GUARDRAIL_FINAL_WINNER_SYNC | Guardrail predicted_team matches final predicted winner: BOS. | |||||
| PASS | matchup_recency | MATCHUP_RECENCY_GUARDRAIL | No stale repeat-pick pattern detected for BOS. | {'winner_confidence': 0.6231496, 'h2h_net_margin': 12, 'prediction_memory': {'available': True, 'reason': 'verified_prior_matchup_predictions_available', 'verification_policy': 'pregame_artifact_matched_to_one_official_final', 'verified_outcome_count': 1, 'consecutive_same_pick_count': 1, 'same_pick_actual_loss_count': 0, 'same_pick_blowout_loss_count': 0, 'prior_predictions': [{'date': '20260704', 'away': 'BOS', 'home': 'LAA', 'game_number': 1, 'predicted_team': 'BOS', 'actual_winner': 'BOS', 'actual_margin': 7, 'raw_pick_probability': 0.64, 'artifact': '20260704_BOS@LAA.json', 'verification': 'pregame_official_final'}]}} | ||||
| PASS | metadata | DATE_PARSE | Date is valid ISO format: 2026-09-07. | |||||
| PASS | metadata | FILENAME_GAME_ID_MATCH | Filename matches game_id: 20260907_LAA@BOS. | |||||
| PASS | metadata | FILENAME_TEAM_MATCH | Filename teams match JSON teams: LAA@BOS. | |||||
| 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': 3, 'sample_weight': 0.0409, 'home_net_margin': 12.0, 'absolute_net_margin': 12.0, 'home_average_margin': 4.0, 'home_run_delta': 0.0818, 'away_run_delta': -0.0818, 'evidence': [{'game_id': None, 'home_margin': 2.0}, {'game_id': None, 'home_margin': 7.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': 3, 'probability': 0.02848451497061568}, {'home_runs': 4, 'away_runs': 3, 'probability': 0.028063643605635177}, {'home_runs': 5, 'away_runs': 2, 'probability': 0.02774660131814158}, {'home_runs': 4, 'away_runs': 2, 'probability': 0.02733663295524747}, {'home_runs': 6, 'away_runs': 3, 'probability': 0.0255482826090971}], 'home_distribution': {'0': 0.03887396343934308, '1': 0.0647099631449925, '2': 0.09518567489107813, '3': 0.123725764215555, '4': 0.14211398149999196, '5': 0.14424526944738827, '6': 0.1293762211738156, '7': 0.10254050580125491, '8': 0.07181655344967486, '9': 0.04444693041591734, '10': 0.024307880787255397, '11': 0.011747366892563393, '12': 0.005016745598100301, '13': 0.0018931792430691412}, 'away_distribution': {'0': 0.09488270477310329, '1': 0.150661221316622, '2': 0.19235709721670852, '3': 0.1974727842357774, '4': 0.16300412244320447, '5': 0.1081887817174226, '6': 0.05773752674741574, '7': 0.02477572810394622, '8': 0.008548442206900129, '9': 0.0023715912388995643}, 'model': 'overdispersed_score_distribution', 'variance_multiplier': 1.75, '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': 1.3922, 'recent_quality_edge': 0.308, 'season_weight': 0.65, 'recent_weight': 0.35, 'recent_reliability': 1.0, 'alignment': 'aligned', 'blended_quality_edge': 1.0127} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Simulation flip control is implemented and its runtime trace passed. | {'pre_simulation_score': {'away_runs': 3, 'home_runs': 5, 'score_text': 'LAA 3 - 5 BOS', 'winner': 'BOS'}, 'final_simulation_score': {'away_runs': 3, 'home_runs': 5, 'score_text': 'LAA 3 - 5 BOS', 'winner': 'BOS'}, '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.0198, 'recent_form_edge_home_minus_away': 0.658, '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': 3, 'home_runs': 5, 'winner': 'BOS', 'model_winner': 'BOS', 'simulation_winner': 'BOS', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 3, 'published_winner': 'BOS', 'published_winner_draw_share': 0.6667, 'draw_majority_team': 'BOS', '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': 3, 'home_runs': 5}, 'simulation_score': {'away_runs': 3, 'home_runs': 5}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 2, 'final_margin': 2, 'winner_quality_edge': 1.0127, 'winner': 'BOS', 'score_reviewed': {'away_runs': 3, '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: 129. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | home pitcher pitch-by-pitch count matches pitch_count_summary total: 135. | |||||
| PASS | pitch_count | simulation | BOS | PITCH_COUNT_PITCHER_MATCH | BOS pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | BOS | PITCH_COUNT_TOTAL_MATCH | BOS pitch_count_summary total, row sum, and pitching total all match: 135. | |||
| PASS | pitch_count | simulation | LAA | PITCH_COUNT_PITCHER_MATCH | LAA pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | LAA | PITCH_COUNT_TOTAL_MATCH | LAA pitch_count_summary total, row sum, and pitching total all match: 129. | |||
| 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 | current | BOS | PITCHING_REALISM | current:BOS pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | BOS | STARTER_PRESENT | current:BOS includes a starter/opener role. | |||
| PASS | pitching | current | LAA | PITCHING_REALISM | current:LAA pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | LAA | STARTER_PRESENT | current:LAA includes a starter/opener role. | |||
| PASS | pitching | simulation | BOS | PITCHING_REALISM | simulation:BOS pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | BOS | STARTER_PRESENT | simulation:BOS includes a starter/opener role. | |||
| PASS | pitching | simulation | LAA | PITCHING_REALISM | simulation:LAA pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | LAA | STARTER_PRESENT | simulation:LAA includes a starter/opener role. | |||
| PASS | pitching_totals | current | BOS | PITCHING_TOTALS_SUM | current:BOS pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | BOS | PITCHING_TOTALS_SUM | current:BOS pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | current | LAA | PITCHING_TOTALS_SUM | current:LAA pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | current | LAA | PITCHING_TOTALS_SUM | current:LAA pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | BOS | PITCHING_TOTALS_SUM | simulation:BOS pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | BOS | PITCHING_TOTALS_SUM | simulation:BOS pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | LAA | PITCHING_TOTALS_SUM | simulation:LAA pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | simulation | LAA | PITCHING_TOTALS_SUM | simulation:LAA pitching totals equal summed pitcher lines for available fields. | |||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Enhanced AI score matches enhanced target: LAA 3 - 5 BOS. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation score matches final score: LAA 3 - 5 BOS. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation winner matches final score: BOS wins 5-3. | |||||
| PASS | prediction_comparison | SIMULATION_WINNER_FLIP_TRACE | Simulation decision is explicit: model=BOS, simulation=BOS, published=BOS. | |||||
| PASS | probability | CONFIDENCE_RANGE | Enhanced target confidence is in range: 0.623. | |||||
| PASS | recent_form | RECENT_FORM_RANGE | away recent_form record is coherent: 2/10 (0.200). | |||||
| PASS | recent_form | RECENT_FORM_RANGE | home recent_form record is coherent: 6/10 (0.600). | |||||
| 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): BOS wins 5-3. | |||||
| PASS | score | SCORE_NO_TIE | Final score has a clear winner: BOS wins 3-5. | |||||
| PASS | score | SCORE_STEP_FINAL_MATCH | simulation_result step matches final score: 3-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 3-5, final 3-5 (delta 0). | |||||
| PASS | score | TOTAL_RUNS_MATCH | total_runs field matches final score total: 8. | |||||
| PASS | score | WINNER_FIELD_MATCH | winner field is consistent: BOS wins 5-3. | |||||
| PASS | score | cross-schema | CURRENT_SCORE_MATCHES_SIM | game.predicted_runs matches scoring_simulation.final_score. | ||||
| PASS | team_recent_performance | current | BOS | RECENT_FORM_RANGE | BOS recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | BOS | TEAM_RECENT_RECORD | BOS wins and win_pct agree: 5/10 = 0.500. | |||
| PASS | team_recent_performance | current | LAA | RECENT_FORM_RANGE | LAA recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | LAA | TEAM_RECENT_RECORD | LAA wins and win_pct agree: 2/10 = 0.200. |
Info/context findings
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| INFO | current_payload | current | BOS | CURRENT_PITCHER_DUPLICATION | BOS pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_payload | current | LAA | CURRENT_PITCHER_DUPLICATION | LAA pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_vs_final | cross-schema | BOS | CURRENT_FINALIZED_MATCH_BOX | BOS model-prediction batting totals differ from final simulation box score (AB: current=34, sim=30; H: current=8, sim=6; 2B: current=2, sim=0; HR: current=1, sim=3; RBI: current=4, sim=5; R: current=4, sim=5; BB: current=3, sim=0; SO: current=7, sim=8). | New contract: model prediction totals may differ from scoring_simulation; simulation_stats_source links the simulation box score. | ||
| INFO | current_vs_final | cross-schema | BOS | CURRENT_PLAYER_MATCH_BOX | BOS current finalized hitter lines are model predictions and differ from the simulation box score: Roman Anthony: BB current=1 box=0, SO current=1 box=3; Mickey Gasper: AB current=3 box=4, H current=1 box=2, HR current=0 box=2, RBI current=1 box=4; Trevor Story: AB current=5 box=3, H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0; Adley Rutschman: AB current=5 box=4; Caleb Durbin: H current=1 box=0, SO current=0 box=1; Eli White: RBI current=1 box=0, R current=0 box=1; Wilyer Abreu: AB current=4 box=3, H current=1 box=0, 2B current=1 box=0, R current=1 box=0; Jarren Duran: AB current=4 box=3, R current=0 box=1, SO 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 | LAA | CURRENT_FINALIZED_MATCH_BOX | LAA model-prediction batting totals differ from final simulation box score (AB: current=31, sim=35; H: current=7, sim=9; 2B: current=1, sim=2; 3B: current=0, sim=2; BB: current=3, sim=2; SO: current=9, sim=6; SF: current=0, sim=1). | New contract: model prediction totals may differ from scoring_simulation; simulation_stats_source links the simulation box score. | ||
| INFO | current_vs_final | cross-schema | LAA | CURRENT_PLAYER_MATCH_BOX | LAA current finalized hitter lines are model predictions and differ from the simulation box score: Wade Meckler: AB current=3 box=4, H current=1 box=0, R current=1 box=0, SO current=1 box=2; Vaughn Grissom: AB current=4 box=3, H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0; Mike Trout: AB current=4 box=5, H current=1 box=0, HR current=1 box=0, RBI current=1 box=0; Moisés Ballesteros: AB current=3 box=4, H current=0 box=2, 2B current=0 box=1, SO current=1 box=2; Josh Lowe: AB current=3 box=4, H current=1 box=2, 2B current=0 box=1, HR current=0 box=1; Kyren Paris: 3B current=0 box=1, RBI current=0 box=1, R current=0 box=1, BB current=0 box=1; Zach Neto: RBI current=1 box=0, R current=1 box=0, BB current=1 box=0, SO current=1 box=0; Christian Moore: H current=1 box=2, 3B 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.256027074589859 | 4.907730266989098 | Base ML historical model prediction | |
| variance_applied | 4 | 5 | Deterministic baseline target (variance factor 1.0) | |
| enhanced_prediction | 3 | 5 | 0.623 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by winner_starter_is_below_average) |
| embedded_savant_run_environment | 3 | 5 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality | |
| fundamental_edge_target_review | 3 | 5 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments | |
| capped_target | 3 | 5 | Capped at max 12 realistic runs | |
| simulation_result | 3 | 5 | Final inning-by-inning simulation result |
Inning-by-inning linescore
| team | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | R | H |
|---|---|---|---|---|---|---|---|---|---|---|---|
| LAA | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 1 | 3 | 9 |
| BOS | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 3 | 0 | 5 | 6 |
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 | LAA | batting | 31 | 7 | 1 | 0 | 1 | 3 | 3 | 3 | 9 | 0 | 0 | 0 | 0 | |||||
| current | LAA | pitching | 6 | 3 | 5 | 0 | 8 | 8.0 | 5 | 0 | 0 | |||||||||
| current | BOS | batting | 34 | 8 | 2 | 0 | 1 | 4 | 4 | 3 | 7 | 0 | 0 | 0 | 0 | |||||
| current | BOS | pitching | 9 | 1 | 3 | 2 | 6 | 9.0 | 3 | 0 | 0 | |||||||||
| simulation | LAA | batting | 35 | 9 | 2 | 2 | 1 | 3 | 3 | 2 | 6 | 1 | 0 | |||||||
| simulation | LAA | pitching | 6 | 3 | 5 | 0 | 8 | 8.0 | 5 | 30 | 129 | |||||||||
| simulation | BOS | batting | 30 | 6 | 0 | 0 | 3 | 5 | 5 | 0 | 8 | 0 | 0 | |||||||
| simulation | BOS | pitching | 9 | 1 | 3 | 2 | 6 | 9.0 | 3 | 38 | 135 |
Batting lines - current + final simulation
| src | team | order | pos | name | PA | AB | H | 2B | 3B | HR | R | RBI | BB | SO | HBP | AVG |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| current | LAA | LF | Wade Meckler | 0 | 3 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.333 | |
| current | LAA | 3B | Vaughn Grissom | 0 | 4 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0.250 | |
| current | LAA | DH | Mike Trout | 0 | 4 | 1 | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 0 | 0.250 | |
| current | LAA | 1B | Moisés Ballesteros | 0 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 | |
| current | LAA | RF | Josh Lowe | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0.333 | |
| current | LAA | CF | Kyren Paris | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.333 | |
| current | LAA | SS | Zach Neto | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 0.250 | |
| current | LAA | 2B | Christian Moore | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.250 | |
| current | LAA | C | Tyler Heineman | 0 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 | |
| current | BOS | DH | Roman Anthony | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0.250 | |
| current | BOS | 1B | Mickey Gasper | 0 | 3 | 1 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 0.333 | |
| current | BOS | SS | Trevor Story | 0 | 5 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0.200 | |
| current | BOS | C | Adley Rutschman | 0 | 5 | 1 | 0 | 0 | 1 | 1 | 1 | 0 | 1 | 0 | 0.200 | |
| current | BOS | 3B | Caleb Durbin | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.333 | |
| current | BOS | CF | Eli White | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0.333 | |
| current | BOS | RF | Wilyer Abreu | 0 | 4 | 1 | 1 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0.250 | |
| current | BOS | LF | Jarren Duran | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.250 | |
| current | BOS | 2B | Isiah Kiner-Falefa | 0 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.000 | |
| simulation | LAA | 1 | SS | Zach Neto | 5 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.250 |
| simulation | LAA | 2 | DH | Mike Trout | 5 | 5 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 |
| simulation | LAA | 3 | LF | Wade Meckler | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.000 |
| simulation | LAA | 4 | 3B | Vaughn Grissom | 4 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0.000 |
| simulation | LAA | 5 | 1B | Moisés Ballesteros | 4 | 4 | 2 | 1 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.500 |
| simulation | LAA | 6 | 2B | Christian Moore | 4 | 4 | 2 | 0 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0.500 |
| simulation | LAA | 7 | RF | Josh Lowe | 4 | 4 | 2 | 1 | 0 | 1 | 1 | 1 | 0 | 1 | 0 | 0.500 |
| simulation | LAA | 8 | CF | Kyren Paris | 4 | 3 | 1 | 0 | 1 | 0 | 1 | 1 | 1 | 0 | 0 | 0.333 |
| simulation | LAA | 9 | C | Tyler Heineman | 4 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.250 |
| simulation | BOS | 1 | DH | Roman Anthony | 4 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 3 | 0 | 0.250 |
| simulation | BOS | 2 | 1B | Mickey Gasper | 4 | 4 | 2 | 0 | 0 | 2 | 1 | 4 | 0 | 0 | 0 | 0.500 |
| simulation | BOS | 3 | C | Adley Rutschman | 4 | 4 | 1 | 0 | 0 | 1 | 1 | 1 | 0 | 1 | 0 | 0.250 |
| simulation | BOS | 4 | RF | Wilyer Abreu | 3 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 |
| simulation | BOS | 5 | SS | Trevor Story | 3 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 |
| simulation | BOS | 6 | 3B | Caleb Durbin | 3 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 |
| simulation | BOS | 7 | LF | Jarren Duran | 3 | 3 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0.333 |
| simulation | BOS | 8 | 2B | Isiah Kiner-Falefa | 3 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.000 |
| simulation | BOS | 9 | CF | Eli White | 3 | 3 | 1 | 0 | 0 | 0 | 1 | 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 | LAA | 1 | Grayson Rodriguez | Starter | 5.0 | 4 | 3 | 3 | 0 | 5 | 2 | 0 | 0 | 5.40 | 6.03 | 1.52 |
| current | LAA | 2 | Ben Joyce | Closer | 2.1 | 0 | 0 | 0 | 0 | 2 | 0 | 0 | 0 | 0.00 | 2.89 | 0.86 |
| current | LAA | 6 | Ryan Watson | Setup Man | 0.2 | 2 | 2 | 2 | 0 | 1 | 1 | 0 | 0 | 27.00 | 4.25 | 1.29 |
| current | BOS | 1 | Brayan Bello | Starter | 4.1 | 4 | 2 | 2 | 2 | 4 | 1 | 0 | 0 | 4.15 | 5.07 | 1.46 |
| current | BOS | 2 | Aroldis Chapman | Closer | 1.1 | 2 | 1 | 1 | 0 | 1 | 0 | 0 | 0 | 6.75 | 1.48 | 1.05 |
| current | BOS | 3 | Erik Miller | Setup Man | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 1.96 | 1.20 |
| current | BOS | 4 | Garrett Whitlock | Middle Reliever (High Leverage) | 1.1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 1.91 | 0.85 |
| current | BOS | 5 | Greg Weissert | Middle Reliever (High Leverage) | 1.0 | 2 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.00 | 3.54 | 1.20 |
| simulation | LAA | 1 | Grayson Rodriguez | Starter | 5.0 | 4 | 3 | 3 | 0 | 5 | 2 | 19 | 86 | 5.40 | 6.03 | 1.52 |
| simulation | LAA | 2 | Ben Joyce | Closer | 2.1 | 0 | 0 | 0 | 0 | 2 | 0 | 7 | 29 | 0.00 | 2.89 | 0.86 |
| simulation | LAA | 3 | Ryan Watson | Setup Man | 0.2 | 2 | 2 | 2 | 0 | 1 | 1 | 4 | 14 | 27.00 | 4.25 | 1.29 |
| simulation | BOS | 1 | Brayan Bello | Starter | 4.1 | 4 | 2 | 2 | 2 | 4 | 1 | 19 | 75 | 4.15 | 5.07 | 1.46 |
| simulation | BOS | 2 | Aroldis Chapman | Closer | 1.1 | 2 | 1 | 1 | 0 | 1 | 0 | 6 | 8 | 6.75 | 1.48 | 1.05 |
| simulation | BOS | 3 | Erik Miller | Setup Man | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 13 | 0.00 | 1.96 | 1.20 |
| simulation | BOS | 4 | Garrett Whitlock | Middle Reliever (High Leverage) | 1.1 | 1 | 0 | 0 | 0 | 0 | 0 | 5 | 20 | 0.00 | 1.91 | 0.85 |
| simulation | BOS | 5 | Greg Weissert | Middle Reliever (High Leverage) | 1.0 | 2 | 0 | 0 | 0 | 1 | 0 | 5 | 19 | 0.00 | 3.54 | 1.20 |
Pitch count summary
| team | pitcher | role | IP | R | H | BB | SO | BF | Pitches |
|---|---|---|---|---|---|---|---|---|---|
| LAA | Grayson Rodriguez | Starter | 5.0 | 3 | 4 | 0 | 5 | 19 | 86 |
| LAA | Ben Joyce | Closer | 2.1 | 0 | 0 | 0 | 2 | 7 | 29 |
| LAA | Ryan Watson | Setup Man | 0.2 | 2 | 2 | 0 | 1 | 4 | 14 |
| BOS | Brayan Bello | Starter | 4.1 | 2 | 4 | 2 | 4 | 19 | 75 |
| BOS | Aroldis Chapman | Closer | 1.1 | 1 | 2 | 0 | 1 | 6 | 8 |
| BOS | Erik Miller | Setup Man | 1.0 | 0 | 0 | 0 | 0 | 3 | 13 |
| BOS | Garrett Whitlock | Middle Reliever (High Leverage) | 1.1 | 0 | 1 | 0 | 0 | 5 | 20 |
| BOS | Greg Weissert | Middle Reliever (High Leverage) | 1.0 | 0 | 2 | 0 | 1 | 5 | 19 |
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_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. |
| 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. |
| 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. |
20260907_MIN@DET
20260907_MIN@DET.json • 2026-09-07
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 | DET | CURRENT_PITCHER_DUPLICATION | DET pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_payload | current | MIN | CURRENT_PITCHER_DUPLICATION | MIN pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_vs_final | cross-schema | DET | CURRENT_FINALIZED_MATCH_BOX | DET model-prediction batting totals differ from final simulation box score (AB: current=36, sim=34; H: current=8, sim=7; 2B: current=2, sim=3; HR: current=1, sim=0; BB: current=3, sim=2; SO: current=8, sim=9; HBP: current=0, sim=1). | New contract: model prediction totals may differ from scoring_simulation; simulation_stats_source links the simulation box score. | ||
| INFO | current_vs_final | cross-schema | DET | CURRENT_PLAYER_MATCH_BOX | DET current finalized hitter lines are model predictions and differ from the simulation box score: Colt Keith: AB current=3 box=4, 2B current=0 box=1, RBI current=0 box=4, R current=0 box=1; Kevin McGonigle: BB current=1 box=0; Riley Greene: AB current=4 box=3, H current=1 box=0, HR current=1 box=0, RBI current=1 box=0; Gleyber Torres: AB current=5 box=4, R current=1 box=0, BB current=1 box=0, SO current=1 box=0; Zach McKinstry: H current=1 box=2, 2B current=0 box=1, R current=0 box=1, SO current=1 box=0; Dillon Dingler: AB current=5 box=4, H current=1 box=0, RBI current=1 box=0, R current=1 box=0; John Peck: H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0, SO current=1 box=2; Max Clark: AB current=4 box=3, H current=1 box=0, 2B current=1 box=0, RBI 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 | MIN | CURRENT_FINALIZED_MATCH_BOX | MIN model-prediction batting totals differ from final simulation box score (AB: current=34, sim=33; H: current=8, sim=6; 2B: current=2, sim=0; SO: current=7, sim=5). | New contract: model prediction totals may differ from scoring_simulation; simulation_stats_source links the simulation box score. | ||
| INFO | current_vs_final | cross-schema | MIN | CURRENT_PLAYER_MATCH_BOX | MIN current finalized hitter lines are model predictions and differ from the simulation box score: Luke Keaschall: RBI current=0 box=2, BB current=1 box=0, SO current=0 box=1; Kody Clemens: AB current=4 box=3, HR current=1 box=0, BB current=0 box=1, SO current=1 box=0; Brooks Lee: AB current=4 box=3, H current=1 box=0, RBI current=1 box=0, BB current=0 box=1; Royce Lewis: H current=1 box=2, R current=0 box=1, SO current=1 box=0; Josh Bell: H current=1 box=0, R current=1 box=0, SO current=1 box=0; Ryan Jeffers: H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0, R current=1 box=0; Trevor Larnach: AB current=3 box=4, R current=0 box=1, SO current=1 box=0; Kaelen Culpepper: 2B current=1 box=0, HR current=0 box=1, SO current=1 box=2 | 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 | DET | BATTING_REALISM | current:DET hitter lines pass basic baseball constraints. | |||
| PASS | batting | current | MIN | BATTING_REALISM | current:MIN hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | DET | BATTING_REALISM | simulation:DET hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | MIN | BATTING_REALISM | simulation:MIN hitter lines pass basic baseball constraints. | |||
| PASS | batting_totals | current | DET | BATTING_TOTALS_SUM | current:DET batting totals equal summed player lines. | |||
| PASS | batting_totals | current | MIN | BATTING_TOTALS_SUM | current:MIN batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | DET | BATTING_TOTALS_SUM | simulation:DET batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | MIN | BATTING_TOTALS_SUM | simulation:MIN batting totals equal summed player lines. | |||
| PASS | boxscore_crosscheck | simulation | DET | BAT_PITCH_BB_MATCH | simulation:DET batting walks match MIN pitching: 2. | |||
| PASS | boxscore_crosscheck | simulation | DET | BAT_PITCH_HR_MATCH | simulation:DET batting home runs match MIN pitching: 0. | |||
| PASS | boxscore_crosscheck | simulation | DET | BAT_PITCH_H_MATCH | simulation:DET batting hits match MIN pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | DET | BAT_PITCH_SO_MATCH | simulation:DET batting strikeouts match MIN pitching: 9. | |||
| PASS | boxscore_crosscheck | simulation | DET | PA_BF_MATCH | simulation:DET PA=37 matches MIN BF=37. | |||
| PASS | boxscore_crosscheck | simulation | DET | RUNS_MATCH_FINAL | simulation:DET runs match final score and opposing pitching runs: 4. | |||
| PASS | boxscore_crosscheck | simulation | MIN | BAT_PITCH_BB_MATCH | simulation:MIN batting walks match DET pitching: 3. | |||
| PASS | boxscore_crosscheck | simulation | MIN | BAT_PITCH_HR_MATCH | simulation:MIN batting home runs match DET pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | MIN | BAT_PITCH_H_MATCH | simulation:MIN batting hits match DET pitching: 6. | |||
| PASS | boxscore_crosscheck | simulation | MIN | BAT_PITCH_SO_MATCH | simulation:MIN batting strikeouts match DET pitching: 5. | |||
| PASS | boxscore_crosscheck | simulation | MIN | PA_BF_MATCH | simulation:MIN PA=36 matches DET BF=36. | |||
| PASS | boxscore_crosscheck | simulation | MIN | RUNS_MATCH_FINAL | simulation:MIN runs match final score and opposing pitching runs: 5. | |||
| PASS | confidence_calibration | CONFIDENCE_CALIBRATION_APPLIED | Empirical confidence blend verified: 0.624 -> 0.582 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.624052, 'sample_size': 516, 'empirical_hit_rate': 0.5407, 'empirical_weight': 0.5, 'blended_confidence': 0.582376, 'published_confidence': 0.53, 'published_after_governors': True, 'governor_mode': 'shrinkage_not_clamp'} | ||||
| PASS | cross_schema | cross-schema | DET | CURRENT_FINALIZED_MATCH_BOX | DET current pitcher projected totals match final simulation pitching box score. | |||
| PASS | cross_schema | cross-schema | MIN | CURRENT_FINALIZED_MATCH_BOX | MIN current pitcher projected totals match final simulation pitching box score. | |||
| PASS | current_payload | current | DET | CURRENT_LINEUP_SHAPE | DET current lineup has 9 expected positions. | |||
| PASS | current_payload | current | DET | CURRENT_MODEL_ZERO_FALLBACK | DET current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | DET | CURRENT_NAMES_PRESENT | DET current hitter names are populated. | |||
| PASS | current_payload | current | DET | CURRENT_PREDICTIONS_MATCH_FINALIZED | DET hitter predictions mirror finalized stats. | |||
| PASS | current_payload | current | MIN | CURRENT_LINEUP_SHAPE | MIN current lineup has 9 expected positions. | |||
| PASS | current_payload | current | MIN | CURRENT_MODEL_ZERO_FALLBACK | MIN current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | MIN | CURRENT_NAMES_PRESENT | MIN current hitter names are populated. | |||
| PASS | current_payload | current | MIN | CURRENT_PREDICTIONS_MATCH_FINALIZED | MIN 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.530. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | confidence is in [0,1]: 0.530. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | home_win_probability is in [0,1]: 0.470. | |||||
| 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.571/0.762. | |||||
| PASS | final_decision | FINAL_DECISION_POLICY | Final decision policy preserved model ownership of the winner. | |||||
| 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: MIN 6, DET 7. | |||||
| PASS | innings | INNING_TOTAL_RUNS | Inning runs sum to final score: MIN 5 - DET 4. | |||||
| PASS | matchup_recency | GUARDRAIL_FINAL_WINNER_SYNC | Guardrail predicted_team matches final predicted winner: MIN. | |||||
| PASS | matchup_recency | MATCHUP_RECENCY_GUARDRAIL | Matchup recency guardrail applied for MIN; cap=0.53, reasons=latest same-matchup result beat the predicted side; predicted side recently lost this matchup by 5+ runs; opponent already produced an 8+ run breakout in this matchup; a prior same-side pick already missed against the actual result. | {'applied': True, 'confidence_cap': 0.53, 'winner_flipped': False, 'reasons': ['latest same-matchup result beat the predicted side', 'predicted side recently lost this matchup by 5+ runs', 'opponent already produced an 8+ run breakout in this matchup', 'a prior same-side pick already missed against the actual result', 'a prior same-side pick missed by 5+ actual runs', 'latest-series evidence cleared the reversal bar; confidence capped and runs shifted, winner unchanged by design'], 'signals': {'predicted_team': 'MIN', 'opponent_team': 'DET', 'h2h_net_margin': 18, 'opponent_breakout': True, 'opponent_blowout_win': True, 'split_recent_h2h': True, 'recent_h2h': [{'date': '2026-09-02', 'predicted_team_runs': 6, 'opponent_runs': 11, 'margin_for_predicted_team': -5, 'winner': 'DET'}, {'date': '2026-09-01', 'predicted_team_runs': 15, 'opponent_runs': 2, 'margin_for_predicted_team': 13, 'winner': 'MIN'}, {'date': '2026-08-31', 'predicted_team_runs': 11, 'opponent_runs': 1, 'margin_for_predicted_team': 10, 'winner': 'MIN'}], 'prediction_memory': {'available': True, 'reason': 'verified_prior_matchup_predictions_available', 'verification_policy': 'pregame_artifact_matched_to_one_official_final', 'verified_outcome_count': 3, 'consecutive_same_pick_count': 1, 'same_pick_actual_loss_count': 1, 'same_pick_blowout_loss_count': 1, 'prior_predictions': [{'date': '20260902', 'away': 'DET', 'home': 'MIN', 'game_number': 1, 'predicted_team': 'MIN', 'actual_winner': 'DET', 'actual_margin': 5, 'raw_pick_probability': 0.559116, 'artifact': '20260902_DET@MIN.json', 'verification': 'pregame_official_final'}, {'date': '20260901', 'away': 'DET', 'home': 'MIN', 'game_number': 1, 'predicted_team': 'DET', 'actual_winner': 'MIN', 'actual_margin': 13, 'raw_pick_probability': 0.53, 'artifact': '20260901_DET@MIN.json', 'verification': 'pregame_official_final'}, {'date': '20260831', 'away': 'DET', 'home': 'MIN', 'game_number': 1, 'predicted_team': 'MIN', 'actual_winner': 'MIN', 'actual_margin': 10, 'raw_pick_probability': 0.53, 'artifact': '20260831_DET@MIN.json', 'verification': 'pregame_official_final'}]}, 'guardrail_predicted_team': 'MIN', 'guardrail_opponent_team': 'DET', 'output_pre_simulation_winner': 'MIN', 'output_opponent_team': 'DET', 'simulation_score_winner': 'MIN', 'final_score_winner': 'MIN', 'pre_simulation_winner': 'MIN', 'winner_flipped_by_simulation': False, 'simulation_would_flip_winner': False}, 'hard_flip_suppressed': True, 'flip_authority': 'caps_confidence_and_shifts_runs_only', 'final_prediction_sync': {'pre_simulation_score': {'away_runs': 5, 'home_runs': 4, 'score_text': 'MIN 5 - 4 DET', 'winner': 'MIN'}, 'final_simulation_score': {'away_runs': 5, 'home_runs': 4, 'score_text': 'MIN 5 - 4 DET', 'winner': 'MIN'}, '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.046, 'recent_form_edge_home_minus_away': -0.55, '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': 5, 'home_runs': 4, 'winner': 'MIN', 'model_winner': 'MIN', 'simulation_winner': 'MIN', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 6, 'published_winner': 'MIN', 'published_winner_draw_share': 0.3333, 'draw_majority_team': 'DET', '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': 5, 'home_runs': 4}, 'simulation_score': {'away_runs': 5, 'home_runs': 4}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 1, 'final_margin': 1, 'winner_quality_edge': -0.257, 'winner': 'MIN', 'score_reviewed': {'away_runs': 5, 'home_runs': 4, '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-09-07. | |||||
| PASS | metadata | FILENAME_GAME_ID_MATCH | Filename matches game_id: 20260907_MIN@DET. | |||||
| PASS | metadata | FILENAME_TEAM_MATCH | Filename teams match JSON teams: MIN@DET. | |||||
| 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': -9.0, 'absolute_net_margin': 9.0, 'home_average_margin': -1.8, 'home_run_delta': -0.0519, 'away_run_delta': 0.0519, 'evidence': [{'game_id': None, 'home_margin': 5.0}, {'game_id': None, 'home_margin': -13.0}, {'game_id': None, 'home_margin': -10.0}, {'game_id': None, 'home_margin': 11.0}, {'game_id': None, 'home_margin': -2.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': 4, 'away_runs': 5, 'probability': 0.02160016427891228}, {'home_runs': 5, 'away_runs': 5, 'probability': 0.020550872171370346}, {'home_runs': 4, 'away_runs': 4, 'probability': 0.020442296481901948}, {'home_runs': 4, 'away_runs': 6, 'probability': 0.02034947051893916}, {'home_runs': 3, 'away_runs': 5, 'probability': 0.019775587296834814}], 'home_distribution': {'0': 0.047436626766995255, '1': 0.07839797476894789, '2': 0.11286035932877554, '3': 0.14152186824935384, '4': 0.15457925761496322, '5': 0.14707011125335787, '6': 0.12188300814155364, '7': 0.08798475870144247, '8': 0.05532447099528128, '9': 0.03030209338227005, '10': 0.01445684531323322, '11': 0.006007862377299019, '12': 0.0021747631065268877}, 'away_distribution': {'0': 0.033678741917511155, '1': 0.05631297599317734, '2': 0.08395175639818028, '3': 0.11158858796483583, '4': 0.13224475778516834, '5': 0.13973520517685156, '6': 0.1316442505476837, '7': 0.11057746866949959, '8': 0.08281329777393343, '9': 0.05529708053240537, '10': 0.03292099966910919, '11': 0.017474812071461204, '12': 0.008270289295514138, '13': 0.003489776204669071}, 'model': 'overdispersed_score_distribution', 'variance_multiplier': 1.75, '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.6538, 'recent_quality_edge': -0.48, 'season_weight': 0.65, 'recent_weight': 0.35, 'recent_reliability': 1.0, 'alignment': 'conflict', 'blended_quality_edge': 0.257} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Simulation flip control is implemented and its runtime trace passed. | {'pre_simulation_score': {'away_runs': 5, 'home_runs': 4, 'score_text': 'MIN 5 - 4 DET', 'winner': 'MIN'}, 'final_simulation_score': {'away_runs': 5, 'home_runs': 4, 'score_text': 'MIN 5 - 4 DET', 'winner': 'MIN'}, '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.046, 'recent_form_edge_home_minus_away': -0.55, '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': 5, 'home_runs': 4, 'winner': 'MIN', 'model_winner': 'MIN', 'simulation_winner': 'MIN', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 6, 'published_winner': 'MIN', 'published_winner_draw_share': 0.3333, 'draw_majority_team': 'DET', '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': 5, 'home_runs': 4}, 'simulation_score': {'away_runs': 5, 'home_runs': 4}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 1, 'final_margin': 1, 'winner_quality_edge': -0.257, 'winner': 'MIN', 'score_reviewed': {'away_runs': 5, 'home_runs': 4, '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: 158. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | home pitcher pitch-by-pitch count matches pitch_count_summary total: 139. | |||||
| PASS | pitch_count | simulation | DET | PITCH_COUNT_PITCHER_MATCH | DET pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | DET | PITCH_COUNT_TOTAL_MATCH | DET pitch_count_summary total, row sum, and pitching total all match: 139. | |||
| PASS | pitch_count | simulation | MIN | PITCH_COUNT_PITCHER_MATCH | MIN pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | MIN | PITCH_COUNT_TOTAL_MATCH | MIN pitch_count_summary total, row sum, and pitching total all match: 158. | |||
| 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 | current | DET | PITCHING_REALISM | current:DET pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | DET | STARTER_PRESENT | current:DET includes a starter/opener role. | |||
| PASS | pitching | current | MIN | PITCHING_REALISM | current:MIN pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | MIN | STARTER_PRESENT | current:MIN includes a starter/opener role. | |||
| PASS | pitching | simulation | DET | PITCHING_REALISM | simulation:DET pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | DET | STARTER_PRESENT | simulation:DET includes a starter/opener role. | |||
| PASS | pitching | simulation | MIN | PITCHING_REALISM | simulation:MIN pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | MIN | STARTER_PRESENT | simulation:MIN includes a starter/opener role. | |||
| PASS | pitching_totals | current | DET | PITCHING_TOTALS_SUM | current:DET pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | DET | PITCHING_TOTALS_SUM | current:DET pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | current | MIN | PITCHING_TOTALS_SUM | current:MIN pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | MIN | PITCHING_TOTALS_SUM | current:MIN pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | DET | PITCHING_TOTALS_SUM | simulation:DET pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | DET | PITCHING_TOTALS_SUM | simulation:DET pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | MIN | PITCHING_TOTALS_SUM | simulation:MIN pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | MIN | PITCHING_TOTALS_SUM | simulation:MIN pitching totals equal summed pitcher lines for available fields. | |||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Enhanced AI score matches enhanced target: MIN 5 - 4 DET. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation score matches final score: MIN 5 - 4 DET. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation winner matches final score: MIN wins 5-4. | |||||
| PASS | prediction_comparison | SIMULATION_WINNER_FLIP_TRACE | Simulation decision is explicit: model=MIN, simulation=MIN, published=MIN. | |||||
| PASS | probability | CONFIDENCE_RANGE | Enhanced target confidence is in range: 0.530. | |||||
| PASS | recent_form | RECENT_FORM_RANGE | away recent_form record is coherent: 4/10 (0.400). | |||||
| PASS | recent_form | RECENT_FORM_RANGE | home recent_form record is coherent: 3/10 (0.300). | |||||
| 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): MIN wins 5-4. | |||||
| PASS | score | SCORE_NO_TIE | Final score has a clear winner: MIN wins 5-4. | |||||
| PASS | score | SCORE_STEP_FINAL_MATCH | simulation_result step matches final score: 5-4. | |||||
| 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 5-4, final 5-4 (delta 0). | |||||
| PASS | score | TOTAL_RUNS_MATCH | total_runs field matches final score total: 9. | |||||
| PASS | score | WINNER_FIELD_MATCH | winner field is consistent: MIN wins 5-4. | |||||
| PASS | score | cross-schema | CURRENT_SCORE_MATCHES_SIM | game.predicted_runs matches scoring_simulation.final_score. | ||||
| PASS | team_recent_performance | current | DET | RECENT_FORM_RANGE | DET recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | DET | TEAM_RECENT_RECORD | DET wins and win_pct agree: 3/10 = 0.300. | |||
| PASS | team_recent_performance | current | MIN | RECENT_FORM_RANGE | MIN recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | MIN | TEAM_RECENT_RECORD | MIN wins and win_pct agree: 4/10 = 0.400. |
Passed checks
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| PASS | batting | current | DET | BATTING_REALISM | current:DET hitter lines pass basic baseball constraints. | |||
| PASS | batting | current | MIN | BATTING_REALISM | current:MIN hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | DET | BATTING_REALISM | simulation:DET hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | MIN | BATTING_REALISM | simulation:MIN hitter lines pass basic baseball constraints. | |||
| PASS | batting_totals | current | DET | BATTING_TOTALS_SUM | current:DET batting totals equal summed player lines. | |||
| PASS | batting_totals | current | MIN | BATTING_TOTALS_SUM | current:MIN batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | DET | BATTING_TOTALS_SUM | simulation:DET batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | MIN | BATTING_TOTALS_SUM | simulation:MIN batting totals equal summed player lines. | |||
| PASS | boxscore_crosscheck | simulation | DET | BAT_PITCH_BB_MATCH | simulation:DET batting walks match MIN pitching: 2. | |||
| PASS | boxscore_crosscheck | simulation | DET | BAT_PITCH_HR_MATCH | simulation:DET batting home runs match MIN pitching: 0. | |||
| PASS | boxscore_crosscheck | simulation | DET | BAT_PITCH_H_MATCH | simulation:DET batting hits match MIN pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | DET | BAT_PITCH_SO_MATCH | simulation:DET batting strikeouts match MIN pitching: 9. | |||
| PASS | boxscore_crosscheck | simulation | DET | PA_BF_MATCH | simulation:DET PA=37 matches MIN BF=37. | |||
| PASS | boxscore_crosscheck | simulation | DET | RUNS_MATCH_FINAL | simulation:DET runs match final score and opposing pitching runs: 4. | |||
| PASS | boxscore_crosscheck | simulation | MIN | BAT_PITCH_BB_MATCH | simulation:MIN batting walks match DET pitching: 3. | |||
| PASS | boxscore_crosscheck | simulation | MIN | BAT_PITCH_HR_MATCH | simulation:MIN batting home runs match DET pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | MIN | BAT_PITCH_H_MATCH | simulation:MIN batting hits match DET pitching: 6. | |||
| PASS | boxscore_crosscheck | simulation | MIN | BAT_PITCH_SO_MATCH | simulation:MIN batting strikeouts match DET pitching: 5. | |||
| PASS | boxscore_crosscheck | simulation | MIN | PA_BF_MATCH | simulation:MIN PA=36 matches DET BF=36. | |||
| PASS | boxscore_crosscheck | simulation | MIN | RUNS_MATCH_FINAL | simulation:MIN runs match final score and opposing pitching runs: 5. | |||
| PASS | confidence_calibration | CONFIDENCE_CALIBRATION_APPLIED | Empirical confidence blend verified: 0.624 -> 0.582 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.624052, 'sample_size': 516, 'empirical_hit_rate': 0.5407, 'empirical_weight': 0.5, 'blended_confidence': 0.582376, 'published_confidence': 0.53, 'published_after_governors': True, 'governor_mode': 'shrinkage_not_clamp'} | ||||
| PASS | cross_schema | cross-schema | DET | CURRENT_FINALIZED_MATCH_BOX | DET current pitcher projected totals match final simulation pitching box score. | |||
| PASS | cross_schema | cross-schema | MIN | CURRENT_FINALIZED_MATCH_BOX | MIN current pitcher projected totals match final simulation pitching box score. | |||
| PASS | current_payload | current | DET | CURRENT_LINEUP_SHAPE | DET current lineup has 9 expected positions. | |||
| PASS | current_payload | current | DET | CURRENT_MODEL_ZERO_FALLBACK | DET current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | DET | CURRENT_NAMES_PRESENT | DET current hitter names are populated. | |||
| PASS | current_payload | current | DET | CURRENT_PREDICTIONS_MATCH_FINALIZED | DET hitter predictions mirror finalized stats. | |||
| PASS | current_payload | current | MIN | CURRENT_LINEUP_SHAPE | MIN current lineup has 9 expected positions. | |||
| PASS | current_payload | current | MIN | CURRENT_MODEL_ZERO_FALLBACK | MIN current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | MIN | CURRENT_NAMES_PRESENT | MIN current hitter names are populated. | |||
| PASS | current_payload | current | MIN | CURRENT_PREDICTIONS_MATCH_FINALIZED | MIN 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.530. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | confidence is in [0,1]: 0.530. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | home_win_probability is in [0,1]: 0.470. | |||||
| 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.571/0.762. | |||||
| PASS | final_decision | FINAL_DECISION_POLICY | Final decision policy preserved model ownership of the winner. | |||||
| 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: MIN 6, DET 7. | |||||
| PASS | innings | INNING_TOTAL_RUNS | Inning runs sum to final score: MIN 5 - DET 4. | |||||
| PASS | matchup_recency | GUARDRAIL_FINAL_WINNER_SYNC | Guardrail predicted_team matches final predicted winner: MIN. | |||||
| PASS | matchup_recency | MATCHUP_RECENCY_GUARDRAIL | Matchup recency guardrail applied for MIN; cap=0.53, reasons=latest same-matchup result beat the predicted side; predicted side recently lost this matchup by 5+ runs; opponent already produced an 8+ run breakout in this matchup; a prior same-side pick already missed against the actual result. | {'applied': True, 'confidence_cap': 0.53, 'winner_flipped': False, 'reasons': ['latest same-matchup result beat the predicted side', 'predicted side recently lost this matchup by 5+ runs', 'opponent already produced an 8+ run breakout in this matchup', 'a prior same-side pick already missed against the actual result', 'a prior same-side pick missed by 5+ actual runs', 'latest-series evidence cleared the reversal bar; confidence capped and runs shifted, winner unchanged by design'], 'signals': {'predicted_team': 'MIN', 'opponent_team': 'DET', 'h2h_net_margin': 18, 'opponent_breakout': True, 'opponent_blowout_win': True, 'split_recent_h2h': True, 'recent_h2h': [{'date': '2026-09-02', 'predicted_team_runs': 6, 'opponent_runs': 11, 'margin_for_predicted_team': -5, 'winner': 'DET'}, {'date': '2026-09-01', 'predicted_team_runs': 15, 'opponent_runs': 2, 'margin_for_predicted_team': 13, 'winner': 'MIN'}, {'date': '2026-08-31', 'predicted_team_runs': 11, 'opponent_runs': 1, 'margin_for_predicted_team': 10, 'winner': 'MIN'}], 'prediction_memory': {'available': True, 'reason': 'verified_prior_matchup_predictions_available', 'verification_policy': 'pregame_artifact_matched_to_one_official_final', 'verified_outcome_count': 3, 'consecutive_same_pick_count': 1, 'same_pick_actual_loss_count': 1, 'same_pick_blowout_loss_count': 1, 'prior_predictions': [{'date': '20260902', 'away': 'DET', 'home': 'MIN', 'game_number': 1, 'predicted_team': 'MIN', 'actual_winner': 'DET', 'actual_margin': 5, 'raw_pick_probability': 0.559116, 'artifact': '20260902_DET@MIN.json', 'verification': 'pregame_official_final'}, {'date': '20260901', 'away': 'DET', 'home': 'MIN', 'game_number': 1, 'predicted_team': 'DET', 'actual_winner': 'MIN', 'actual_margin': 13, 'raw_pick_probability': 0.53, 'artifact': '20260901_DET@MIN.json', 'verification': 'pregame_official_final'}, {'date': '20260831', 'away': 'DET', 'home': 'MIN', 'game_number': 1, 'predicted_team': 'MIN', 'actual_winner': 'MIN', 'actual_margin': 10, 'raw_pick_probability': 0.53, 'artifact': '20260831_DET@MIN.json', 'verification': 'pregame_official_final'}]}, 'guardrail_predicted_team': 'MIN', 'guardrail_opponent_team': 'DET', 'output_pre_simulation_winner': 'MIN', 'output_opponent_team': 'DET', 'simulation_score_winner': 'MIN', 'final_score_winner': 'MIN', 'pre_simulation_winner': 'MIN', 'winner_flipped_by_simulation': False, 'simulation_would_flip_winner': False}, 'hard_flip_suppressed': True, 'flip_authority': 'caps_confidence_and_shifts_runs_only', 'final_prediction_sync': {'pre_simulation_score': {'away_runs': 5, 'home_runs': 4, 'score_text': 'MIN 5 - 4 DET', 'winner': 'MIN'}, 'final_simulation_score': {'away_runs': 5, 'home_runs': 4, 'score_text': 'MIN 5 - 4 DET', 'winner': 'MIN'}, '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.046, 'recent_form_edge_home_minus_away': -0.55, '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': 5, 'home_runs': 4, 'winner': 'MIN', 'model_winner': 'MIN', 'simulation_winner': 'MIN', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 6, 'published_winner': 'MIN', 'published_winner_draw_share': 0.3333, 'draw_majority_team': 'DET', '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': 5, 'home_runs': 4}, 'simulation_score': {'away_runs': 5, 'home_runs': 4}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 1, 'final_margin': 1, 'winner_quality_edge': -0.257, 'winner': 'MIN', 'score_reviewed': {'away_runs': 5, 'home_runs': 4, '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-09-07. | |||||
| PASS | metadata | FILENAME_GAME_ID_MATCH | Filename matches game_id: 20260907_MIN@DET. | |||||
| PASS | metadata | FILENAME_TEAM_MATCH | Filename teams match JSON teams: MIN@DET. | |||||
| 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': -9.0, 'absolute_net_margin': 9.0, 'home_average_margin': -1.8, 'home_run_delta': -0.0519, 'away_run_delta': 0.0519, 'evidence': [{'game_id': None, 'home_margin': 5.0}, {'game_id': None, 'home_margin': -13.0}, {'game_id': None, 'home_margin': -10.0}, {'game_id': None, 'home_margin': 11.0}, {'game_id': None, 'home_margin': -2.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': 4, 'away_runs': 5, 'probability': 0.02160016427891228}, {'home_runs': 5, 'away_runs': 5, 'probability': 0.020550872171370346}, {'home_runs': 4, 'away_runs': 4, 'probability': 0.020442296481901948}, {'home_runs': 4, 'away_runs': 6, 'probability': 0.02034947051893916}, {'home_runs': 3, 'away_runs': 5, 'probability': 0.019775587296834814}], 'home_distribution': {'0': 0.047436626766995255, '1': 0.07839797476894789, '2': 0.11286035932877554, '3': 0.14152186824935384, '4': 0.15457925761496322, '5': 0.14707011125335787, '6': 0.12188300814155364, '7': 0.08798475870144247, '8': 0.05532447099528128, '9': 0.03030209338227005, '10': 0.01445684531323322, '11': 0.006007862377299019, '12': 0.0021747631065268877}, 'away_distribution': {'0': 0.033678741917511155, '1': 0.05631297599317734, '2': 0.08395175639818028, '3': 0.11158858796483583, '4': 0.13224475778516834, '5': 0.13973520517685156, '6': 0.1316442505476837, '7': 0.11057746866949959, '8': 0.08281329777393343, '9': 0.05529708053240537, '10': 0.03292099966910919, '11': 0.017474812071461204, '12': 0.008270289295514138, '13': 0.003489776204669071}, 'model': 'overdispersed_score_distribution', 'variance_multiplier': 1.75, '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.6538, 'recent_quality_edge': -0.48, 'season_weight': 0.65, 'recent_weight': 0.35, 'recent_reliability': 1.0, 'alignment': 'conflict', 'blended_quality_edge': 0.257} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Simulation flip control is implemented and its runtime trace passed. | {'pre_simulation_score': {'away_runs': 5, 'home_runs': 4, 'score_text': 'MIN 5 - 4 DET', 'winner': 'MIN'}, 'final_simulation_score': {'away_runs': 5, 'home_runs': 4, 'score_text': 'MIN 5 - 4 DET', 'winner': 'MIN'}, '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.046, 'recent_form_edge_home_minus_away': -0.55, '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': 5, 'home_runs': 4, 'winner': 'MIN', 'model_winner': 'MIN', 'simulation_winner': 'MIN', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 6, 'published_winner': 'MIN', 'published_winner_draw_share': 0.3333, 'draw_majority_team': 'DET', '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': 5, 'home_runs': 4}, 'simulation_score': {'away_runs': 5, 'home_runs': 4}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 1, 'final_margin': 1, 'winner_quality_edge': -0.257, 'winner': 'MIN', 'score_reviewed': {'away_runs': 5, 'home_runs': 4, '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: 158. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | home pitcher pitch-by-pitch count matches pitch_count_summary total: 139. | |||||
| PASS | pitch_count | simulation | DET | PITCH_COUNT_PITCHER_MATCH | DET pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | DET | PITCH_COUNT_TOTAL_MATCH | DET pitch_count_summary total, row sum, and pitching total all match: 139. | |||
| PASS | pitch_count | simulation | MIN | PITCH_COUNT_PITCHER_MATCH | MIN pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | MIN | PITCH_COUNT_TOTAL_MATCH | MIN pitch_count_summary total, row sum, and pitching total all match: 158. | |||
| 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 | current | DET | PITCHING_REALISM | current:DET pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | DET | STARTER_PRESENT | current:DET includes a starter/opener role. | |||
| PASS | pitching | current | MIN | PITCHING_REALISM | current:MIN pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | MIN | STARTER_PRESENT | current:MIN includes a starter/opener role. | |||
| PASS | pitching | simulation | DET | PITCHING_REALISM | simulation:DET pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | DET | STARTER_PRESENT | simulation:DET includes a starter/opener role. | |||
| PASS | pitching | simulation | MIN | PITCHING_REALISM | simulation:MIN pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | MIN | STARTER_PRESENT | simulation:MIN includes a starter/opener role. | |||
| PASS | pitching_totals | current | DET | PITCHING_TOTALS_SUM | current:DET pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | DET | PITCHING_TOTALS_SUM | current:DET pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | current | MIN | PITCHING_TOTALS_SUM | current:MIN pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | MIN | PITCHING_TOTALS_SUM | current:MIN pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | DET | PITCHING_TOTALS_SUM | simulation:DET pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | DET | PITCHING_TOTALS_SUM | simulation:DET pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | MIN | PITCHING_TOTALS_SUM | simulation:MIN pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | MIN | PITCHING_TOTALS_SUM | simulation:MIN pitching totals equal summed pitcher lines for available fields. | |||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Enhanced AI score matches enhanced target: MIN 5 - 4 DET. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation score matches final score: MIN 5 - 4 DET. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation winner matches final score: MIN wins 5-4. | |||||
| PASS | prediction_comparison | SIMULATION_WINNER_FLIP_TRACE | Simulation decision is explicit: model=MIN, simulation=MIN, published=MIN. | |||||
| PASS | probability | CONFIDENCE_RANGE | Enhanced target confidence is in range: 0.530. | |||||
| PASS | recent_form | RECENT_FORM_RANGE | away recent_form record is coherent: 4/10 (0.400). | |||||
| PASS | recent_form | RECENT_FORM_RANGE | home recent_form record is coherent: 3/10 (0.300). | |||||
| 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): MIN wins 5-4. | |||||
| PASS | score | SCORE_NO_TIE | Final score has a clear winner: MIN wins 5-4. | |||||
| PASS | score | SCORE_STEP_FINAL_MATCH | simulation_result step matches final score: 5-4. | |||||
| 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 5-4, final 5-4 (delta 0). | |||||
| PASS | score | TOTAL_RUNS_MATCH | total_runs field matches final score total: 9. | |||||
| PASS | score | WINNER_FIELD_MATCH | winner field is consistent: MIN wins 5-4. | |||||
| PASS | score | cross-schema | CURRENT_SCORE_MATCHES_SIM | game.predicted_runs matches scoring_simulation.final_score. | ||||
| PASS | team_recent_performance | current | DET | RECENT_FORM_RANGE | DET recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | DET | TEAM_RECENT_RECORD | DET wins and win_pct agree: 3/10 = 0.300. | |||
| PASS | team_recent_performance | current | MIN | RECENT_FORM_RANGE | MIN recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | MIN | TEAM_RECENT_RECORD | MIN wins and win_pct agree: 4/10 = 0.400. |
Info/context findings
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| INFO | current_payload | current | DET | CURRENT_PITCHER_DUPLICATION | DET pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_payload | current | MIN | CURRENT_PITCHER_DUPLICATION | MIN pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_vs_final | cross-schema | DET | CURRENT_FINALIZED_MATCH_BOX | DET model-prediction batting totals differ from final simulation box score (AB: current=36, sim=34; H: current=8, sim=7; 2B: current=2, sim=3; HR: current=1, sim=0; BB: current=3, sim=2; SO: current=8, sim=9; HBP: current=0, sim=1). | New contract: model prediction totals may differ from scoring_simulation; simulation_stats_source links the simulation box score. | ||
| INFO | current_vs_final | cross-schema | DET | CURRENT_PLAYER_MATCH_BOX | DET current finalized hitter lines are model predictions and differ from the simulation box score: Colt Keith: AB current=3 box=4, 2B current=0 box=1, RBI current=0 box=4, R current=0 box=1; Kevin McGonigle: BB current=1 box=0; Riley Greene: AB current=4 box=3, H current=1 box=0, HR current=1 box=0, RBI current=1 box=0; Gleyber Torres: AB current=5 box=4, R current=1 box=0, BB current=1 box=0, SO current=1 box=0; Zach McKinstry: H current=1 box=2, 2B current=0 box=1, R current=0 box=1, SO current=1 box=0; Dillon Dingler: AB current=5 box=4, H current=1 box=0, RBI current=1 box=0, R current=1 box=0; John Peck: H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0, SO current=1 box=2; Max Clark: AB current=4 box=3, H current=1 box=0, 2B current=1 box=0, RBI 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 | MIN | CURRENT_FINALIZED_MATCH_BOX | MIN model-prediction batting totals differ from final simulation box score (AB: current=34, sim=33; H: current=8, sim=6; 2B: current=2, sim=0; SO: current=7, sim=5). | New contract: model prediction totals may differ from scoring_simulation; simulation_stats_source links the simulation box score. | ||
| INFO | current_vs_final | cross-schema | MIN | CURRENT_PLAYER_MATCH_BOX | MIN current finalized hitter lines are model predictions and differ from the simulation box score: Luke Keaschall: RBI current=0 box=2, BB current=1 box=0, SO current=0 box=1; Kody Clemens: AB current=4 box=3, HR current=1 box=0, BB current=0 box=1, SO current=1 box=0; Brooks Lee: AB current=4 box=3, H current=1 box=0, RBI current=1 box=0, BB current=0 box=1; Royce Lewis: H current=1 box=2, R current=0 box=1, SO current=1 box=0; Josh Bell: H current=1 box=0, R current=1 box=0, SO current=1 box=0; Ryan Jeffers: H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0, R current=1 box=0; Trevor Larnach: AB current=3 box=4, R current=0 box=1, SO current=1 box=0; Kaelen Culpepper: 2B current=1 box=0, HR current=0 box=1, SO current=1 box=2 | 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.384264863525414 | 4.3812499123067745 | Base ML historical model prediction | |
| variance_applied | 4 | 4 | Deterministic baseline target (variance factor 1.0) | |
| enhanced_prediction | 5 | 4 | 0.530 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 5 | 4 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality | |
| fundamental_edge_target_review | 5 | 4 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments | |
| capped_target | 5 | 4 | Capped at max 12 realistic runs | |
| simulation_result | 5 | 4 | Final inning-by-inning simulation result |
Inning-by-inning linescore
| team | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | R | H |
|---|---|---|---|---|---|---|---|---|---|---|---|
| MIN | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 5 | 6 |
| DET | 2 | 0 | 0 | 2 | 0 | 0 | 0 | 0 | 0 | 4 | 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 | MIN | batting | 34 | 8 | 2 | 0 | 1 | 5 | 5 | 3 | 7 | 0 | 0 | 0 | 0 | |||||
| current | MIN | pitching | 7 | 0 | 4 | 2 | 9 | 9.0 | 4 | 0 | 0 | |||||||||
| current | DET | batting | 36 | 8 | 2 | 0 | 1 | 4 | 4 | 3 | 8 | 0 | 0 | 0 | 0 | |||||
| current | DET | pitching | 6 | 1 | 5 | 3 | 5 | 9.0 | 5 | 0 | 0 | |||||||||
| simulation | MIN | batting | 33 | 6 | 0 | 0 | 1 | 5 | 5 | 3 | 5 | 0 | 0 | |||||||
| simulation | MIN | pitching | 7 | 0 | 4 | 2 | 9 | 9.0 | 4 | 37 | 158 | |||||||||
| simulation | DET | batting | 34 | 7 | 3 | 0 | 0 | 4 | 4 | 2 | 9 | 0 | 1 | |||||||
| simulation | DET | pitching | 6 | 1 | 5 | 3 | 5 | 9.0 | 5 | 36 | 139 |
Batting lines - current + final simulation
| src | team | order | pos | name | PA | AB | H | 2B | 3B | HR | R | RBI | BB | SO | HBP | AVG |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| current | MIN | RF | Luke Keaschall | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0 | 0.250 | |
| current | MIN | 2B | Kody Clemens | 0 | 4 | 1 | 0 | 0 | 1 | 1 | 1 | 0 | 1 | 0 | 0.250 | |
| current | MIN | 3B | Brooks Lee | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.250 | |
| current | MIN | 1B | Royce Lewis | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0.250 | |
| current | MIN | DH | Josh Bell | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.250 | |
| current | MIN | C | Ryan Jeffers | 0 | 4 | 1 | 1 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 0.250 | |
| current | MIN | LF | Trevor Larnach | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.333 | |
| current | MIN | SS | Kaelen Culpepper | 0 | 4 | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 0.250 | |
| current | MIN | CF | Walker Jenkins | 0 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0.000 | |
| current | DET | DH | Colt Keith | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.333 | |
| current | DET | 3B | Kevin McGonigle | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0 | 0.250 | |
| current | DET | LF | Riley Greene | 0 | 4 | 1 | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 0 | 0.250 | |
| current | DET | 2B | Gleyber Torres | 0 | 5 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0.200 | |
| current | DET | RF | Zach McKinstry | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.250 | |
| current | DET | C | Dillon Dingler | 0 | 5 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 0.200 | |
| current | DET | SS | John Peck | 0 | 4 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0.250 | |
| current | DET | CF | Max Clark | 0 | 4 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0.250 | |
| current | DET | 1B | Spencer Torkelson | 0 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 | |
| simulation | MIN | 1 | RF | Luke Keaschall | 4 | 4 | 1 | 0 | 0 | 0 | 1 | 2 | 0 | 1 | 0 | 0.250 |
| simulation | MIN | 2 | 3B | Brooks Lee | 4 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0.000 |
| simulation | MIN | 3 | 2B | Kody Clemens | 4 | 3 | 1 | 0 | 0 | 0 | 1 | 1 | 1 | 0 | 0 | 0.333 |
| simulation | MIN | 4 | C | Ryan Jeffers | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.000 |
| simulation | MIN | 5 | DH | Josh Bell | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.000 |
| simulation | MIN | 6 | 1B | Royce Lewis | 4 | 4 | 2 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0.500 |
| simulation | MIN | 7 | LF | Trevor Larnach | 4 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0.250 |
| simulation | MIN | 8 | SS | Kaelen Culpepper | 4 | 4 | 1 | 0 | 0 | 1 | 1 | 1 | 0 | 2 | 0 | 0.250 |
| simulation | MIN | 9 | CF | Walker Jenkins | 4 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0.000 |
| simulation | DET | 1 | DH | Colt Keith | 5 | 4 | 1 | 1 | 0 | 0 | 1 | 4 | 1 | 1 | 0 | 0.250 |
| simulation | DET | 2 | 3B | Kevin McGonigle | 4 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0.250 |
| simulation | DET | 3 | 2B | Gleyber Torres | 4 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.250 |
| simulation | DET | 4 | LF | Riley Greene | 4 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0.000 |
| simulation | DET | 5 | C | Dillon Dingler | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.000 |
| simulation | DET | 6 | RF | Zach McKinstry | 4 | 4 | 2 | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0.500 |
| simulation | DET | 7 | 1B | Spencer Torkelson | 4 | 4 | 2 | 1 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.500 |
| simulation | DET | 8 | CF | Max Clark | 4 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 1 | 0.000 |
| simulation | DET | 9 | SS | John Peck | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.000 |
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 | MIN | 1 | Joe Ryan | Starter | 5.2 | 7 | 4 | 4 | 1 | 6 | 0 | 0 | 0 | 6.35 | 3.65 | 1.14 |
| current | MIN | 2 | A.J. Minter | Middle Reliever (High Leverage) | 1.0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 | 0 | 0.00 | 1.72 | 0.95 |
| current | MIN | 3 | Jeff Hoffman | Setup Man | 1.1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 3.81 | 1.39 |
| current | MIN | 4 | Yoendrys Gómez | Closer | 1.0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0.00 | 3.56 | 1.35 |
| current | DET | 1 | Troy Melton | Starter | 6.0 | 3 | 2 | 2 | 2 | 5 | 1 | 0 | 0 | 3.00 | 2.20 | 1.03 |
| current | DET | 2 | Kenley Jansen | Closer | 1.0 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 9.00 | 3.26 | 1.11 |
| current | DET | 3 | Kyle Finnegan | Middle Reliever (High Leverage) | 1.0 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 9.00 | 3.24 | 1.46 |
| current | DET | 4 | Tyler Holton | Setup Man | 1.0 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 9.00 | 2.82 | 1.27 |
| simulation | MIN | 1 | Joe Ryan | Starter | 5.2 | 7 | 4 | 4 | 1 | 6 | 0 | 26 | 108 | 6.35 | 3.65 | 1.14 |
| simulation | MIN | 2 | Yoendrys Gómez | Closer | 1.0 | 0 | 0 | 0 | 1 | 1 | 0 | 4 | 17 | 0.00 | 3.56 | 1.35 |
| simulation | MIN | 3 | Jeff Hoffman | Setup Man | 1.1 | 0 | 0 | 0 | 0 | 0 | 0 | 4 | 20 | 0.00 | 3.81 | 1.39 |
| simulation | MIN | 4 | A.J. Minter | Middle Reliever (High Leverage) | 1.0 | 0 | 0 | 0 | 0 | 2 | 0 | 3 | 13 | 0.00 | 1.72 | 0.95 |
| simulation | DET | 1 | Troy Melton | Starter | 6.0 | 3 | 2 | 2 | 2 | 5 | 1 | 23 | 93 | 3.00 | 2.20 | 1.03 |
| simulation | DET | 2 | Kenley Jansen | Closer | 1.0 | 1 | 1 | 1 | 0 | 0 | 0 | 4 | 16 | 9.00 | 3.26 | 1.11 |
| simulation | DET | 3 | Tyler Holton | Setup Man | 1.0 | 1 | 1 | 1 | 1 | 0 | 0 | 5 | 14 | 9.00 | 2.82 | 1.27 |
| simulation | DET | 4 | Kyle Finnegan | Middle Reliever (High Leverage) | 1.0 | 1 | 1 | 1 | 0 | 0 | 0 | 4 | 16 | 9.00 | 3.24 | 1.46 |
Pitch count summary
| team | pitcher | role | IP | R | H | BB | SO | BF | Pitches |
|---|---|---|---|---|---|---|---|---|---|
| MIN | Joe Ryan | Starter | 5.2 | 4 | 7 | 1 | 6 | 26 | 108 |
| MIN | A.J. Minter | Middle Reliever (High Leverage) | 1.0 | 0 | 0 | 0 | 2 | 3 | 13 |
| MIN | Jeff Hoffman | Setup Man | 1.1 | 0 | 0 | 0 | 0 | 4 | 20 |
| MIN | Yoendrys Gómez | Closer | 1.0 | 0 | 0 | 1 | 1 | 4 | 17 |
| DET | Troy Melton | Starter | 6.0 | 2 | 3 | 2 | 5 | 23 | 93 |
| DET | Kenley Jansen | Closer | 1.0 | 1 | 1 | 0 | 0 | 4 | 16 |
| DET | Kyle Finnegan | Middle Reliever (High Leverage) | 1.0 | 1 | 1 | 0 | 0 | 4 | 16 |
| DET | Tyler Holton | Setup Man | 1.0 | 1 | 1 | 1 | 0 | 5 | 14 |
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_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. |
| 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. |
| 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. |
20260907_NYM@MIA
20260907_NYM@MIA.json • 2026-09-07
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 | MIA | CURRENT_PITCHER_DUPLICATION | MIA pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_payload | current | NYM | CURRENT_PITCHER_DUPLICATION | NYM pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_vs_final | cross-schema | MIA | CURRENT_FINALIZED_MATCH_BOX | MIA model-prediction batting totals differ from final simulation box score (AB: current=32, sim=35; H: current=8, sim=11; HR: current=1, sim=2; BB: current=3, sim=5; SO: current=9, sim=5). | New contract: model prediction totals may differ from scoring_simulation; simulation_stats_source links the simulation box score. | ||
| INFO | current_vs_final | cross-schema | MIA | CURRENT_PLAYER_MATCH_BOX | MIA current finalized hitter lines are model predictions and differ from the simulation box score: Kyle Stowers: AB current=4 box=5, RBI current=1 box=0, R current=1 box=0, BB current=1 box=0; Griffin Conine: AB current=3 box=5, H current=1 box=2, BB current=1 box=0; Javier Sanoja: H current=1 box=0, BB current=0 box=1, SO current=0 box=1; Heriberto Hernández: HR current=1 box=0, RBI current=1 box=0, BB current=0 box=1, SO current=1 box=2; Otto Lopez: H current=1 box=2, 2B current=1 box=0, SO current=1 box=0; Jakob Marsee: AB current=4 box=3, 2B current=0 box=1, R current=1 box=0, SO current=1 box=0; Owen Caissie: H current=1 box=2, HR current=0 box=1, RBI current=1 box=2, R current=0 box=1; Graham Pauley: AB current=3 box=4 | New contract: compare model predictions separately; simulation_box_score_stats/scoring_simulation hold the simulation draw. | ||
| INFO | current_vs_final | cross-schema | NYM | CURRENT_FINALIZED_MATCH_BOX | NYM model-prediction batting totals differ from final simulation box score (H: current=8, sim=9; HR: current=1, sim=2; RBI: current=5, sim=4; BB: current=3, sim=1; SO: current=9, sim=2). | New contract: model prediction totals may differ from scoring_simulation; simulation_stats_source links the simulation box score. | ||
| INFO | current_vs_final | cross-schema | NYM | CURRENT_PLAYER_MATCH_BOX | NYM current finalized hitter lines are model predictions and differ from the simulation box score: Juan Soto: AB current=4 box=3, H current=1 box=2, HR current=1 box=2, RBI current=1 box=4; Carson Benge: H current=1 box=0, R current=1 box=0, SO current=1 box=0; A.J. Ewing: H current=1 box=2, 2B current=0 box=1, R current=0 box=1; Marcus Semien: H current=1 box=0, BB current=1 box=0, SO current=1 box=0; Brett Baty: AB current=3 box=4, 2B current=1 box=0, RBI current=1 box=0, SO current=1 box=0; Nick Morabito: AB current=3 box=4, H current=0 box=2, R current=0 box=1; Francisco Alvarez: RBI current=1 box=0, SO current=1 box=0; Bo Bichette: AB current=5 box=4, H current=1 box=0, RBI 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 | score_reconciliation | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. | |||||
| PASS | batting | current | MIA | BATTING_REALISM | current:MIA hitter lines pass basic baseball constraints. | |||
| PASS | batting | current | NYM | BATTING_REALISM | current:NYM hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | MIA | BATTING_REALISM | simulation:MIA hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | NYM | BATTING_REALISM | simulation:NYM hitter lines pass basic baseball constraints. | |||
| PASS | batting_totals | current | MIA | BATTING_TOTALS_SUM | current:MIA batting totals equal summed player lines. | |||
| PASS | batting_totals | current | NYM | BATTING_TOTALS_SUM | current:NYM batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | MIA | BATTING_TOTALS_SUM | simulation:MIA batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | NYM | BATTING_TOTALS_SUM | simulation:NYM batting totals equal summed player lines. | |||
| PASS | boxscore_crosscheck | simulation | MIA | BAT_PITCH_BB_MATCH | simulation:MIA batting walks match NYM pitching: 5. | |||
| PASS | boxscore_crosscheck | simulation | MIA | BAT_PITCH_HR_MATCH | simulation:MIA batting home runs match NYM pitching: 2. | |||
| PASS | boxscore_crosscheck | simulation | MIA | BAT_PITCH_H_MATCH | simulation:MIA batting hits match NYM pitching: 11. | |||
| PASS | boxscore_crosscheck | simulation | MIA | BAT_PITCH_SO_MATCH | simulation:MIA batting strikeouts match NYM pitching: 5. | |||
| PASS | boxscore_crosscheck | simulation | MIA | PA_BF_MATCH | simulation:MIA PA=40 matches NYM BF=40. | |||
| PASS | boxscore_crosscheck | simulation | MIA | RUNS_MATCH_FINAL | simulation:MIA runs match final score and opposing pitching runs: 5. | |||
| PASS | boxscore_crosscheck | simulation | NYM | BAT_PITCH_BB_MATCH | simulation:NYM batting walks match MIA pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | NYM | BAT_PITCH_HR_MATCH | simulation:NYM batting home runs match MIA pitching: 2. | |||
| PASS | boxscore_crosscheck | simulation | NYM | BAT_PITCH_H_MATCH | simulation:NYM batting hits match MIA pitching: 9. | |||
| PASS | boxscore_crosscheck | simulation | NYM | BAT_PITCH_SO_MATCH | simulation:NYM batting strikeouts match MIA pitching: 2. | |||
| PASS | boxscore_crosscheck | simulation | NYM | PA_BF_MATCH | simulation:NYM PA=37 matches MIA BF=37. | |||
| PASS | boxscore_crosscheck | simulation | NYM | RUNS_MATCH_FINAL | simulation:NYM runs match final score and opposing pitching runs: 4. | |||
| PASS | confidence_calibration | CONFIDENCE_CALIBRATION_APPLIED | Empirical confidence blend verified: 0.462 -> 0.512 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.461518, 'sample_size': 336, 'empirical_hit_rate': 0.5625, 'empirical_weight': 0.5, 'blended_confidence': 0.512009, 'published_confidence': 0.520771, 'published_after_governors': True, 'governor_mode': 'shrinkage_not_clamp'} | ||||
| PASS | cross_schema | cross-schema | MIA | CURRENT_FINALIZED_MATCH_BOX | MIA current pitcher projected totals match final simulation pitching box score. | |||
| PASS | cross_schema | cross-schema | NYM | CURRENT_FINALIZED_MATCH_BOX | NYM current pitcher projected totals match final simulation pitching box score. | |||
| PASS | current_payload | current | MIA | CURRENT_LINEUP_SHAPE | MIA current lineup has 9 expected positions. | |||
| PASS | current_payload | current | MIA | CURRENT_MODEL_ZERO_FALLBACK | MIA current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | MIA | CURRENT_NAMES_PRESENT | MIA current hitter names are populated. | |||
| PASS | current_payload | current | MIA | CURRENT_PREDICTIONS_MATCH_FINALIZED | MIA hitter predictions mirror finalized stats. | |||
| PASS | current_payload | current | NYM | CURRENT_LINEUP_SHAPE | NYM current lineup has 9 expected positions. | |||
| PASS | current_payload | current | NYM | CURRENT_MODEL_ZERO_FALLBACK | NYM current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | NYM | CURRENT_NAMES_PRESENT | NYM current hitter names are populated. | |||
| PASS | current_payload | current | NYM | CURRENT_PREDICTIONS_MATCH_FINALIZED | NYM 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.479. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | confidence is in [0,1]: 0.521. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | home_win_probability is in [0,1]: 0.521. | |||||
| 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.571/0.762. | |||||
| PASS | final_decision | FINAL_DECISION_POLICY | Final decision policy preserved model ownership of the winner. | |||||
| 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: NYM 9, MIA 11. | |||||
| PASS | innings | INNING_TOTAL_RUNS | Inning runs sum to final score: NYM 4 - MIA 5. | |||||
| PASS | matchup_recency | GUARDRAIL_FINAL_WINNER_SYNC | Guardrail predicted_team matches final predicted winner: MIA. | |||||
| PASS | matchup_recency | MATCHUP_RECENCY_GUARDRAIL | No stale repeat-pick pattern detected for MIA. | {'winner_confidence': 0.5207706, 'h2h_net_margin': 9, 'prediction_memory': {'available': True, 'reason': 'verified_prior_matchup_predictions_available', 'verification_policy': 'pregame_artifact_matched_to_one_official_final', 'verified_outcome_count': 4, 'consecutive_same_pick_count': 1, 'same_pick_actual_loss_count': 0, 'same_pick_blowout_loss_count': 0, 'prior_predictions': [{'date': '20260802', 'away': 'MIA', 'home': 'NYM', 'game_number': 1, 'predicted_team': 'MIA', 'actual_winner': 'MIA', 'actual_margin': 2, 'raw_pick_probability': 0.53, 'artifact': '20260802_MIA@NYM.json', 'verification': 'pregame_official_final'}, {'date': '20260801', 'away': 'MIA', 'home': 'NYM', 'game_number': 1, 'predicted_team': 'NYM', 'actual_winner': 'MIA', 'actual_margin': 4, 'raw_pick_probability': 0.53, 'artifact': '20260801_MIA@NYM.json', 'verification': 'pregame_official_final'}, {'date': '20260731', 'away': 'MIA', 'home': 'NYM', 'game_number': 1, 'predicted_team': 'NYM', 'actual_winner': 'MIA', 'actual_margin': 3, 'raw_pick_probability': 0.524732, 'artifact': '20260731_MIA@NYM.json', 'verification': 'pregame_official_final'}, {'date': '20260730', 'away': 'MIA', 'home': 'NYM', 'game_number': 1, 'predicted_team': 'NYM', 'actual_winner': 'NYM', 'actual_margin': 2, 'raw_pick_probability': 0.526346, 'artifact': '20260730_MIA@NYM.json', 'verification': 'pregame_official_final'}]}} | ||||
| PASS | metadata | DATE_PARSE | Date is valid ISO format: 2026-09-07. | |||||
| PASS | metadata | FILENAME_GAME_ID_MATCH | Filename matches game_id: 20260907_NYM@MIA. | |||||
| PASS | metadata | FILENAME_TEAM_MATCH | Filename teams match JSON teams: NYM@MIA. | |||||
| 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': -2.0, 'absolute_net_margin': 2.0, 'home_average_margin': -0.4, 'home_run_delta': -0.0115, 'away_run_delta': 0.0115, 'evidence': [{'game_id': None, 'home_margin': 2.0}, {'game_id': None, 'home_margin': 4.0}, {'game_id': None, 'home_margin': 3.0}, {'game_id': None, 'home_margin': -2.0}, {'game_id': None, 'home_margin': -9.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': 4, 'away_runs': 4, 'probability': 0.025644923384405213}, {'home_runs': 4, 'away_runs': 3, 'probability': 0.02438330309633987}, {'home_runs': 3, 'away_runs': 4, 'probability': 0.024020053169706564}, {'home_runs': 5, 'away_runs': 4, 'probability': 0.023694401979561134}, {'home_runs': 4, 'away_runs': 5, 'probability': 0.02324153082725313}], 'home_distribution': {'0': 0.05140482370348403, '1': 0.08467995171778815, '2': 0.1207186121833006, '3': 0.1489308852341302, '4': 0.15900552402680518, '5': 0.14691175897811204, '6': 0.11746752254510605, '7': 0.08128229636930945, '8': 0.0486733260819321, '9': 0.025223362955271156, '10': 0.011311803661439841, '11': 0.0043901325433212575}, 'away_distribution': {'0': 0.0539610572326909, '1': 0.08870047652598081, '2': 0.1256394166395915, '3': 0.1533487798337706, '4': 0.16128322296577563, '5': 0.14616807164092657, '6': 0.11414852307648647, '7': 0.07681438028970734, '8': 0.044541949469848616, '9': 0.02225616671678045, '10': 0.009582657501715166, '11': 0.00355529810672585}, 'model': 'overdispersed_score_distribution', 'variance_multiplier': 1.75, '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.508, 'recent_quality_edge': -0.112, 'season_weight': 0.65, 'recent_weight': 0.35, 'recent_reliability': 1.0, 'alignment': 'conflict', 'blended_quality_edge': 0.291} | ||||
| 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': 'NYM 4 - 5 MIA', 'winner': 'MIA'}, 'final_simulation_score': {'away_runs': 4, 'home_runs': 5, 'score_text': 'NYM 4 - 5 MIA', 'winner': 'MIA'}, '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.0386, 'recent_form_edge_home_minus_away': -0.042, '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': 'MIA', 'model_winner': 'MIA', 'simulation_winner': 'MIA', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 3, 'published_winner': 'MIA', 'published_winner_draw_share': 0.6667, 'draw_majority_team': 'MIA', '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.291, 'winner': 'MIA', '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: 150. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | home pitcher pitch-by-pitch count matches pitch_count_summary total: 144. | |||||
| PASS | pitch_count | simulation | MIA | PITCH_COUNT_PITCHER_MATCH | MIA pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | MIA | PITCH_COUNT_TOTAL_MATCH | MIA pitch_count_summary total, row sum, and pitching total all match: 144. | |||
| PASS | pitch_count | simulation | NYM | PITCH_COUNT_PITCHER_MATCH | NYM pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | NYM | PITCH_COUNT_TOTAL_MATCH | NYM pitch_count_summary total, row sum, and pitching total all match: 150. | |||
| 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 | current | MIA | PITCHING_REALISM | current:MIA pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | MIA | STARTER_PRESENT | current:MIA includes a starter/opener role. | |||
| PASS | pitching | current | NYM | PITCHING_REALISM | current:NYM pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | NYM | STARTER_PRESENT | current:NYM includes a starter/opener role. | |||
| PASS | pitching | simulation | MIA | PITCHING_REALISM | simulation:MIA pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | MIA | STARTER_PRESENT | simulation:MIA includes a starter/opener role. | |||
| PASS | pitching | simulation | NYM | PITCHING_REALISM | simulation:NYM pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | NYM | STARTER_PRESENT | simulation:NYM includes a starter/opener role. | |||
| PASS | pitching_totals | current | MIA | PITCHING_TOTALS_SUM | current:MIA pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | MIA | PITCHING_TOTALS_SUM | current:MIA pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | current | NYM | PITCHING_TOTALS_SUM | current:NYM pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | current | NYM | PITCHING_TOTALS_SUM | current:NYM pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | MIA | PITCHING_TOTALS_SUM | simulation:MIA pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | MIA | PITCHING_TOTALS_SUM | simulation:MIA pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | NYM | PITCHING_TOTALS_SUM | simulation:NYM pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | simulation | NYM | PITCHING_TOTALS_SUM | simulation:NYM pitching totals equal summed pitcher lines for available fields. | |||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Enhanced AI score matches enhanced target: NYM 4 - 5 MIA. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation score matches final score: NYM 4 - 5 MIA. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation winner matches final score: MIA wins 5-4. | |||||
| PASS | prediction_comparison | SIMULATION_WINNER_FLIP_TRACE | Simulation decision is explicit: model=MIA, simulation=MIA, published=MIA. | |||||
| PASS | probability | CONFIDENCE_RANGE | Enhanced target confidence is in range: 0.521. | |||||
| 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: 4/10 (0.400). | |||||
| 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): MIA wins 5-4. | |||||
| PASS | score | SCORE_NO_TIE | Final score has a clear winner: MIA 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: MIA wins 5-4. | |||||
| PASS | score | cross-schema | CURRENT_SCORE_MATCHES_SIM | game.predicted_runs matches scoring_simulation.final_score. | ||||
| PASS | team_recent_performance | current | MIA | RECENT_FORM_RANGE | MIA recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | MIA | TEAM_RECENT_RECORD | MIA wins and win_pct agree: 4/10 = 0.400. | |||
| PASS | team_recent_performance | current | NYM | RECENT_FORM_RANGE | NYM recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | NYM | TEAM_RECENT_RECORD | NYM wins and win_pct agree: 4/10 = 0.400. |
Passed checks
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| PASS | batting | current | MIA | BATTING_REALISM | current:MIA hitter lines pass basic baseball constraints. | |||
| PASS | batting | current | NYM | BATTING_REALISM | current:NYM hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | MIA | BATTING_REALISM | simulation:MIA hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | NYM | BATTING_REALISM | simulation:NYM hitter lines pass basic baseball constraints. | |||
| PASS | batting_totals | current | MIA | BATTING_TOTALS_SUM | current:MIA batting totals equal summed player lines. | |||
| PASS | batting_totals | current | NYM | BATTING_TOTALS_SUM | current:NYM batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | MIA | BATTING_TOTALS_SUM | simulation:MIA batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | NYM | BATTING_TOTALS_SUM | simulation:NYM batting totals equal summed player lines. | |||
| PASS | boxscore_crosscheck | simulation | MIA | BAT_PITCH_BB_MATCH | simulation:MIA batting walks match NYM pitching: 5. | |||
| PASS | boxscore_crosscheck | simulation | MIA | BAT_PITCH_HR_MATCH | simulation:MIA batting home runs match NYM pitching: 2. | |||
| PASS | boxscore_crosscheck | simulation | MIA | BAT_PITCH_H_MATCH | simulation:MIA batting hits match NYM pitching: 11. | |||
| PASS | boxscore_crosscheck | simulation | MIA | BAT_PITCH_SO_MATCH | simulation:MIA batting strikeouts match NYM pitching: 5. | |||
| PASS | boxscore_crosscheck | simulation | MIA | PA_BF_MATCH | simulation:MIA PA=40 matches NYM BF=40. | |||
| PASS | boxscore_crosscheck | simulation | MIA | RUNS_MATCH_FINAL | simulation:MIA runs match final score and opposing pitching runs: 5. | |||
| PASS | boxscore_crosscheck | simulation | NYM | BAT_PITCH_BB_MATCH | simulation:NYM batting walks match MIA pitching: 1. | |||
| PASS | boxscore_crosscheck | simulation | NYM | BAT_PITCH_HR_MATCH | simulation:NYM batting home runs match MIA pitching: 2. | |||
| PASS | boxscore_crosscheck | simulation | NYM | BAT_PITCH_H_MATCH | simulation:NYM batting hits match MIA pitching: 9. | |||
| PASS | boxscore_crosscheck | simulation | NYM | BAT_PITCH_SO_MATCH | simulation:NYM batting strikeouts match MIA pitching: 2. | |||
| PASS | boxscore_crosscheck | simulation | NYM | PA_BF_MATCH | simulation:NYM PA=37 matches MIA BF=37. | |||
| PASS | boxscore_crosscheck | simulation | NYM | RUNS_MATCH_FINAL | simulation:NYM runs match final score and opposing pitching runs: 4. | |||
| PASS | confidence_calibration | CONFIDENCE_CALIBRATION_APPLIED | Empirical confidence blend verified: 0.462 -> 0.512 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.461518, 'sample_size': 336, 'empirical_hit_rate': 0.5625, 'empirical_weight': 0.5, 'blended_confidence': 0.512009, 'published_confidence': 0.520771, 'published_after_governors': True, 'governor_mode': 'shrinkage_not_clamp'} | ||||
| PASS | cross_schema | cross-schema | MIA | CURRENT_FINALIZED_MATCH_BOX | MIA current pitcher projected totals match final simulation pitching box score. | |||
| PASS | cross_schema | cross-schema | NYM | CURRENT_FINALIZED_MATCH_BOX | NYM current pitcher projected totals match final simulation pitching box score. | |||
| PASS | current_payload | current | MIA | CURRENT_LINEUP_SHAPE | MIA current lineup has 9 expected positions. | |||
| PASS | current_payload | current | MIA | CURRENT_MODEL_ZERO_FALLBACK | MIA current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | MIA | CURRENT_NAMES_PRESENT | MIA current hitter names are populated. | |||
| PASS | current_payload | current | MIA | CURRENT_PREDICTIONS_MATCH_FINALIZED | MIA hitter predictions mirror finalized stats. | |||
| PASS | current_payload | current | NYM | CURRENT_LINEUP_SHAPE | NYM current lineup has 9 expected positions. | |||
| PASS | current_payload | current | NYM | CURRENT_MODEL_ZERO_FALLBACK | NYM current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | NYM | CURRENT_NAMES_PRESENT | NYM current hitter names are populated. | |||
| PASS | current_payload | current | NYM | CURRENT_PREDICTIONS_MATCH_FINALIZED | NYM 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.479. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | confidence is in [0,1]: 0.521. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | home_win_probability is in [0,1]: 0.521. | |||||
| 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.571/0.762. | |||||
| PASS | final_decision | FINAL_DECISION_POLICY | Final decision policy preserved model ownership of the winner. | |||||
| 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: NYM 9, MIA 11. | |||||
| PASS | innings | INNING_TOTAL_RUNS | Inning runs sum to final score: NYM 4 - MIA 5. | |||||
| PASS | matchup_recency | GUARDRAIL_FINAL_WINNER_SYNC | Guardrail predicted_team matches final predicted winner: MIA. | |||||
| PASS | matchup_recency | MATCHUP_RECENCY_GUARDRAIL | No stale repeat-pick pattern detected for MIA. | {'winner_confidence': 0.5207706, 'h2h_net_margin': 9, 'prediction_memory': {'available': True, 'reason': 'verified_prior_matchup_predictions_available', 'verification_policy': 'pregame_artifact_matched_to_one_official_final', 'verified_outcome_count': 4, 'consecutive_same_pick_count': 1, 'same_pick_actual_loss_count': 0, 'same_pick_blowout_loss_count': 0, 'prior_predictions': [{'date': '20260802', 'away': 'MIA', 'home': 'NYM', 'game_number': 1, 'predicted_team': 'MIA', 'actual_winner': 'MIA', 'actual_margin': 2, 'raw_pick_probability': 0.53, 'artifact': '20260802_MIA@NYM.json', 'verification': 'pregame_official_final'}, {'date': '20260801', 'away': 'MIA', 'home': 'NYM', 'game_number': 1, 'predicted_team': 'NYM', 'actual_winner': 'MIA', 'actual_margin': 4, 'raw_pick_probability': 0.53, 'artifact': '20260801_MIA@NYM.json', 'verification': 'pregame_official_final'}, {'date': '20260731', 'away': 'MIA', 'home': 'NYM', 'game_number': 1, 'predicted_team': 'NYM', 'actual_winner': 'MIA', 'actual_margin': 3, 'raw_pick_probability': 0.524732, 'artifact': '20260731_MIA@NYM.json', 'verification': 'pregame_official_final'}, {'date': '20260730', 'away': 'MIA', 'home': 'NYM', 'game_number': 1, 'predicted_team': 'NYM', 'actual_winner': 'NYM', 'actual_margin': 2, 'raw_pick_probability': 0.526346, 'artifact': '20260730_MIA@NYM.json', 'verification': 'pregame_official_final'}]}} | ||||
| PASS | metadata | DATE_PARSE | Date is valid ISO format: 2026-09-07. | |||||
| PASS | metadata | FILENAME_GAME_ID_MATCH | Filename matches game_id: 20260907_NYM@MIA. | |||||
| PASS | metadata | FILENAME_TEAM_MATCH | Filename teams match JSON teams: NYM@MIA. | |||||
| 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': -2.0, 'absolute_net_margin': 2.0, 'home_average_margin': -0.4, 'home_run_delta': -0.0115, 'away_run_delta': 0.0115, 'evidence': [{'game_id': None, 'home_margin': 2.0}, {'game_id': None, 'home_margin': 4.0}, {'game_id': None, 'home_margin': 3.0}, {'game_id': None, 'home_margin': -2.0}, {'game_id': None, 'home_margin': -9.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': 4, 'away_runs': 4, 'probability': 0.025644923384405213}, {'home_runs': 4, 'away_runs': 3, 'probability': 0.02438330309633987}, {'home_runs': 3, 'away_runs': 4, 'probability': 0.024020053169706564}, {'home_runs': 5, 'away_runs': 4, 'probability': 0.023694401979561134}, {'home_runs': 4, 'away_runs': 5, 'probability': 0.02324153082725313}], 'home_distribution': {'0': 0.05140482370348403, '1': 0.08467995171778815, '2': 0.1207186121833006, '3': 0.1489308852341302, '4': 0.15900552402680518, '5': 0.14691175897811204, '6': 0.11746752254510605, '7': 0.08128229636930945, '8': 0.0486733260819321, '9': 0.025223362955271156, '10': 0.011311803661439841, '11': 0.0043901325433212575}, 'away_distribution': {'0': 0.0539610572326909, '1': 0.08870047652598081, '2': 0.1256394166395915, '3': 0.1533487798337706, '4': 0.16128322296577563, '5': 0.14616807164092657, '6': 0.11414852307648647, '7': 0.07681438028970734, '8': 0.044541949469848616, '9': 0.02225616671678045, '10': 0.009582657501715166, '11': 0.00355529810672585}, 'model': 'overdispersed_score_distribution', 'variance_multiplier': 1.75, '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.508, 'recent_quality_edge': -0.112, 'season_weight': 0.65, 'recent_weight': 0.35, 'recent_reliability': 1.0, 'alignment': 'conflict', 'blended_quality_edge': 0.291} | ||||
| 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': 'NYM 4 - 5 MIA', 'winner': 'MIA'}, 'final_simulation_score': {'away_runs': 4, 'home_runs': 5, 'score_text': 'NYM 4 - 5 MIA', 'winner': 'MIA'}, '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.0386, 'recent_form_edge_home_minus_away': -0.042, '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': 'MIA', 'model_winner': 'MIA', 'simulation_winner': 'MIA', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 3, 'published_winner': 'MIA', 'published_winner_draw_share': 0.6667, 'draw_majority_team': 'MIA', '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.291, 'winner': 'MIA', '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: 150. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | home pitcher pitch-by-pitch count matches pitch_count_summary total: 144. | |||||
| PASS | pitch_count | simulation | MIA | PITCH_COUNT_PITCHER_MATCH | MIA pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | MIA | PITCH_COUNT_TOTAL_MATCH | MIA pitch_count_summary total, row sum, and pitching total all match: 144. | |||
| PASS | pitch_count | simulation | NYM | PITCH_COUNT_PITCHER_MATCH | NYM pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | NYM | PITCH_COUNT_TOTAL_MATCH | NYM pitch_count_summary total, row sum, and pitching total all match: 150. | |||
| 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 | current | MIA | PITCHING_REALISM | current:MIA pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | MIA | STARTER_PRESENT | current:MIA includes a starter/opener role. | |||
| PASS | pitching | current | NYM | PITCHING_REALISM | current:NYM pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | NYM | STARTER_PRESENT | current:NYM includes a starter/opener role. | |||
| PASS | pitching | simulation | MIA | PITCHING_REALISM | simulation:MIA pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | MIA | STARTER_PRESENT | simulation:MIA includes a starter/opener role. | |||
| PASS | pitching | simulation | NYM | PITCHING_REALISM | simulation:NYM pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | NYM | STARTER_PRESENT | simulation:NYM includes a starter/opener role. | |||
| PASS | pitching_totals | current | MIA | PITCHING_TOTALS_SUM | current:MIA pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | MIA | PITCHING_TOTALS_SUM | current:MIA pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | current | NYM | PITCHING_TOTALS_SUM | current:NYM pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | current | NYM | PITCHING_TOTALS_SUM | current:NYM pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | MIA | PITCHING_TOTALS_SUM | simulation:MIA pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | MIA | PITCHING_TOTALS_SUM | simulation:MIA pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | NYM | PITCHING_TOTALS_SUM | simulation:NYM pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | simulation | NYM | PITCHING_TOTALS_SUM | simulation:NYM pitching totals equal summed pitcher lines for available fields. | |||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Enhanced AI score matches enhanced target: NYM 4 - 5 MIA. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation score matches final score: NYM 4 - 5 MIA. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation winner matches final score: MIA wins 5-4. | |||||
| PASS | prediction_comparison | SIMULATION_WINNER_FLIP_TRACE | Simulation decision is explicit: model=MIA, simulation=MIA, published=MIA. | |||||
| PASS | probability | CONFIDENCE_RANGE | Enhanced target confidence is in range: 0.521. | |||||
| 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: 4/10 (0.400). | |||||
| 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): MIA wins 5-4. | |||||
| PASS | score | SCORE_NO_TIE | Final score has a clear winner: MIA 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: MIA wins 5-4. | |||||
| PASS | score | cross-schema | CURRENT_SCORE_MATCHES_SIM | game.predicted_runs matches scoring_simulation.final_score. | ||||
| PASS | team_recent_performance | current | MIA | RECENT_FORM_RANGE | MIA recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | MIA | TEAM_RECENT_RECORD | MIA wins and win_pct agree: 4/10 = 0.400. | |||
| PASS | team_recent_performance | current | NYM | RECENT_FORM_RANGE | NYM recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | NYM | TEAM_RECENT_RECORD | NYM wins and win_pct agree: 4/10 = 0.400. |
Info/context findings
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| INFO | current_payload | current | MIA | CURRENT_PITCHER_DUPLICATION | MIA pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_payload | current | NYM | CURRENT_PITCHER_DUPLICATION | NYM pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_vs_final | cross-schema | MIA | CURRENT_FINALIZED_MATCH_BOX | MIA model-prediction batting totals differ from final simulation box score (AB: current=32, sim=35; H: current=8, sim=11; HR: current=1, sim=2; BB: current=3, sim=5; SO: current=9, sim=5). | New contract: model prediction totals may differ from scoring_simulation; simulation_stats_source links the simulation box score. | ||
| INFO | current_vs_final | cross-schema | MIA | CURRENT_PLAYER_MATCH_BOX | MIA current finalized hitter lines are model predictions and differ from the simulation box score: Kyle Stowers: AB current=4 box=5, RBI current=1 box=0, R current=1 box=0, BB current=1 box=0; Griffin Conine: AB current=3 box=5, H current=1 box=2, BB current=1 box=0; Javier Sanoja: H current=1 box=0, BB current=0 box=1, SO current=0 box=1; Heriberto Hernández: HR current=1 box=0, RBI current=1 box=0, BB current=0 box=1, SO current=1 box=2; Otto Lopez: H current=1 box=2, 2B current=1 box=0, SO current=1 box=0; Jakob Marsee: AB current=4 box=3, 2B current=0 box=1, R current=1 box=0, SO current=1 box=0; Owen Caissie: H current=1 box=2, HR current=0 box=1, RBI current=1 box=2, R current=0 box=1; Graham Pauley: AB current=3 box=4 | New contract: compare model predictions separately; simulation_box_score_stats/scoring_simulation hold the simulation draw. | ||
| INFO | current_vs_final | cross-schema | NYM | CURRENT_FINALIZED_MATCH_BOX | NYM model-prediction batting totals differ from final simulation box score (H: current=8, sim=9; HR: current=1, sim=2; RBI: current=5, sim=4; BB: current=3, sim=1; SO: current=9, sim=2). | New contract: model prediction totals may differ from scoring_simulation; simulation_stats_source links the simulation box score. | ||
| INFO | current_vs_final | cross-schema | NYM | CURRENT_PLAYER_MATCH_BOX | NYM current finalized hitter lines are model predictions and differ from the simulation box score: Juan Soto: AB current=4 box=3, H current=1 box=2, HR current=1 box=2, RBI current=1 box=4; Carson Benge: H current=1 box=0, R current=1 box=0, SO current=1 box=0; A.J. Ewing: H current=1 box=2, 2B current=0 box=1, R current=0 box=1; Marcus Semien: H current=1 box=0, BB current=1 box=0, SO current=1 box=0; Brett Baty: AB current=3 box=4, 2B current=1 box=0, RBI current=1 box=0, SO current=1 box=0; Nick Morabito: AB current=3 box=4, H current=0 box=2, R current=0 box=1; Francisco Alvarez: RBI current=1 box=0, SO current=1 box=0; Bo Bichette: AB current=5 box=4, H current=1 box=0, RBI 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 | 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 | 3.495955470301921 | 4.81010339358365 | Base ML historical model prediction | |
| variance_applied | 3 | 5 | Deterministic baseline target (variance factor 1.0) | |
| enhanced_prediction | 4 | 5 | 0.521 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run) |
| 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 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| NYM | 0 | 0 | 0 | 0 | 3 | 0 | 1 | 0 | 0 | 4 | 9 |
| MIA | 0 | 2 | 0 | 0 | 1 | 2 | 0 | 0 | 0 | 5 | 11 |
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 | NYM | batting | 36 | 8 | 1 | 0 | 1 | 5 | 4 | 3 | 9 | 0 | 0 | 0 | 0 | |||||
| current | NYM | pitching | 11 | 2 | 5 | 5 | 5 | 8.0 | 5 | 0 | 0 | |||||||||
| current | MIA | batting | 32 | 8 | 2 | 0 | 1 | 5 | 5 | 3 | 9 | 0 | 0 | 0 | 0 | |||||
| current | MIA | pitching | 9 | 2 | 4 | 1 | 2 | 9.0 | 4 | 0 | 0 | |||||||||
| simulation | NYM | batting | 36 | 9 | 1 | 0 | 2 | 4 | 4 | 1 | 2 | 0 | 0 | |||||||
| simulation | NYM | pitching | 11 | 2 | 5 | 5 | 5 | 8.0 | 5 | 40 | 150 | |||||||||
| simulation | MIA | batting | 35 | 11 | 2 | 0 | 2 | 5 | 5 | 5 | 5 | 0 | 0 | |||||||
| simulation | MIA | pitching | 9 | 2 | 4 | 1 | 2 | 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 | NYM | DH | Juan Soto | 0 | 4 | 1 | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 0 | 0.250 | |
| current | NYM | RF | Carson Benge | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.250 | |
| current | NYM | CF | A.J. Ewing | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.250 | |
| current | NYM | 2B | Marcus Semien | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0.250 | |
| current | NYM | 1B | Brett Baty | 0 | 3 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0.333 | |
| current | NYM | LF | Nick Morabito | 0 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 | |
| current | NYM | C | Francisco Alvarez | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0.250 | |
| current | NYM | 3B | Bo Bichette | 0 | 5 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 0.200 | |
| current | NYM | SS | Francisco Lindor | 0 | 5 | 1 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 0.200 | |
| current | MIA | DH | Kyle Stowers | 0 | 4 | 1 | 1 | 0 | 0 | 1 | 1 | 1 | 2 | 0 | 0.250 | |
| current | MIA | 1B | Griffin Conine | 0 | 3 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0.333 | |
| current | MIA | 2B | Javier Sanoja | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.333 | |
| current | MIA | LF | Heriberto Hernández | 0 | 4 | 1 | 0 | 0 | 1 | 1 | 1 | 0 | 1 | 0 | 0.250 | |
| current | MIA | SS | Otto Lopez | 0 | 5 | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 0.200 | |
| current | MIA | CF | Jakob Marsee | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0.250 | |
| current | MIA | RF | Owen Caissie | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0.333 | |
| current | MIA | 3B | Graham Pauley | 0 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 | |
| current | MIA | C | Joe Mack | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0.333 | |
| simulation | NYM | 1 | SS | Francisco Lindor | 5 | 5 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0.200 |
| simulation | NYM | 2 | DH | Juan Soto | 4 | 3 | 2 | 0 | 0 | 2 | 1 | 4 | 1 | 0 | 0 | 0.667 |
| simulation | NYM | 3 | 3B | Bo Bichette | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.000 |
| simulation | NYM | 4 | RF | Carson Benge | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.000 |
| simulation | NYM | 5 | 2B | Marcus Semien | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.000 |
| simulation | NYM | 6 | CF | A.J. Ewing | 4 | 4 | 2 | 1 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.500 |
| simulation | NYM | 7 | C | Francisco Alvarez | 4 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.250 |
| simulation | NYM | 8 | 1B | Brett Baty | 4 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.250 |
| simulation | NYM | 9 | LF | Nick Morabito | 4 | 4 | 2 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.500 |
| simulation | MIA | 1 | DH | Kyle Stowers | 5 | 5 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.200 |
| simulation | MIA | 2 | LF | Heriberto Hernández | 5 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 2 | 0 | 0.250 |
| simulation | MIA | 3 | 1B | Griffin Conine | 5 | 5 | 2 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.400 |
| simulation | MIA | 4 | SS | Otto Lopez | 5 | 5 | 2 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0.400 |
| simulation | MIA | 5 | CF | Jakob Marsee | 4 | 3 | 1 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0.333 |
| simulation | MIA | 6 | 2B | Javier Sanoja | 4 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0.000 |
| simulation | MIA | 7 | RF | Owen Caissie | 4 | 3 | 2 | 0 | 0 | 1 | 1 | 2 | 1 | 0 | 0 | 0.667 |
| simulation | MIA | 8 | 3B | Graham Pauley | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 |
| simulation | MIA | 9 | C | Joe Mack | 4 | 3 | 2 | 0 | 0 | 1 | 1 | 2 | 1 | 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 | NYM | 1 | Jonah Tong | Starter | 3.1 | 8 | 3 | 3 | 1 | 5 | 1 | 0 | 0 | 8.10 | 3.60 | 1.50 |
| current | NYM | 3 | Daniel Duarte | Setup Man | 2.0 | 0 | 0 | 0 | 3 | 0 | 0 | 0 | 0 | 0.00 | 2.08 | 0.77 |
| current | NYM | 4 | Nathan Lavender | Middle Reliever (High Leverage) | 1.2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.62 |
| current | NYM | 6 | Kodai Senga | Closer | 1.0 | 3 | 2 | 2 | 1 | 0 | 1 | 0 | 0 | 18.00 | 7.11 | 1.60 |
| current | MIA | 1 | Eury Pérez | Starter | 5.1 | 7 | 3 | 3 | 1 | 1 | 1 | 0 | 0 | 5.06 | 3.72 | 1.18 |
| current | MIA | 2 | Calvin Faucher | Closer | 1.1 | 1 | 1 | 1 | 0 | 1 | 1 | 0 | 0 | 6.75 | 3.73 | 1.33 |
| current | MIA | 3 | Michael Petersen | Middle Reliever (High Leverage) | 1.1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 3.30 | 1.13 |
| current | MIA | 4 | Tyler Zuber | Setup Man | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 4.36 | 1.36 |
| simulation | NYM | 1 | Jonah Tong | Starter | 3.1 | 8 | 3 | 3 | 1 | 5 | 1 | 19 | 70 | 8.10 | 3.60 | 1.50 |
| simulation | NYM | 2 | Kodai Senga | Closer | 1.0 | 3 | 2 | 2 | 1 | 0 | 1 | 7 | 26 | 18.00 | 7.11 | 1.60 |
| simulation | NYM | 3 | Daniel Duarte | Setup Man | 2.0 | 0 | 0 | 0 | 3 | 0 | 0 | 9 | 33 | 0.00 | 2.08 | 0.77 |
| simulation | NYM | 4 | Nathan Lavender | Middle Reliever (High Leverage) | 1.2 | 0 | 0 | 0 | 0 | 0 | 0 | 5 | 21 | 0.00 | 0.00 | 0.62 |
| simulation | MIA | 1 | Eury Pérez | Starter | 5.1 | 7 | 3 | 3 | 1 | 1 | 1 | 24 | 92 | 5.06 | 3.72 | 1.18 |
| simulation | MIA | 2 | Calvin Faucher | Closer | 1.1 | 1 | 1 | 1 | 0 | 1 | 1 | 5 | 19 | 6.75 | 3.73 | 1.33 |
| simulation | MIA | 3 | Tyler Zuber | Setup Man | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 13 | 0.00 | 4.36 | 1.36 |
| simulation | MIA | 4 | Michael Petersen | Middle Reliever (High Leverage) | 1.1 | 1 | 0 | 0 | 0 | 0 | 0 | 5 | 20 | 0.00 | 3.30 | 1.13 |
Pitch count summary
| team | pitcher | role | IP | R | H | BB | SO | BF | Pitches |
|---|---|---|---|---|---|---|---|---|---|
| NYM | Jonah Tong | Starter | 3.1 | 3 | 8 | 1 | 5 | 19 | 70 |
| NYM | Daniel Duarte | Setup Man | 2.0 | 0 | 0 | 3 | 0 | 9 | 33 |
| NYM | Nathan Lavender | Middle Reliever (High Leverage) | 1.2 | 0 | 0 | 0 | 0 | 5 | 21 |
| NYM | Kodai Senga | Closer | 1.0 | 2 | 3 | 1 | 0 | 7 | 26 |
| MIA | Eury Pérez | Starter | 5.1 | 3 | 7 | 1 | 1 | 24 | 92 |
| MIA | Calvin Faucher | Closer | 1.1 | 1 | 1 | 0 | 1 | 5 | 19 |
| MIA | Michael Petersen | Middle Reliever (High Leverage) | 1.1 | 0 | 1 | 0 | 0 | 5 | 20 |
| MIA | Tyler Zuber | Setup Man | 1.0 | 0 | 0 | 0 | 0 | 3 | 13 |
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_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. |
| 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. |
| 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. |
20260907_STL@SF
20260907_STL@SF.json • 2026-09-07
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 | SF | CURRENT_PITCHER_DUPLICATION | SF pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_payload | current | STL | CURRENT_PITCHER_DUPLICATION | STL pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_vs_final | cross-schema | SF | CURRENT_FINALIZED_MATCH_BOX | SF model pitcher projections differ from final simulation pitching box score (BB: current=2, sim=3). | New contract: model pitcher projections may differ; simulation_box_score_stats carries the simulation draw. | ||
| INFO | current_vs_final | cross-schema | SF | CURRENT_FINALIZED_MATCH_BOX | SF model-prediction batting totals differ from final simulation box score (AB: current=31, sim=33; H: current=8, sim=6; 3B: current=0, sim=1; HR: current=1, sim=2; RBI: current=4, sim=5; R: current=4, sim=5; BB: current=3, sim=6; SO: current=9, sim=5). | New contract: model prediction totals may differ from scoring_simulation; simulation_stats_source links the simulation box score. | ||
| INFO | current_vs_final | cross-schema | SF | CURRENT_PLAYER_MATCH_BOX | SF current finalized hitter lines are model predictions and differ from the simulation box score: Turner Hill: AB current=3 box=5, H current=1 box=2, 2B current=1 box=2, R current=0 box=1; Rafael Devers: AB current=4 box=3, BB current=1 box=2, SO current=1 box=0; Bryce Eldridge: H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0, R current=1 box=0; Osleivis Basabe: AB current=3 box=4, HR current=0 box=1, RBI current=0 box=1, R current=0 box=1; Andrew Knizner: AB current=3 box=4, H current=1 box=0; Christian Koss: BB current=0 box=1, SO current=1 box=0; Jung Hoo Lee: AB current=5 box=4, 3B current=0 box=1, RBI current=1 box=2, R current=0 box=1; Jonah Cox: AB current=3 box=4, H current=1 box=0, R current=1 box=0, BB current=0 box=1 | New contract: compare model predictions separately; simulation_box_score_stats/scoring_simulation hold the simulation draw. | ||
| INFO | current_vs_final | cross-schema | STL | CURRENT_FINALIZED_MATCH_BOX | STL model-prediction batting totals differ from final simulation box score (AB: current=33, sim=37; H: current=9, sim=10; 2B: current=2, sim=1; HR: current=1, sim=3; RBI: current=5, sim=7; R: current=5, sim=7; HBP: current=0, sim=1). | New contract: model prediction totals may differ from scoring_simulation; simulation_stats_source links the simulation box score. | ||
| INFO | current_vs_final | cross-schema | STL | CURRENT_PLAYER_MATCH_BOX | STL current finalized hitter lines are model predictions and differ from the simulation box score: Iván Herrera: AB current=4 box=3, RBI current=1 box=0, BB current=1 box=2; Bryan Torres: AB current=3 box=5, HR current=0 box=1, RBI current=0 box=2, R current=0 box=1; Leonardo Bernal: AB current=4 box=5, HR current=0 box=1, RBI current=1 box=3, BB current=1 box=0; Joshua Baez: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Thomas Saggese: AB current=3 box=4, 2B current=0 box=1, R current=1 box=0, BB current=1 box=0; Nolan Gorman: RBI current=1 box=0, R current=0 box=1, SO current=1 box=0; Alec Burleson: H current=1 box=2, 2B current=1 box=0, HR current=0 box=1, RBI current=1 box=2; Nathan Church: AB current=3 box=4, H current=1 box=2, R current=0 box=1, SO 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 | SF | BATTING_REALISM | current:SF hitter lines pass basic baseball constraints. | |||
| PASS | batting | current | STL | BATTING_REALISM | current:STL hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | SF | BATTING_REALISM | simulation:SF hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | STL | BATTING_REALISM | simulation:STL hitter lines pass basic baseball constraints. | |||
| PASS | batting_totals | current | SF | BATTING_TOTALS_SUM | current:SF batting totals equal summed player lines. | |||
| PASS | batting_totals | current | STL | BATTING_TOTALS_SUM | current:STL batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | SF | BATTING_TOTALS_SUM | simulation:SF batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | STL | BATTING_TOTALS_SUM | simulation:STL batting totals equal summed player lines. | |||
| PASS | boxscore_crosscheck | simulation | SF | BAT_PITCH_BB_MATCH | simulation:SF batting walks match STL pitching: 6. | |||
| PASS | boxscore_crosscheck | simulation | SF | BAT_PITCH_HR_MATCH | simulation:SF batting home runs match STL pitching: 2. | |||
| PASS | boxscore_crosscheck | simulation | SF | BAT_PITCH_H_MATCH | simulation:SF batting hits match STL pitching: 6. | |||
| PASS | boxscore_crosscheck | simulation | SF | BAT_PITCH_SO_MATCH | simulation:SF batting strikeouts match STL pitching: 5. | |||
| PASS | boxscore_crosscheck | simulation | SF | PA_BF_MATCH | simulation:SF PA=40 matches STL BF=40. | |||
| PASS | boxscore_crosscheck | simulation | SF | RUNS_MATCH_FINAL | simulation:SF runs match final score and opposing pitching runs: 5. | |||
| PASS | boxscore_crosscheck | simulation | STL | BAT_PITCH_BB_MATCH | simulation:STL batting walks match SF pitching: 3. | |||
| PASS | boxscore_crosscheck | simulation | STL | BAT_PITCH_HR_MATCH | simulation:STL batting home runs match SF pitching: 3. | |||
| PASS | boxscore_crosscheck | simulation | STL | BAT_PITCH_H_MATCH | simulation:STL batting hits match SF pitching: 10. | |||
| PASS | boxscore_crosscheck | simulation | STL | BAT_PITCH_SO_MATCH | simulation:STL batting strikeouts match SF pitching: 8. | |||
| PASS | boxscore_crosscheck | simulation | STL | PA_BF_MATCH | simulation:STL PA=41 matches SF BF=41. | |||
| PASS | boxscore_crosscheck | simulation | STL | RUNS_MATCH_FINAL | simulation:STL runs match final score and opposing pitching runs: 7. | |||
| PASS | confidence_calibration | CONFIDENCE_CALIBRATION_APPLIED | Empirical confidence blend verified: 0.685 -> 0.613 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.685068, 'sample_size': 563, 'empirical_hit_rate': 0.54, 'empirical_weight': 0.5, 'blended_confidence': 0.612534, 'published_confidence': 0.626764, 'published_after_governors': True, 'governor_mode': 'shrinkage_not_clamp'} | ||||
| PASS | cross_schema | cross-schema | STL | CURRENT_FINALIZED_MATCH_BOX | STL current pitcher projected totals match final simulation pitching box score. | |||
| PASS | current_payload | current | SF | CURRENT_LINEUP_SHAPE | SF current lineup has 9 expected positions. | |||
| PASS | current_payload | current | SF | CURRENT_MODEL_ZERO_FALLBACK | SF current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | SF | CURRENT_NAMES_PRESENT | SF current hitter names are populated. | |||
| PASS | current_payload | current | SF | CURRENT_PREDICTIONS_MATCH_FINALIZED | SF hitter predictions mirror finalized stats. | |||
| PASS | current_payload | current | STL | CURRENT_LINEUP_SHAPE | STL current lineup has 9 expected positions. | |||
| PASS | current_payload | current | STL | CURRENT_MODEL_ZERO_FALLBACK | STL current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | STL | CURRENT_NAMES_PRESENT | STL current hitter names are populated. | |||
| PASS | current_payload | current | STL | CURRENT_PREDICTIONS_MATCH_FINALIZED | STL hitter predictions mirror finalized stats. | |||
| PASS | data_leakage | H2H_DATA_LEAKAGE | No head-to-head rows are present, so no H2H date leakage was detected. | |||||
| 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.627. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | confidence is in [0,1]: 0.627. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | home_win_probability is in [0,1]: 0.373. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Final total runs 12 is reasonably close to low-score expected_total_runs 12.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.481/0.657. | |||||
| PASS | final_decision | FINAL_DECISION_POLICY | Final decision policy preserved model ownership of the winner. | |||||
| 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: STL 10, SF 6. | |||||
| PASS | innings | INNING_TOTAL_RUNS | Inning runs sum to final score: STL 7 - SF 5. | |||||
| PASS | matchup_recency | GUARDRAIL_FINAL_WINNER_SYNC | Guardrail predicted_team matches final predicted winner: STL. | |||||
| PASS | matchup_recency | MATCHUP_RECENCY_GUARDRAIL | No stale repeat-pick pattern detected for STL. | {'winner_confidence': 0.626764, 'h2h_net_margin': 0, 'prediction_memory': {'available': False, 'reason': 'no_verified_prior_matchup_predictions', 'verification_policy': 'pregame_artifact_matched_to_one_official_final', 'verified_outcome_count': 0, 'consecutive_same_pick_count': 0, 'same_pick_actual_loss_count': 0, 'same_pick_blowout_loss_count': 0, 'prior_predictions': []}} | ||||
| PASS | metadata | DATE_PARSE | Date is valid ISO format: 2026-09-07. | |||||
| PASS | metadata | FILENAME_GAME_ID_MATCH | Filename matches game_id: 20260907_STL@SF. | |||||
| PASS | metadata | FILENAME_TEAM_MATCH | Filename teams match JSON teams: STL@SF. | |||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | H2H base feature is implemented and its runtime trace passed. | {'method': 'h2h_net_margin_monotonic_v1', 'available': False, 'sample_size': 0, 'home_net_margin': 0.0, 'home_average_margin': 0.0, 'home_run_delta': 0.0, 'away_run_delta': 0.0, 'evidence': []} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Score distribution widening is implemented and its runtime trace passed. | {'most_likely': [{'home_runs': 5, 'away_runs': 7, 'probability': 0.016519689084748566}, {'home_runs': 5, 'away_runs': 6, 'probability': 0.016356539945526997}, {'home_runs': 6, 'away_runs': 7, 'probability': 0.015639194152050426}, {'home_runs': 4, 'away_runs': 7, 'probability': 0.01557194506866104}, {'home_runs': 6, 'away_runs': 6, 'probability': 0.015484740817551433}], 'home_distribution': {'0': 0.033170191698412704, '1': 0.05548722487586384, '2': 0.0828307366312896, '3': 0.11034268266669738, '4': 0.13117438866296743, '5': 0.13915796048852336, '6': 0.13174087906367535, '7': 0.11129779356902565, '8': 0.08390851752658857, '9': 0.05645196158689171, '10': 0.033892649646278195, '11': 0.018158731326664034, '12': 0.008681983964081097, '13': 0.0037042982930410033}, 'away_distribution': {'0': 0.018049799341649367, '1': 0.030611341182716537, '2': 0.047618503853986034, '3': 0.0679442239626119, '4': 0.08892272187980846, '5': 0.10674716784686576, '6': 0.11753937674931615, '7': 0.11871177923817718, '8': 0.10997340029884758, '9': 0.09344690049138706, '10': 0.0728325569564927, '11': 0.052067847213663435, '12': 0.03414263969129913, '13': 0.020535627435899866, '14': 0.011329278862417488, '15': 0.005732973911259181, '16': 0.0026609767050578344, '17': 0.0011328843785441275}, 'model': 'overdispersed_score_distribution', 'variance_multiplier': 1.75, '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.5938, 'recent_quality_edge': -0.372, 'season_weight': 0.65, 'recent_weight': 0.35, 'recent_reliability': 1.0, 'alignment': 'aligned', 'blended_quality_edge': -0.5161} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Simulation flip control is implemented and its runtime trace passed. | {'pre_simulation_score': {'away_runs': 7, 'home_runs': 5, 'score_text': 'STL 7 - 5 SF', 'winner': 'STL'}, 'final_simulation_score': {'away_runs': 7, 'home_runs': 5, 'score_text': 'STL 7 - 5 SF', 'winner': 'STL'}, '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.1027, 'recent_form_edge_home_minus_away': -0.372, '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': 7, 'home_runs': 5, 'winner': 'STL', 'model_winner': 'STL', 'simulation_winner': 'STL', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 1, 'published_winner': 'STL', 'published_winner_draw_share': 1.0, 'draw_majority_team': 'STL', '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': 7, 'home_runs': 5}, 'simulation_score': {'away_runs': 7, 'home_runs': 5}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 2, 'final_margin': 2, 'winner_quality_edge': 0.5161, 'winner': 'STL', 'score_reviewed': {'away_runs': 7, '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: 165. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | home pitcher pitch-by-pitch count matches pitch_count_summary total: 184. | |||||
| PASS | pitch_count | simulation | SF | PITCH_COUNT_PITCHER_MATCH | SF pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | SF | PITCH_COUNT_TOTAL_MATCH | SF pitch_count_summary total, row sum, and pitching total all match: 184. | |||
| PASS | pitch_count | simulation | STL | PITCH_COUNT_PITCHER_MATCH | STL pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | STL | PITCH_COUNT_TOTAL_MATCH | STL pitch_count_summary total, row sum, and pitching total all match: 165. | |||
| PASS | pitcher_opponent_strength | PITCHER_OPPONENT_STRENGTH_BOUNDS | Pitcher-opponent adjustment stayed inside supported bounds. | |||||
| PASS | pitching | PITCHER_APPEARANCE_COHERENT | All 9 pitchers in the box actually appeared. | |||||
| PASS | pitching | current | SF | PITCHING_REALISM | current:SF pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | SF | STARTER_PRESENT | current:SF includes a starter/opener role. | |||
| PASS | pitching | current | STL | PITCHING_REALISM | current:STL pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | STL | STARTER_PRESENT | current:STL includes a starter/opener role. | |||
| PASS | pitching | simulation | SF | PITCHING_REALISM | simulation:SF pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | SF | STARTER_PRESENT | simulation:SF includes a starter/opener role. | |||
| PASS | pitching | simulation | STL | PITCHING_REALISM | simulation:STL pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | STL | STARTER_PRESENT | simulation:STL includes a starter/opener role. | |||
| PASS | pitching_totals | current | SF | PITCHING_TOTALS_SUM | current:SF pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | SF | PITCHING_TOTALS_SUM | current:SF pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | current | STL | PITCHING_TOTALS_SUM | current:STL pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | STL | PITCHING_TOTALS_SUM | current:STL pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | SF | PITCHING_TOTALS_SUM | simulation:SF pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | SF | PITCHING_TOTALS_SUM | simulation:SF pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | STL | PITCHING_TOTALS_SUM | simulation:STL pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | STL | PITCHING_TOTALS_SUM | simulation:STL pitching totals equal summed pitcher lines for available fields. | |||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Enhanced AI score matches enhanced target: STL 7 - 5 SF. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation score matches final score: STL 7 - 5 SF. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation winner matches final score: STL wins 7-5. | |||||
| PASS | prediction_comparison | SIMULATION_WINNER_FLIP_TRACE | Simulation decision is explicit: model=STL, simulation=STL, published=STL. | |||||
| PASS | probability | CONFIDENCE_RANGE | Enhanced target confidence is in range: 0.627. | |||||
| PASS | recent_form | RECENT_FORM_RANGE | away recent_form record is coherent: 6/10 (0.600). | |||||
| PASS | recent_form | RECENT_FORM_RANGE | home recent_form record is coherent: 4/10 (0.400). | |||||
| 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): STL wins 7-5. | |||||
| PASS | score | SCORE_NO_TIE | Final score has a clear winner: STL wins 7-5. | |||||
| PASS | score | SCORE_STEP_FINAL_MATCH | simulation_result step matches final score: 7-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 7-5, final 7-5 (delta 0). | |||||
| PASS | score | TOTAL_RUNS_MATCH | total_runs field matches final score total: 12. | |||||
| PASS | score | WINNER_FIELD_MATCH | winner field is consistent: STL wins 7-5. | |||||
| PASS | score | cross-schema | CURRENT_SCORE_MATCHES_SIM | game.predicted_runs matches scoring_simulation.final_score. | ||||
| PASS | team_recent_performance | current | SF | RECENT_FORM_RANGE | SF recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | SF | TEAM_RECENT_RECORD | SF wins and win_pct agree: 4/10 = 0.400. | |||
| PASS | team_recent_performance | current | STL | RECENT_FORM_RANGE | STL recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | STL | TEAM_RECENT_RECORD | STL wins and win_pct agree: 5/10 = 0.500. |
Passed checks
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| PASS | batting | current | SF | BATTING_REALISM | current:SF hitter lines pass basic baseball constraints. | |||
| PASS | batting | current | STL | BATTING_REALISM | current:STL hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | SF | BATTING_REALISM | simulation:SF hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | STL | BATTING_REALISM | simulation:STL hitter lines pass basic baseball constraints. | |||
| PASS | batting_totals | current | SF | BATTING_TOTALS_SUM | current:SF batting totals equal summed player lines. | |||
| PASS | batting_totals | current | STL | BATTING_TOTALS_SUM | current:STL batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | SF | BATTING_TOTALS_SUM | simulation:SF batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | STL | BATTING_TOTALS_SUM | simulation:STL batting totals equal summed player lines. | |||
| PASS | boxscore_crosscheck | simulation | SF | BAT_PITCH_BB_MATCH | simulation:SF batting walks match STL pitching: 6. | |||
| PASS | boxscore_crosscheck | simulation | SF | BAT_PITCH_HR_MATCH | simulation:SF batting home runs match STL pitching: 2. | |||
| PASS | boxscore_crosscheck | simulation | SF | BAT_PITCH_H_MATCH | simulation:SF batting hits match STL pitching: 6. | |||
| PASS | boxscore_crosscheck | simulation | SF | BAT_PITCH_SO_MATCH | simulation:SF batting strikeouts match STL pitching: 5. | |||
| PASS | boxscore_crosscheck | simulation | SF | PA_BF_MATCH | simulation:SF PA=40 matches STL BF=40. | |||
| PASS | boxscore_crosscheck | simulation | SF | RUNS_MATCH_FINAL | simulation:SF runs match final score and opposing pitching runs: 5. | |||
| PASS | boxscore_crosscheck | simulation | STL | BAT_PITCH_BB_MATCH | simulation:STL batting walks match SF pitching: 3. | |||
| PASS | boxscore_crosscheck | simulation | STL | BAT_PITCH_HR_MATCH | simulation:STL batting home runs match SF pitching: 3. | |||
| PASS | boxscore_crosscheck | simulation | STL | BAT_PITCH_H_MATCH | simulation:STL batting hits match SF pitching: 10. | |||
| PASS | boxscore_crosscheck | simulation | STL | BAT_PITCH_SO_MATCH | simulation:STL batting strikeouts match SF pitching: 8. | |||
| PASS | boxscore_crosscheck | simulation | STL | PA_BF_MATCH | simulation:STL PA=41 matches SF BF=41. | |||
| PASS | boxscore_crosscheck | simulation | STL | RUNS_MATCH_FINAL | simulation:STL runs match final score and opposing pitching runs: 7. | |||
| PASS | confidence_calibration | CONFIDENCE_CALIBRATION_APPLIED | Empirical confidence blend verified: 0.685 -> 0.613 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.685068, 'sample_size': 563, 'empirical_hit_rate': 0.54, 'empirical_weight': 0.5, 'blended_confidence': 0.612534, 'published_confidence': 0.626764, 'published_after_governors': True, 'governor_mode': 'shrinkage_not_clamp'} | ||||
| PASS | cross_schema | cross-schema | STL | CURRENT_FINALIZED_MATCH_BOX | STL current pitcher projected totals match final simulation pitching box score. | |||
| PASS | current_payload | current | SF | CURRENT_LINEUP_SHAPE | SF current lineup has 9 expected positions. | |||
| PASS | current_payload | current | SF | CURRENT_MODEL_ZERO_FALLBACK | SF current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | SF | CURRENT_NAMES_PRESENT | SF current hitter names are populated. | |||
| PASS | current_payload | current | SF | CURRENT_PREDICTIONS_MATCH_FINALIZED | SF hitter predictions mirror finalized stats. | |||
| PASS | current_payload | current | STL | CURRENT_LINEUP_SHAPE | STL current lineup has 9 expected positions. | |||
| PASS | current_payload | current | STL | CURRENT_MODEL_ZERO_FALLBACK | STL current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | STL | CURRENT_NAMES_PRESENT | STL current hitter names are populated. | |||
| PASS | current_payload | current | STL | CURRENT_PREDICTIONS_MATCH_FINALIZED | STL hitter predictions mirror finalized stats. | |||
| PASS | data_leakage | H2H_DATA_LEAKAGE | No head-to-head rows are present, so no H2H date leakage was detected. | |||||
| 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.627. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | confidence is in [0,1]: 0.627. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | home_win_probability is in [0,1]: 0.373. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Final total runs 12 is reasonably close to low-score expected_total_runs 12.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.481/0.657. | |||||
| PASS | final_decision | FINAL_DECISION_POLICY | Final decision policy preserved model ownership of the winner. | |||||
| 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: STL 10, SF 6. | |||||
| PASS | innings | INNING_TOTAL_RUNS | Inning runs sum to final score: STL 7 - SF 5. | |||||
| PASS | matchup_recency | GUARDRAIL_FINAL_WINNER_SYNC | Guardrail predicted_team matches final predicted winner: STL. | |||||
| PASS | matchup_recency | MATCHUP_RECENCY_GUARDRAIL | No stale repeat-pick pattern detected for STL. | {'winner_confidence': 0.626764, 'h2h_net_margin': 0, 'prediction_memory': {'available': False, 'reason': 'no_verified_prior_matchup_predictions', 'verification_policy': 'pregame_artifact_matched_to_one_official_final', 'verified_outcome_count': 0, 'consecutive_same_pick_count': 0, 'same_pick_actual_loss_count': 0, 'same_pick_blowout_loss_count': 0, 'prior_predictions': []}} | ||||
| PASS | metadata | DATE_PARSE | Date is valid ISO format: 2026-09-07. | |||||
| PASS | metadata | FILENAME_GAME_ID_MATCH | Filename matches game_id: 20260907_STL@SF. | |||||
| PASS | metadata | FILENAME_TEAM_MATCH | Filename teams match JSON teams: STL@SF. | |||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | H2H base feature is implemented and its runtime trace passed. | {'method': 'h2h_net_margin_monotonic_v1', 'available': False, 'sample_size': 0, 'home_net_margin': 0.0, 'home_average_margin': 0.0, 'home_run_delta': 0.0, 'away_run_delta': 0.0, 'evidence': []} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Score distribution widening is implemented and its runtime trace passed. | {'most_likely': [{'home_runs': 5, 'away_runs': 7, 'probability': 0.016519689084748566}, {'home_runs': 5, 'away_runs': 6, 'probability': 0.016356539945526997}, {'home_runs': 6, 'away_runs': 7, 'probability': 0.015639194152050426}, {'home_runs': 4, 'away_runs': 7, 'probability': 0.01557194506866104}, {'home_runs': 6, 'away_runs': 6, 'probability': 0.015484740817551433}], 'home_distribution': {'0': 0.033170191698412704, '1': 0.05548722487586384, '2': 0.0828307366312896, '3': 0.11034268266669738, '4': 0.13117438866296743, '5': 0.13915796048852336, '6': 0.13174087906367535, '7': 0.11129779356902565, '8': 0.08390851752658857, '9': 0.05645196158689171, '10': 0.033892649646278195, '11': 0.018158731326664034, '12': 0.008681983964081097, '13': 0.0037042982930410033}, 'away_distribution': {'0': 0.018049799341649367, '1': 0.030611341182716537, '2': 0.047618503853986034, '3': 0.0679442239626119, '4': 0.08892272187980846, '5': 0.10674716784686576, '6': 0.11753937674931615, '7': 0.11871177923817718, '8': 0.10997340029884758, '9': 0.09344690049138706, '10': 0.0728325569564927, '11': 0.052067847213663435, '12': 0.03414263969129913, '13': 0.020535627435899866, '14': 0.011329278862417488, '15': 0.005732973911259181, '16': 0.0026609767050578344, '17': 0.0011328843785441275}, 'model': 'overdispersed_score_distribution', 'variance_multiplier': 1.75, '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.5938, 'recent_quality_edge': -0.372, 'season_weight': 0.65, 'recent_weight': 0.35, 'recent_reliability': 1.0, 'alignment': 'aligned', 'blended_quality_edge': -0.5161} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Simulation flip control is implemented and its runtime trace passed. | {'pre_simulation_score': {'away_runs': 7, 'home_runs': 5, 'score_text': 'STL 7 - 5 SF', 'winner': 'STL'}, 'final_simulation_score': {'away_runs': 7, 'home_runs': 5, 'score_text': 'STL 7 - 5 SF', 'winner': 'STL'}, '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.1027, 'recent_form_edge_home_minus_away': -0.372, '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': 7, 'home_runs': 5, 'winner': 'STL', 'model_winner': 'STL', 'simulation_winner': 'STL', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 1, 'published_winner': 'STL', 'published_winner_draw_share': 1.0, 'draw_majority_team': 'STL', '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': 7, 'home_runs': 5}, 'simulation_score': {'away_runs': 7, 'home_runs': 5}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 2, 'final_margin': 2, 'winner_quality_edge': 0.5161, 'winner': 'STL', 'score_reviewed': {'away_runs': 7, '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: 165. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | home pitcher pitch-by-pitch count matches pitch_count_summary total: 184. | |||||
| PASS | pitch_count | simulation | SF | PITCH_COUNT_PITCHER_MATCH | SF pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | SF | PITCH_COUNT_TOTAL_MATCH | SF pitch_count_summary total, row sum, and pitching total all match: 184. | |||
| PASS | pitch_count | simulation | STL | PITCH_COUNT_PITCHER_MATCH | STL pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | STL | PITCH_COUNT_TOTAL_MATCH | STL pitch_count_summary total, row sum, and pitching total all match: 165. | |||
| PASS | pitcher_opponent_strength | PITCHER_OPPONENT_STRENGTH_BOUNDS | Pitcher-opponent adjustment stayed inside supported bounds. | |||||
| PASS | pitching | PITCHER_APPEARANCE_COHERENT | All 9 pitchers in the box actually appeared. | |||||
| PASS | pitching | current | SF | PITCHING_REALISM | current:SF pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | SF | STARTER_PRESENT | current:SF includes a starter/opener role. | |||
| PASS | pitching | current | STL | PITCHING_REALISM | current:STL pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | STL | STARTER_PRESENT | current:STL includes a starter/opener role. | |||
| PASS | pitching | simulation | SF | PITCHING_REALISM | simulation:SF pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | SF | STARTER_PRESENT | simulation:SF includes a starter/opener role. | |||
| PASS | pitching | simulation | STL | PITCHING_REALISM | simulation:STL pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | STL | STARTER_PRESENT | simulation:STL includes a starter/opener role. | |||
| PASS | pitching_totals | current | SF | PITCHING_TOTALS_SUM | current:SF pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | SF | PITCHING_TOTALS_SUM | current:SF pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | current | STL | PITCHING_TOTALS_SUM | current:STL pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | STL | PITCHING_TOTALS_SUM | current:STL pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | SF | PITCHING_TOTALS_SUM | simulation:SF pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | SF | PITCHING_TOTALS_SUM | simulation:SF pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | STL | PITCHING_TOTALS_SUM | simulation:STL pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | STL | PITCHING_TOTALS_SUM | simulation:STL pitching totals equal summed pitcher lines for available fields. | |||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Enhanced AI score matches enhanced target: STL 7 - 5 SF. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation score matches final score: STL 7 - 5 SF. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation winner matches final score: STL wins 7-5. | |||||
| PASS | prediction_comparison | SIMULATION_WINNER_FLIP_TRACE | Simulation decision is explicit: model=STL, simulation=STL, published=STL. | |||||
| PASS | probability | CONFIDENCE_RANGE | Enhanced target confidence is in range: 0.627. | |||||
| PASS | recent_form | RECENT_FORM_RANGE | away recent_form record is coherent: 6/10 (0.600). | |||||
| PASS | recent_form | RECENT_FORM_RANGE | home recent_form record is coherent: 4/10 (0.400). | |||||
| 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): STL wins 7-5. | |||||
| PASS | score | SCORE_NO_TIE | Final score has a clear winner: STL wins 7-5. | |||||
| PASS | score | SCORE_STEP_FINAL_MATCH | simulation_result step matches final score: 7-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 7-5, final 7-5 (delta 0). | |||||
| PASS | score | TOTAL_RUNS_MATCH | total_runs field matches final score total: 12. | |||||
| PASS | score | WINNER_FIELD_MATCH | winner field is consistent: STL wins 7-5. | |||||
| PASS | score | cross-schema | CURRENT_SCORE_MATCHES_SIM | game.predicted_runs matches scoring_simulation.final_score. | ||||
| PASS | team_recent_performance | current | SF | RECENT_FORM_RANGE | SF recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | SF | TEAM_RECENT_RECORD | SF wins and win_pct agree: 4/10 = 0.400. | |||
| PASS | team_recent_performance | current | STL | RECENT_FORM_RANGE | STL recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | STL | TEAM_RECENT_RECORD | STL wins and win_pct agree: 5/10 = 0.500. |
Info/context findings
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| INFO | current_payload | current | SF | CURRENT_PITCHER_DUPLICATION | SF pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_payload | current | STL | CURRENT_PITCHER_DUPLICATION | STL pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_vs_final | cross-schema | SF | CURRENT_FINALIZED_MATCH_BOX | SF model pitcher projections differ from final simulation pitching box score (BB: current=2, sim=3). | New contract: model pitcher projections may differ; simulation_box_score_stats carries the simulation draw. | ||
| INFO | current_vs_final | cross-schema | SF | CURRENT_FINALIZED_MATCH_BOX | SF model-prediction batting totals differ from final simulation box score (AB: current=31, sim=33; H: current=8, sim=6; 3B: current=0, sim=1; HR: current=1, sim=2; RBI: current=4, sim=5; R: current=4, sim=5; BB: current=3, sim=6; SO: current=9, sim=5). | New contract: model prediction totals may differ from scoring_simulation; simulation_stats_source links the simulation box score. | ||
| INFO | current_vs_final | cross-schema | SF | CURRENT_PLAYER_MATCH_BOX | SF current finalized hitter lines are model predictions and differ from the simulation box score: Turner Hill: AB current=3 box=5, H current=1 box=2, 2B current=1 box=2, R current=0 box=1; Rafael Devers: AB current=4 box=3, BB current=1 box=2, SO current=1 box=0; Bryce Eldridge: H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0, R current=1 box=0; Osleivis Basabe: AB current=3 box=4, HR current=0 box=1, RBI current=0 box=1, R current=0 box=1; Andrew Knizner: AB current=3 box=4, H current=1 box=0; Christian Koss: BB current=0 box=1, SO current=1 box=0; Jung Hoo Lee: AB current=5 box=4, 3B current=0 box=1, RBI current=1 box=2, R current=0 box=1; Jonah Cox: AB current=3 box=4, H current=1 box=0, R current=1 box=0, BB current=0 box=1 | New contract: compare model predictions separately; simulation_box_score_stats/scoring_simulation hold the simulation draw. | ||
| INFO | current_vs_final | cross-schema | STL | CURRENT_FINALIZED_MATCH_BOX | STL model-prediction batting totals differ from final simulation box score (AB: current=33, sim=37; H: current=9, sim=10; 2B: current=2, sim=1; HR: current=1, sim=3; RBI: current=5, sim=7; R: current=5, sim=7; HBP: current=0, sim=1). | New contract: model prediction totals may differ from scoring_simulation; simulation_stats_source links the simulation box score. | ||
| INFO | current_vs_final | cross-schema | STL | CURRENT_PLAYER_MATCH_BOX | STL current finalized hitter lines are model predictions and differ from the simulation box score: Iván Herrera: AB current=4 box=3, RBI current=1 box=0, BB current=1 box=2; Bryan Torres: AB current=3 box=5, HR current=0 box=1, RBI current=0 box=2, R current=0 box=1; Leonardo Bernal: AB current=4 box=5, HR current=0 box=1, RBI current=1 box=3, BB current=1 box=0; Joshua Baez: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Thomas Saggese: AB current=3 box=4, 2B current=0 box=1, R current=1 box=0, BB current=1 box=0; Nolan Gorman: RBI current=1 box=0, R current=0 box=1, SO current=1 box=0; Alec Burleson: H current=1 box=2, 2B current=1 box=0, HR current=0 box=1, RBI current=1 box=2; Nathan Church: AB current=3 box=4, H current=1 box=2, R current=0 box=1, SO 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.260435939235608 | 4.775023119703036 | Base ML historical model prediction | |
| variance_applied | 4 | 5 | Deterministic baseline target (variance factor 1.0) | |
| enhanced_prediction | 7 | 5 | 0.627 | Enhanced ML with recent form, H2H, low-score analysis |
| embedded_savant_run_environment | 7 | 5 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality | |
| fundamental_edge_target_review | 7 | 5 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments | |
| capped_target | 7 | 5 | Capped at max 12 realistic runs | |
| simulation_result | 7 | 5 | Final inning-by-inning simulation result |
Inning-by-inning linescore
| team | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | R | H |
|---|---|---|---|---|---|---|---|---|---|---|---|
| STL | 0 | 0 | 2 | 2 | 0 | 0 | 3 | 0 | 0 | 7 | 10 |
| SF | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 2 | 1 | 5 | 6 |
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 | STL | batting | 33 | 9 | 2 | 0 | 1 | 5 | 5 | 3 | 8 | 0 | 0 | 0 | 0 | |||||
| current | STL | pitching | 6 | 2 | 5 | 6 | 5 | 9.0 | 5 | 0 | 0 | |||||||||
| current | SF | batting | 31 | 8 | 2 | 0 | 1 | 4 | 4 | 3 | 9 | 0 | 0 | 0 | 0 | |||||
| current | SF | pitching | 10 | 3 | 7 | 2 | 8 | 9.0 | 7 | 0 | 0 | |||||||||
| simulation | STL | batting | 37 | 10 | 1 | 0 | 3 | 7 | 7 | 3 | 8 | 0 | 1 | |||||||
| simulation | STL | pitching | 6 | 2 | 5 | 6 | 5 | 9.0 | 5 | 40 | 165 | |||||||||
| simulation | SF | batting | 33 | 6 | 2 | 1 | 2 | 5 | 5 | 6 | 5 | 0 | 1 | |||||||
| simulation | SF | pitching | 10 | 3 | 7 | 3 | 8 | 9.0 | 7 | 41 | 184 |
Batting lines - current + final simulation
| src | team | order | pos | name | PA | AB | H | 2B | 3B | HR | R | RBI | BB | SO | HBP | AVG |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| current | STL | C | Iván Herrera | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 0.250 | |
| current | STL | 2B | Bryan Torres | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.333 | |
| current | STL | DH | Leonardo Bernal | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 0.250 | |
| current | STL | LF | Joshua Baez | 0 | 3 | 1 | 0 | 0 | 1 | 1 | 1 | 0 | 1 | 0 | 0.333 | |
| current | STL | SS | Thomas Saggese | 0 | 3 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0.333 | |
| current | STL | 3B | Nolan Gorman | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0.250 | |
| current | STL | 1B | Alec Burleson | 0 | 4 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0.250 | |
| current | STL | CF | Nathan Church | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.333 | |
| current | STL | RF | Jordan Walker | 0 | 5 | 1 | 1 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.200 | |
| current | SF | LF | Turner Hill | 0 | 3 | 1 | 1 | 0 | 0 | 0 | 1 | 1 | 1 | 0 | 0.333 | |
| current | SF | DH | Rafael Devers | 0 | 4 | 1 | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 0 | 0.250 | |
| current | SF | 1B | Bryce Eldridge | 0 | 4 | 1 | 1 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 0.250 | |
| current | SF | 2B | Osleivis Basabe | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.333 | |
| current | SF | C | Andrew Knizner | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.333 | |
| current | SF | SS | Christian Koss | 0 | 3 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.333 | |
| current | SF | RF | Jung Hoo Lee | 0 | 5 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0.200 | |
| current | SF | CF | Jonah Cox | 0 | 3 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.333 | |
| current | SF | 3B | Shay Whitcomb | 0 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 | |
| simulation | STL | 1 | 2B | Bryan Torres | 5 | 5 | 1 | 0 | 0 | 1 | 1 | 2 | 0 | 1 | 0 | 0.200 |
| simulation | STL | 2 | C | Iván Herrera | 5 | 3 | 1 | 0 | 0 | 0 | 1 | 0 | 2 | 1 | 0 | 0.333 |
| simulation | STL | 3 | 1B | Alec Burleson | 5 | 4 | 2 | 0 | 0 | 1 | 1 | 2 | 1 | 0 | 0 | 0.500 |
| simulation | STL | 4 | RF | Jordan Walker | 5 | 5 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.200 |
| simulation | STL | 5 | DH | Leonardo Bernal | 5 | 5 | 1 | 0 | 0 | 1 | 1 | 3 | 0 | 0 | 0 | 0.200 |
| simulation | STL | 6 | 3B | Nolan Gorman | 4 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0.250 |
| simulation | STL | 7 | LF | Joshua Baez | 4 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 1 | 0.000 |
| simulation | STL | 8 | SS | Thomas Saggese | 4 | 4 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.250 |
| simulation | STL | 9 | CF | Nathan Church | 4 | 4 | 2 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.500 |
| simulation | SF | 1 | LF | Turner Hill | 5 | 5 | 2 | 2 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 0.400 |
| simulation | SF | 2 | DH | Rafael Devers | 5 | 3 | 1 | 0 | 0 | 1 | 1 | 1 | 2 | 0 | 0 | 0.333 |
| simulation | SF | 3 | 1B | Bryce Eldridge | 5 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0.000 |
| simulation | SF | 4 | CF | Jonah Cox | 5 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 2 | 0 | 0.000 |
| simulation | SF | 5 | RF | Jung Hoo Lee | 4 | 4 | 1 | 0 | 1 | 0 | 1 | 2 | 0 | 0 | 0 | 0.250 |
| simulation | SF | 6 | 2B | Osleivis Basabe | 4 | 4 | 1 | 0 | 0 | 1 | 1 | 1 | 0 | 1 | 0 | 0.250 |
| simulation | SF | 7 | C | Andrew Knizner | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 |
| simulation | SF | 8 | 3B | Shay Whitcomb | 4 | 2 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 0.000 |
| simulation | SF | 9 | SS | Christian Koss | 4 | 3 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 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 | STL | 1 | Michael McGreevy | Starter | 5.1 | 3 | 2 | 2 | 2 | 1 | 2 | 0 | 0 | 3.38 | 3.97 | 1.26 |
| current | STL | 2 | George Soriano | Setup Man | 1.0 | 1 | 2 | 2 | 2 | 1 | 0 | 0 | 0 | 18.00 | 4.26 | 1.34 |
| current | STL | 3 | Riley O'Brien | Closer | 1.0 | 0 | 0 | 0 | 1 | 2 | 0 | 0 | 0 | 0.00 | 4.11 | 1.25 |
| current | STL | 4 | Ryne Stanek | Middle Reliever (High Leverage) | 1.2 | 2 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 5.40 | 4.34 | 1.34 |
| current | SF | 1 | Logan Webb | Starter | 5.1 | 6 | 4 | 4 | 2 | 5 | 2 | 0 | 0 | 6.75 | 4.21 | 1.16 |
| current | SF | 2 | Trent Harris | Setup Man | 1.1 | 1 | 0 | 0 | 0 | 2 | 0 | 0 | 0 | 0.00 | 3.21 | 1.21 |
| current | SF | 3 | Carson Seymour | Middle Reliever (High Leverage) | 1.0 | 3 | 3 | 3 | 0 | 1 | 1 | 0 | 0 | 27.00 | 5.79 | 1.63 |
| current | SF | 4 | Dylan Smith | Closer | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 3.13 | 1.33 |
| current | SF | 5 | Jason Foley | Middle Reliever (High Leverage) | 0.1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 4.67 | 1.62 |
| simulation | STL | 1 | Michael McGreevy | Starter | 5.1 | 3 | 2 | 2 | 2 | 1 | 2 | 22 | 93 | 3.38 | 3.97 | 1.26 |
| simulation | STL | 2 | Riley O'Brien | Closer | 1.0 | 0 | 0 | 0 | 1 | 2 | 0 | 4 | 17 | 0.00 | 4.11 | 1.25 |
| simulation | STL | 3 | George Soriano | Setup Man | 1.0 | 1 | 2 | 2 | 2 | 1 | 0 | 6 | 24 | 18.00 | 4.26 | 1.34 |
| simulation | STL | 4 | Ryne Stanek | Middle Reliever (High Leverage) | 1.2 | 2 | 1 | 1 | 1 | 1 | 0 | 8 | 31 | 5.40 | 4.34 | 1.34 |
| simulation | SF | 1 | Logan Webb | Starter | 5.1 | 6 | 4 | 4 | 2 | 5 | 2 | 25 | 105 | 6.75 | 4.21 | 1.16 |
| simulation | SF | 2 | Dylan Smith | Closer | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 13 | 0.00 | 3.13 | 1.33 |
| simulation | SF | 3 | Trent Harris | Setup Man | 1.1 | 1 | 0 | 0 | 0 | 2 | 0 | 5 | 32 | 0.00 | 3.21 | 1.21 |
| simulation | SF | 4 | Carson Seymour | Middle Reliever (High Leverage) | 1.0 | 3 | 3 | 3 | 0 | 1 | 1 | 6 | 26 | 27.00 | 5.79 | 1.63 |
| simulation | SF | 5 | Jason Foley | Middle Reliever (High Leverage) | 0.1 | 0 | 0 | 0 | 1 | 0 | 0 | 2 | 8 | 0.00 | 4.67 | 1.62 |
Pitch count summary
| team | pitcher | role | IP | R | H | BB | SO | BF | Pitches |
|---|---|---|---|---|---|---|---|---|---|
| STL | Michael McGreevy | Starter | 5.1 | 2 | 3 | 2 | 1 | 22 | 93 |
| STL | George Soriano | Setup Man | 1.0 | 2 | 1 | 2 | 1 | 6 | 24 |
| STL | Riley O'Brien | Closer | 1.0 | 0 | 0 | 1 | 2 | 4 | 17 |
| STL | Ryne Stanek | Middle Reliever (High Leverage) | 1.2 | 1 | 2 | 1 | 1 | 8 | 31 |
| SF | Logan Webb | Starter | 5.1 | 4 | 6 | 2 | 5 | 25 | 105 |
| SF | Trent Harris | Setup Man | 1.1 | 0 | 1 | 0 | 2 | 5 | 32 |
| SF | Carson Seymour | Middle Reliever (High Leverage) | 1.0 | 3 | 3 | 0 | 1 | 6 | 26 |
| SF | Dylan Smith | Closer | 1.0 | 0 | 0 | 0 | 0 | 3 | 13 |
| SF | Jason Foley | Middle Reliever (High Leverage) | 0.1 | 0 | 0 | 1 | 0 | 2 | 8 |
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 | 1 | 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_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. |
| 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. |
| 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. |
20260907_TOR@OAK
20260907_TOR@OAK.json • 2026-09-07
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 | OAK | CURRENT_PITCHER_DUPLICATION | OAK pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_payload | current | TOR | CURRENT_PITCHER_DUPLICATION | TOR pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_vs_final | cross-schema | OAK | CURRENT_FINALIZED_MATCH_BOX | OAK model-prediction batting totals differ from final simulation box score (AB: current=32, sim=31; H: current=8, sim=4; HR: current=1, sim=0; RBI: current=4, sim=2; R: current=4, sim=2; BB: current=3, sim=2; SO: current=8, sim=7; HBP: current=0, sim=2). | New contract: model prediction totals may differ from scoring_simulation; simulation_stats_source links the simulation box score. | ||
| INFO | current_vs_final | cross-schema | OAK | CURRENT_PLAYER_MATCH_BOX | OAK current finalized hitter lines are model predictions and differ from the simulation box score: Henry Bolte: H current=1 box=0, RBI current=1 box=0, R current=1 box=0, BB current=1 box=0; Jeff McNeil: H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Carlos Cortes: AB current=3 box=4, 2B current=0 box=1, RBI current=0 box=2, R current=0 box=1; Max Muncy: H current=1 box=0, R current=1 box=0, BB current=0 box=1; Alika Williams: AB current=3 box=4, H current=1 box=0, 2B current=1 box=0, SO current=1 box=0; Donovan Walton: H current=0 box=1, 2B current=0 box=1, BB current=1 box=0, HBP current=0 box=1; Jonah Heim: AB current=4 box=3, H current=1 box=0, 2B current=1 box=0, SO current=1 box=2; Zack Gelof: AB current=4 box=2, H current=1 box=0, HR current=1 box=0, RBI 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 | TOR | CURRENT_FINALIZED_MATCH_BOX | TOR model-prediction batting totals differ from final simulation box score (AB: current=35, sim=34; H: current=9, sim=7; 2B: current=2, sim=3; HR: current=1, sim=2; RBI: current=4, sim=6; R: current=4, sim=6; SO: current=6, sim=11). | New contract: model prediction totals may differ from scoring_simulation; simulation_stats_source links the simulation box score. | ||
| INFO | current_vs_final | cross-schema | TOR | CURRENT_PLAYER_MATCH_BOX | TOR current finalized hitter lines are model predictions and differ from the simulation box score: George Springer: H current=1 box=0, 2B current=1 box=0, R current=1 box=0, BB current=1 box=0; Vladimir Guerrero Jr.: AB current=4 box=3, 2B current=0 box=1, RBI current=1 box=2, BB current=0 box=1; Brett Bateman: BB current=1 box=0; Alejandro Kirk: AB current=5 box=3, H current=1 box=0, RBI current=1 box=0, R current=0 box=1; Kazuma Okamoto: H current=1 box=2, 2B current=0 box=1, SO current=1 box=2; Myles Straw: AB current=3 box=4, H current=1 box=0, SO current=0 box=2; Nathan Lukes: H current=1 box=2, 2B current=0 box=1, HR current=0 box=1, RBI current=1 box=3; Ernie Clement: H current=1 box=0, 2B current=1 box=0, SO 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 | OAK | BATTING_REALISM | current:OAK hitter lines pass basic baseball constraints. | |||
| PASS | batting | current | TOR | BATTING_REALISM | current:TOR hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | OAK | BATTING_REALISM | simulation:OAK hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | TOR | BATTING_REALISM | simulation:TOR hitter lines pass basic baseball constraints. | |||
| PASS | batting_totals | current | OAK | BATTING_TOTALS_SUM | current:OAK batting totals equal summed player lines. | |||
| PASS | batting_totals | current | TOR | BATTING_TOTALS_SUM | current:TOR batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | OAK | BATTING_TOTALS_SUM | simulation:OAK batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | TOR | BATTING_TOTALS_SUM | simulation:TOR batting totals equal summed player lines. | |||
| PASS | boxscore_crosscheck | simulation | OAK | BAT_PITCH_BB_MATCH | simulation:OAK batting walks match TOR pitching: 2. | |||
| PASS | boxscore_crosscheck | simulation | OAK | BAT_PITCH_HR_MATCH | simulation:OAK batting home runs match TOR pitching: 0. | |||
| PASS | boxscore_crosscheck | simulation | OAK | BAT_PITCH_H_MATCH | simulation:OAK batting hits match TOR pitching: 4. | |||
| PASS | boxscore_crosscheck | simulation | OAK | BAT_PITCH_SO_MATCH | simulation:OAK batting strikeouts match TOR pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | OAK | PA_BF_MATCH | simulation:OAK PA=35 matches TOR BF=35. | |||
| PASS | boxscore_crosscheck | simulation | OAK | RUNS_MATCH_FINAL | simulation:OAK runs match final score and opposing pitching runs: 2. | |||
| PASS | boxscore_crosscheck | simulation | TOR | BAT_PITCH_BB_MATCH | simulation:TOR batting walks match OAK pitching: 2. | |||
| PASS | boxscore_crosscheck | simulation | TOR | BAT_PITCH_HR_MATCH | simulation:TOR batting home runs match OAK pitching: 2. | |||
| PASS | boxscore_crosscheck | simulation | TOR | BAT_PITCH_H_MATCH | simulation:TOR batting hits match OAK pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | TOR | BAT_PITCH_SO_MATCH | simulation:TOR batting strikeouts match OAK pitching: 11. | |||
| PASS | boxscore_crosscheck | simulation | TOR | PA_BF_MATCH | simulation:TOR PA=36 matches OAK BF=36. | |||
| PASS | boxscore_crosscheck | simulation | TOR | RUNS_MATCH_FINAL | simulation:TOR runs match final score and opposing pitching runs: 6. | |||
| PASS | confidence_calibration | CONFIDENCE_CALIBRATION_APPLIED | Empirical confidence blend verified: 0.859 -> 0.710 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.85877, 'sample_size': 114, 'empirical_hit_rate': 0.5614, 'empirical_weight': 0.5, 'blended_confidence': 0.710085, 'published_confidence': 0.699558, 'published_after_governors': True, 'governor_mode': 'shrinkage_not_clamp'} | ||||
| PASS | cross_schema | cross-schema | OAK | CURRENT_FINALIZED_MATCH_BOX | OAK current pitcher projected totals match final simulation pitching box score. | |||
| PASS | cross_schema | cross-schema | TOR | CURRENT_FINALIZED_MATCH_BOX | TOR current pitcher projected totals match final simulation pitching box score. | |||
| PASS | current_payload | current | OAK | CURRENT_LINEUP_SHAPE | OAK current lineup has 9 expected positions. | |||
| PASS | current_payload | current | OAK | CURRENT_MODEL_ZERO_FALLBACK | OAK current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | OAK | CURRENT_NAMES_PRESENT | OAK current hitter names are populated. | |||
| PASS | current_payload | current | OAK | CURRENT_PREDICTIONS_MATCH_FINALIZED | OAK hitter predictions mirror finalized stats. | |||
| PASS | current_payload | current | TOR | CURRENT_LINEUP_SHAPE | TOR current lineup has 9 expected positions. | |||
| PASS | current_payload | current | TOR | CURRENT_MODEL_ZERO_FALLBACK | TOR current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | TOR | CURRENT_NAMES_PRESENT | TOR current hitter names are populated. | |||
| PASS | current_payload | current | TOR | CURRENT_PREDICTIONS_MATCH_FINALIZED | TOR 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.700. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | confidence is in [0,1]: 0.700. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | home_win_probability is in [0,1]: 0.300. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Final total runs 8 is reasonably close to low-score expected_total_runs 8.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.698/0.900. | |||||
| PASS | final_decision | FINAL_DECISION_POLICY | Final decision policy preserved model ownership of the winner. | |||||
| 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: TOR 7, OAK 4. | |||||
| PASS | innings | INNING_TOTAL_RUNS | Inning runs sum to final score: TOR 6 - OAK 2. | |||||
| PASS | matchup_recency | GUARDRAIL_FINAL_WINNER_SYNC | Guardrail predicted_team matches final predicted winner: TOR. | |||||
| PASS | matchup_recency | MATCHUP_RECENCY_GUARDRAIL | No stale repeat-pick pattern detected for TOR. | {'winner_confidence': 0.699558, 'h2h_net_margin': 5, 'prediction_memory': {'available': False, 'reason': 'no_verified_prior_matchup_predictions', 'verification_policy': 'pregame_artifact_matched_to_one_official_final', 'verified_outcome_count': 0, 'consecutive_same_pick_count': 0, 'same_pick_actual_loss_count': 0, 'same_pick_blowout_loss_count': 0, 'prior_predictions': []}} | ||||
| PASS | metadata | DATE_PARSE | Date is valid ISO format: 2026-09-07. | |||||
| PASS | metadata | FILENAME_GAME_ID_MATCH | Filename matches game_id: 20260907_TOR@OAK. | |||||
| PASS | metadata | FILENAME_TEAM_MATCH | Filename teams match JSON teams: TOR@OAK. | |||||
| 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': 3, 'sample_weight': 0.0409, 'home_net_margin': -5.0, 'absolute_net_margin': 5.0, 'home_average_margin': -1.667, 'home_run_delta': -0.0341, 'away_run_delta': 0.0341, 'evidence': [{'game_id': None, 'home_margin': -3.0}, {'game_id': None, 'home_margin': -1.0}, {'game_id': None, 'home_margin': -1.0}], 'adaptive_parameters': {'h2h.history_limit': 5, 'h2h.maximum_weight': 0.15, 'h2h.prior_games': 8.0, 'h2h.maximum_total_shift': 0.65}} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Score distribution widening is implemented and its runtime trace passed. | {'most_likely': [{'home_runs': 3, 'away_runs': 6, 'probability': 0.024042100817421114}, {'home_runs': 3, 'away_runs': 5, 'probability': 0.023414181318174784}, {'home_runs': 3, 'away_runs': 7, 'probability': 0.022358057150424136}, {'home_runs': 2, 'away_runs': 6, 'probability': 0.021982243234306125}, {'home_runs': 4, 'away_runs': 6, 'probability': 0.021685311787564547}], 'home_distribution': {'0': 0.08025585931245365, '1': 0.1290599374991828, '2': 0.17115870958913354, '3': 0.18719722586362975, '4': 0.16884673429530148, '5': 0.12559685766992407, '6': 0.07704735501342255, '7': 0.03897889708321656, '8': 0.016262758414920746, '9': 0.00559566525881485}, 'away_distribution': {'0': 0.024787661239238357, '1': 0.041772256219842215, '2': 0.06375415960145189, '3': 0.08812463446954337, '4': 0.11032002283453046, '5': 0.1250776084429352, '6': 0.12843192898026923, '7': 0.11943583590662626, '8': 0.1005922477334552, '9': 0.076729537929932, '10': 0.053006467711886565, '11': 0.03316372894916632, '12': 0.018791699576549494, '13': 0.009643550869353916, '14': 0.004482043857301176, '15': 0.0018866156779182644}, 'model': 'overdispersed_score_distribution', 'variance_multiplier': 1.75, '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': -1.1979, 'recent_quality_edge': -0.556, 'season_weight': 0.65, 'recent_weight': 0.35, 'recent_reliability': 1.0, 'alignment': 'aligned', 'blended_quality_edge': -0.9732} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Simulation flip control is implemented and its runtime trace passed. | {'pre_simulation_score': {'away_runs': 6, 'home_runs': 2, 'score_text': 'TOR 6 - 2 OAK', 'winner': 'TOR'}, 'final_simulation_score': {'away_runs': 6, 'home_runs': 2, 'score_text': 'TOR 6 - 2 OAK', 'winner': 'TOR'}, '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': True, 'independent_margin_support_evidence': {'pitcher_matchup_edge_home_minus_away': -0.1731, 'recent_form_edge_home_minus_away': -0.906, 'winner_direction': 'away', 'thresholds': {'pitcher_matchup': 0.35, 'recent_form': 0.75}}, 'margin_widening_capped': False, 'simulation_winner_agrees': True, 'away_run_delta': 0, 'home_run_delta': 0, 'total_run_delta': 0, 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_usage': 'organic_simulation_realized_target', 'final_prediction_source': 'stable_final_prediction_policy', 'final_decision_policy': {'policy_version': 'model_target_authoritative_simulation_realizes_v3', 'away_runs': 6, 'home_runs': 2, 'winner': 'TOR', 'model_winner': 'TOR', 'simulation_winner': 'TOR', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 4, 'published_winner': 'TOR', 'published_winner_draw_share': 0.75, 'draw_majority_team': 'TOR', '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': True, 'margin_widening_capped': False, 'model_margin': 4, 'simulation_margin': 4, 'simulation_usage': 'organic_simulation_realized_target', 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_realized_target': True, 'model_score': {'away_runs': 6, 'home_runs': 2}, 'simulation_score': {'away_runs': 6, 'home_runs': 2}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 4, 'final_margin': 4, 'winner_quality_edge': 0.9732, 'winner': 'TOR', 'score_reviewed': {'away_runs': 6, '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: 130. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | home pitcher pitch-by-pitch count matches pitch_count_summary total: 146. | |||||
| PASS | pitch_count | simulation | OAK | PITCH_COUNT_PITCHER_MATCH | OAK pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | OAK | PITCH_COUNT_TOTAL_MATCH | OAK pitch_count_summary total, row sum, and pitching total all match: 146. | |||
| PASS | pitch_count | simulation | TOR | PITCH_COUNT_PITCHER_MATCH | TOR pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | TOR | PITCH_COUNT_TOTAL_MATCH | TOR pitch_count_summary total, row sum, and pitching total all match: 130. | |||
| 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 | current | OAK | PITCHING_REALISM | current:OAK pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | OAK | STARTER_PRESENT | current:OAK includes a starter/opener role. | |||
| PASS | pitching | current | TOR | PITCHING_REALISM | current:TOR pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | TOR | STARTER_PRESENT | current:TOR includes a starter/opener role. | |||
| PASS | pitching | simulation | OAK | PITCHING_REALISM | simulation:OAK pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | OAK | STARTER_PRESENT | simulation:OAK includes a starter/opener role. | |||
| PASS | pitching | simulation | TOR | PITCHING_REALISM | simulation:TOR pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | TOR | STARTER_PRESENT | simulation:TOR includes a starter/opener role. | |||
| PASS | pitching_totals | current | OAK | PITCHING_TOTALS_SUM | current:OAK pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | OAK | PITCHING_TOTALS_SUM | current:OAK pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | current | TOR | PITCHING_TOTALS_SUM | current:TOR pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | TOR | PITCHING_TOTALS_SUM | current:TOR pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | OAK | PITCHING_TOTALS_SUM | simulation:OAK pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | OAK | PITCHING_TOTALS_SUM | simulation:OAK pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | TOR | PITCHING_TOTALS_SUM | simulation:TOR pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | TOR | PITCHING_TOTALS_SUM | simulation:TOR pitching totals equal summed pitcher lines for available fields. | |||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Enhanced AI score matches enhanced target: TOR 6 - 2 OAK. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation score matches final score: TOR 6 - 2 OAK. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation winner matches final score: TOR wins 6-2. | |||||
| PASS | prediction_comparison | SIMULATION_WINNER_FLIP_TRACE | Simulation decision is explicit: model=TOR, simulation=TOR, published=TOR. | |||||
| PASS | probability | CONFIDENCE_RANGE | Enhanced target confidence is in range: 0.700. | |||||
| 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: 4/10 (0.400). | |||||
| 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): TOR wins 6-2. | |||||
| PASS | score | SCORE_NO_TIE | Final score has a clear winner: TOR wins 6-2. | |||||
| PASS | score | SCORE_STEP_FINAL_MATCH | simulation_result step matches final score: 6-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 6-2, final 6-2 (delta 0). | |||||
| PASS | score | TOTAL_RUNS_MATCH | total_runs field matches final score total: 8. | |||||
| PASS | score | WINNER_FIELD_MATCH | winner field is consistent: TOR wins 6-2. | |||||
| PASS | score | cross-schema | CURRENT_SCORE_MATCHES_SIM | game.predicted_runs matches scoring_simulation.final_score. | ||||
| PASS | team_recent_performance | current | OAK | RECENT_FORM_RANGE | OAK recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | OAK | TEAM_RECENT_RECORD | OAK wins and win_pct agree: 4/10 = 0.400. | |||
| PASS | team_recent_performance | current | TOR | RECENT_FORM_RANGE | TOR recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | TOR | TEAM_RECENT_RECORD | TOR wins and win_pct agree: 7/10 = 0.700. |
Passed checks
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| PASS | batting | current | OAK | BATTING_REALISM | current:OAK hitter lines pass basic baseball constraints. | |||
| PASS | batting | current | TOR | BATTING_REALISM | current:TOR hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | OAK | BATTING_REALISM | simulation:OAK hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | TOR | BATTING_REALISM | simulation:TOR hitter lines pass basic baseball constraints. | |||
| PASS | batting_totals | current | OAK | BATTING_TOTALS_SUM | current:OAK batting totals equal summed player lines. | |||
| PASS | batting_totals | current | TOR | BATTING_TOTALS_SUM | current:TOR batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | OAK | BATTING_TOTALS_SUM | simulation:OAK batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | TOR | BATTING_TOTALS_SUM | simulation:TOR batting totals equal summed player lines. | |||
| PASS | boxscore_crosscheck | simulation | OAK | BAT_PITCH_BB_MATCH | simulation:OAK batting walks match TOR pitching: 2. | |||
| PASS | boxscore_crosscheck | simulation | OAK | BAT_PITCH_HR_MATCH | simulation:OAK batting home runs match TOR pitching: 0. | |||
| PASS | boxscore_crosscheck | simulation | OAK | BAT_PITCH_H_MATCH | simulation:OAK batting hits match TOR pitching: 4. | |||
| PASS | boxscore_crosscheck | simulation | OAK | BAT_PITCH_SO_MATCH | simulation:OAK batting strikeouts match TOR pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | OAK | PA_BF_MATCH | simulation:OAK PA=35 matches TOR BF=35. | |||
| PASS | boxscore_crosscheck | simulation | OAK | RUNS_MATCH_FINAL | simulation:OAK runs match final score and opposing pitching runs: 2. | |||
| PASS | boxscore_crosscheck | simulation | TOR | BAT_PITCH_BB_MATCH | simulation:TOR batting walks match OAK pitching: 2. | |||
| PASS | boxscore_crosscheck | simulation | TOR | BAT_PITCH_HR_MATCH | simulation:TOR batting home runs match OAK pitching: 2. | |||
| PASS | boxscore_crosscheck | simulation | TOR | BAT_PITCH_H_MATCH | simulation:TOR batting hits match OAK pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | TOR | BAT_PITCH_SO_MATCH | simulation:TOR batting strikeouts match OAK pitching: 11. | |||
| PASS | boxscore_crosscheck | simulation | TOR | PA_BF_MATCH | simulation:TOR PA=36 matches OAK BF=36. | |||
| PASS | boxscore_crosscheck | simulation | TOR | RUNS_MATCH_FINAL | simulation:TOR runs match final score and opposing pitching runs: 6. | |||
| PASS | confidence_calibration | CONFIDENCE_CALIBRATION_APPLIED | Empirical confidence blend verified: 0.859 -> 0.710 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.85877, 'sample_size': 114, 'empirical_hit_rate': 0.5614, 'empirical_weight': 0.5, 'blended_confidence': 0.710085, 'published_confidence': 0.699558, 'published_after_governors': True, 'governor_mode': 'shrinkage_not_clamp'} | ||||
| PASS | cross_schema | cross-schema | OAK | CURRENT_FINALIZED_MATCH_BOX | OAK current pitcher projected totals match final simulation pitching box score. | |||
| PASS | cross_schema | cross-schema | TOR | CURRENT_FINALIZED_MATCH_BOX | TOR current pitcher projected totals match final simulation pitching box score. | |||
| PASS | current_payload | current | OAK | CURRENT_LINEUP_SHAPE | OAK current lineup has 9 expected positions. | |||
| PASS | current_payload | current | OAK | CURRENT_MODEL_ZERO_FALLBACK | OAK current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | OAK | CURRENT_NAMES_PRESENT | OAK current hitter names are populated. | |||
| PASS | current_payload | current | OAK | CURRENT_PREDICTIONS_MATCH_FINALIZED | OAK hitter predictions mirror finalized stats. | |||
| PASS | current_payload | current | TOR | CURRENT_LINEUP_SHAPE | TOR current lineup has 9 expected positions. | |||
| PASS | current_payload | current | TOR | CURRENT_MODEL_ZERO_FALLBACK | TOR current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | TOR | CURRENT_NAMES_PRESENT | TOR current hitter names are populated. | |||
| PASS | current_payload | current | TOR | CURRENT_PREDICTIONS_MATCH_FINALIZED | TOR 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.700. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | confidence is in [0,1]: 0.700. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | home_win_probability is in [0,1]: 0.300. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Final total runs 8 is reasonably close to low-score expected_total_runs 8.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.698/0.900. | |||||
| PASS | final_decision | FINAL_DECISION_POLICY | Final decision policy preserved model ownership of the winner. | |||||
| 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: TOR 7, OAK 4. | |||||
| PASS | innings | INNING_TOTAL_RUNS | Inning runs sum to final score: TOR 6 - OAK 2. | |||||
| PASS | matchup_recency | GUARDRAIL_FINAL_WINNER_SYNC | Guardrail predicted_team matches final predicted winner: TOR. | |||||
| PASS | matchup_recency | MATCHUP_RECENCY_GUARDRAIL | No stale repeat-pick pattern detected for TOR. | {'winner_confidence': 0.699558, 'h2h_net_margin': 5, 'prediction_memory': {'available': False, 'reason': 'no_verified_prior_matchup_predictions', 'verification_policy': 'pregame_artifact_matched_to_one_official_final', 'verified_outcome_count': 0, 'consecutive_same_pick_count': 0, 'same_pick_actual_loss_count': 0, 'same_pick_blowout_loss_count': 0, 'prior_predictions': []}} | ||||
| PASS | metadata | DATE_PARSE | Date is valid ISO format: 2026-09-07. | |||||
| PASS | metadata | FILENAME_GAME_ID_MATCH | Filename matches game_id: 20260907_TOR@OAK. | |||||
| PASS | metadata | FILENAME_TEAM_MATCH | Filename teams match JSON teams: TOR@OAK. | |||||
| 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': 3, 'sample_weight': 0.0409, 'home_net_margin': -5.0, 'absolute_net_margin': 5.0, 'home_average_margin': -1.667, 'home_run_delta': -0.0341, 'away_run_delta': 0.0341, 'evidence': [{'game_id': None, 'home_margin': -3.0}, {'game_id': None, 'home_margin': -1.0}, {'game_id': None, 'home_margin': -1.0}], 'adaptive_parameters': {'h2h.history_limit': 5, 'h2h.maximum_weight': 0.15, 'h2h.prior_games': 8.0, 'h2h.maximum_total_shift': 0.65}} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Score distribution widening is implemented and its runtime trace passed. | {'most_likely': [{'home_runs': 3, 'away_runs': 6, 'probability': 0.024042100817421114}, {'home_runs': 3, 'away_runs': 5, 'probability': 0.023414181318174784}, {'home_runs': 3, 'away_runs': 7, 'probability': 0.022358057150424136}, {'home_runs': 2, 'away_runs': 6, 'probability': 0.021982243234306125}, {'home_runs': 4, 'away_runs': 6, 'probability': 0.021685311787564547}], 'home_distribution': {'0': 0.08025585931245365, '1': 0.1290599374991828, '2': 0.17115870958913354, '3': 0.18719722586362975, '4': 0.16884673429530148, '5': 0.12559685766992407, '6': 0.07704735501342255, '7': 0.03897889708321656, '8': 0.016262758414920746, '9': 0.00559566525881485}, 'away_distribution': {'0': 0.024787661239238357, '1': 0.041772256219842215, '2': 0.06375415960145189, '3': 0.08812463446954337, '4': 0.11032002283453046, '5': 0.1250776084429352, '6': 0.12843192898026923, '7': 0.11943583590662626, '8': 0.1005922477334552, '9': 0.076729537929932, '10': 0.053006467711886565, '11': 0.03316372894916632, '12': 0.018791699576549494, '13': 0.009643550869353916, '14': 0.004482043857301176, '15': 0.0018866156779182644}, 'model': 'overdispersed_score_distribution', 'variance_multiplier': 1.75, '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': -1.1979, 'recent_quality_edge': -0.556, 'season_weight': 0.65, 'recent_weight': 0.35, 'recent_reliability': 1.0, 'alignment': 'aligned', 'blended_quality_edge': -0.9732} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Simulation flip control is implemented and its runtime trace passed. | {'pre_simulation_score': {'away_runs': 6, 'home_runs': 2, 'score_text': 'TOR 6 - 2 OAK', 'winner': 'TOR'}, 'final_simulation_score': {'away_runs': 6, 'home_runs': 2, 'score_text': 'TOR 6 - 2 OAK', 'winner': 'TOR'}, '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': True, 'independent_margin_support_evidence': {'pitcher_matchup_edge_home_minus_away': -0.1731, 'recent_form_edge_home_minus_away': -0.906, 'winner_direction': 'away', 'thresholds': {'pitcher_matchup': 0.35, 'recent_form': 0.75}}, 'margin_widening_capped': False, 'simulation_winner_agrees': True, 'away_run_delta': 0, 'home_run_delta': 0, 'total_run_delta': 0, 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_usage': 'organic_simulation_realized_target', 'final_prediction_source': 'stable_final_prediction_policy', 'final_decision_policy': {'policy_version': 'model_target_authoritative_simulation_realizes_v3', 'away_runs': 6, 'home_runs': 2, 'winner': 'TOR', 'model_winner': 'TOR', 'simulation_winner': 'TOR', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 4, 'published_winner': 'TOR', 'published_winner_draw_share': 0.75, 'draw_majority_team': 'TOR', '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': True, 'margin_widening_capped': False, 'model_margin': 4, 'simulation_margin': 4, 'simulation_usage': 'organic_simulation_realized_target', 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_realized_target': True, 'model_score': {'away_runs': 6, 'home_runs': 2}, 'simulation_score': {'away_runs': 6, 'home_runs': 2}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 4, 'final_margin': 4, 'winner_quality_edge': 0.9732, 'winner': 'TOR', 'score_reviewed': {'away_runs': 6, '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: 130. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | home pitcher pitch-by-pitch count matches pitch_count_summary total: 146. | |||||
| PASS | pitch_count | simulation | OAK | PITCH_COUNT_PITCHER_MATCH | OAK pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | OAK | PITCH_COUNT_TOTAL_MATCH | OAK pitch_count_summary total, row sum, and pitching total all match: 146. | |||
| PASS | pitch_count | simulation | TOR | PITCH_COUNT_PITCHER_MATCH | TOR pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | TOR | PITCH_COUNT_TOTAL_MATCH | TOR pitch_count_summary total, row sum, and pitching total all match: 130. | |||
| 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 | current | OAK | PITCHING_REALISM | current:OAK pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | OAK | STARTER_PRESENT | current:OAK includes a starter/opener role. | |||
| PASS | pitching | current | TOR | PITCHING_REALISM | current:TOR pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | TOR | STARTER_PRESENT | current:TOR includes a starter/opener role. | |||
| PASS | pitching | simulation | OAK | PITCHING_REALISM | simulation:OAK pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | OAK | STARTER_PRESENT | simulation:OAK includes a starter/opener role. | |||
| PASS | pitching | simulation | TOR | PITCHING_REALISM | simulation:TOR pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | TOR | STARTER_PRESENT | simulation:TOR includes a starter/opener role. | |||
| PASS | pitching_totals | current | OAK | PITCHING_TOTALS_SUM | current:OAK pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | OAK | PITCHING_TOTALS_SUM | current:OAK pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | current | TOR | PITCHING_TOTALS_SUM | current:TOR pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | TOR | PITCHING_TOTALS_SUM | current:TOR pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | OAK | PITCHING_TOTALS_SUM | simulation:OAK pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | OAK | PITCHING_TOTALS_SUM | simulation:OAK pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | TOR | PITCHING_TOTALS_SUM | simulation:TOR pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | TOR | PITCHING_TOTALS_SUM | simulation:TOR pitching totals equal summed pitcher lines for available fields. | |||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Enhanced AI score matches enhanced target: TOR 6 - 2 OAK. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation score matches final score: TOR 6 - 2 OAK. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation winner matches final score: TOR wins 6-2. | |||||
| PASS | prediction_comparison | SIMULATION_WINNER_FLIP_TRACE | Simulation decision is explicit: model=TOR, simulation=TOR, published=TOR. | |||||
| PASS | probability | CONFIDENCE_RANGE | Enhanced target confidence is in range: 0.700. | |||||
| 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: 4/10 (0.400). | |||||
| 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): TOR wins 6-2. | |||||
| PASS | score | SCORE_NO_TIE | Final score has a clear winner: TOR wins 6-2. | |||||
| PASS | score | SCORE_STEP_FINAL_MATCH | simulation_result step matches final score: 6-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 6-2, final 6-2 (delta 0). | |||||
| PASS | score | TOTAL_RUNS_MATCH | total_runs field matches final score total: 8. | |||||
| PASS | score | WINNER_FIELD_MATCH | winner field is consistent: TOR wins 6-2. | |||||
| PASS | score | cross-schema | CURRENT_SCORE_MATCHES_SIM | game.predicted_runs matches scoring_simulation.final_score. | ||||
| PASS | team_recent_performance | current | OAK | RECENT_FORM_RANGE | OAK recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | OAK | TEAM_RECENT_RECORD | OAK wins and win_pct agree: 4/10 = 0.400. | |||
| PASS | team_recent_performance | current | TOR | RECENT_FORM_RANGE | TOR recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | TOR | TEAM_RECENT_RECORD | TOR 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 | OAK | CURRENT_PITCHER_DUPLICATION | OAK pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_payload | current | TOR | CURRENT_PITCHER_DUPLICATION | TOR pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_vs_final | cross-schema | OAK | CURRENT_FINALIZED_MATCH_BOX | OAK model-prediction batting totals differ from final simulation box score (AB: current=32, sim=31; H: current=8, sim=4; HR: current=1, sim=0; RBI: current=4, sim=2; R: current=4, sim=2; BB: current=3, sim=2; SO: current=8, sim=7; HBP: current=0, sim=2). | New contract: model prediction totals may differ from scoring_simulation; simulation_stats_source links the simulation box score. | ||
| INFO | current_vs_final | cross-schema | OAK | CURRENT_PLAYER_MATCH_BOX | OAK current finalized hitter lines are model predictions and differ from the simulation box score: Henry Bolte: H current=1 box=0, RBI current=1 box=0, R current=1 box=0, BB current=1 box=0; Jeff McNeil: H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Carlos Cortes: AB current=3 box=4, 2B current=0 box=1, RBI current=0 box=2, R current=0 box=1; Max Muncy: H current=1 box=0, R current=1 box=0, BB current=0 box=1; Alika Williams: AB current=3 box=4, H current=1 box=0, 2B current=1 box=0, SO current=1 box=0; Donovan Walton: H current=0 box=1, 2B current=0 box=1, BB current=1 box=0, HBP current=0 box=1; Jonah Heim: AB current=4 box=3, H current=1 box=0, 2B current=1 box=0, SO current=1 box=2; Zack Gelof: AB current=4 box=2, H current=1 box=0, HR current=1 box=0, RBI 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 | TOR | CURRENT_FINALIZED_MATCH_BOX | TOR model-prediction batting totals differ from final simulation box score (AB: current=35, sim=34; H: current=9, sim=7; 2B: current=2, sim=3; HR: current=1, sim=2; RBI: current=4, sim=6; R: current=4, sim=6; SO: current=6, sim=11). | New contract: model prediction totals may differ from scoring_simulation; simulation_stats_source links the simulation box score. | ||
| INFO | current_vs_final | cross-schema | TOR | CURRENT_PLAYER_MATCH_BOX | TOR current finalized hitter lines are model predictions and differ from the simulation box score: George Springer: H current=1 box=0, 2B current=1 box=0, R current=1 box=0, BB current=1 box=0; Vladimir Guerrero Jr.: AB current=4 box=3, 2B current=0 box=1, RBI current=1 box=2, BB current=0 box=1; Brett Bateman: BB current=1 box=0; Alejandro Kirk: AB current=5 box=3, H current=1 box=0, RBI current=1 box=0, R current=0 box=1; Kazuma Okamoto: H current=1 box=2, 2B current=0 box=1, SO current=1 box=2; Myles Straw: AB current=3 box=4, H current=1 box=0, SO current=0 box=2; Nathan Lukes: H current=1 box=2, 2B current=0 box=1, HR current=0 box=1, RBI current=1 box=3; Ernie Clement: H current=1 box=0, 2B current=1 box=0, SO 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 | 5.903081777352334 | 3.6374045653540557 | Base ML historical model prediction | |
| variance_applied | 6 | 4 | Deterministic baseline target (variance factor 1.0) | |
| enhanced_prediction | 6 | 3 | 0.700 | Enhanced ML with recent form, H2H, low-score analysis |
| embedded_savant_run_environment | 6 | 2 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality | |
| fundamental_edge_target_review | 6 | 2 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments | |
| capped_target | 6 | 2 | Capped at max 12 realistic runs | |
| simulation_result | 6 | 2 | Final inning-by-inning simulation result |
Inning-by-inning linescore
| team | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | R | H |
|---|---|---|---|---|---|---|---|---|---|---|---|
| TOR | 0 | 0 | 2 | 0 | 0 | 3 | 0 | 1 | 0 | 6 | 7 |
| OAK | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 | 0 | 2 | 4 |
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 | TOR | batting | 35 | 9 | 2 | 0 | 1 | 4 | 4 | 2 | 6 | 0 | 0 | 0 | 0 | |||||
| current | TOR | pitching | 4 | 0 | 2 | 2 | 7 | 9.0 | 2 | 0 | 0 | |||||||||
| current | OAK | batting | 32 | 8 | 2 | 0 | 1 | 4 | 4 | 3 | 8 | 0 | 0 | 0 | 0 | |||||
| current | OAK | pitching | 7 | 2 | 6 | 2 | 11 | 9.0 | 6 | 0 | 0 | |||||||||
| simulation | TOR | batting | 34 | 7 | 3 | 0 | 2 | 6 | 6 | 2 | 11 | 0 | 0 | |||||||
| simulation | TOR | pitching | 4 | 0 | 2 | 2 | 7 | 9.0 | 2 | 35 | 130 | |||||||||
| simulation | OAK | batting | 31 | 4 | 2 | 0 | 0 | 2 | 2 | 2 | 7 | 0 | 2 | |||||||
| simulation | OAK | pitching | 7 | 2 | 6 | 2 | 11 | 9.0 | 6 | 36 | 146 |
Batting lines - current + final simulation
| src | team | order | pos | name | PA | AB | H | 2B | 3B | HR | R | RBI | BB | SO | HBP | AVG |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| current | TOR | DH | George Springer | 0 | 4 | 1 | 1 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0.250 | |
| current | TOR | 1B | Vladimir Guerrero Jr. | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0.250 | |
| current | TOR | CF | Brett Bateman | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0.250 | |
| current | TOR | C | Alejandro Kirk | 0 | 5 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0.200 | |
| current | TOR | 3B | Kazuma Okamoto | 0 | 4 | 1 | 0 | 0 | 1 | 1 | 1 | 0 | 1 | 0 | 0.250 | |
| current | TOR | LF | Myles Straw | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.333 | |
| current | TOR | RF | Nathan Lukes | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0.250 | |
| current | TOR | 2B | Ernie Clement | 0 | 4 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.250 | |
| current | TOR | SS | Andrés Giménez | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.333 | |
| current | OAK | CF | Henry Bolte | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 0.250 | |
| current | OAK | 1B | Jeff McNeil | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0.250 | |
| current | OAK | LF | Carlos Cortes | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.333 | |
| current | OAK | DH | Max Muncy | 0 | 3 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.333 | |
| current | OAK | SS | Alika Williams | 0 | 3 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.333 | |
| current | OAK | 2B | Donovan Walton | 0 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0.000 | |
| current | OAK | C | Jonah Heim | 0 | 4 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.250 | |
| current | OAK | 3B | Zack Gelof | 0 | 4 | 1 | 0 | 0 | 1 | 1 | 1 | 0 | 1 | 0 | 0.250 | |
| current | OAK | RF | Lawrence Butler | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 0 | 0.250 | |
| simulation | TOR | 1 | CF | Brett Bateman | 4 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.250 |
| simulation | TOR | 2 | DH | George Springer | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 |
| simulation | TOR | 3 | 1B | Vladimir Guerrero Jr. | 4 | 3 | 1 | 1 | 0 | 0 | 1 | 2 | 1 | 0 | 0 | 0.333 |
| simulation | TOR | 4 | C | Alejandro Kirk | 4 | 3 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 2 | 0 | 0.000 |
| simulation | TOR | 5 | 3B | Kazuma Okamoto | 4 | 4 | 2 | 1 | 0 | 1 | 1 | 1 | 0 | 2 | 0 | 0.500 |
| simulation | TOR | 6 | RF | Nathan Lukes | 4 | 4 | 2 | 1 | 0 | 1 | 1 | 3 | 0 | 1 | 0 | 0.500 |
| simulation | TOR | 7 | 2B | Ernie Clement | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 |
| simulation | TOR | 8 | SS | Andrés Giménez | 4 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.250 |
| simulation | TOR | 9 | LF | Myles Straw | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.000 |
| simulation | OAK | 1 | CF | Henry Bolte | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 |
| simulation | OAK | 2 | 1B | Jeff McNeil | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.000 |
| simulation | OAK | 3 | 3B | Zack Gelof | 4 | 2 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 0.000 |
| simulation | OAK | 4 | RF | Lawrence Butler | 4 | 4 | 2 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0.500 |
| simulation | OAK | 5 | LF | Carlos Cortes | 4 | 4 | 1 | 1 | 0 | 0 | 1 | 2 | 0 | 1 | 0 | 0.250 |
| simulation | OAK | 6 | DH | Max Muncy | 4 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0.000 |
| simulation | OAK | 7 | 2B | Donovan Walton | 4 | 3 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0.333 |
| simulation | OAK | 8 | SS | Alika Williams | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.000 |
| simulation | OAK | 9 | C | Jonah Heim | 3 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.000 |
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 | TOR | 1 | Dylan Cease | Starter | 6.0 | 3 | 2 | 2 | 1 | 7 | 0 | 0 | 0 | 3.00 | 2.25 | 1.04 |
| current | TOR | 2 | Louis Varland | Closer | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 1.15 | 0.98 |
| current | TOR | 3 | Spencer Miles | Middle Reliever (High Leverage) | 1.0 | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0.00 | 2.84 | 1.07 |
| current | TOR | 4 | Tyler Rogers | Setup Man | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 1.84 | 1.19 |
| current | OAK | 1 | Jacob Lopez | Starter | 5.0 | 6 | 5 | 5 | 2 | 8 | 1 | 0 | 0 | 9.00 | 4.71 | 1.46 |
| current | OAK | 2 | Luis Medina | Middle Reliever (High Leverage) | 1.1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 3.25 | 1.37 |
| current | OAK | 3 | Elvis Alvarado | Closer | 1.0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.00 | 4.21 | 1.26 |
| current | OAK | 4 | Hogan Harris | Setup Man | 1.2 | 1 | 1 | 1 | 0 | 2 | 1 | 0 | 0 | 5.40 | 3.38 | 1.47 |
| simulation | TOR | 1 | Dylan Cease | Starter | 6.0 | 3 | 2 | 2 | 1 | 7 | 0 | 24 | 89 | 3.00 | 2.25 | 1.04 |
| simulation | TOR | 2 | Louis Varland | Closer | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 13 | 0.00 | 1.15 | 0.98 |
| simulation | TOR | 3 | Tyler Rogers | Setup Man | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 13 | 0.00 | 1.84 | 1.19 |
| simulation | TOR | 4 | Spencer Miles | Middle Reliever (High Leverage) | 1.0 | 1 | 0 | 0 | 1 | 0 | 0 | 5 | 15 | 0.00 | 2.84 | 1.07 |
| simulation | OAK | 1 | Jacob Lopez | Starter | 5.0 | 6 | 5 | 5 | 2 | 8 | 1 | 23 | 92 | 9.00 | 4.71 | 1.46 |
| simulation | OAK | 2 | Elvis Alvarado | Closer | 1.0 | 0 | 0 | 0 | 0 | 1 | 0 | 3 | 13 | 0.00 | 4.21 | 1.26 |
| simulation | OAK | 3 | Hogan Harris | Setup Man | 1.2 | 1 | 1 | 1 | 0 | 2 | 1 | 6 | 24 | 5.40 | 3.38 | 1.47 |
| simulation | OAK | 4 | Luis Medina | Middle Reliever (High Leverage) | 1.1 | 0 | 0 | 0 | 0 | 0 | 0 | 4 | 17 | 0.00 | 3.25 | 1.37 |
Pitch count summary
| team | pitcher | role | IP | R | H | BB | SO | BF | Pitches |
|---|---|---|---|---|---|---|---|---|---|
| TOR | Dylan Cease | Starter | 6.0 | 2 | 3 | 1 | 7 | 24 | 89 |
| TOR | Louis Varland | Closer | 1.0 | 0 | 0 | 0 | 0 | 3 | 13 |
| TOR | Spencer Miles | Middle Reliever (High Leverage) | 1.0 | 0 | 1 | 1 | 0 | 5 | 15 |
| TOR | Tyler Rogers | Setup Man | 1.0 | 0 | 0 | 0 | 0 | 3 | 13 |
| OAK | Jacob Lopez | Starter | 5.0 | 5 | 6 | 2 | 8 | 23 | 92 |
| OAK | Luis Medina | Middle Reliever (High Leverage) | 1.1 | 0 | 0 | 0 | 0 | 4 | 17 |
| OAK | Elvis Alvarado | Closer | 1.0 | 0 | 0 | 0 | 1 | 3 | 13 |
| OAK | Hogan Harris | Setup Man | 1.2 | 1 | 1 | 0 | 2 | 6 | 24 |
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_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. |
| 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. |
| 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. |
20260907_WAS@SD
20260907_WAS@SD.json • 2026-09-07
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 | SD | CURRENT_PITCHER_DUPLICATION | SD pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_payload | current | WAS | CURRENT_PITCHER_DUPLICATION | WAS pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_vs_final | cross-schema | SD | CURRENT_FINALIZED_MATCH_BOX | SD model-prediction batting totals differ from final simulation box score (AB: current=33, sim=31; H: current=8, sim=7; HR: current=1, sim=2; RBI: current=4, sim=6; R: current=4, sim=6; BB: current=3, sim=5; SO: current=8, 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 | SD | CURRENT_PLAYER_MATCH_BOX | SD current finalized hitter lines are model predictions and differ from the simulation box score: Jake Cronenworth: H current=1 box=0, SO current=1 box=0; Fernando Tatis Jr.: AB current=5 box=4, H current=1 box=2, HR current=1 box=0; Luis Campusano: HR current=0 box=1, RBI current=1 box=2, R current=0 box=1, SO current=1 box=0; Manny Machado: AB current=4 box=2, H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Ty France: HR current=0 box=1, RBI current=0 box=2, BB current=0 box=1, SO current=1 box=0; Jackson Merrill: AB current=5 box=4, 2B current=1 box=0, RBI current=1 box=0, SO current=1 box=0; Ethan Salas: AB current=3 box=4, H current=0 box=1, 2B current=0 box=1, RBI current=0 box=1; Dustin Harris: AB current=3 box=4, R current=0 box=1, SO current=0 box=3 | New contract: compare model predictions separately; simulation_box_score_stats/scoring_simulation hold the simulation draw. | ||
| INFO | current_vs_final | cross-schema | WAS | CURRENT_FINALIZED_MATCH_BOX | WAS model-prediction batting totals differ from final simulation box score (AB: current=34, sim=33; H: current=8, sim=6; 2B: current=2, sim=0; 3B: current=0, sim=1; HR: current=1, sim=3; RBI: current=4, sim=5; BB: current=3, sim=2; SO: current=8, sim=10). | New contract: model prediction totals may differ from scoring_simulation; simulation_stats_source links the simulation box score. | ||
| INFO | current_vs_final | cross-schema | WAS | CURRENT_PLAYER_MATCH_BOX | WAS current finalized hitter lines are model predictions and differ from the simulation box score: Dylan Crews: H current=1 box=0, R current=1 box=0; Brady House: RBI current=1 box=0; Daylen Lile: 3B current=0 box=1; Abimelec Ortiz: H current=0 box=2, HR current=0 box=2, RBI current=0 box=3, R current=0 box=1; Jorbit Vivas: AB current=3 box=2, H current=1 box=0, SO current=0 box=1, HBP current=0 box=1; CJ Abrams: AB current=5 box=4, HR current=1 box=0, RBI current=1 box=0, BB current=1 box=0; James Wood: H current=1 box=0, 2B current=1 box=0, R current=1 box=0, BB current=1 box=0; Keibert Ruiz: 2B current=1 box=0, HR current=0 box=1, R current=0 box=1, SO current=1 box=3 | 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 | SD | BATTING_REALISM | current:SD hitter lines pass basic baseball constraints. | |||
| PASS | batting | current | WAS | BATTING_REALISM | current:WAS hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | SD | BATTING_REALISM | simulation:SD hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | WAS | BATTING_REALISM | simulation:WAS hitter lines pass basic baseball constraints. | |||
| PASS | batting_totals | current | SD | BATTING_TOTALS_SUM | current:SD batting totals equal summed player lines. | |||
| PASS | batting_totals | current | WAS | BATTING_TOTALS_SUM | current:WAS batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | SD | BATTING_TOTALS_SUM | simulation:SD batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | WAS | BATTING_TOTALS_SUM | simulation:WAS batting totals equal summed player lines. | |||
| PASS | boxscore_crosscheck | simulation | SD | BAT_PITCH_BB_MATCH | simulation:SD batting walks match WAS pitching: 5. | |||
| PASS | boxscore_crosscheck | simulation | SD | BAT_PITCH_HR_MATCH | simulation:SD batting home runs match WAS pitching: 2. | |||
| PASS | boxscore_crosscheck | simulation | SD | BAT_PITCH_H_MATCH | simulation:SD batting hits match WAS pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | SD | BAT_PITCH_SO_MATCH | simulation:SD batting strikeouts match WAS pitching: 6. | |||
| PASS | boxscore_crosscheck | simulation | SD | PA_BF_MATCH | simulation:SD PA=36 matches WAS BF=36. | |||
| PASS | boxscore_crosscheck | simulation | SD | RUNS_MATCH_FINAL | simulation:SD runs match final score and opposing pitching runs: 6. | |||
| PASS | boxscore_crosscheck | simulation | WAS | BAT_PITCH_BB_MATCH | simulation:WAS batting walks match SD pitching: 2. | |||
| PASS | boxscore_crosscheck | simulation | WAS | BAT_PITCH_HR_MATCH | simulation:WAS batting home runs match SD pitching: 3. | |||
| PASS | boxscore_crosscheck | simulation | WAS | BAT_PITCH_H_MATCH | simulation:WAS batting hits match SD pitching: 6. | |||
| PASS | boxscore_crosscheck | simulation | WAS | BAT_PITCH_SO_MATCH | simulation:WAS batting strikeouts match SD pitching: 10. | |||
| PASS | boxscore_crosscheck | simulation | WAS | PA_BF_MATCH | simulation:WAS PA=36 matches SD BF=36. | |||
| PASS | boxscore_crosscheck | simulation | WAS | RUNS_MATCH_FINAL | simulation:WAS runs match final score and opposing pitching runs: 5. | |||
| PASS | confidence_calibration | CONFIDENCE_CALIBRATION_APPLIED | Empirical confidence blend verified: 0.485 -> 0.520 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.484966, 'sample_size': 304, 'empirical_hit_rate': 0.5559, 'empirical_weight': 0.5, 'blended_confidence': 0.520433, 'published_confidence': 0.529654, 'published_after_governors': True, 'governor_mode': 'shrinkage_not_clamp'} | ||||
| PASS | cross_schema | cross-schema | SD | CURRENT_FINALIZED_MATCH_BOX | SD current pitcher projected totals match final simulation pitching box score. | |||
| PASS | cross_schema | cross-schema | WAS | CURRENT_FINALIZED_MATCH_BOX | WAS current pitcher projected totals match final simulation pitching box score. | |||
| PASS | current_payload | current | SD | CURRENT_LINEUP_SHAPE | SD current lineup has 9 expected positions. | |||
| PASS | current_payload | current | SD | CURRENT_MODEL_ZERO_FALLBACK | SD current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | SD | CURRENT_NAMES_PRESENT | SD current hitter names are populated. | |||
| PASS | current_payload | current | SD | CURRENT_PREDICTIONS_MATCH_FINALIZED | SD hitter predictions mirror finalized stats. | |||
| PASS | current_payload | current | WAS | CURRENT_LINEUP_SHAPE | WAS current lineup has 9 expected positions. | |||
| PASS | current_payload | current | WAS | CURRENT_MODEL_ZERO_FALLBACK | WAS current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | WAS | CURRENT_NAMES_PRESENT | WAS current hitter names are populated. | |||
| PASS | current_payload | current | WAS | CURRENT_PREDICTIONS_MATCH_FINALIZED | WAS 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.470. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | confidence is in [0,1]: 0.530. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | home_win_probability is in [0,1]: 0.530. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Final total runs 11 is reasonably close to low-score expected_total_runs 11.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.481/0.657. | |||||
| PASS | final_decision | FINAL_DECISION_POLICY | Final decision policy preserved model ownership of the winner. | |||||
| 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: WAS 6, SD 7. | |||||
| PASS | innings | INNING_TOTAL_RUNS | Inning runs sum to final score: WAS 5 - SD 6. | |||||
| PASS | matchup_recency | GUARDRAIL_FINAL_WINNER_SYNC | Guardrail predicted_team matches final predicted winner: SD. | |||||
| PASS | matchup_recency | MATCHUP_RECENCY_GUARDRAIL | Matchup recency guardrail applied for SD; cap=0.53, reasons=latest same-matchup result beat the predicted side; predicted side recently lost this matchup by 5+ runs; opponent already produced an 8+ run breakout in this matchup; latest-series evidence cleared the reversal bar; confidence capped and runs shifted, winner unchanged by design. | {'applied': True, 'confidence_cap': 0.53, 'winner_flipped': False, 'reasons': ['latest same-matchup result beat the predicted side', 'predicted side recently lost this matchup by 5+ runs', 'opponent already produced an 8+ run breakout in this matchup', 'latest-series evidence cleared the reversal bar; confidence capped and runs shifted, winner unchanged by design'], 'signals': {'predicted_team': 'SD', 'opponent_team': 'WAS', 'h2h_net_margin': -5, 'opponent_breakout': True, 'opponent_blowout_win': True, 'split_recent_h2h': True, 'recent_h2h': [{'date': '2026-05-31', 'predicted_team_runs': 2, 'opponent_runs': 4, 'margin_for_predicted_team': -2, 'winner': 'WAS'}, {'date': '2026-05-30', 'predicted_team_runs': 4, 'opponent_runs': 9, 'margin_for_predicted_team': -5, 'winner': 'WAS'}, {'date': '2026-05-29', 'predicted_team_runs': 7, 'opponent_runs': 5, 'margin_for_predicted_team': 2, 'winner': 'SD'}], 'prediction_memory': {'available': False, 'reason': 'no_verified_prior_matchup_predictions', 'verification_policy': 'pregame_artifact_matched_to_one_official_final', 'verified_outcome_count': 0, 'consecutive_same_pick_count': 0, 'same_pick_actual_loss_count': 0, 'same_pick_blowout_loss_count': 0, 'prior_predictions': []}, 'guardrail_predicted_team': 'SD', 'guardrail_opponent_team': 'WAS', 'output_pre_simulation_winner': 'SD', 'output_opponent_team': 'WAS', 'simulation_score_winner': 'SD', 'final_score_winner': 'SD', 'pre_simulation_winner': 'SD', 'winner_flipped_by_simulation': False, 'simulation_would_flip_winner': False}, 'hard_flip_suppressed': True, 'flip_authority': 'caps_confidence_and_shifts_runs_only', 'final_prediction_sync': {'pre_simulation_score': {'away_runs': 5, 'home_runs': 6, 'score_text': 'WAS 5 - 6 SD', 'winner': 'SD'}, 'final_simulation_score': {'away_runs': 5, 'home_runs': 6, 'score_text': 'WAS 5 - 6 SD', 'winner': 'SD'}, '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.0934, 'recent_form_edge_home_minus_away': -0.3847, 'winner_direction': 'home', 'thresholds': {'pitcher_matchup': 0.35, 'recent_form': 0.75}}, 'margin_widening_capped': False, 'simulation_winner_agrees': True, 'away_run_delta': 0, 'home_run_delta': 0, 'total_run_delta': 0, 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_usage': 'organic_simulation_realized_target', 'final_prediction_source': 'stable_final_prediction_policy', 'final_decision_policy': {'policy_version': 'model_target_authoritative_simulation_realizes_v3', 'away_runs': 5, 'home_runs': 6, 'winner': 'SD', 'model_winner': 'SD', 'simulation_winner': 'SD', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 2, 'published_winner': 'SD', 'published_winner_draw_share': 1.0, 'draw_majority_team': 'SD', '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': 5, 'home_runs': 6}, 'simulation_score': {'away_runs': 5, 'home_runs': 6}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 1, 'final_margin': 1, 'winner_quality_edge': -0.0369, 'winner': 'SD', 'score_reviewed': {'away_runs': 5, 'home_runs': 6, '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-09-07. | |||||
| PASS | metadata | FILENAME_GAME_ID_MATCH | Filename matches game_id: 20260907_WAS@SD. | |||||
| PASS | metadata | FILENAME_TEAM_MATCH | Filename teams match JSON teams: WAS@SD. | |||||
| 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': 3, 'sample_weight': 0.0409, 'home_net_margin': -5.0, 'absolute_net_margin': 5.0, 'home_average_margin': -1.667, 'home_run_delta': -0.0341, 'away_run_delta': 0.0341, 'evidence': [{'game_id': None, 'home_margin': -2.0}, {'game_id': None, 'home_margin': -5.0}, {'game_id': None, 'home_margin': 2.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': 5, 'probability': 0.02057457368927294}, {'home_runs': 5, 'away_runs': 4, 'probability': 0.020212009890828057}, {'home_runs': 4, 'away_runs': 5, 'probability': 0.019977521181426802}, {'home_runs': 4, 'away_runs': 4, 'probability': 0.01962547860341569}, {'home_runs': 6, 'away_runs': 5, 'probability': 0.01878510555160399}], 'home_distribution': {'0': 0.03697977085944832, '1': 0.061656556465363714, '2': 0.0911355595426761, '3': 0.11942355964300466, '4': 0.1387348946009802, '5': 0.14288115559077177, '6': 0.13045410464602675, '7': 0.10559274785071389, '8': 0.07577116835648832, '9': 0.04820226267405913, '10': 0.027184691888482302, '11': 0.013591736739017044, '12': 0.006024472715986407, '13': 0.0023673184269814482}, 'away_distribution': {'0': 0.038496625245047, '1': 0.06410244709357427, '2': 0.09438302813147567, '3': 0.12287981625281505, '4': 0.14146029129773838, '5': 0.1439978113572997, '6': 0.12961181219322443, '7': 0.10315745588404844, '8': 0.07259789213463376, '9': 0.04517672537978854, '10': 0.02485838060786859, '11': 0.012094788180639585, '12': 0.005203445963228697, '13': 0.00197948027861759}, 'model': 'overdispersed_score_distribution', 'variance_multiplier': 1.75, '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.0875, 'recent_quality_edge': -0.268, 'season_weight': 0.65, 'recent_weight': 0.35, 'recent_reliability': 1.0, 'alignment': 'conflict', 'blended_quality_edge': -0.0369} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Simulation flip control is implemented and its runtime trace passed. | {'pre_simulation_score': {'away_runs': 5, 'home_runs': 6, 'score_text': 'WAS 5 - 6 SD', 'winner': 'SD'}, 'final_simulation_score': {'away_runs': 5, 'home_runs': 6, 'score_text': 'WAS 5 - 6 SD', 'winner': 'SD'}, '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.0934, 'recent_form_edge_home_minus_away': -0.3847, 'winner_direction': 'home', 'thresholds': {'pitcher_matchup': 0.35, 'recent_form': 0.75}}, 'margin_widening_capped': False, 'simulation_winner_agrees': True, 'away_run_delta': 0, 'home_run_delta': 0, 'total_run_delta': 0, 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_usage': 'organic_simulation_realized_target', 'final_prediction_source': 'stable_final_prediction_policy', 'final_decision_policy': {'policy_version': 'model_target_authoritative_simulation_realizes_v3', 'away_runs': 5, 'home_runs': 6, 'winner': 'SD', 'model_winner': 'SD', 'simulation_winner': 'SD', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 2, 'published_winner': 'SD', 'published_winner_draw_share': 1.0, 'draw_majority_team': 'SD', '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': 5, 'home_runs': 6}, 'simulation_score': {'away_runs': 5, 'home_runs': 6}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 1, 'final_margin': 1, 'winner_quality_edge': -0.0369, 'winner': 'SD', 'score_reviewed': {'away_runs': 5, 'home_runs': 6, '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: 151. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | home pitcher pitch-by-pitch count matches pitch_count_summary total: 152. | |||||
| PASS | pitch_count | simulation | SD | PITCH_COUNT_PITCHER_MATCH | SD pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | SD | PITCH_COUNT_TOTAL_MATCH | SD pitch_count_summary total, row sum, and pitching total all match: 152. | |||
| PASS | pitch_count | simulation | WAS | PITCH_COUNT_PITCHER_MATCH | WAS pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | WAS | PITCH_COUNT_TOTAL_MATCH | WAS 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 | current | SD | PITCHING_REALISM | current:SD pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | SD | STARTER_PRESENT | current:SD includes a starter/opener role. | |||
| PASS | pitching | current | WAS | PITCHING_REALISM | current:WAS pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | WAS | STARTER_PRESENT | current:WAS includes a starter/opener role. | |||
| PASS | pitching | simulation | SD | PITCHING_REALISM | simulation:SD pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | SD | STARTER_PRESENT | simulation:SD includes a starter/opener role. | |||
| PASS | pitching | simulation | WAS | PITCHING_REALISM | simulation:WAS pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | WAS | STARTER_PRESENT | simulation:WAS includes a starter/opener role. | |||
| PASS | pitching_totals | current | SD | PITCHING_TOTALS_SUM | current:SD pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | SD | PITCHING_TOTALS_SUM | current:SD pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | current | WAS | PITCHING_TOTALS_SUM | current:WAS pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | current | WAS | PITCHING_TOTALS_SUM | current:WAS pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | SD | PITCHING_TOTALS_SUM | simulation:SD pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | SD | PITCHING_TOTALS_SUM | simulation:SD pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | WAS | PITCHING_TOTALS_SUM | simulation:WAS pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | simulation | WAS | PITCHING_TOTALS_SUM | simulation:WAS pitching totals equal summed pitcher lines for available fields. | |||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Enhanced AI score matches enhanced target: WAS 5 - 6 SD. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation score matches final score: WAS 5 - 6 SD. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation winner matches final score: SD wins 6-5. | |||||
| PASS | prediction_comparison | SIMULATION_WINNER_FLIP_TRACE | Simulation decision is explicit: model=SD, simulation=SD, published=SD. | |||||
| PASS | probability | CONFIDENCE_RANGE | Enhanced target confidence is in range: 0.530. | |||||
| 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: 4/10 (0.400). | |||||
| 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): SD wins 6-5. | |||||
| PASS | score | SCORE_NO_TIE | Final score has a clear winner: SD wins 5-6. | |||||
| PASS | score | SCORE_STEP_FINAL_MATCH | simulation_result step matches final score: 5-6. | |||||
| 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 5-6, final 5-6 (delta 0). | |||||
| PASS | score | TOTAL_RUNS_MATCH | total_runs field matches final score total: 11. | |||||
| PASS | score | WINNER_FIELD_MATCH | winner field is consistent: SD wins 6-5. | |||||
| PASS | score | cross-schema | CURRENT_SCORE_MATCHES_SIM | game.predicted_runs matches scoring_simulation.final_score. | ||||
| PASS | team_recent_performance | current | SD | RECENT_FORM_RANGE | SD recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | SD | TEAM_RECENT_RECORD | SD wins and win_pct agree: 3/10 = 0.300. | |||
| PASS | team_recent_performance | current | WAS | RECENT_FORM_RANGE | WAS recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | WAS | TEAM_RECENT_RECORD | WAS wins and win_pct agree: 5/10 = 0.500. |
Passed checks
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| PASS | batting | current | SD | BATTING_REALISM | current:SD hitter lines pass basic baseball constraints. | |||
| PASS | batting | current | WAS | BATTING_REALISM | current:WAS hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | SD | BATTING_REALISM | simulation:SD hitter lines pass basic baseball constraints. | |||
| PASS | batting | simulation | WAS | BATTING_REALISM | simulation:WAS hitter lines pass basic baseball constraints. | |||
| PASS | batting_totals | current | SD | BATTING_TOTALS_SUM | current:SD batting totals equal summed player lines. | |||
| PASS | batting_totals | current | WAS | BATTING_TOTALS_SUM | current:WAS batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | SD | BATTING_TOTALS_SUM | simulation:SD batting totals equal summed player lines. | |||
| PASS | batting_totals | simulation | WAS | BATTING_TOTALS_SUM | simulation:WAS batting totals equal summed player lines. | |||
| PASS | boxscore_crosscheck | simulation | SD | BAT_PITCH_BB_MATCH | simulation:SD batting walks match WAS pitching: 5. | |||
| PASS | boxscore_crosscheck | simulation | SD | BAT_PITCH_HR_MATCH | simulation:SD batting home runs match WAS pitching: 2. | |||
| PASS | boxscore_crosscheck | simulation | SD | BAT_PITCH_H_MATCH | simulation:SD batting hits match WAS pitching: 7. | |||
| PASS | boxscore_crosscheck | simulation | SD | BAT_PITCH_SO_MATCH | simulation:SD batting strikeouts match WAS pitching: 6. | |||
| PASS | boxscore_crosscheck | simulation | SD | PA_BF_MATCH | simulation:SD PA=36 matches WAS BF=36. | |||
| PASS | boxscore_crosscheck | simulation | SD | RUNS_MATCH_FINAL | simulation:SD runs match final score and opposing pitching runs: 6. | |||
| PASS | boxscore_crosscheck | simulation | WAS | BAT_PITCH_BB_MATCH | simulation:WAS batting walks match SD pitching: 2. | |||
| PASS | boxscore_crosscheck | simulation | WAS | BAT_PITCH_HR_MATCH | simulation:WAS batting home runs match SD pitching: 3. | |||
| PASS | boxscore_crosscheck | simulation | WAS | BAT_PITCH_H_MATCH | simulation:WAS batting hits match SD pitching: 6. | |||
| PASS | boxscore_crosscheck | simulation | WAS | BAT_PITCH_SO_MATCH | simulation:WAS batting strikeouts match SD pitching: 10. | |||
| PASS | boxscore_crosscheck | simulation | WAS | PA_BF_MATCH | simulation:WAS PA=36 matches SD BF=36. | |||
| PASS | boxscore_crosscheck | simulation | WAS | RUNS_MATCH_FINAL | simulation:WAS runs match final score and opposing pitching runs: 5. | |||
| PASS | confidence_calibration | CONFIDENCE_CALIBRATION_APPLIED | Empirical confidence blend verified: 0.485 -> 0.520 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.484966, 'sample_size': 304, 'empirical_hit_rate': 0.5559, 'empirical_weight': 0.5, 'blended_confidence': 0.520433, 'published_confidence': 0.529654, 'published_after_governors': True, 'governor_mode': 'shrinkage_not_clamp'} | ||||
| PASS | cross_schema | cross-schema | SD | CURRENT_FINALIZED_MATCH_BOX | SD current pitcher projected totals match final simulation pitching box score. | |||
| PASS | cross_schema | cross-schema | WAS | CURRENT_FINALIZED_MATCH_BOX | WAS current pitcher projected totals match final simulation pitching box score. | |||
| PASS | current_payload | current | SD | CURRENT_LINEUP_SHAPE | SD current lineup has 9 expected positions. | |||
| PASS | current_payload | current | SD | CURRENT_MODEL_ZERO_FALLBACK | SD current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | SD | CURRENT_NAMES_PRESENT | SD current hitter names are populated. | |||
| PASS | current_payload | current | SD | CURRENT_PREDICTIONS_MATCH_FINALIZED | SD hitter predictions mirror finalized stats. | |||
| PASS | current_payload | current | WAS | CURRENT_LINEUP_SHAPE | WAS current lineup has 9 expected positions. | |||
| PASS | current_payload | current | WAS | CURRENT_MODEL_ZERO_FALLBACK | WAS current model fallback usage is limited: 0/9 hitters. | |||
| PASS | current_payload | current | WAS | CURRENT_NAMES_PRESENT | WAS current hitter names are populated. | |||
| PASS | current_payload | current | WAS | CURRENT_PREDICTIONS_MATCH_FINALIZED | WAS 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.470. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | confidence is in [0,1]: 0.530. | |||||
| PASS | enhanced_prediction | CONFIDENCE_RANGE | home_win_probability is in [0,1]: 0.530. | |||||
| PASS | enhanced_prediction | LOW_SCORE_ANALYSIS | Final total runs 11 is reasonably close to low-score expected_total_runs 11.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.481/0.657. | |||||
| PASS | final_decision | FINAL_DECISION_POLICY | Final decision policy preserved model ownership of the winner. | |||||
| 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: WAS 6, SD 7. | |||||
| PASS | innings | INNING_TOTAL_RUNS | Inning runs sum to final score: WAS 5 - SD 6. | |||||
| PASS | matchup_recency | GUARDRAIL_FINAL_WINNER_SYNC | Guardrail predicted_team matches final predicted winner: SD. | |||||
| PASS | matchup_recency | MATCHUP_RECENCY_GUARDRAIL | Matchup recency guardrail applied for SD; cap=0.53, reasons=latest same-matchup result beat the predicted side; predicted side recently lost this matchup by 5+ runs; opponent already produced an 8+ run breakout in this matchup; latest-series evidence cleared the reversal bar; confidence capped and runs shifted, winner unchanged by design. | {'applied': True, 'confidence_cap': 0.53, 'winner_flipped': False, 'reasons': ['latest same-matchup result beat the predicted side', 'predicted side recently lost this matchup by 5+ runs', 'opponent already produced an 8+ run breakout in this matchup', 'latest-series evidence cleared the reversal bar; confidence capped and runs shifted, winner unchanged by design'], 'signals': {'predicted_team': 'SD', 'opponent_team': 'WAS', 'h2h_net_margin': -5, 'opponent_breakout': True, 'opponent_blowout_win': True, 'split_recent_h2h': True, 'recent_h2h': [{'date': '2026-05-31', 'predicted_team_runs': 2, 'opponent_runs': 4, 'margin_for_predicted_team': -2, 'winner': 'WAS'}, {'date': '2026-05-30', 'predicted_team_runs': 4, 'opponent_runs': 9, 'margin_for_predicted_team': -5, 'winner': 'WAS'}, {'date': '2026-05-29', 'predicted_team_runs': 7, 'opponent_runs': 5, 'margin_for_predicted_team': 2, 'winner': 'SD'}], 'prediction_memory': {'available': False, 'reason': 'no_verified_prior_matchup_predictions', 'verification_policy': 'pregame_artifact_matched_to_one_official_final', 'verified_outcome_count': 0, 'consecutive_same_pick_count': 0, 'same_pick_actual_loss_count': 0, 'same_pick_blowout_loss_count': 0, 'prior_predictions': []}, 'guardrail_predicted_team': 'SD', 'guardrail_opponent_team': 'WAS', 'output_pre_simulation_winner': 'SD', 'output_opponent_team': 'WAS', 'simulation_score_winner': 'SD', 'final_score_winner': 'SD', 'pre_simulation_winner': 'SD', 'winner_flipped_by_simulation': False, 'simulation_would_flip_winner': False}, 'hard_flip_suppressed': True, 'flip_authority': 'caps_confidence_and_shifts_runs_only', 'final_prediction_sync': {'pre_simulation_score': {'away_runs': 5, 'home_runs': 6, 'score_text': 'WAS 5 - 6 SD', 'winner': 'SD'}, 'final_simulation_score': {'away_runs': 5, 'home_runs': 6, 'score_text': 'WAS 5 - 6 SD', 'winner': 'SD'}, '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.0934, 'recent_form_edge_home_minus_away': -0.3847, 'winner_direction': 'home', 'thresholds': {'pitcher_matchup': 0.35, 'recent_form': 0.75}}, 'margin_widening_capped': False, 'simulation_winner_agrees': True, 'away_run_delta': 0, 'home_run_delta': 0, 'total_run_delta': 0, 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_usage': 'organic_simulation_realized_target', 'final_prediction_source': 'stable_final_prediction_policy', 'final_decision_policy': {'policy_version': 'model_target_authoritative_simulation_realizes_v3', 'away_runs': 5, 'home_runs': 6, 'winner': 'SD', 'model_winner': 'SD', 'simulation_winner': 'SD', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 2, 'published_winner': 'SD', 'published_winner_draw_share': 1.0, 'draw_majority_team': 'SD', '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': 5, 'home_runs': 6}, 'simulation_score': {'away_runs': 5, 'home_runs': 6}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 1, 'final_margin': 1, 'winner_quality_edge': -0.0369, 'winner': 'SD', 'score_reviewed': {'away_runs': 5, 'home_runs': 6, '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-09-07. | |||||
| PASS | metadata | FILENAME_GAME_ID_MATCH | Filename matches game_id: 20260907_WAS@SD. | |||||
| PASS | metadata | FILENAME_TEAM_MATCH | Filename teams match JSON teams: WAS@SD. | |||||
| 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': 3, 'sample_weight': 0.0409, 'home_net_margin': -5.0, 'absolute_net_margin': 5.0, 'home_average_margin': -1.667, 'home_run_delta': -0.0341, 'away_run_delta': 0.0341, 'evidence': [{'game_id': None, 'home_margin': -2.0}, {'game_id': None, 'home_margin': -5.0}, {'game_id': None, 'home_margin': 2.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': 5, 'probability': 0.02057457368927294}, {'home_runs': 5, 'away_runs': 4, 'probability': 0.020212009890828057}, {'home_runs': 4, 'away_runs': 5, 'probability': 0.019977521181426802}, {'home_runs': 4, 'away_runs': 4, 'probability': 0.01962547860341569}, {'home_runs': 6, 'away_runs': 5, 'probability': 0.01878510555160399}], 'home_distribution': {'0': 0.03697977085944832, '1': 0.061656556465363714, '2': 0.0911355595426761, '3': 0.11942355964300466, '4': 0.1387348946009802, '5': 0.14288115559077177, '6': 0.13045410464602675, '7': 0.10559274785071389, '8': 0.07577116835648832, '9': 0.04820226267405913, '10': 0.027184691888482302, '11': 0.013591736739017044, '12': 0.006024472715986407, '13': 0.0023673184269814482}, 'away_distribution': {'0': 0.038496625245047, '1': 0.06410244709357427, '2': 0.09438302813147567, '3': 0.12287981625281505, '4': 0.14146029129773838, '5': 0.1439978113572997, '6': 0.12961181219322443, '7': 0.10315745588404844, '8': 0.07259789213463376, '9': 0.04517672537978854, '10': 0.02485838060786859, '11': 0.012094788180639585, '12': 0.005203445963228697, '13': 0.00197948027861759}, 'model': 'overdispersed_score_distribution', 'variance_multiplier': 1.75, '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.0875, 'recent_quality_edge': -0.268, 'season_weight': 0.65, 'recent_weight': 0.35, 'recent_reliability': 1.0, 'alignment': 'conflict', 'blended_quality_edge': -0.0369} | ||||
| PASS | optimization_roadmap | OPTIMIZATION_ROADMAP_STATUS | Simulation flip control is implemented and its runtime trace passed. | {'pre_simulation_score': {'away_runs': 5, 'home_runs': 6, 'score_text': 'WAS 5 - 6 SD', 'winner': 'SD'}, 'final_simulation_score': {'away_runs': 5, 'home_runs': 6, 'score_text': 'WAS 5 - 6 SD', 'winner': 'SD'}, '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.0934, 'recent_form_edge_home_minus_away': -0.3847, 'winner_direction': 'home', 'thresholds': {'pitcher_matchup': 0.35, 'recent_form': 0.75}}, 'margin_widening_capped': False, 'simulation_winner_agrees': True, 'away_run_delta': 0, 'home_run_delta': 0, 'total_run_delta': 0, 'score_source': 'enhanced_prediction.pre_simulation_target', 'simulation_usage': 'organic_simulation_realized_target', 'final_prediction_source': 'stable_final_prediction_policy', 'final_decision_policy': {'policy_version': 'model_target_authoritative_simulation_realizes_v3', 'away_runs': 5, 'home_runs': 6, 'winner': 'SD', 'model_winner': 'SD', 'simulation_winner': 'SD', 'simulation_winner_agrees': True, 'simulation_agreement_scope': 'selected_draw_only', 'simulation_distribution_agreement': {'available': True, 'draw_count': 2, 'published_winner': 'SD', 'published_winner_draw_share': 1.0, 'draw_majority_team': 'SD', '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': 5, 'home_runs': 6}, 'simulation_score': {'away_runs': 5, 'home_runs': 6}}, 'final_margin_quality_review': {'review_required': False, 'pre_margin': 1, 'final_margin': 1, 'winner_quality_edge': -0.0369, 'winner': 'SD', 'score_reviewed': {'away_runs': 5, 'home_runs': 6, '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: 151. | |||||
| PASS | pitch_count | PITCH_COUNT_TOTAL_MATCH | home pitcher pitch-by-pitch count matches pitch_count_summary total: 152. | |||||
| PASS | pitch_count | simulation | SD | PITCH_COUNT_PITCHER_MATCH | SD pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | SD | PITCH_COUNT_TOTAL_MATCH | SD pitch_count_summary total, row sum, and pitching total all match: 152. | |||
| PASS | pitch_count | simulation | WAS | PITCH_COUNT_PITCHER_MATCH | WAS pitch_count_summary pitcher rows match pitching box score. | |||
| PASS | pitch_count | simulation | WAS | PITCH_COUNT_TOTAL_MATCH | WAS 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 | current | SD | PITCHING_REALISM | current:SD pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | SD | STARTER_PRESENT | current:SD includes a starter/opener role. | |||
| PASS | pitching | current | WAS | PITCHING_REALISM | current:WAS pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | current | WAS | STARTER_PRESENT | current:WAS includes a starter/opener role. | |||
| PASS | pitching | simulation | SD | PITCHING_REALISM | simulation:SD pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | SD | STARTER_PRESENT | simulation:SD includes a starter/opener role. | |||
| PASS | pitching | simulation | WAS | PITCHING_REALISM | simulation:WAS pitcher lines pass basic baseball constraints. | |||
| PASS | pitching | simulation | WAS | STARTER_PRESENT | simulation:WAS includes a starter/opener role. | |||
| PASS | pitching_totals | current | SD | PITCHING_TOTALS_SUM | current:SD pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | current | SD | PITCHING_TOTALS_SUM | current:SD pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | current | WAS | PITCHING_TOTALS_SUM | current:WAS pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | current | WAS | PITCHING_TOTALS_SUM | current:WAS pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | SD | PITCHING_TOTALS_SUM | simulation:SD pitching IP total matches pitcher sum: 9.0. | |||
| PASS | pitching_totals | simulation | SD | PITCHING_TOTALS_SUM | simulation:SD pitching totals equal summed pitcher lines for available fields. | |||
| PASS | pitching_totals | simulation | WAS | PITCHING_TOTALS_SUM | simulation:WAS pitching IP total matches pitcher sum: 8.0. | |||
| PASS | pitching_totals | simulation | WAS | PITCHING_TOTALS_SUM | simulation:WAS pitching totals equal summed pitcher lines for available fields. | |||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Enhanced AI score matches enhanced target: WAS 5 - 6 SD. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation score matches final score: WAS 5 - 6 SD. | |||||
| PASS | prediction_comparison | PREDICTION_COMPARISON_MATCH | Inning simulation winner matches final score: SD wins 6-5. | |||||
| PASS | prediction_comparison | SIMULATION_WINNER_FLIP_TRACE | Simulation decision is explicit: model=SD, simulation=SD, published=SD. | |||||
| PASS | probability | CONFIDENCE_RANGE | Enhanced target confidence is in range: 0.530. | |||||
| 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: 4/10 (0.400). | |||||
| 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): SD wins 6-5. | |||||
| PASS | score | SCORE_NO_TIE | Final score has a clear winner: SD wins 5-6. | |||||
| PASS | score | SCORE_STEP_FINAL_MATCH | simulation_result step matches final score: 5-6. | |||||
| 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 5-6, final 5-6 (delta 0). | |||||
| PASS | score | TOTAL_RUNS_MATCH | total_runs field matches final score total: 11. | |||||
| PASS | score | WINNER_FIELD_MATCH | winner field is consistent: SD wins 6-5. | |||||
| PASS | score | cross-schema | CURRENT_SCORE_MATCHES_SIM | game.predicted_runs matches scoring_simulation.final_score. | ||||
| PASS | team_recent_performance | current | SD | RECENT_FORM_RANGE | SD recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | SD | TEAM_RECENT_RECORD | SD wins and win_pct agree: 3/10 = 0.300. | |||
| PASS | team_recent_performance | current | WAS | RECENT_FORM_RANGE | WAS recent hitting/pitching rates are in valid ranges. | |||
| PASS | team_recent_performance | current | WAS | TEAM_RECENT_RECORD | WAS wins and win_pct agree: 5/10 = 0.500. |
Info/context findings
| Severity | Category | Source | Team | Player | Rule | Message | Value | Expected |
|---|---|---|---|---|---|---|---|---|
| INFO | current_payload | current | SD | CURRENT_PITCHER_DUPLICATION | SD pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_payload | current | WAS | CURRENT_PITCHER_DUPLICATION | WAS pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | |||
| INFO | current_vs_final | cross-schema | SD | CURRENT_FINALIZED_MATCH_BOX | SD model-prediction batting totals differ from final simulation box score (AB: current=33, sim=31; H: current=8, sim=7; HR: current=1, sim=2; RBI: current=4, sim=6; R: current=4, sim=6; BB: current=3, sim=5; SO: current=8, 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 | SD | CURRENT_PLAYER_MATCH_BOX | SD current finalized hitter lines are model predictions and differ from the simulation box score: Jake Cronenworth: H current=1 box=0, SO current=1 box=0; Fernando Tatis Jr.: AB current=5 box=4, H current=1 box=2, HR current=1 box=0; Luis Campusano: HR current=0 box=1, RBI current=1 box=2, R current=0 box=1, SO current=1 box=0; Manny Machado: AB current=4 box=2, H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Ty France: HR current=0 box=1, RBI current=0 box=2, BB current=0 box=1, SO current=1 box=0; Jackson Merrill: AB current=5 box=4, 2B current=1 box=0, RBI current=1 box=0, SO current=1 box=0; Ethan Salas: AB current=3 box=4, H current=0 box=1, 2B current=0 box=1, RBI current=0 box=1; Dustin Harris: AB current=3 box=4, R current=0 box=1, SO current=0 box=3 | New contract: compare model predictions separately; simulation_box_score_stats/scoring_simulation hold the simulation draw. | ||
| INFO | current_vs_final | cross-schema | WAS | CURRENT_FINALIZED_MATCH_BOX | WAS model-prediction batting totals differ from final simulation box score (AB: current=34, sim=33; H: current=8, sim=6; 2B: current=2, sim=0; 3B: current=0, sim=1; HR: current=1, sim=3; RBI: current=4, sim=5; BB: current=3, sim=2; SO: current=8, sim=10). | New contract: model prediction totals may differ from scoring_simulation; simulation_stats_source links the simulation box score. | ||
| INFO | current_vs_final | cross-schema | WAS | CURRENT_PLAYER_MATCH_BOX | WAS current finalized hitter lines are model predictions and differ from the simulation box score: Dylan Crews: H current=1 box=0, R current=1 box=0; Brady House: RBI current=1 box=0; Daylen Lile: 3B current=0 box=1; Abimelec Ortiz: H current=0 box=2, HR current=0 box=2, RBI current=0 box=3, R current=0 box=1; Jorbit Vivas: AB current=3 box=2, H current=1 box=0, SO current=0 box=1, HBP current=0 box=1; CJ Abrams: AB current=5 box=4, HR current=1 box=0, RBI current=1 box=0, BB current=1 box=0; James Wood: H current=1 box=0, 2B current=1 box=0, R current=1 box=0, BB current=1 box=0; Keibert Ruiz: 2B current=1 box=0, HR current=0 box=1, R current=0 box=1, SO current=1 box=3 | 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 | 3.153441881923439 | 5.65493665893173 | Base ML historical model prediction | |
| variance_applied | 3 | 6 | Deterministic baseline target (variance factor 1.0) | |
| enhanced_prediction | 5 | 6 | 0.530 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 5 | 6 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality | |
| fundamental_edge_target_review | 5 | 6 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments | |
| capped_target | 5 | 6 | Capped at max 12 realistic runs | |
| simulation_result | 5 | 6 | Final inning-by-inning simulation result |
Inning-by-inning linescore
| team | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | R | H |
|---|---|---|---|---|---|---|---|---|---|---|---|
| WAS | 2 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 0 | 5 | 6 |
| SD | 3 | 0 | 0 | 0 | 0 | 3 | 0 | 0 | 0 | 6 | 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 | WAS | batting | 34 | 8 | 2 | 0 | 1 | 4 | 5 | 3 | 8 | 0 | 0 | 0 | 0 | |||||
| current | WAS | pitching | 7 | 2 | 6 | 5 | 6 | 8.0 | 6 | 0 | 0 | |||||||||
| current | SD | batting | 33 | 8 | 1 | 0 | 1 | 4 | 4 | 3 | 8 | 0 | 0 | 0 | 0 | |||||
| current | SD | pitching | 6 | 3 | 5 | 2 | 10 | 9.0 | 5 | 0 | 0 | |||||||||
| simulation | WAS | batting | 33 | 6 | 0 | 1 | 3 | 5 | 5 | 2 | 10 | 0 | 1 | |||||||
| simulation | WAS | pitching | 7 | 2 | 6 | 5 | 6 | 8.0 | 6 | 36 | 151 | |||||||||
| simulation | SD | batting | 31 | 7 | 1 | 0 | 2 | 6 | 6 | 5 | 6 | 0 | 0 | |||||||
| simulation | SD | pitching | 6 | 3 | 5 | 2 | 10 | 9.0 | 5 | 36 | 152 |
Batting lines - current + final simulation
| src | team | order | pos | name | PA | AB | H | 2B | 3B | HR | R | RBI | BB | SO | HBP | AVG |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| current | WAS | LF | Dylan Crews | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.250 | |
| current | WAS | 3B | Brady House | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 0.250 | |
| current | WAS | DH | Daylen Lile | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 0.250 | |
| current | WAS | 1B | Abimelec Ortiz | 0 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 | |
| current | WAS | 2B | Jorbit Vivas | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0.333 | |
| current | WAS | SS | CJ Abrams | 0 | 5 | 1 | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 0 | 0.200 | |
| current | WAS | RF | James Wood | 0 | 4 | 1 | 1 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0.250 | |
| current | WAS | C | Keibert Ruiz | 0 | 4 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0.250 | |
| current | WAS | CF | Jacob Young | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.333 | |
| current | SD | 2B | Jake Cronenworth | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.250 | |
| current | SD | RF | Fernando Tatis Jr. | 0 | 5 | 1 | 0 | 0 | 1 | 1 | 1 | 0 | 1 | 0 | 0.200 | |
| current | SD | DH | Luis Campusano | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 0 | 0.333 | |
| current | SD | 3B | Manny Machado | 0 | 4 | 1 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 0.250 | |
| current | SD | 1B | Ty France | 0 | 3 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.333 | |
| current | SD | CF | Jackson Merrill | 0 | 5 | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 0.200 | |
| current | SD | C | Ethan Salas | 0 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 | |
| current | SD | LF | Dustin Harris | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.333 | |
| current | SD | SS | Xander Bogaerts | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0.333 | |
| simulation | WAS | 1 | RF | James Wood | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.000 |
| simulation | WAS | 2 | 1B | Abimelec Ortiz | 4 | 3 | 2 | 0 | 0 | 2 | 1 | 3 | 1 | 0 | 0 | 0.667 |
| simulation | WAS | 3 | LF | Dylan Crews | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 |
| simulation | WAS | 4 | SS | CJ Abrams | 4 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0.250 |
| simulation | WAS | 5 | 3B | Brady House | 4 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0.250 |
| simulation | WAS | 6 | DH | Daylen Lile | 4 | 4 | 1 | 0 | 1 | 0 | 1 | 1 | 0 | 1 | 0 | 0.250 |
| simulation | WAS | 7 | C | Keibert Ruiz | 4 | 4 | 1 | 0 | 0 | 1 | 1 | 1 | 0 | 3 | 0 | 0.250 |
| simulation | WAS | 8 | 2B | Jorbit Vivas | 4 | 2 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 0.000 |
| simulation | WAS | 9 | CF | Jacob Young | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.000 |
| simulation | SD | 1 | RF | Fernando Tatis Jr. | 4 | 4 | 2 | 0 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 0.500 |
| simulation | SD | 2 | 2B | Jake Cronenworth | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.000 |
| simulation | SD | 3 | 3B | Manny Machado | 4 | 2 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 1 | 0 | 0.000 |
| simulation | SD | 4 | 1B | Ty France | 4 | 3 | 1 | 0 | 0 | 1 | 1 | 2 | 1 | 0 | 0 | 0.333 |
| simulation | SD | 5 | CF | Jackson Merrill | 4 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0.250 |
| simulation | SD | 6 | DH | Luis Campusano | 4 | 3 | 1 | 0 | 0 | 1 | 1 | 2 | 1 | 0 | 0 | 0.333 |
| simulation | SD | 7 | LF | Dustin Harris | 4 | 4 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 3 | 0 | 0.250 |
| simulation | SD | 8 | SS | Xander Bogaerts | 4 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0.000 |
| simulation | SD | 9 | C | Ethan Salas | 4 | 4 | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 1 | 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 | WAS | 1 | Jake Irvin | Starter | 4.2 | 3 | 3 | 3 | 4 | 3 | 1 | 0 | 0 | 5.79 | 5.57 | 1.40 |
| current | WAS | 2 | Erik Tolman | Middle Reliever (High Leverage) | 1.1 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0.00 | 1.23 | 0.95 |
| current | WAS | 4 | Orlando Ribalta | Setup Man | 1.1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0.00 | 3.77 | 1.21 |
| current | WAS | 5 | Clayton Beeter | Closer | 0.2 | 4 | 3 | 3 | 0 | 1 | 1 | 0 | 0 | 40.50 | 4.11 | 1.35 |
| current | SD | 1 | Nick Pivetta | Starter | 5.0 | 3 | 4 | 4 | 0 | 7 | 3 | 0 | 0 | 7.20 | 4.50 | 1.12 |
| current | SD | 2 | Bradgley Rodriguez | Middle Reliever (High Leverage) | 1.2 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0.00 | 1.82 | 0.99 |
| current | SD | 3 | Adrian Morejon | Setup Man | 1.0 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0.00 | 2.93 | 1.11 |
| current | SD | 4 | Mason Miller | Closer | 1.1 | 2 | 1 | 1 | 0 | 1 | 0 | 0 | 0 | 6.75 | 1.19 | 0.83 |
| simulation | WAS | 1 | Jake Irvin | Starter | 4.2 | 3 | 3 | 3 | 4 | 3 | 1 | 21 | 93 | 5.79 | 5.57 | 1.40 |
| simulation | WAS | 2 | Clayton Beeter | Closer | 0.2 | 4 | 3 | 3 | 0 | 1 | 1 | 6 | 20 | 40.50 | 4.11 | 1.35 |
| simulation | WAS | 3 | Orlando Ribalta | Setup Man | 1.1 | 0 | 0 | 0 | 0 | 1 | 0 | 4 | 17 | 0.00 | 3.77 | 1.21 |
| simulation | WAS | 4 | Erik Tolman | Middle Reliever (High Leverage) | 1.1 | 0 | 0 | 0 | 1 | 1 | 0 | 5 | 21 | 0.00 | 1.23 | 0.95 |
| simulation | SD | 1 | Nick Pivetta | Starter | 5.0 | 3 | 4 | 4 | 0 | 7 | 3 | 19 | 84 | 7.20 | 4.50 | 1.12 |
| simulation | SD | 2 | Mason Miller | Closer | 1.1 | 2 | 1 | 1 | 0 | 1 | 0 | 6 | 23 | 6.75 | 1.19 | 0.83 |
| simulation | SD | 3 | Adrian Morejon | Setup Man | 1.0 | 1 | 0 | 0 | 1 | 1 | 0 | 5 | 20 | 0.00 | 2.93 | 1.11 |
| simulation | SD | 4 | Bradgley Rodriguez | Middle Reliever (High Leverage) | 1.2 | 0 | 0 | 0 | 1 | 1 | 0 | 6 | 25 | 0.00 | 1.82 | 0.99 |
Pitch count summary
| team | pitcher | role | IP | R | H | BB | SO | BF | Pitches |
|---|---|---|---|---|---|---|---|---|---|
| WAS | Jake Irvin | Starter | 4.2 | 3 | 3 | 4 | 3 | 21 | 93 |
| WAS | Erik Tolman | Middle Reliever (High Leverage) | 1.1 | 0 | 0 | 1 | 1 | 5 | 21 |
| WAS | Orlando Ribalta | Setup Man | 1.1 | 0 | 0 | 0 | 1 | 4 | 17 |
| WAS | Clayton Beeter | Closer | 0.2 | 3 | 4 | 0 | 1 | 6 | 20 |
| SD | Nick Pivetta | Starter | 5.0 | 4 | 3 | 0 | 7 | 19 | 84 |
| SD | Bradgley Rodriguez | Middle Reliever (High Leverage) | 1.2 | 0 | 0 | 1 | 1 | 6 | 25 |
| SD | Adrian Morejon | Setup Man | 1.0 | 0 | 1 | 1 | 1 | 5 | 20 |
| SD | Mason Miller | Closer | 1.1 | 1 | 2 | 0 | 1 | 6 | 23 |
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_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. |
| 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. |
| 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. |