{
  "date": "2026-08-08",
  "generated_at": "2026-08-09T00:24:51.692879",
  "artifact_type": "strikeout_edges",
  "market_type": "pitcher_strikeouts",
  "model_version": "strikeout_edges_v1_overlay",
  "projection_model_version": "strikeout_props_v1_nb_overlay",
  "projection_date": "2026-08-08",
  "sportsbook_input_summary": {
    "input_type": "canonical_processed_sportsbook_input",
    "source_count": 1,
    "row_count": 82,
    "matched_count": 50,
    "unmatched_count": 32
  },
  "assumptions": {
    "methodology": "Sportsbook strikeout lines are matched against the saved Mithrandir strikeout props artifact. Model over, under, and push probabilities are derived from the existing matchup-adjusted strikeout distribution. Raw implied probabilities are calculated directly from American odds, and optional no-vig implied probabilities are computed by renormalizing both sides when both odds are present.",
    "distribution": {
      "name": "negative_binomial_style",
      "alpha": 0.0619,
      "whole_line_handling": "Over = P(K >= line + 1), Under = P(K <= line - 1), Push = P(K = line).",
      "half_line_handling": "Over = P(K >= ceil(line)), Under = 1 - Over, Push = 0."
    },
    "recommendation_thresholds": {
      "no_play_edge_threshold": 0.015,
      "lean_edge_threshold": 0.03,
      "strong_edge_threshold": 0.05
    }
  },
  "summary": {
    "raw_row_count": 50,
    "grouped_pitcher_count": 17,
    "sportsbook_count": 3
  },
  "edge_count": 50,
  "edges": [
    {
      "pitcher_name": "Gavin Williams",
      "pitcher_id": 668909,
      "team_abbr": "CLE",
      "opponent_abbr": "CWS",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:56:11.499Z",
      "line": 7.5,
      "line_type": "half",
      "over_odds": -128,
      "under_odds": 100,
      "expected_strikeouts": 5.35,
      "baseline_projected_strikeouts": 5.52,
      "adjusted_projected_strikeouts": 5.35,
      "skill_score": 87.4,
      "opportunity_score": 67.5,
      "opponent_weakness_score": 33.7,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 22.6,
      "suppression_tier": "CLEAR_RUNWAY",
      "suppression_label": "Clear Runway",
      "suppression_note": "Workload and leash context support the strikeout projection cleanly.",
      "interaction_tier": "STRONG_ALIGNMENT",
      "interaction_label": "Strong Alignment",
      "interaction_note": "The strikeout structure is favorable, but not as clean as the premium runway pocket.",
      "trust_modifier": "WATCHLIST_RUNWAY",
      "trust_label": "Watchlist Runway",
      "trust_note": "The strikeout structure is supportive and worth watching, but it is not as clean as the premium bucket.",
      "model_over_probability": 0.198,
      "model_under_probability": 0.802,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5614,
      "implied_under_probability_raw": 0.5,
      "implied_over_probability_novig": 0.5289,
      "implied_under_probability_novig": 0.4711,
      "edge_over": -0.3634,
      "edge_under": 0.302,
      "recommended_side": "Under",
      "recommended_edge": 0.302,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.17,
      "adjustment_multiplier": 0.97,
      "aggregate_matchup_score": 52.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 24255.0,
      "lineup_expected_strikeouts": 5.01,
      "environment_summary": "neutral",
      "temperature_f": 68.7,
      "wind_speed_mph": 4.3,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Gavin Williams",
      "pitcher_id": 668909,
      "team_abbr": "CLE",
      "opponent_abbr": "CWS",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:55:44.201Z",
      "line": 7.5,
      "line_type": "half",
      "over_odds": -128,
      "under_odds": -102,
      "expected_strikeouts": 5.35,
      "baseline_projected_strikeouts": 5.52,
      "adjusted_projected_strikeouts": 5.35,
      "skill_score": 87.4,
      "opportunity_score": 67.5,
      "opponent_weakness_score": 33.7,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 22.6,
      "suppression_tier": "CLEAR_RUNWAY",
      "suppression_label": "Clear Runway",
      "suppression_note": "Workload and leash context support the strikeout projection cleanly.",
      "interaction_tier": "STRONG_ALIGNMENT",
      "interaction_label": "Strong Alignment",
      "interaction_note": "The strikeout structure is favorable, but not as clean as the premium runway pocket.",
      "trust_modifier": "WATCHLIST_RUNWAY",
      "trust_label": "Watchlist Runway",
      "trust_note": "The strikeout structure is supportive and worth watching, but it is not as clean as the premium bucket.",
      "model_over_probability": 0.198,
      "model_under_probability": 0.802,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5614,
      "implied_under_probability_raw": 0.505,
      "implied_over_probability_novig": 0.5264,
      "implied_under_probability_novig": 0.4736,
      "edge_over": -0.3634,
      "edge_under": 0.297,
      "recommended_side": "Under",
      "recommended_edge": 0.297,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.17,
      "adjustment_multiplier": 0.97,
      "aggregate_matchup_score": 52.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 24255.0,
      "lineup_expected_strikeouts": 5.01,
      "environment_summary": "neutral",
      "temperature_f": 68.7,
      "wind_speed_mph": 4.3,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Gavin Williams",
      "pitcher_id": 668909,
      "team_abbr": "CLE",
      "opponent_abbr": "CWS",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:56:15.208Z",
      "line": 7.5,
      "line_type": "half",
      "over_odds": -130,
      "under_odds": -105,
      "expected_strikeouts": 5.35,
      "baseline_projected_strikeouts": 5.52,
      "adjusted_projected_strikeouts": 5.35,
      "skill_score": 87.4,
      "opportunity_score": 67.5,
      "opponent_weakness_score": 33.7,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 22.6,
      "suppression_tier": "CLEAR_RUNWAY",
      "suppression_label": "Clear Runway",
      "suppression_note": "Workload and leash context support the strikeout projection cleanly.",
      "interaction_tier": "STRONG_ALIGNMENT",
      "interaction_label": "Strong Alignment",
      "interaction_note": "The strikeout structure is favorable, but not as clean as the premium runway pocket.",
      "trust_modifier": "WATCHLIST_RUNWAY",
      "trust_label": "Watchlist Runway",
      "trust_note": "The strikeout structure is supportive and worth watching, but it is not as clean as the premium bucket.",
      "model_over_probability": 0.198,
      "model_under_probability": 0.802,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5652,
      "implied_under_probability_raw": 0.5122,
      "implied_over_probability_novig": 0.5246,
      "implied_under_probability_novig": 0.4754,
      "edge_over": -0.3672,
      "edge_under": 0.2898,
      "recommended_side": "Under",
      "recommended_edge": 0.2898,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.17,
      "adjustment_multiplier": 0.97,
      "aggregate_matchup_score": 52.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 24255.0,
      "lineup_expected_strikeouts": 5.01,
      "environment_summary": "neutral",
      "temperature_f": 68.7,
      "wind_speed_mph": 4.3,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Matthew Liberatore",
      "pitcher_id": 669461,
      "team_abbr": "STL",
      "opponent_abbr": "COL",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:55:44.201Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": 104,
      "under_odds": -134,
      "expected_strikeouts": 4.06,
      "baseline_projected_strikeouts": 3.83,
      "adjusted_projected_strikeouts": 4.06,
      "skill_score": 34.3,
      "opportunity_score": 38.4,
      "opponent_weakness_score": 38.3,
      "support_tier": "BALANCED_SUPPORT",
      "support_label": "Balanced Support",
      "support_note": "Support inputs are mixed but still healthy enough to trust contextually.",
      "suppression_score": 63.4,
      "suppression_tier": "HEAVY_SUPPRESSION",
      "suppression_label": "Heavy Suppression",
      "suppression_note": "Leash or workload context materially weakens the strikeout conversion path.",
      "interaction_tier": "SUPPRESSED_ALIGNMENT",
      "interaction_label": "Suppressed Alignment",
      "interaction_note": "Runway drag or weak alignment materially softens the strikeout path.",
      "trust_modifier": "SUPPRESSED",
      "trust_label": "Suppressed",
      "trust_note": "Leash or alignment drag is materially weakening the strikeout trust case.",
      "model_over_probability": 0.2394,
      "model_under_probability": 0.7606,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4902,
      "implied_under_probability_raw": 0.5726,
      "implied_over_probability_novig": 0.4612,
      "implied_under_probability_novig": 0.5388,
      "edge_over": -0.2508,
      "edge_under": 0.188,
      "recommended_side": "Under",
      "recommended_edge": 0.188,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.23,
      "adjustment_multiplier": 1.059,
      "aggregate_matchup_score": 40.9,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 16017.0,
      "lineup_expected_strikeouts": 4.56,
      "environment_summary": "neutral",
      "temperature_f": 78.6,
      "wind_speed_mph": 3.6,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Chris Sale",
      "pitcher_id": 519242,
      "team_abbr": "ATL",
      "opponent_abbr": "NYY",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:55:44.201Z",
      "line": 7.5,
      "line_type": "half",
      "over_odds": -148,
      "under_odds": 112,
      "expected_strikeouts": 6.53,
      "baseline_projected_strikeouts": 6.14,
      "adjusted_projected_strikeouts": 6.53,
      "skill_score": 74.0,
      "opportunity_score": 49.1,
      "opponent_weakness_score": 52.8,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 58.4,
      "suppression_tier": "HEAVY_SUPPRESSION",
      "suppression_label": "Heavy Suppression",
      "suppression_note": "Leash or workload context materially weakens the strikeout conversion path.",
      "interaction_tier": "SUPPRESSED_ALIGNMENT",
      "interaction_label": "Suppressed Alignment",
      "interaction_note": "Runway drag or weak alignment materially softens the strikeout path.",
      "trust_modifier": "SUPPRESSED",
      "trust_label": "Suppressed",
      "trust_note": "Leash or alignment drag is materially weakening the strikeout trust case.",
      "model_over_probability": 0.3409,
      "model_under_probability": 0.6591,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5968,
      "implied_under_probability_raw": 0.4717,
      "implied_over_probability_novig": 0.5585,
      "implied_under_probability_novig": 0.4415,
      "edge_over": -0.2559,
      "edge_under": 0.1874,
      "recommended_side": "Under",
      "recommended_edge": 0.1874,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.39,
      "adjustment_multiplier": 1.075,
      "aggregate_matchup_score": 74.8,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 25945.0,
      "lineup_expected_strikeouts": 7.09,
      "environment_summary": "hitter-friendly",
      "temperature_f": 81.5,
      "wind_speed_mph": 10.7,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Jacob deGrom",
      "pitcher_id": 594798,
      "team_abbr": "TEX",
      "opponent_abbr": "BAL",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:56:40.553Z",
      "line": 7.5,
      "line_type": "half",
      "over_odds": 100,
      "under_odds": -135,
      "expected_strikeouts": 5.82,
      "baseline_projected_strikeouts": 5.58,
      "adjusted_projected_strikeouts": 5.82,
      "skill_score": 47.7,
      "opportunity_score": 48.4,
      "opponent_weakness_score": 46.1,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 54.2,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.253,
      "model_under_probability": 0.747,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5,
      "implied_under_probability_raw": 0.5745,
      "implied_over_probability_novig": 0.4653,
      "implied_under_probability_novig": 0.5347,
      "edge_over": -0.247,
      "edge_under": 0.1725,
      "recommended_side": "Under",
      "recommended_edge": 0.1725,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.24,
      "adjustment_multiplier": 1.043,
      "aggregate_matchup_score": 66.2,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 15111.0,
      "lineup_expected_strikeouts": 6.05,
      "environment_summary": "neutral",
      "temperature_f": 88.7,
      "wind_speed_mph": 7.8,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Taj Bradley",
      "pitcher_id": 671737,
      "team_abbr": "MIN",
      "opponent_abbr": "MIL",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:56:11.499Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -162,
      "under_odds": 126,
      "expected_strikeouts": 5.06,
      "baseline_projected_strikeouts": 5.01,
      "adjusted_projected_strikeouts": 5.06,
      "skill_score": 28.7,
      "opportunity_score": 74.4,
      "opponent_weakness_score": 36.3,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 14.5,
      "suppression_tier": "CLEAR_RUNWAY",
      "suppression_label": "Clear Runway",
      "suppression_note": "Workload and leash context support the strikeout projection cleanly.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.3921,
      "model_under_probability": 0.6079,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6183,
      "implied_under_probability_raw": 0.4425,
      "implied_over_probability_novig": 0.5829,
      "implied_under_probability_novig": 0.4171,
      "edge_over": -0.2262,
      "edge_under": 0.1654,
      "recommended_side": "Under",
      "recommended_edge": 0.1654,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.05,
      "adjustment_multiplier": 1.01,
      "aggregate_matchup_score": 49.1,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 25885.0,
      "lineup_expected_strikeouts": 5.16,
      "environment_summary": "neutral",
      "temperature_f": 70.9,
      "wind_speed_mph": 3.6,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Matthew Liberatore",
      "pitcher_id": 669461,
      "team_abbr": "STL",
      "opponent_abbr": "COL",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:56:11.499Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": 116,
      "under_odds": -148,
      "expected_strikeouts": 4.06,
      "baseline_projected_strikeouts": 3.83,
      "adjusted_projected_strikeouts": 4.06,
      "skill_score": 34.3,
      "opportunity_score": 38.4,
      "opponent_weakness_score": 38.3,
      "support_tier": "BALANCED_SUPPORT",
      "support_label": "Balanced Support",
      "support_note": "Support inputs are mixed but still healthy enough to trust contextually.",
      "suppression_score": 63.4,
      "suppression_tier": "HEAVY_SUPPRESSION",
      "suppression_label": "Heavy Suppression",
      "suppression_note": "Leash or workload context materially weakens the strikeout conversion path.",
      "interaction_tier": "SUPPRESSED_ALIGNMENT",
      "interaction_label": "Suppressed Alignment",
      "interaction_note": "Runway drag or weak alignment materially softens the strikeout path.",
      "trust_modifier": "SUPPRESSED",
      "trust_label": "Suppressed",
      "trust_note": "Leash or alignment drag is materially weakening the strikeout trust case.",
      "model_over_probability": 0.2394,
      "model_under_probability": 0.7606,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.463,
      "implied_under_probability_raw": 0.5968,
      "implied_over_probability_novig": 0.4369,
      "implied_under_probability_novig": 0.5631,
      "edge_over": -0.2236,
      "edge_under": 0.1638,
      "recommended_side": "Under",
      "recommended_edge": 0.1638,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.23,
      "adjustment_multiplier": 1.059,
      "aggregate_matchup_score": 40.9,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 16017.0,
      "lineup_expected_strikeouts": 4.56,
      "environment_summary": "neutral",
      "temperature_f": 78.6,
      "wind_speed_mph": 3.6,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Chris Sale",
      "pitcher_id": 519242,
      "team_abbr": "ATL",
      "opponent_abbr": "NYY",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:56:11.499Z",
      "line": 7.5,
      "line_type": "half",
      "over_odds": -128,
      "under_odds": 100,
      "expected_strikeouts": 6.53,
      "baseline_projected_strikeouts": 6.14,
      "adjusted_projected_strikeouts": 6.53,
      "skill_score": 74.0,
      "opportunity_score": 49.1,
      "opponent_weakness_score": 52.8,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 58.4,
      "suppression_tier": "HEAVY_SUPPRESSION",
      "suppression_label": "Heavy Suppression",
      "suppression_note": "Leash or workload context materially weakens the strikeout conversion path.",
      "interaction_tier": "SUPPRESSED_ALIGNMENT",
      "interaction_label": "Suppressed Alignment",
      "interaction_note": "Runway drag or weak alignment materially softens the strikeout path.",
      "trust_modifier": "SUPPRESSED",
      "trust_label": "Suppressed",
      "trust_note": "Leash or alignment drag is materially weakening the strikeout trust case.",
      "model_over_probability": 0.3409,
      "model_under_probability": 0.6591,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5614,
      "implied_under_probability_raw": 0.5,
      "implied_over_probability_novig": 0.5289,
      "implied_under_probability_novig": 0.4711,
      "edge_over": -0.2205,
      "edge_under": 0.1591,
      "recommended_side": "Under",
      "recommended_edge": 0.1591,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.39,
      "adjustment_multiplier": 1.075,
      "aggregate_matchup_score": 74.8,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 25945.0,
      "lineup_expected_strikeouts": 7.09,
      "environment_summary": "hitter-friendly",
      "temperature_f": 81.5,
      "wind_speed_mph": 10.7,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Matthew Liberatore",
      "pitcher_id": 669461,
      "team_abbr": "STL",
      "opponent_abbr": "COL",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:56:33.500Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -155,
      "under_odds": 115,
      "expected_strikeouts": 4.06,
      "baseline_projected_strikeouts": 3.83,
      "adjusted_projected_strikeouts": 4.06,
      "skill_score": 34.3,
      "opportunity_score": 38.4,
      "opponent_weakness_score": 38.3,
      "support_tier": "BALANCED_SUPPORT",
      "support_label": "Balanced Support",
      "support_note": "Support inputs are mixed but still healthy enough to trust contextually.",
      "suppression_score": 63.4,
      "suppression_tier": "HEAVY_SUPPRESSION",
      "suppression_label": "Heavy Suppression",
      "suppression_note": "Leash or workload context materially weakens the strikeout conversion path.",
      "interaction_tier": "SUPPRESSED_ALIGNMENT",
      "interaction_label": "Suppressed Alignment",
      "interaction_note": "Runway drag or weak alignment materially softens the strikeout path.",
      "trust_modifier": "SUPPRESSED",
      "trust_label": "Suppressed",
      "trust_note": "Leash or alignment drag is materially weakening the strikeout trust case.",
      "model_over_probability": 0.3808,
      "model_under_probability": 0.6192,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6078,
      "implied_under_probability_raw": 0.4651,
      "implied_over_probability_novig": 0.5665,
      "implied_under_probability_novig": 0.4335,
      "edge_over": -0.227,
      "edge_under": 0.1541,
      "recommended_side": "Under",
      "recommended_edge": 0.1541,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.23,
      "adjustment_multiplier": 1.059,
      "aggregate_matchup_score": 40.9,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 16017.0,
      "lineup_expected_strikeouts": 4.56,
      "environment_summary": "neutral",
      "temperature_f": 78.6,
      "wind_speed_mph": 3.6,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Taj Bradley",
      "pitcher_id": 671737,
      "team_abbr": "MIN",
      "opponent_abbr": "MIL",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:55:44.201Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -168,
      "under_odds": 119,
      "expected_strikeouts": 5.06,
      "baseline_projected_strikeouts": 5.01,
      "adjusted_projected_strikeouts": 5.06,
      "skill_score": 28.7,
      "opportunity_score": 74.4,
      "opponent_weakness_score": 36.3,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 14.5,
      "suppression_tier": "CLEAR_RUNWAY",
      "suppression_label": "Clear Runway",
      "suppression_note": "Workload and leash context support the strikeout projection cleanly.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.3921,
      "model_under_probability": 0.6079,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6269,
      "implied_under_probability_raw": 0.4566,
      "implied_over_probability_novig": 0.5786,
      "implied_under_probability_novig": 0.4214,
      "edge_over": -0.2348,
      "edge_under": 0.1513,
      "recommended_side": "Under",
      "recommended_edge": 0.1513,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.05,
      "adjustment_multiplier": 1.01,
      "aggregate_matchup_score": 49.1,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 25885.0,
      "lineup_expected_strikeouts": 5.16,
      "environment_summary": "neutral",
      "temperature_f": 70.9,
      "wind_speed_mph": 3.6,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Jacob deGrom",
      "pitcher_id": 594798,
      "team_abbr": "TEX",
      "opponent_abbr": "BAL",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:55:44.201Z",
      "line": 7.5,
      "line_type": "half",
      "over_odds": 117,
      "under_odds": -149,
      "expected_strikeouts": 5.82,
      "baseline_projected_strikeouts": 5.58,
      "adjusted_projected_strikeouts": 5.82,
      "skill_score": 47.7,
      "opportunity_score": 48.4,
      "opponent_weakness_score": 46.1,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 54.2,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.253,
      "model_under_probability": 0.747,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4608,
      "implied_under_probability_raw": 0.5984,
      "implied_over_probability_novig": 0.435,
      "implied_under_probability_novig": 0.565,
      "edge_over": -0.2078,
      "edge_under": 0.1486,
      "recommended_side": "Under",
      "recommended_edge": 0.1486,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.24,
      "adjustment_multiplier": 1.043,
      "aggregate_matchup_score": 66.2,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 15111.0,
      "lineup_expected_strikeouts": 6.05,
      "environment_summary": "neutral",
      "temperature_f": 88.7,
      "wind_speed_mph": 7.8,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Chris Sale",
      "pitcher_id": 519242,
      "team_abbr": "ATL",
      "opponent_abbr": "NYY",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:55:44.949Z",
      "line": 8.5,
      "line_type": "half",
      "over_odds": 125,
      "under_odds": -165,
      "expected_strikeouts": 6.53,
      "baseline_projected_strikeouts": 6.14,
      "adjusted_projected_strikeouts": 6.53,
      "skill_score": 74.0,
      "opportunity_score": 49.1,
      "opponent_weakness_score": 52.8,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 58.4,
      "suppression_tier": "HEAVY_SUPPRESSION",
      "suppression_label": "Heavy Suppression",
      "suppression_note": "Leash or workload context materially weakens the strikeout conversion path.",
      "interaction_tier": "SUPPRESSED_ALIGNMENT",
      "interaction_label": "Suppressed Alignment",
      "interaction_note": "Runway drag or weak alignment materially softens the strikeout path.",
      "trust_modifier": "SUPPRESSED",
      "trust_label": "Suppressed",
      "trust_note": "Leash or alignment drag is materially weakening the strikeout trust case.",
      "model_over_probability": 0.2386,
      "model_under_probability": 0.7614,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4444,
      "implied_under_probability_raw": 0.6226,
      "implied_over_probability_novig": 0.4165,
      "implied_under_probability_novig": 0.5835,
      "edge_over": -0.2058,
      "edge_under": 0.1388,
      "recommended_side": "Under",
      "recommended_edge": 0.1388,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.39,
      "adjustment_multiplier": 1.075,
      "aggregate_matchup_score": 74.8,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 25945.0,
      "lineup_expected_strikeouts": 7.09,
      "environment_summary": "hitter-friendly",
      "temperature_f": 81.5,
      "wind_speed_mph": 10.7,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Taj Bradley",
      "pitcher_id": 671737,
      "team_abbr": "MIN",
      "opponent_abbr": "MIL",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:56:32.821Z",
      "line": 6.5,
      "line_type": "half",
      "over_odds": 110,
      "under_odds": -150,
      "expected_strikeouts": 5.06,
      "baseline_projected_strikeouts": 5.01,
      "adjusted_projected_strikeouts": 5.06,
      "skill_score": 28.7,
      "opportunity_score": 74.4,
      "opponent_weakness_score": 36.3,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 14.5,
      "suppression_tier": "CLEAR_RUNWAY",
      "suppression_label": "Clear Runway",
      "suppression_note": "Workload and leash context support the strikeout projection cleanly.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.2634,
      "model_under_probability": 0.7366,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4762,
      "implied_under_probability_raw": 0.6,
      "implied_over_probability_novig": 0.4425,
      "implied_under_probability_novig": 0.5575,
      "edge_over": -0.2128,
      "edge_under": 0.1366,
      "recommended_side": "Under",
      "recommended_edge": 0.1366,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.05,
      "adjustment_multiplier": 1.01,
      "aggregate_matchup_score": 49.1,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 25885.0,
      "lineup_expected_strikeouts": 5.16,
      "environment_summary": "neutral",
      "temperature_f": 70.9,
      "wind_speed_mph": 3.6,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Jacob deGrom",
      "pitcher_id": 594798,
      "team_abbr": "TEX",
      "opponent_abbr": "BAL",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:56:11.499Z",
      "line": 7.5,
      "line_type": "half",
      "over_odds": 126,
      "under_odds": -162,
      "expected_strikeouts": 5.82,
      "baseline_projected_strikeouts": 5.58,
      "adjusted_projected_strikeouts": 5.82,
      "skill_score": 47.7,
      "opportunity_score": 48.4,
      "opponent_weakness_score": 46.1,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 54.2,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.253,
      "model_under_probability": 0.747,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4425,
      "implied_under_probability_raw": 0.6183,
      "implied_over_probability_novig": 0.4171,
      "implied_under_probability_novig": 0.5829,
      "edge_over": -0.1895,
      "edge_under": 0.1287,
      "recommended_side": "Under",
      "recommended_edge": 0.1287,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.24,
      "adjustment_multiplier": 1.043,
      "aggregate_matchup_score": 66.2,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 15111.0,
      "lineup_expected_strikeouts": 6.05,
      "environment_summary": "neutral",
      "temperature_f": 88.7,
      "wind_speed_mph": 7.8,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Landen Roupp",
      "pitcher_id": 694738,
      "team_abbr": "SF",
      "opponent_abbr": "DET",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:56:35.398Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": 105,
      "under_odds": -140,
      "expected_strikeouts": 4.6,
      "baseline_projected_strikeouts": 4.64,
      "adjusted_projected_strikeouts": 4.6,
      "skill_score": 11.6,
      "opportunity_score": 58.7,
      "opponent_weakness_score": 30.1,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 37.1,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.3214,
      "model_under_probability": 0.6786,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4878,
      "implied_under_probability_raw": 0.5833,
      "implied_over_probability_novig": 0.4554,
      "implied_under_probability_novig": 0.5446,
      "edge_over": -0.1664,
      "edge_under": 0.0953,
      "recommended_side": "Under",
      "recommended_edge": 0.0953,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.04,
      "adjustment_multiplier": 0.992,
      "aggregate_matchup_score": 37.4,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 10559.0,
      "lineup_expected_strikeouts": 4.67,
      "environment_summary": "neutral",
      "temperature_f": 57.7,
      "wind_speed_mph": 6.5,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Aaron Nola",
      "pitcher_id": 605400,
      "team_abbr": "PHI",
      "opponent_abbr": "TOR",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:55:44.201Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 103,
      "under_odds": -131,
      "expected_strikeouts": 5.34,
      "baseline_projected_strikeouts": 5.3,
      "adjusted_projected_strikeouts": 5.34,
      "skill_score": 37.1,
      "opportunity_score": 47.8,
      "opponent_weakness_score": 37.3,
      "support_tier": "BALANCED_SUPPORT",
      "support_label": "Balanced Support",
      "support_note": "Support inputs are mixed but still healthy enough to trust contextually.",
      "suppression_score": 42.4,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.5864,
      "model_under_probability": 0.4136,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4926,
      "implied_under_probability_raw": 0.5671,
      "implied_over_probability_novig": 0.4648,
      "implied_under_probability_novig": 0.5352,
      "edge_over": 0.0938,
      "edge_under": -0.1535,
      "recommended_side": "Over",
      "recommended_edge": 0.0938,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.04,
      "adjustment_multiplier": 1.008,
      "aggregate_matchup_score": 52.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 29857.0,
      "lineup_expected_strikeouts": 5.4,
      "environment_summary": "hitter-friendly",
      "temperature_f": 74.5,
      "wind_speed_mph": 6.0,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Aaron Nola",
      "pitcher_id": 605400,
      "team_abbr": "PHI",
      "opponent_abbr": "TOR",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:56:11.499Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 102,
      "under_odds": -130,
      "expected_strikeouts": 5.34,
      "baseline_projected_strikeouts": 5.3,
      "adjusted_projected_strikeouts": 5.34,
      "skill_score": 37.1,
      "opportunity_score": 47.8,
      "opponent_weakness_score": 37.3,
      "support_tier": "BALANCED_SUPPORT",
      "support_label": "Balanced Support",
      "support_note": "Support inputs are mixed but still healthy enough to trust contextually.",
      "suppression_score": 42.4,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.5864,
      "model_under_probability": 0.4136,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.495,
      "implied_under_probability_raw": 0.5652,
      "implied_over_probability_novig": 0.4669,
      "implied_under_probability_novig": 0.5331,
      "edge_over": 0.0914,
      "edge_under": -0.1516,
      "recommended_side": "Over",
      "recommended_edge": 0.0914,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.04,
      "adjustment_multiplier": 1.008,
      "aggregate_matchup_score": 52.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 29857.0,
      "lineup_expected_strikeouts": 5.4,
      "environment_summary": "hitter-friendly",
      "temperature_f": 74.5,
      "wind_speed_mph": 6.0,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Seth Lugo",
      "pitcher_id": 607625,
      "team_abbr": "KC",
      "opponent_abbr": "CHC",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:56:11.499Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -154,
      "under_odds": 120,
      "expected_strikeouts": 5.0,
      "baseline_projected_strikeouts": 5.11,
      "adjusted_projected_strikeouts": 5.0,
      "skill_score": 14.0,
      "opportunity_score": 57.8,
      "opponent_weakness_score": 29.8,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 35.4,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.6969,
      "model_under_probability": 0.3031,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6063,
      "implied_under_probability_raw": 0.4545,
      "implied_over_probability_novig": 0.5715,
      "implied_under_probability_novig": 0.4285,
      "edge_over": 0.0906,
      "edge_under": -0.1514,
      "recommended_side": "Over",
      "recommended_edge": 0.0906,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.11,
      "adjustment_multiplier": 0.978,
      "aggregate_matchup_score": 41.1,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 31476.0,
      "lineup_expected_strikeouts": 4.89,
      "environment_summary": "neutral",
      "temperature_f": 81.1,
      "wind_speed_mph": 9.4,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Brandon Pfaadt",
      "pitcher_id": 694297,
      "team_abbr": "AZ",
      "opponent_abbr": "LAD",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:57:03.555Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -120,
      "under_odds": -110,
      "expected_strikeouts": 4.54,
      "baseline_projected_strikeouts": 4.46,
      "adjusted_projected_strikeouts": 4.54,
      "skill_score": 10.9,
      "opportunity_score": 52.2,
      "opponent_weakness_score": 32.2,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 41.1,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.6328,
      "model_under_probability": 0.3672,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5455,
      "implied_under_probability_raw": 0.5238,
      "implied_over_probability_novig": 0.5101,
      "implied_under_probability_novig": 0.4899,
      "edge_over": 0.0873,
      "edge_under": -0.1566,
      "recommended_side": "Over",
      "recommended_edge": 0.0873,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.08,
      "adjustment_multiplier": 1.018,
      "aggregate_matchup_score": 33.4,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 30360.0,
      "lineup_expected_strikeouts": 4.86,
      "environment_summary": "neutral",
      "temperature_f": null,
      "wind_speed_mph": null,
      "wind_direction": "unknown",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Seth Lugo",
      "pitcher_id": 607625,
      "team_abbr": "KC",
      "opponent_abbr": "CHC",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:55:44.201Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -162,
      "under_odds": 126,
      "expected_strikeouts": 5.0,
      "baseline_projected_strikeouts": 5.11,
      "adjusted_projected_strikeouts": 5.0,
      "skill_score": 14.0,
      "opportunity_score": 57.8,
      "opponent_weakness_score": 29.8,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 35.4,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.6969,
      "model_under_probability": 0.3031,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6183,
      "implied_under_probability_raw": 0.4425,
      "implied_over_probability_novig": 0.5829,
      "implied_under_probability_novig": 0.4171,
      "edge_over": 0.0786,
      "edge_under": -0.1394,
      "recommended_side": "Over",
      "recommended_edge": 0.0786,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.11,
      "adjustment_multiplier": 0.978,
      "aggregate_matchup_score": 41.1,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 31476.0,
      "lineup_expected_strikeouts": 4.89,
      "environment_summary": "neutral",
      "temperature_f": 81.1,
      "wind_speed_mph": 9.4,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Landen Roupp",
      "pitcher_id": 694738,
      "team_abbr": "SF",
      "opponent_abbr": "DET",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:56:11.499Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -154,
      "under_odds": 122,
      "expected_strikeouts": 4.6,
      "baseline_projected_strikeouts": 4.64,
      "adjusted_projected_strikeouts": 4.6,
      "skill_score": 11.6,
      "opportunity_score": 58.7,
      "opponent_weakness_score": 30.1,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 37.1,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.4726,
      "model_under_probability": 0.5274,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6063,
      "implied_under_probability_raw": 0.4505,
      "implied_over_probability_novig": 0.5737,
      "implied_under_probability_novig": 0.4263,
      "edge_over": -0.1337,
      "edge_under": 0.0769,
      "recommended_side": "Under",
      "recommended_edge": 0.0769,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.04,
      "adjustment_multiplier": 0.992,
      "aggregate_matchup_score": 37.4,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 10559.0,
      "lineup_expected_strikeouts": 4.67,
      "environment_summary": "neutral",
      "temperature_f": 57.7,
      "wind_speed_mph": 6.5,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Brandon Pfaadt",
      "pitcher_id": 694297,
      "team_abbr": "AZ",
      "opponent_abbr": "LAD",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:55:44.201Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -127,
      "under_odds": -101,
      "expected_strikeouts": 4.54,
      "baseline_projected_strikeouts": 4.46,
      "adjusted_projected_strikeouts": 4.54,
      "skill_score": 10.9,
      "opportunity_score": 52.2,
      "opponent_weakness_score": 32.2,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 41.1,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.6328,
      "model_under_probability": 0.3672,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5595,
      "implied_under_probability_raw": 0.5025,
      "implied_over_probability_novig": 0.5268,
      "implied_under_probability_novig": 0.4732,
      "edge_over": 0.0733,
      "edge_under": -0.1353,
      "recommended_side": "Over",
      "recommended_edge": 0.0733,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.08,
      "adjustment_multiplier": 1.018,
      "aggregate_matchup_score": 33.4,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 30360.0,
      "lineup_expected_strikeouts": 4.86,
      "environment_summary": "neutral",
      "temperature_f": null,
      "wind_speed_mph": null,
      "wind_direction": "unknown",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Brandon Pfaadt",
      "pitcher_id": 694297,
      "team_abbr": "AZ",
      "opponent_abbr": "LAD",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:56:11.499Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -128,
      "under_odds": 100,
      "expected_strikeouts": 4.54,
      "baseline_projected_strikeouts": 4.46,
      "adjusted_projected_strikeouts": 4.54,
      "skill_score": 10.9,
      "opportunity_score": 52.2,
      "opponent_weakness_score": 32.2,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 41.1,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.6328,
      "model_under_probability": 0.3672,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5614,
      "implied_under_probability_raw": 0.5,
      "implied_over_probability_novig": 0.5289,
      "implied_under_probability_novig": 0.4711,
      "edge_over": 0.0714,
      "edge_under": -0.1328,
      "recommended_side": "Over",
      "recommended_edge": 0.0714,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.08,
      "adjustment_multiplier": 1.018,
      "aggregate_matchup_score": 33.4,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 30360.0,
      "lineup_expected_strikeouts": 4.86,
      "environment_summary": "neutral",
      "temperature_f": null,
      "wind_speed_mph": null,
      "wind_direction": "unknown",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Seth Lugo",
      "pitcher_id": 607625,
      "team_abbr": "KC",
      "opponent_abbr": "CHC",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:56:34.770Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 115,
      "under_odds": -155,
      "expected_strikeouts": 5.0,
      "baseline_projected_strikeouts": 5.11,
      "adjusted_projected_strikeouts": 5.0,
      "skill_score": 14.0,
      "opportunity_score": 57.8,
      "opponent_weakness_score": 29.8,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 35.4,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.5361,
      "model_under_probability": 0.4639,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4651,
      "implied_under_probability_raw": 0.6078,
      "implied_over_probability_novig": 0.4335,
      "implied_under_probability_novig": 0.5665,
      "edge_over": 0.071,
      "edge_under": -0.1439,
      "recommended_side": "Over",
      "recommended_edge": 0.071,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.11,
      "adjustment_multiplier": 0.978,
      "aggregate_matchup_score": 41.1,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 31476.0,
      "lineup_expected_strikeouts": 4.89,
      "environment_summary": "neutral",
      "temperature_f": 81.1,
      "wind_speed_mph": 9.4,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Landen Roupp",
      "pitcher_id": 694738,
      "team_abbr": "SF",
      "opponent_abbr": "DET",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:55:44.201Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -178,
      "under_odds": 119,
      "expected_strikeouts": 4.6,
      "baseline_projected_strikeouts": 4.64,
      "adjusted_projected_strikeouts": 4.6,
      "skill_score": 11.6,
      "opportunity_score": 58.7,
      "opponent_weakness_score": 30.1,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 37.1,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.4726,
      "model_under_probability": 0.5274,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6403,
      "implied_under_probability_raw": 0.4566,
      "implied_over_probability_novig": 0.5837,
      "implied_under_probability_novig": 0.4163,
      "edge_over": -0.1677,
      "edge_under": 0.0708,
      "recommended_side": "Under",
      "recommended_edge": 0.0708,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.04,
      "adjustment_multiplier": 0.992,
      "aggregate_matchup_score": 37.4,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 10559.0,
      "lineup_expected_strikeouts": 4.67,
      "environment_summary": "neutral",
      "temperature_f": 57.7,
      "wind_speed_mph": 6.5,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Jackson Jobe",
      "pitcher_id": 695549,
      "team_abbr": "DET",
      "opponent_abbr": "SF",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:55:44.201Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -169,
      "under_odds": 130,
      "expected_strikeouts": 3.75,
      "baseline_projected_strikeouts": 3.52,
      "adjusted_projected_strikeouts": 3.75,
      "skill_score": 12.8,
      "opportunity_score": 48.7,
      "opponent_weakness_score": 35.6,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 56.3,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.5001,
      "model_under_probability": 0.4999,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6283,
      "implied_under_probability_raw": 0.4348,
      "implied_over_probability_novig": 0.591,
      "implied_under_probability_novig": 0.409,
      "edge_over": -0.1282,
      "edge_under": 0.0651,
      "recommended_side": "Under",
      "recommended_edge": 0.0651,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.23,
      "adjustment_multiplier": 1.066,
      "aggregate_matchup_score": 29.5,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 4385.0,
      "lineup_expected_strikeouts": 4.36,
      "environment_summary": "neutral",
      "temperature_f": 57.7,
      "wind_speed_mph": 6.5,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Aaron Nola",
      "pitcher_id": 605400,
      "team_abbr": "PHI",
      "opponent_abbr": "TOR",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:55:57.854Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -110,
      "under_odds": -120,
      "expected_strikeouts": 5.34,
      "baseline_projected_strikeouts": 5.3,
      "adjusted_projected_strikeouts": 5.34,
      "skill_score": 37.1,
      "opportunity_score": 47.8,
      "opponent_weakness_score": 37.3,
      "support_tier": "BALANCED_SUPPORT",
      "support_label": "Balanced Support",
      "support_note": "Support inputs are mixed but still healthy enough to trust contextually.",
      "suppression_score": 42.4,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.5864,
      "model_under_probability": 0.4136,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5238,
      "implied_under_probability_raw": 0.5455,
      "implied_over_probability_novig": 0.4899,
      "implied_under_probability_novig": 0.5101,
      "edge_over": 0.0626,
      "edge_under": -0.1319,
      "recommended_side": "Over",
      "recommended_edge": 0.0626,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.04,
      "adjustment_multiplier": 1.008,
      "aggregate_matchup_score": 52.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 29857.0,
      "lineup_expected_strikeouts": 5.4,
      "environment_summary": "hitter-friendly",
      "temperature_f": 74.5,
      "wind_speed_mph": 6.0,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Jackson Jobe",
      "pitcher_id": 695549,
      "team_abbr": "DET",
      "opponent_abbr": "SF",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:56:35.398Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 125,
      "under_odds": -165,
      "expected_strikeouts": 3.75,
      "baseline_projected_strikeouts": 3.52,
      "adjusted_projected_strikeouts": 3.75,
      "skill_score": 12.8,
      "opportunity_score": 48.7,
      "opponent_weakness_score": 35.6,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 56.3,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.3265,
      "model_under_probability": 0.6735,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4444,
      "implied_under_probability_raw": 0.6226,
      "implied_over_probability_novig": 0.4165,
      "implied_under_probability_novig": 0.5835,
      "edge_over": -0.1179,
      "edge_under": 0.0509,
      "recommended_side": "Under",
      "recommended_edge": 0.0509,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.23,
      "adjustment_multiplier": 1.066,
      "aggregate_matchup_score": 29.5,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 4385.0,
      "lineup_expected_strikeouts": 4.36,
      "environment_summary": "neutral",
      "temperature_f": 57.7,
      "wind_speed_mph": 6.5,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Jackson Jobe",
      "pitcher_id": 695549,
      "team_abbr": "DET",
      "opponent_abbr": "SF",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:56:11.499Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -150,
      "under_odds": 118,
      "expected_strikeouts": 3.75,
      "baseline_projected_strikeouts": 3.52,
      "adjusted_projected_strikeouts": 3.75,
      "skill_score": 12.8,
      "opportunity_score": 48.7,
      "opponent_weakness_score": 35.6,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 56.3,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.5001,
      "model_under_probability": 0.4999,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6,
      "implied_under_probability_raw": 0.4587,
      "implied_over_probability_novig": 0.5667,
      "implied_under_probability_novig": 0.4333,
      "edge_over": -0.0999,
      "edge_under": 0.0412,
      "recommended_side": "Under",
      "recommended_edge": 0.0412,
      "play_tier": "Play",
      "no_play_reason": null,
      "adjustment_delta": 0.23,
      "adjustment_multiplier": 1.066,
      "aggregate_matchup_score": 29.5,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 4385.0,
      "lineup_expected_strikeouts": 4.36,
      "environment_summary": "neutral",
      "temperature_f": 57.7,
      "wind_speed_mph": 6.5,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Yoshinobu Yamamoto",
      "pitcher_id": 808967,
      "team_abbr": "LAD",
      "opponent_abbr": "AZ",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:57:03.555Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -120,
      "under_odds": -110,
      "expected_strikeouts": 5.37,
      "baseline_projected_strikeouts": 5.49,
      "adjusted_projected_strikeouts": 5.37,
      "skill_score": 27.8,
      "opportunity_score": 89.4,
      "opponent_weakness_score": 36.7,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 5.4,
      "suppression_tier": "CLEAR_RUNWAY",
      "suppression_label": "Clear Runway",
      "suppression_note": "Workload and leash context support the strikeout projection cleanly.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.439,
      "model_under_probability": 0.561,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5455,
      "implied_under_probability_raw": 0.5238,
      "implied_over_probability_novig": 0.5101,
      "implied_under_probability_novig": 0.4899,
      "edge_over": -0.1065,
      "edge_under": 0.0372,
      "recommended_side": "Under",
      "recommended_edge": 0.0372,
      "play_tier": "Play",
      "no_play_reason": null,
      "adjustment_delta": -0.12,
      "adjustment_multiplier": 0.979,
      "aggregate_matchup_score": 59.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 19316.0,
      "lineup_expected_strikeouts": 5.04,
      "environment_summary": "neutral",
      "temperature_f": null,
      "wind_speed_mph": null,
      "wind_direction": "unknown",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Max Scherzer",
      "pitcher_id": 453286,
      "team_abbr": "TOR",
      "opponent_abbr": "PHI",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:55:44.201Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -140,
      "under_odds": 107,
      "expected_strikeouts": 3.7,
      "baseline_projected_strikeouts": 3.29,
      "adjusted_projected_strikeouts": 3.7,
      "skill_score": 3.6,
      "opportunity_score": 12.0,
      "opponent_weakness_score": 44.3,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 97.6,
      "suppression_tier": "HEAVY_SUPPRESSION",
      "suppression_label": "Heavy Suppression",
      "suppression_note": "Leash or workload context materially weakens the strikeout conversion path.",
      "interaction_tier": "SUPPRESSED_ALIGNMENT",
      "interaction_label": "Suppressed Alignment",
      "interaction_note": "Runway drag or weak alignment materially softens the strikeout path.",
      "trust_modifier": "SUPPRESSED",
      "trust_label": "Suppressed",
      "trust_note": "Leash or alignment drag is materially weakening the strikeout trust case.",
      "model_over_probability": 0.4908,
      "model_under_probability": 0.5092,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5833,
      "implied_under_probability_raw": 0.4831,
      "implied_over_probability_novig": 0.547,
      "implied_under_probability_novig": 0.453,
      "edge_over": -0.0925,
      "edge_under": 0.0261,
      "recommended_side": "Under",
      "recommended_edge": 0.0261,
      "play_tier": "Lean",
      "no_play_reason": null,
      "adjustment_delta": 0.41,
      "adjustment_multiplier": 1.124,
      "aggregate_matchup_score": 54.1,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 17021.0,
      "lineup_expected_strikeouts": 5.38,
      "environment_summary": "hitter-friendly",
      "temperature_f": 74.5,
      "wind_speed_mph": 6.0,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Sandy Alcantara",
      "pitcher_id": 645261,
      "team_abbr": "MIA",
      "opponent_abbr": "LAA",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:56:11.499Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -118,
      "under_odds": -108,
      "expected_strikeouts": 5.48,
      "baseline_projected_strikeouts": 5.08,
      "adjusted_projected_strikeouts": 5.48,
      "skill_score": 11.7,
      "opportunity_score": 84.1,
      "opponent_weakness_score": 44.4,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 5.4,
      "suppression_tier": "CLEAR_RUNWAY",
      "suppression_label": "Clear Runway",
      "suppression_note": "Workload and leash context support the strikeout projection cleanly.",
      "interaction_tier": "STRONG_ALIGNMENT",
      "interaction_label": "Strong Alignment",
      "interaction_note": "The strikeout structure is favorable, but not as clean as the premium runway pocket.",
      "trust_modifier": "WATCHLIST_RUNWAY",
      "trust_label": "Watchlist Runway",
      "trust_note": "The strikeout structure is supportive and worth watching, but it is not as clean as the premium bucket.",
      "model_over_probability": 0.4553,
      "model_under_probability": 0.5447,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5413,
      "implied_under_probability_raw": 0.5192,
      "implied_over_probability_novig": 0.5104,
      "implied_under_probability_novig": 0.4896,
      "edge_over": -0.086,
      "edge_under": 0.0255,
      "recommended_side": "Under",
      "recommended_edge": 0.0255,
      "play_tier": "Lean",
      "no_play_reason": null,
      "adjustment_delta": 0.4,
      "adjustment_multiplier": 1.079,
      "aggregate_matchup_score": 54.2,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 22618.0,
      "lineup_expected_strikeouts": 6.18,
      "environment_summary": "neutral",
      "temperature_f": 81.3,
      "wind_speed_mph": 5.0,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Max Scherzer",
      "pitcher_id": 453286,
      "team_abbr": "TOR",
      "opponent_abbr": "PHI",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:55:57.854Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -140,
      "under_odds": 105,
      "expected_strikeouts": 3.7,
      "baseline_projected_strikeouts": 3.29,
      "adjusted_projected_strikeouts": 3.7,
      "skill_score": 3.6,
      "opportunity_score": 12.0,
      "opponent_weakness_score": 44.3,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 97.6,
      "suppression_tier": "HEAVY_SUPPRESSION",
      "suppression_label": "Heavy Suppression",
      "suppression_note": "Leash or workload context materially weakens the strikeout conversion path.",
      "interaction_tier": "SUPPRESSED_ALIGNMENT",
      "interaction_label": "Suppressed Alignment",
      "interaction_note": "Runway drag or weak alignment materially softens the strikeout path.",
      "trust_modifier": "SUPPRESSED",
      "trust_label": "Suppressed",
      "trust_note": "Leash or alignment drag is materially weakening the strikeout trust case.",
      "model_over_probability": 0.4908,
      "model_under_probability": 0.5092,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5833,
      "implied_under_probability_raw": 0.4878,
      "implied_over_probability_novig": 0.5446,
      "implied_under_probability_novig": 0.4554,
      "edge_over": -0.0925,
      "edge_under": 0.0214,
      "recommended_side": "Under",
      "recommended_edge": 0.0214,
      "play_tier": "Lean",
      "no_play_reason": null,
      "adjustment_delta": 0.41,
      "adjustment_multiplier": 1.124,
      "aggregate_matchup_score": 54.1,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 17021.0,
      "lineup_expected_strikeouts": 5.38,
      "environment_summary": "hitter-friendly",
      "temperature_f": 74.5,
      "wind_speed_mph": 6.0,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Max Scherzer",
      "pitcher_id": 453286,
      "team_abbr": "TOR",
      "opponent_abbr": "PHI",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:56:11.499Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -132,
      "under_odds": 104,
      "expected_strikeouts": 3.7,
      "baseline_projected_strikeouts": 3.29,
      "adjusted_projected_strikeouts": 3.7,
      "skill_score": 3.6,
      "opportunity_score": 12.0,
      "opponent_weakness_score": 44.3,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 97.6,
      "suppression_tier": "HEAVY_SUPPRESSION",
      "suppression_label": "Heavy Suppression",
      "suppression_note": "Leash or workload context materially weakens the strikeout conversion path.",
      "interaction_tier": "SUPPRESSED_ALIGNMENT",
      "interaction_label": "Suppressed Alignment",
      "interaction_note": "Runway drag or weak alignment materially softens the strikeout path.",
      "trust_modifier": "SUPPRESSED",
      "trust_label": "Suppressed",
      "trust_note": "Leash or alignment drag is materially weakening the strikeout trust case.",
      "model_over_probability": 0.4908,
      "model_under_probability": 0.5092,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.569,
      "implied_under_probability_raw": 0.4902,
      "implied_over_probability_novig": 0.5372,
      "implied_under_probability_novig": 0.4628,
      "edge_over": -0.0782,
      "edge_under": 0.019,
      "recommended_side": "Under",
      "recommended_edge": 0.019,
      "play_tier": "Lean",
      "no_play_reason": null,
      "adjustment_delta": 0.41,
      "adjustment_multiplier": 1.124,
      "aggregate_matchup_score": 54.1,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 17021.0,
      "lineup_expected_strikeouts": 5.38,
      "environment_summary": "hitter-friendly",
      "temperature_f": 74.5,
      "wind_speed_mph": 6.0,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Yoshinobu Yamamoto",
      "pitcher_id": 808967,
      "team_abbr": "LAD",
      "opponent_abbr": "AZ",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:56:11.499Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -106,
      "under_odds": -120,
      "expected_strikeouts": 5.37,
      "baseline_projected_strikeouts": 5.49,
      "adjusted_projected_strikeouts": 5.37,
      "skill_score": 27.8,
      "opportunity_score": 89.4,
      "opponent_weakness_score": 36.7,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 5.4,
      "suppression_tier": "CLEAR_RUNWAY",
      "suppression_label": "Clear Runway",
      "suppression_note": "Workload and leash context support the strikeout projection cleanly.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.439,
      "model_under_probability": 0.561,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5146,
      "implied_under_probability_raw": 0.5455,
      "implied_over_probability_novig": 0.4854,
      "implied_under_probability_novig": 0.5146,
      "edge_over": -0.0756,
      "edge_under": 0.0155,
      "recommended_side": "Under",
      "recommended_edge": 0.0155,
      "play_tier": "Lean",
      "no_play_reason": null,
      "adjustment_delta": -0.12,
      "adjustment_multiplier": 0.979,
      "aggregate_matchup_score": 59.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 19316.0,
      "lineup_expected_strikeouts": 5.04,
      "environment_summary": "neutral",
      "temperature_f": null,
      "wind_speed_mph": null,
      "wind_direction": "unknown",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Sandy Alcantara",
      "pitcher_id": 645261,
      "team_abbr": "MIA",
      "opponent_abbr": "LAA",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:55:44.201Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -115,
      "under_odds": -113,
      "expected_strikeouts": 5.48,
      "baseline_projected_strikeouts": 5.08,
      "adjusted_projected_strikeouts": 5.48,
      "skill_score": 11.7,
      "opportunity_score": 84.1,
      "opponent_weakness_score": 44.4,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 5.4,
      "suppression_tier": "CLEAR_RUNWAY",
      "suppression_label": "Clear Runway",
      "suppression_note": "Workload and leash context support the strikeout projection cleanly.",
      "interaction_tier": "STRONG_ALIGNMENT",
      "interaction_label": "Strong Alignment",
      "interaction_note": "The strikeout structure is favorable, but not as clean as the premium runway pocket.",
      "trust_modifier": "WATCHLIST_RUNWAY",
      "trust_label": "Watchlist Runway",
      "trust_note": "The strikeout structure is supportive and worth watching, but it is not as clean as the premium bucket.",
      "model_over_probability": 0.4553,
      "model_under_probability": 0.5447,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5349,
      "implied_under_probability_raw": 0.5305,
      "implied_over_probability_novig": 0.5021,
      "implied_under_probability_novig": 0.4979,
      "edge_over": -0.0796,
      "edge_under": 0.0142,
      "recommended_side": "No Play",
      "recommended_edge": 0.0142,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.4,
      "adjustment_multiplier": 1.079,
      "aggregate_matchup_score": 54.2,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 22618.0,
      "lineup_expected_strikeouts": 6.18,
      "environment_summary": "neutral",
      "temperature_f": 81.3,
      "wind_speed_mph": 5.0,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "George Kirby",
      "pitcher_id": 669923,
      "team_abbr": "SEA",
      "opponent_abbr": "TB",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:56:11.499Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -148,
      "under_odds": 116,
      "expected_strikeouts": 5.5,
      "baseline_projected_strikeouts": 5.63,
      "adjusted_projected_strikeouts": 5.5,
      "skill_score": 30.2,
      "opportunity_score": 62.2,
      "opponent_weakness_score": 37.8,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 29.5,
      "suppression_tier": "CLEAR_RUNWAY",
      "suppression_label": "Clear Runway",
      "suppression_note": "Workload and leash context support the strikeout projection cleanly.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.6087,
      "model_under_probability": 0.3913,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5968,
      "implied_under_probability_raw": 0.463,
      "implied_over_probability_novig": 0.5631,
      "implied_under_probability_novig": 0.4369,
      "edge_over": 0.0119,
      "edge_under": -0.0717,
      "recommended_side": "No Play",
      "recommended_edge": 0.0119,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": -0.13,
      "adjustment_multiplier": 0.977,
      "aggregate_matchup_score": 61.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 30773.0,
      "lineup_expected_strikeouts": 5.12,
      "environment_summary": "pitcher-friendly",
      "temperature_f": 63.1,
      "wind_speed_mph": 4.9,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Michael King",
      "pitcher_id": 650633,
      "team_abbr": "SD",
      "opponent_abbr": "HOU",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:56:11.499Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": 140,
      "under_odds": -180,
      "expected_strikeouts": 5.27,
      "baseline_projected_strikeouts": 5.08,
      "adjusted_projected_strikeouts": 5.27,
      "skill_score": 30.8,
      "opportunity_score": 53.7,
      "opponent_weakness_score": 43.7,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 36.8,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.424,
      "model_under_probability": 0.576,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4167,
      "implied_under_probability_raw": 0.6429,
      "implied_over_probability_novig": 0.3933,
      "implied_under_probability_novig": 0.6067,
      "edge_over": 0.0073,
      "edge_under": -0.0669,
      "recommended_side": "No Play",
      "recommended_edge": 0.0073,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.19,
      "adjustment_multiplier": 1.038,
      "aggregate_matchup_score": 60.9,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 19346.0,
      "lineup_expected_strikeouts": 5.5,
      "environment_summary": "neutral",
      "temperature_f": 70.7,
      "wind_speed_mph": 3.4,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Yoshinobu Yamamoto",
      "pitcher_id": 808967,
      "team_abbr": "LAD",
      "opponent_abbr": "AZ",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:55:44.201Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -101,
      "under_odds": -126,
      "expected_strikeouts": 5.37,
      "baseline_projected_strikeouts": 5.49,
      "adjusted_projected_strikeouts": 5.37,
      "skill_score": 27.8,
      "opportunity_score": 89.4,
      "opponent_weakness_score": 36.7,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 5.4,
      "suppression_tier": "CLEAR_RUNWAY",
      "suppression_label": "Clear Runway",
      "suppression_note": "Workload and leash context support the strikeout projection cleanly.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.439,
      "model_under_probability": 0.561,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5025,
      "implied_under_probability_raw": 0.5575,
      "implied_over_probability_novig": 0.4741,
      "implied_under_probability_novig": 0.5259,
      "edge_over": -0.0635,
      "edge_under": 0.0035,
      "recommended_side": "No Play",
      "recommended_edge": 0.0035,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": -0.12,
      "adjustment_multiplier": 0.979,
      "aggregate_matchup_score": 59.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 19316.0,
      "lineup_expected_strikeouts": 5.04,
      "environment_summary": "neutral",
      "temperature_f": null,
      "wind_speed_mph": null,
      "wind_direction": "unknown",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Kyle Bradish",
      "pitcher_id": 680694,
      "team_abbr": "BAL",
      "opponent_abbr": "TEX",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:56:11.499Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": 104,
      "under_odds": -132,
      "expected_strikeouts": 5.7,
      "baseline_projected_strikeouts": 5.48,
      "adjusted_projected_strikeouts": 5.7,
      "skill_score": 10.9,
      "opportunity_score": 49.5,
      "opponent_weakness_score": 45.9,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 48.4,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.4873,
      "model_under_probability": 0.5127,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4902,
      "implied_under_probability_raw": 0.569,
      "implied_over_probability_novig": 0.4628,
      "implied_under_probability_novig": 0.5372,
      "edge_over": -0.0029,
      "edge_under": -0.0563,
      "recommended_side": "No Play",
      "recommended_edge": -0.0029,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.22,
      "adjustment_multiplier": 1.04,
      "aggregate_matchup_score": 66.5,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 13080.0,
      "lineup_expected_strikeouts": 5.89,
      "environment_summary": "neutral",
      "temperature_f": 88.7,
      "wind_speed_mph": 7.8,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "George Kirby",
      "pitcher_id": 669923,
      "team_abbr": "SEA",
      "opponent_abbr": "TB",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:55:44.201Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -158,
      "under_odds": 120,
      "expected_strikeouts": 5.5,
      "baseline_projected_strikeouts": 5.63,
      "adjusted_projected_strikeouts": 5.5,
      "skill_score": 30.2,
      "opportunity_score": 62.2,
      "opponent_weakness_score": 37.8,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 29.5,
      "suppression_tier": "CLEAR_RUNWAY",
      "suppression_label": "Clear Runway",
      "suppression_note": "Workload and leash context support the strikeout projection cleanly.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.6087,
      "model_under_probability": 0.3913,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6124,
      "implied_under_probability_raw": 0.4545,
      "implied_over_probability_novig": 0.574,
      "implied_under_probability_novig": 0.426,
      "edge_over": -0.0037,
      "edge_under": -0.0632,
      "recommended_side": "No Play",
      "recommended_edge": -0.0037,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": -0.13,
      "adjustment_multiplier": 0.977,
      "aggregate_matchup_score": 61.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 30773.0,
      "lineup_expected_strikeouts": 5.12,
      "environment_summary": "pitcher-friendly",
      "temperature_f": 63.1,
      "wind_speed_mph": 4.9,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Sandy Alcantara",
      "pitcher_id": 645261,
      "team_abbr": "MIA",
      "opponent_abbr": "LAA",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:55:36.598Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -105,
      "under_odds": -125,
      "expected_strikeouts": 5.48,
      "baseline_projected_strikeouts": 5.08,
      "adjusted_projected_strikeouts": 5.48,
      "skill_score": 11.7,
      "opportunity_score": 84.1,
      "opponent_weakness_score": 44.4,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 5.4,
      "suppression_tier": "CLEAR_RUNWAY",
      "suppression_label": "Clear Runway",
      "suppression_note": "Workload and leash context support the strikeout projection cleanly.",
      "interaction_tier": "STRONG_ALIGNMENT",
      "interaction_label": "Strong Alignment",
      "interaction_note": "The strikeout structure is favorable, but not as clean as the premium runway pocket.",
      "trust_modifier": "WATCHLIST_RUNWAY",
      "trust_label": "Watchlist Runway",
      "trust_note": "The strikeout structure is supportive and worth watching, but it is not as clean as the premium bucket.",
      "model_over_probability": 0.4553,
      "model_under_probability": 0.5447,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5122,
      "implied_under_probability_raw": 0.5556,
      "implied_over_probability_novig": 0.4797,
      "implied_under_probability_novig": 0.5203,
      "edge_over": -0.0569,
      "edge_under": -0.0109,
      "recommended_side": "No Play",
      "recommended_edge": -0.0109,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.4,
      "adjustment_multiplier": 1.079,
      "aggregate_matchup_score": 54.2,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 22618.0,
      "lineup_expected_strikeouts": 6.18,
      "environment_summary": "neutral",
      "temperature_f": 81.3,
      "wind_speed_mph": 5.0,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Michael King",
      "pitcher_id": 650633,
      "team_abbr": "SD",
      "opponent_abbr": "HOU",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:56:33.120Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": 105,
      "under_odds": -145,
      "expected_strikeouts": 5.27,
      "baseline_projected_strikeouts": 5.08,
      "adjusted_projected_strikeouts": 5.27,
      "skill_score": 30.8,
      "opportunity_score": 53.7,
      "opponent_weakness_score": 43.7,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 36.8,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.424,
      "model_under_probability": 0.576,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4878,
      "implied_under_probability_raw": 0.5918,
      "implied_over_probability_novig": 0.4518,
      "implied_under_probability_novig": 0.5482,
      "edge_over": -0.0638,
      "edge_under": -0.0158,
      "recommended_side": "No Play",
      "recommended_edge": -0.0158,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.19,
      "adjustment_multiplier": 1.038,
      "aggregate_matchup_score": 60.9,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 19346.0,
      "lineup_expected_strikeouts": 5.5,
      "environment_summary": "neutral",
      "temperature_f": 70.7,
      "wind_speed_mph": 3.4,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Michael King",
      "pitcher_id": 650633,
      "team_abbr": "SD",
      "opponent_abbr": "HOU",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:55:44.201Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -165,
      "under_odds": 127,
      "expected_strikeouts": 5.27,
      "baseline_projected_strikeouts": 5.08,
      "adjusted_projected_strikeouts": 5.27,
      "skill_score": 30.8,
      "opportunity_score": 53.7,
      "opponent_weakness_score": 43.7,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 36.8,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.5763,
      "model_under_probability": 0.4237,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6226,
      "implied_under_probability_raw": 0.4405,
      "implied_over_probability_novig": 0.5856,
      "implied_under_probability_novig": 0.4144,
      "edge_over": -0.0463,
      "edge_under": -0.0168,
      "recommended_side": "No Play",
      "recommended_edge": -0.0168,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.19,
      "adjustment_multiplier": 1.038,
      "aggregate_matchup_score": 60.9,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 19346.0,
      "lineup_expected_strikeouts": 5.5,
      "environment_summary": "neutral",
      "temperature_f": 70.7,
      "wind_speed_mph": 3.4,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Kyle Freeland",
      "pitcher_id": 607536,
      "team_abbr": "COL",
      "opponent_abbr": "STL",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:56:11.499Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -113,
      "under_odds": -113,
      "expected_strikeouts": 3.79,
      "baseline_projected_strikeouts": 3.67,
      "adjusted_projected_strikeouts": 3.79,
      "skill_score": 28.9,
      "opportunity_score": 63.7,
      "opponent_weakness_score": 34.2,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 39.5,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.5075,
      "model_under_probability": 0.4925,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5305,
      "implied_under_probability_raw": 0.5305,
      "implied_over_probability_novig": 0.5,
      "implied_under_probability_novig": 0.5,
      "edge_over": -0.023,
      "edge_under": -0.038,
      "recommended_side": "No Play",
      "recommended_edge": -0.023,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.12,
      "adjustment_multiplier": 1.031,
      "aggregate_matchup_score": 28.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 26728.0,
      "lineup_expected_strikeouts": 4.19,
      "environment_summary": "neutral",
      "temperature_f": 78.6,
      "wind_speed_mph": 3.6,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Kyle Bradish",
      "pitcher_id": 680694,
      "team_abbr": "BAL",
      "opponent_abbr": "TEX",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:56:40.553Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -105,
      "under_odds": -125,
      "expected_strikeouts": 5.7,
      "baseline_projected_strikeouts": 5.48,
      "adjusted_projected_strikeouts": 5.7,
      "skill_score": 10.9,
      "opportunity_score": 49.5,
      "opponent_weakness_score": 45.9,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 48.4,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.4873,
      "model_under_probability": 0.5127,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5122,
      "implied_under_probability_raw": 0.5556,
      "implied_over_probability_novig": 0.4797,
      "implied_under_probability_novig": 0.5203,
      "edge_over": -0.0249,
      "edge_under": -0.0429,
      "recommended_side": "No Play",
      "recommended_edge": -0.0249,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.22,
      "adjustment_multiplier": 1.04,
      "aggregate_matchup_score": 66.5,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 13080.0,
      "lineup_expected_strikeouts": 5.89,
      "environment_summary": "neutral",
      "temperature_f": 88.7,
      "wind_speed_mph": 7.8,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Kyle Bradish",
      "pitcher_id": 680694,
      "team_abbr": "BAL",
      "opponent_abbr": "TEX",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:55:44.201Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -105,
      "under_odds": -122,
      "expected_strikeouts": 5.7,
      "baseline_projected_strikeouts": 5.48,
      "adjusted_projected_strikeouts": 5.7,
      "skill_score": 10.9,
      "opportunity_score": 49.5,
      "opponent_weakness_score": 45.9,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 48.4,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.4873,
      "model_under_probability": 0.5127,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5122,
      "implied_under_probability_raw": 0.5495,
      "implied_over_probability_novig": 0.4824,
      "implied_under_probability_novig": 0.5176,
      "edge_over": -0.0249,
      "edge_under": -0.0368,
      "recommended_side": "No Play",
      "recommended_edge": -0.0249,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.22,
      "adjustment_multiplier": 1.04,
      "aggregate_matchup_score": 66.5,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 13080.0,
      "lineup_expected_strikeouts": 5.89,
      "environment_summary": "neutral",
      "temperature_f": 88.7,
      "wind_speed_mph": 7.8,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Kyle Freeland",
      "pitcher_id": 607536,
      "team_abbr": "COL",
      "opponent_abbr": "STL",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:55:44.201Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -114,
      "under_odds": -112,
      "expected_strikeouts": 3.79,
      "baseline_projected_strikeouts": 3.67,
      "adjusted_projected_strikeouts": 3.79,
      "skill_score": 28.9,
      "opportunity_score": 63.7,
      "opponent_weakness_score": 34.2,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 39.5,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.5075,
      "model_under_probability": 0.4925,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5327,
      "implied_under_probability_raw": 0.5283,
      "implied_over_probability_novig": 0.5021,
      "implied_under_probability_novig": 0.4979,
      "edge_over": -0.0252,
      "edge_under": -0.0358,
      "recommended_side": "No Play",
      "recommended_edge": -0.0252,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.12,
      "adjustment_multiplier": 1.031,
      "aggregate_matchup_score": 28.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 26728.0,
      "lineup_expected_strikeouts": 4.19,
      "environment_summary": "neutral",
      "temperature_f": 78.6,
      "wind_speed_mph": 3.6,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Kyle Freeland",
      "pitcher_id": 607536,
      "team_abbr": "COL",
      "opponent_abbr": "STL",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-08T11:56:33.500Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -115,
      "under_odds": -115,
      "expected_strikeouts": 3.79,
      "baseline_projected_strikeouts": 3.67,
      "adjusted_projected_strikeouts": 3.79,
      "skill_score": 28.9,
      "opportunity_score": 63.7,
      "opponent_weakness_score": 34.2,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 39.5,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.5075,
      "model_under_probability": 0.4925,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5349,
      "implied_under_probability_raw": 0.5349,
      "implied_over_probability_novig": 0.5,
      "implied_under_probability_novig": 0.5,
      "edge_over": -0.0274,
      "edge_under": -0.0424,
      "recommended_side": "No Play",
      "recommended_edge": -0.0274,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.12,
      "adjustment_multiplier": 1.031,
      "aggregate_matchup_score": 28.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 26728.0,
      "lineup_expected_strikeouts": 4.19,
      "environment_summary": "neutral",
      "temperature_f": 78.6,
      "wind_speed_mph": 3.6,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    }
  ],
  "unmatched_inputs": [
    {
      "pitcher_name": "Andrew Alvarez",
      "team_abbr": "WSH",
      "opponent_abbr": "CIN",
      "sportsbook": "BetMGM",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Andrew Alvarez",
      "team_abbr": "WSH",
      "opponent_abbr": "CIN",
      "sportsbook": "DraftKings",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Andrew Alvarez",
      "team_abbr": "WSH",
      "opponent_abbr": "CIN",
      "sportsbook": "FanDuel",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Anthony Kay",
      "team_abbr": "CWS",
      "opponent_abbr": "CLE",
      "sportsbook": "BetMGM",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Anthony Kay",
      "team_abbr": "CWS",
      "opponent_abbr": "CLE",
      "sportsbook": "DraftKings",
      "line": 3.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Anthony Kay",
      "team_abbr": "CWS",
      "opponent_abbr": "CLE",
      "sportsbook": "FanDuel",
      "line": 3.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Bubba Chandler",
      "team_abbr": "PIT",
      "opponent_abbr": "NYM",
      "sportsbook": "BetMGM",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Bubba Chandler",
      "team_abbr": "PIT",
      "opponent_abbr": "NYM",
      "sportsbook": "DraftKings",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Bubba Chandler",
      "team_abbr": "PIT",
      "opponent_abbr": "NYM",
      "sportsbook": "FanDuel",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Chase Burns",
      "team_abbr": "CIN",
      "opponent_abbr": "WSH",
      "sportsbook": "BetMGM",
      "line": 5.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Chase Burns",
      "team_abbr": "CIN",
      "opponent_abbr": "WSH",
      "sportsbook": "DraftKings",
      "line": 5.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Chase Burns",
      "team_abbr": "CIN",
      "opponent_abbr": "WSH",
      "sportsbook": "FanDuel",
      "line": 5.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Gage Jump",
      "team_abbr": "OAK",
      "opponent_abbr": "BOS",
      "sportsbook": "BetMGM",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Gage Jump",
      "team_abbr": "OAK",
      "opponent_abbr": "BOS",
      "sportsbook": "DraftKings",
      "line": 5.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Gage Jump",
      "team_abbr": "OAK",
      "opponent_abbr": "BOS",
      "sportsbook": "FanDuel",
      "line": 5.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Gerrit Cole",
      "team_abbr": "NYY",
      "opponent_abbr": "ATL",
      "sportsbook": "BetMGM",
      "line": 6.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Gerrit Cole",
      "team_abbr": "NYY",
      "opponent_abbr": "ATL",
      "sportsbook": "DraftKings",
      "line": 5.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Gerrit Cole",
      "team_abbr": "NYY",
      "opponent_abbr": "ATL",
      "sportsbook": "FanDuel",
      "line": 5.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Griffin Jax",
      "team_abbr": "TB",
      "opponent_abbr": "SEA",
      "sportsbook": "DraftKings",
      "line": 5.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Griffin Jax",
      "team_abbr": "TB",
      "opponent_abbr": "SEA",
      "sportsbook": "FanDuel",
      "line": 5.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Jake Bennett",
      "team_abbr": "BOS",
      "opponent_abbr": "OAK",
      "sportsbook": "BetMGM",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Jake Bennett",
      "team_abbr": "BOS",
      "opponent_abbr": "OAK",
      "sportsbook": "DraftKings",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Jake Bennett",
      "team_abbr": "BOS",
      "opponent_abbr": "OAK",
      "sportsbook": "FanDuel",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Peter Lambert",
      "team_abbr": "HOU",
      "opponent_abbr": "SD",
      "sportsbook": "BetMGM",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Peter Lambert",
      "team_abbr": "HOU",
      "opponent_abbr": "SD",
      "sportsbook": "DraftKings",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Peter Lambert",
      "team_abbr": "HOU",
      "opponent_abbr": "SD",
      "sportsbook": "FanDuel",
      "line": 5.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Robert Gasser",
      "team_abbr": "MIL",
      "opponent_abbr": "MIN",
      "sportsbook": "BetMGM",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Robert Gasser",
      "team_abbr": "MIL",
      "opponent_abbr": "MIN",
      "sportsbook": "DraftKings",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Robert Gasser",
      "team_abbr": "MIL",
      "opponent_abbr": "MIN",
      "sportsbook": "FanDuel",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Walbert Ure\u00f1a",
      "team_abbr": "LAA",
      "opponent_abbr": "MIA",
      "sportsbook": "BetMGM",
      "line": 5.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Walbert Ure\u00f1a",
      "team_abbr": "LAA",
      "opponent_abbr": "MIA",
      "sportsbook": "DraftKings",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Walbert Ure\u00f1a",
      "team_abbr": "LAA",
      "opponent_abbr": "MIA",
      "sportsbook": "FanDuel",
      "line": 5.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    }
  ]
}