{
  "date": "2026-05-24",
  "generated_at": "2026-05-24T10:56:09.056485",
  "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-05-24",
  "sportsbook_input_summary": {
    "input_type": "canonical_processed_sportsbook_input",
    "source_count": 1,
    "row_count": 104,
    "matched_count": 74,
    "unmatched_count": 30
  },
  "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": 74,
    "grouped_pitcher_count": 19,
    "sportsbook_count": 3
  },
  "edge_count": 74,
  "edges": [
    {
      "pitcher_name": "Matthew Liberatore",
      "pitcher_id": 669461,
      "team_abbr": "STL",
      "opponent_abbr": "CIN",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T04:04:52.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -150,
      "under_odds": 122,
      "expected_strikeouts": 3.76,
      "baseline_projected_strikeouts": 3.45,
      "adjusted_projected_strikeouts": 3.76,
      "skill_score": 22.2,
      "opportunity_score": 31.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": 65.3,
      "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.3283,
      "model_under_probability": 0.6717,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6,
      "implied_under_probability_raw": 0.4505,
      "implied_over_probability_novig": 0.5712,
      "implied_under_probability_novig": 0.4288,
      "edge_over": -0.2717,
      "edge_under": 0.2212,
      "recommended_side": "Under",
      "recommended_edge": 0.2212,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.31,
      "adjustment_multiplier": 1.09,
      "aggregate_matchup_score": 30.4,
      "lineup_confidence": "confirmed",
      "pitch_mix_sample_size": 16017.0,
      "lineup_expected_strikeouts": 4.51,
      "environment_summary": "hitter-friendly",
      "temperature_f": 72.0,
      "wind_speed_mph": 2.5,
      "wind_direction": "cross",
      "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": "CIN",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:12.735Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -148,
      "under_odds": 116,
      "expected_strikeouts": 3.76,
      "baseline_projected_strikeouts": 3.45,
      "adjusted_projected_strikeouts": 3.76,
      "skill_score": 22.2,
      "opportunity_score": 31.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": 65.3,
      "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.3283,
      "model_under_probability": 0.6717,
      "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.2685,
      "edge_under": 0.2087,
      "recommended_side": "Under",
      "recommended_edge": 0.2087,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.31,
      "adjustment_multiplier": 1.09,
      "aggregate_matchup_score": 30.4,
      "lineup_confidence": "confirmed",
      "pitch_mix_sample_size": 16017.0,
      "lineup_expected_strikeouts": 4.51,
      "environment_summary": "hitter-friendly",
      "temperature_f": 72.0,
      "wind_speed_mph": 2.5,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Dylan Cease",
      "pitcher_id": 656302,
      "team_abbr": "TOR",
      "opponent_abbr": "PIT",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:20.000Z",
      "line": 7.5,
      "line_type": "half",
      "over_odds": -152,
      "under_odds": 124,
      "expected_strikeouts": 6.89,
      "baseline_projected_strikeouts": 6.94,
      "adjusted_projected_strikeouts": 6.89,
      "skill_score": 76.8,
      "opportunity_score": 64.2,
      "opponent_weakness_score": 43.5,
      "support_tier": "TRIPLE_SUPPORT",
      "support_label": "Triple Support",
      "support_note": "Skill, workload, and opponent pressure all support a stronger strikeout environment.",
      "suppression_score": 24.2,
      "suppression_tier": "CLEAR_RUNWAY",
      "suppression_label": "Clear Runway",
      "suppression_note": "Workload and leash context support the strikeout projection cleanly.",
      "interaction_tier": "PREMIUM_RUNWAY",
      "interaction_label": "Premium Runway",
      "interaction_note": "Support layers and runway all align into the cleanest strikeout pocket.",
      "trust_modifier": "PREMIUM_RUNWAY",
      "trust_label": "Premium Runway",
      "trust_note": "Support and leash context align strongly enough to mark the cleanest strikeout trust pocket.",
      "model_over_probability": 0.386,
      "model_under_probability": 0.614,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6032,
      "implied_under_probability_raw": 0.4464,
      "implied_over_probability_novig": 0.5747,
      "implied_under_probability_novig": 0.4253,
      "edge_over": -0.2172,
      "edge_under": 0.1676,
      "recommended_side": "Under",
      "recommended_edge": 0.1676,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.05,
      "adjustment_multiplier": 0.992,
      "aggregate_matchup_score": 73.9,
      "lineup_confidence": "confirmed",
      "pitch_mix_sample_size": 37758.0,
      "lineup_expected_strikeouts": 6.42,
      "environment_summary": "neutral",
      "temperature_f": 54.7,
      "wind_speed_mph": 2.5,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Dylan Cease",
      "pitcher_id": 656302,
      "team_abbr": "TOR",
      "opponent_abbr": "PIT",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 7.5,
      "line_type": "half",
      "over_odds": -148,
      "under_odds": 120,
      "expected_strikeouts": 6.89,
      "baseline_projected_strikeouts": 6.94,
      "adjusted_projected_strikeouts": 6.89,
      "skill_score": 76.8,
      "opportunity_score": 64.2,
      "opponent_weakness_score": 43.5,
      "support_tier": "TRIPLE_SUPPORT",
      "support_label": "Triple Support",
      "support_note": "Skill, workload, and opponent pressure all support a stronger strikeout environment.",
      "suppression_score": 24.2,
      "suppression_tier": "CLEAR_RUNWAY",
      "suppression_label": "Clear Runway",
      "suppression_note": "Workload and leash context support the strikeout projection cleanly.",
      "interaction_tier": "PREMIUM_RUNWAY",
      "interaction_label": "Premium Runway",
      "interaction_note": "Support layers and runway all align into the cleanest strikeout pocket.",
      "trust_modifier": "PREMIUM_RUNWAY",
      "trust_label": "Premium Runway",
      "trust_note": "Support and leash context align strongly enough to mark the cleanest strikeout trust pocket.",
      "model_over_probability": 0.386,
      "model_under_probability": 0.614,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5968,
      "implied_under_probability_raw": 0.4545,
      "implied_over_probability_novig": 0.5677,
      "implied_under_probability_novig": 0.4323,
      "edge_over": -0.2108,
      "edge_under": 0.1595,
      "recommended_side": "Under",
      "recommended_edge": 0.1595,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.05,
      "adjustment_multiplier": 0.992,
      "aggregate_matchup_score": 73.9,
      "lineup_confidence": "confirmed",
      "pitch_mix_sample_size": 37758.0,
      "lineup_expected_strikeouts": 6.42,
      "environment_summary": "neutral",
      "temperature_f": 54.7,
      "wind_speed_mph": 2.5,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Shota Imanaga",
      "pitcher_id": 684007,
      "team_abbr": "CHC",
      "opponent_abbr": "HOU",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 5.5,
      "line_type": "half",
      "over_odds": -154,
      "under_odds": 126,
      "expected_strikeouts": 5.11,
      "baseline_projected_strikeouts": 5.35,
      "adjusted_projected_strikeouts": 5.11,
      "skill_score": 36.4,
      "opportunity_score": 62.8,
      "opponent_weakness_score": 30.4,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 33.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.3998,
      "model_under_probability": 0.6002,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6063,
      "implied_under_probability_raw": 0.4425,
      "implied_over_probability_novig": 0.5781,
      "implied_under_probability_novig": 0.4219,
      "edge_over": -0.2065,
      "edge_under": 0.1577,
      "recommended_side": "Under",
      "recommended_edge": 0.1577,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.24,
      "adjustment_multiplier": 0.955,
      "aggregate_matchup_score": 45.4,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 21240.0,
      "lineup_expected_strikeouts": 4.72,
      "environment_summary": "neutral",
      "temperature_f": 64.4,
      "wind_speed_mph": 5.7,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Shota Imanaga",
      "pitcher_id": 684007,
      "team_abbr": "CHC",
      "opponent_abbr": "HOU",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:35.000Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -154,
      "under_odds": 126,
      "expected_strikeouts": 5.11,
      "baseline_projected_strikeouts": 5.35,
      "adjusted_projected_strikeouts": 5.11,
      "skill_score": 36.4,
      "opportunity_score": 62.8,
      "opponent_weakness_score": 30.4,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 33.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.3998,
      "model_under_probability": 0.6002,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6063,
      "implied_under_probability_raw": 0.4425,
      "implied_over_probability_novig": 0.5781,
      "implied_under_probability_novig": 0.4219,
      "edge_over": -0.2065,
      "edge_under": 0.1577,
      "recommended_side": "Under",
      "recommended_edge": 0.1577,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.24,
      "adjustment_multiplier": 0.955,
      "aggregate_matchup_score": 45.4,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 21240.0,
      "lineup_expected_strikeouts": 4.72,
      "environment_summary": "neutral",
      "temperature_f": 64.4,
      "wind_speed_mph": 5.7,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Drew Rasmussen",
      "pitcher_id": 656876,
      "team_abbr": "TB",
      "opponent_abbr": "NYY",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:39.000Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": 113,
      "under_odds": -144,
      "expected_strikeouts": 4.19,
      "baseline_projected_strikeouts": 3.9,
      "adjusted_projected_strikeouts": 4.19,
      "skill_score": 20.1,
      "opportunity_score": 55.6,
      "opponent_weakness_score": 42.5,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 52.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.2588,
      "model_under_probability": 0.7412,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4695,
      "implied_under_probability_raw": 0.5902,
      "implied_over_probability_novig": 0.443,
      "implied_under_probability_novig": 0.557,
      "edge_over": -0.2107,
      "edge_under": 0.151,
      "recommended_side": "Under",
      "recommended_edge": 0.151,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.29,
      "adjustment_multiplier": 1.074,
      "aggregate_matchup_score": 50.0,
      "lineup_confidence": "confirmed",
      "pitch_mix_sample_size": 14022.0,
      "lineup_expected_strikeouts": 4.72,
      "environment_summary": "neutral",
      "temperature_f": 56.5,
      "wind_speed_mph": 8.5,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Shota Imanaga",
      "pitcher_id": 684007,
      "team_abbr": "CHC",
      "opponent_abbr": "HOU",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:01.000Z",
      "line": 6.5,
      "line_type": "half",
      "over_odds": 105,
      "under_odds": -140,
      "expected_strikeouts": 5.11,
      "baseline_projected_strikeouts": 5.35,
      "adjusted_projected_strikeouts": 5.11,
      "skill_score": 36.4,
      "opportunity_score": 62.8,
      "opponent_weakness_score": 30.4,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 33.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.2701,
      "model_under_probability": 0.7299,
      "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.2177,
      "edge_under": 0.1466,
      "recommended_side": "Under",
      "recommended_edge": 0.1466,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.24,
      "adjustment_multiplier": 0.955,
      "aggregate_matchup_score": 45.4,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 21240.0,
      "lineup_expected_strikeouts": 4.72,
      "environment_summary": "neutral",
      "temperature_f": 64.4,
      "wind_speed_mph": 5.7,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Shota Imanaga",
      "pitcher_id": 684007,
      "team_abbr": "CHC",
      "opponent_abbr": "HOU",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:25.000Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -153,
      "under_odds": 120,
      "expected_strikeouts": 5.11,
      "baseline_projected_strikeouts": 5.35,
      "adjusted_projected_strikeouts": 5.11,
      "skill_score": 36.4,
      "opportunity_score": 62.8,
      "opponent_weakness_score": 30.4,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 33.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.3998,
      "model_under_probability": 0.6002,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6047,
      "implied_under_probability_raw": 0.4545,
      "implied_over_probability_novig": 0.5709,
      "implied_under_probability_novig": 0.4291,
      "edge_over": -0.2049,
      "edge_under": 0.1457,
      "recommended_side": "Under",
      "recommended_edge": 0.1457,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.24,
      "adjustment_multiplier": 0.955,
      "aggregate_matchup_score": 45.4,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 21240.0,
      "lineup_expected_strikeouts": 4.72,
      "environment_summary": "neutral",
      "temperature_f": 64.4,
      "wind_speed_mph": 5.7,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Drew Rasmussen",
      "pitcher_id": 656876,
      "team_abbr": "TB",
      "opponent_abbr": "NYY",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:50:56.000Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": 110,
      "under_odds": -150,
      "expected_strikeouts": 4.19,
      "baseline_projected_strikeouts": 3.9,
      "adjusted_projected_strikeouts": 4.19,
      "skill_score": 20.1,
      "opportunity_score": 55.6,
      "opponent_weakness_score": 42.5,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 52.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.2588,
      "model_under_probability": 0.7412,
      "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.2174,
      "edge_under": 0.1412,
      "recommended_side": "Under",
      "recommended_edge": 0.1412,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.29,
      "adjustment_multiplier": 1.074,
      "aggregate_matchup_score": 50.0,
      "lineup_confidence": "confirmed",
      "pitch_mix_sample_size": 14022.0,
      "lineup_expected_strikeouts": 4.72,
      "environment_summary": "neutral",
      "temperature_f": 56.5,
      "wind_speed_mph": 8.5,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Drew Rasmussen",
      "pitcher_id": 656876,
      "team_abbr": "TB",
      "opponent_abbr": "NYY",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 5.5,
      "line_type": "half",
      "over_odds": 116,
      "under_odds": -154,
      "expected_strikeouts": 4.19,
      "baseline_projected_strikeouts": 3.9,
      "adjusted_projected_strikeouts": 4.19,
      "skill_score": 20.1,
      "opportunity_score": 55.6,
      "opponent_weakness_score": 42.5,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 52.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.2588,
      "model_under_probability": 0.7412,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.463,
      "implied_under_probability_raw": 0.6063,
      "implied_over_probability_novig": 0.433,
      "implied_under_probability_novig": 0.567,
      "edge_over": -0.2042,
      "edge_under": 0.1349,
      "recommended_side": "Under",
      "recommended_edge": 0.1349,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.29,
      "adjustment_multiplier": 1.074,
      "aggregate_matchup_score": 50.0,
      "lineup_confidence": "confirmed",
      "pitch_mix_sample_size": 14022.0,
      "lineup_expected_strikeouts": 4.72,
      "environment_summary": "neutral",
      "temperature_f": 56.5,
      "wind_speed_mph": 8.5,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Drew Rasmussen",
      "pitcher_id": 656876,
      "team_abbr": "TB",
      "opponent_abbr": "NYY",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:45.000Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": 116,
      "under_odds": -154,
      "expected_strikeouts": 4.19,
      "baseline_projected_strikeouts": 3.9,
      "adjusted_projected_strikeouts": 4.19,
      "skill_score": 20.1,
      "opportunity_score": 55.6,
      "opponent_weakness_score": 42.5,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 52.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.2588,
      "model_under_probability": 0.7412,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.463,
      "implied_under_probability_raw": 0.6063,
      "implied_over_probability_novig": 0.433,
      "implied_under_probability_novig": 0.567,
      "edge_over": -0.2042,
      "edge_under": 0.1349,
      "recommended_side": "Under",
      "recommended_edge": 0.1349,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.29,
      "adjustment_multiplier": 1.074,
      "aggregate_matchup_score": 50.0,
      "lineup_confidence": "confirmed",
      "pitch_mix_sample_size": 14022.0,
      "lineup_expected_strikeouts": 4.72,
      "environment_summary": "neutral",
      "temperature_f": 56.5,
      "wind_speed_mph": 8.5,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Dylan Cease",
      "pitcher_id": 656302,
      "team_abbr": "TOR",
      "opponent_abbr": "PIT",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:27.000Z",
      "line": 8.5,
      "line_type": "half",
      "over_odds": 114,
      "under_odds": -145,
      "expected_strikeouts": 6.89,
      "baseline_projected_strikeouts": 6.94,
      "adjusted_projected_strikeouts": 6.89,
      "skill_score": 76.8,
      "opportunity_score": 64.2,
      "opponent_weakness_score": 43.5,
      "support_tier": "TRIPLE_SUPPORT",
      "support_label": "Triple Support",
      "support_note": "Skill, workload, and opponent pressure all support a stronger strikeout environment.",
      "suppression_score": 24.2,
      "suppression_tier": "CLEAR_RUNWAY",
      "suppression_label": "Clear Runway",
      "suppression_note": "Workload and leash context support the strikeout projection cleanly.",
      "interaction_tier": "PREMIUM_RUNWAY",
      "interaction_label": "Premium Runway",
      "interaction_note": "Support layers and runway all align into the cleanest strikeout pocket.",
      "trust_modifier": "PREMIUM_RUNWAY",
      "trust_label": "Premium Runway",
      "trust_note": "Support and leash context align strongly enough to mark the cleanest strikeout trust pocket.",
      "model_over_probability": 0.2785,
      "model_under_probability": 0.7215,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4673,
      "implied_under_probability_raw": 0.5918,
      "implied_over_probability_novig": 0.4412,
      "implied_under_probability_novig": 0.5588,
      "edge_over": -0.1888,
      "edge_under": 0.1297,
      "recommended_side": "Under",
      "recommended_edge": 0.1297,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.05,
      "adjustment_multiplier": 0.992,
      "aggregate_matchup_score": 73.9,
      "lineup_confidence": "confirmed",
      "pitch_mix_sample_size": 37758.0,
      "lineup_expected_strikeouts": 6.42,
      "environment_summary": "neutral",
      "temperature_f": 54.7,
      "wind_speed_mph": 2.5,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Ryan Weathers",
      "pitcher_id": 677960,
      "team_abbr": "NYY",
      "opponent_abbr": "TB",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:50:56.000Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -125,
      "under_odds": -105,
      "expected_strikeouts": 4.85,
      "baseline_projected_strikeouts": 5.25,
      "adjusted_projected_strikeouts": 4.85,
      "skill_score": 54.6,
      "opportunity_score": 55.4,
      "opponent_weakness_score": 27.3,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 38.9,
      "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.3599,
      "model_under_probability": 0.6401,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5556,
      "implied_under_probability_raw": 0.5122,
      "implied_over_probability_novig": 0.5203,
      "implied_under_probability_novig": 0.4797,
      "edge_over": -0.1957,
      "edge_under": 0.1279,
      "recommended_side": "Under",
      "recommended_edge": 0.1279,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.4,
      "adjustment_multiplier": 0.923,
      "aggregate_matchup_score": 38.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 11703.0,
      "lineup_expected_strikeouts": 4.22,
      "environment_summary": "neutral",
      "temperature_f": 56.5,
      "wind_speed_mph": 8.5,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Dylan Cease",
      "pitcher_id": 656302,
      "team_abbr": "TOR",
      "opponent_abbr": "PIT",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:48.000Z",
      "line": 7.5,
      "line_type": "half",
      "over_odds": -140,
      "under_odds": 105,
      "expected_strikeouts": 6.89,
      "baseline_projected_strikeouts": 6.94,
      "adjusted_projected_strikeouts": 6.89,
      "skill_score": 76.8,
      "opportunity_score": 64.2,
      "opponent_weakness_score": 43.5,
      "support_tier": "TRIPLE_SUPPORT",
      "support_label": "Triple Support",
      "support_note": "Skill, workload, and opponent pressure all support a stronger strikeout environment.",
      "suppression_score": 24.2,
      "suppression_tier": "CLEAR_RUNWAY",
      "suppression_label": "Clear Runway",
      "suppression_note": "Workload and leash context support the strikeout projection cleanly.",
      "interaction_tier": "PREMIUM_RUNWAY",
      "interaction_label": "Premium Runway",
      "interaction_note": "Support layers and runway all align into the cleanest strikeout pocket.",
      "trust_modifier": "PREMIUM_RUNWAY",
      "trust_label": "Premium Runway",
      "trust_note": "Support and leash context align strongly enough to mark the cleanest strikeout trust pocket.",
      "model_over_probability": 0.386,
      "model_under_probability": 0.614,
      "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.1973,
      "edge_under": 0.1262,
      "recommended_side": "Under",
      "recommended_edge": 0.1262,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.05,
      "adjustment_multiplier": 0.992,
      "aggregate_matchup_score": 73.9,
      "lineup_confidence": "confirmed",
      "pitch_mix_sample_size": 37758.0,
      "lineup_expected_strikeouts": 6.42,
      "environment_summary": "neutral",
      "temperature_f": 54.7,
      "wind_speed_mph": 2.5,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Ryan Weathers",
      "pitcher_id": 677960,
      "team_abbr": "NYY",
      "opponent_abbr": "TB",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:39.000Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -118,
      "under_odds": -108,
      "expected_strikeouts": 4.85,
      "baseline_projected_strikeouts": 5.25,
      "adjusted_projected_strikeouts": 4.85,
      "skill_score": 54.6,
      "opportunity_score": 55.4,
      "opponent_weakness_score": 27.3,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 38.9,
      "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.3599,
      "model_under_probability": 0.6401,
      "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.1814,
      "edge_under": 0.1209,
      "recommended_side": "Under",
      "recommended_edge": 0.1209,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.4,
      "adjustment_multiplier": 0.923,
      "aggregate_matchup_score": 38.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 11703.0,
      "lineup_expected_strikeouts": 4.22,
      "environment_summary": "neutral",
      "temperature_f": 56.5,
      "wind_speed_mph": 8.5,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Ryan Weathers",
      "pitcher_id": 677960,
      "team_abbr": "NYY",
      "opponent_abbr": "TB",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 5.5,
      "line_type": "half",
      "over_odds": -108,
      "under_odds": -112,
      "expected_strikeouts": 4.85,
      "baseline_projected_strikeouts": 5.25,
      "adjusted_projected_strikeouts": 4.85,
      "skill_score": 54.6,
      "opportunity_score": 55.4,
      "opponent_weakness_score": 27.3,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 38.9,
      "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.3599,
      "model_under_probability": 0.6401,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5192,
      "implied_under_probability_raw": 0.5283,
      "implied_over_probability_novig": 0.4957,
      "implied_under_probability_novig": 0.5043,
      "edge_over": -0.1593,
      "edge_under": 0.1118,
      "recommended_side": "Under",
      "recommended_edge": 0.1118,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.4,
      "adjustment_multiplier": 0.923,
      "aggregate_matchup_score": 38.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 11703.0,
      "lineup_expected_strikeouts": 4.22,
      "environment_summary": "neutral",
      "temperature_f": 56.5,
      "wind_speed_mph": 8.5,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Ryan Weathers",
      "pitcher_id": 677960,
      "team_abbr": "NYY",
      "opponent_abbr": "TB",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:45.000Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -108,
      "under_odds": -112,
      "expected_strikeouts": 4.85,
      "baseline_projected_strikeouts": 5.25,
      "adjusted_projected_strikeouts": 4.85,
      "skill_score": 54.6,
      "opportunity_score": 55.4,
      "opponent_weakness_score": 27.3,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 38.9,
      "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.3599,
      "model_under_probability": 0.6401,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5192,
      "implied_under_probability_raw": 0.5283,
      "implied_over_probability_novig": 0.4957,
      "implied_under_probability_novig": 0.5043,
      "edge_over": -0.1593,
      "edge_under": 0.1118,
      "recommended_side": "Under",
      "recommended_edge": 0.1118,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.4,
      "adjustment_multiplier": 0.923,
      "aggregate_matchup_score": 38.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 11703.0,
      "lineup_expected_strikeouts": 4.22,
      "environment_summary": "neutral",
      "temperature_f": 56.5,
      "wind_speed_mph": 8.5,
      "wind_direction": "in",
      "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": "MIL",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:02.000Z",
      "line": 6.5,
      "line_type": "half",
      "over_odds": -105,
      "under_odds": -125,
      "expected_strikeouts": 5.57,
      "baseline_projected_strikeouts": 5.49,
      "adjusted_projected_strikeouts": 5.57,
      "skill_score": 44.6,
      "opportunity_score": 72.1,
      "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": 14.2,
      "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.3331,
      "model_under_probability": 0.6669,
      "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.1791,
      "edge_under": 0.1113,
      "recommended_side": "Under",
      "recommended_edge": 0.1113,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.08,
      "adjustment_multiplier": 1.015,
      "aggregate_matchup_score": 67.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 19316.0,
      "lineup_expected_strikeouts": 5.5,
      "environment_summary": "neutral",
      "temperature_f": 68.2,
      "wind_speed_mph": 7.7,
      "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": "MIL",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 6.5,
      "line_type": "half",
      "over_odds": -104,
      "under_odds": -128,
      "expected_strikeouts": 5.57,
      "baseline_projected_strikeouts": 5.49,
      "adjusted_projected_strikeouts": 5.57,
      "skill_score": 44.6,
      "opportunity_score": 72.1,
      "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": 14.2,
      "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.3331,
      "model_under_probability": 0.6669,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5098,
      "implied_under_probability_raw": 0.5614,
      "implied_over_probability_novig": 0.4759,
      "implied_under_probability_novig": 0.5241,
      "edge_over": -0.1767,
      "edge_under": 0.1055,
      "recommended_side": "Under",
      "recommended_edge": 0.1055,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.08,
      "adjustment_multiplier": 1.015,
      "aggregate_matchup_score": 67.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 19316.0,
      "lineup_expected_strikeouts": 5.5,
      "environment_summary": "neutral",
      "temperature_f": 68.2,
      "wind_speed_mph": 7.7,
      "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": "MIL",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:51.000Z",
      "line": 6.5,
      "line_type": "half",
      "over_odds": -104,
      "under_odds": -128,
      "expected_strikeouts": 5.57,
      "baseline_projected_strikeouts": 5.49,
      "adjusted_projected_strikeouts": 5.57,
      "skill_score": 44.6,
      "opportunity_score": 72.1,
      "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": 14.2,
      "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.3331,
      "model_under_probability": 0.6669,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5098,
      "implied_under_probability_raw": 0.5614,
      "implied_over_probability_novig": 0.4759,
      "implied_under_probability_novig": 0.5241,
      "edge_over": -0.1767,
      "edge_under": 0.1055,
      "recommended_side": "Under",
      "recommended_edge": 0.1055,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.08,
      "adjustment_multiplier": 1.015,
      "aggregate_matchup_score": 67.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 19316.0,
      "lineup_expected_strikeouts": 5.5,
      "environment_summary": "neutral",
      "temperature_f": 68.2,
      "wind_speed_mph": 7.7,
      "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": "MIL",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:48.000Z",
      "line": 6.5,
      "line_type": "half",
      "over_odds": 101,
      "under_odds": -129,
      "expected_strikeouts": 5.57,
      "baseline_projected_strikeouts": 5.49,
      "adjusted_projected_strikeouts": 5.57,
      "skill_score": 44.6,
      "opportunity_score": 72.1,
      "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": 14.2,
      "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.3331,
      "model_under_probability": 0.6669,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4975,
      "implied_under_probability_raw": 0.5633,
      "implied_over_probability_novig": 0.469,
      "implied_under_probability_novig": 0.531,
      "edge_over": -0.1644,
      "edge_under": 0.1036,
      "recommended_side": "Under",
      "recommended_edge": 0.1036,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.08,
      "adjustment_multiplier": 1.015,
      "aggregate_matchup_score": 67.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 19316.0,
      "lineup_expected_strikeouts": 5.5,
      "environment_summary": "neutral",
      "temperature_f": 68.2,
      "wind_speed_mph": 7.7,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Robbie Ray",
      "pitcher_id": 592662,
      "team_abbr": "SF",
      "opponent_abbr": "CWS",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 5.5,
      "line_type": "half",
      "over_odds": -148,
      "under_odds": 120,
      "expected_strikeouts": 5.47,
      "baseline_projected_strikeouts": 5.58,
      "adjusted_projected_strikeouts": 5.47,
      "skill_score": 18.5,
      "opportunity_score": 57.2,
      "opponent_weakness_score": 37.0,
      "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.9,
      "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.4538,
      "model_under_probability": 0.5462,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5968,
      "implied_under_probability_raw": 0.4545,
      "implied_over_probability_novig": 0.5677,
      "implied_under_probability_novig": 0.4323,
      "edge_over": -0.143,
      "edge_under": 0.0917,
      "recommended_side": "Under",
      "recommended_edge": 0.0917,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.11,
      "adjustment_multiplier": 0.989,
      "aggregate_matchup_score": 57.2,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 17890.0,
      "lineup_expected_strikeouts": 5.32,
      "environment_summary": "neutral",
      "temperature_f": 56.3,
      "wind_speed_mph": 11.2,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Robbie Ray",
      "pitcher_id": 592662,
      "team_abbr": "SF",
      "opponent_abbr": "CWS",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:27.000Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -148,
      "under_odds": 120,
      "expected_strikeouts": 5.47,
      "baseline_projected_strikeouts": 5.58,
      "adjusted_projected_strikeouts": 5.47,
      "skill_score": 18.5,
      "opportunity_score": 57.2,
      "opponent_weakness_score": 37.0,
      "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.9,
      "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.4538,
      "model_under_probability": 0.5462,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5968,
      "implied_under_probability_raw": 0.4545,
      "implied_over_probability_novig": 0.5677,
      "implied_under_probability_novig": 0.4323,
      "edge_over": -0.143,
      "edge_under": 0.0917,
      "recommended_side": "Under",
      "recommended_edge": 0.0917,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.11,
      "adjustment_multiplier": 0.989,
      "aggregate_matchup_score": 57.2,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 17890.0,
      "lineup_expected_strikeouts": 5.32,
      "environment_summary": "neutral",
      "temperature_f": 56.3,
      "wind_speed_mph": 11.2,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Brandon Young",
      "pitcher_id": 687064,
      "team_abbr": "BAL",
      "opponent_abbr": "DET",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:04.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 100,
      "under_odds": -135,
      "expected_strikeouts": 3.83,
      "baseline_projected_strikeouts": 3.67,
      "adjusted_projected_strikeouts": 3.83,
      "skill_score": 4.5,
      "opportunity_score": 45.2,
      "opponent_weakness_score": 35.1,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 58.5,
      "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.3406,
      "model_under_probability": 0.6594,
      "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.1594,
      "edge_under": 0.0849,
      "recommended_side": "Under",
      "recommended_edge": 0.0849,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.16,
      "adjustment_multiplier": 1.043,
      "aggregate_matchup_score": 32.3,
      "lineup_confidence": "confirmed",
      "pitch_mix_sample_size": 4695.0,
      "lineup_expected_strikeouts": 4.28,
      "environment_summary": "neutral",
      "temperature_f": 58.8,
      "wind_speed_mph": 4.5,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Ryne Nelson",
      "pitcher_id": 669194,
      "team_abbr": "AZ",
      "opponent_abbr": "COL",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 4.5,
      "line_type": "half",
      "over_odds": -160,
      "under_odds": 130,
      "expected_strikeouts": 4.66,
      "baseline_projected_strikeouts": 4.45,
      "adjusted_projected_strikeouts": 4.66,
      "skill_score": 7.9,
      "opportunity_score": 28.5,
      "opponent_weakness_score": 40.4,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 69.2,
      "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.4824,
      "model_under_probability": 0.5176,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6154,
      "implied_under_probability_raw": 0.4348,
      "implied_over_probability_novig": 0.586,
      "implied_under_probability_novig": 0.414,
      "edge_over": -0.133,
      "edge_under": 0.0828,
      "recommended_side": "Under",
      "recommended_edge": 0.0828,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.21,
      "adjustment_multiplier": 1.047,
      "aggregate_matchup_score": 49.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 25783.0,
      "lineup_expected_strikeouts": 5.05,
      "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": "Ryne Nelson",
      "pitcher_id": 669194,
      "team_abbr": "AZ",
      "opponent_abbr": "COL",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:32.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -160,
      "under_odds": 130,
      "expected_strikeouts": 4.66,
      "baseline_projected_strikeouts": 4.45,
      "adjusted_projected_strikeouts": 4.66,
      "skill_score": 7.9,
      "opportunity_score": 28.5,
      "opponent_weakness_score": 40.4,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 69.2,
      "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.4824,
      "model_under_probability": 0.5176,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6154,
      "implied_under_probability_raw": 0.4348,
      "implied_over_probability_novig": 0.586,
      "implied_under_probability_novig": 0.414,
      "edge_over": -0.133,
      "edge_under": 0.0828,
      "recommended_side": "Under",
      "recommended_edge": 0.0828,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.21,
      "adjustment_multiplier": 1.047,
      "aggregate_matchup_score": 49.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 25783.0,
      "lineup_expected_strikeouts": 5.05,
      "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": "Michael King",
      "pitcher_id": 650633,
      "team_abbr": "SD",
      "opponent_abbr": "ATH",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 5.5,
      "line_type": "half",
      "over_odds": -148,
      "under_odds": 122,
      "expected_strikeouts": 5.6,
      "baseline_projected_strikeouts": 5.08,
      "adjusted_projected_strikeouts": 5.6,
      "skill_score": 52.0,
      "opportunity_score": 59.0,
      "opponent_weakness_score": 51.5,
      "support_tier": "TRIPLE_SUPPORT",
      "support_label": "Triple Support",
      "support_note": "Skill, workload, and opponent pressure all support a stronger strikeout environment.",
      "suppression_score": 35.9,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "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.4728,
      "model_under_probability": 0.5272,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5968,
      "implied_under_probability_raw": 0.4505,
      "implied_over_probability_novig": 0.5698,
      "implied_under_probability_novig": 0.4302,
      "edge_over": -0.124,
      "edge_under": 0.0767,
      "recommended_side": "Under",
      "recommended_edge": 0.0767,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.52,
      "adjustment_multiplier": 1.102,
      "aggregate_matchup_score": 69.9,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 19346.0,
      "lineup_expected_strikeouts": 6.31,
      "environment_summary": "neutral",
      "temperature_f": 63.7,
      "wind_speed_mph": 7.3,
      "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": "ATH",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:45.000Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -148,
      "under_odds": 122,
      "expected_strikeouts": 5.6,
      "baseline_projected_strikeouts": 5.08,
      "adjusted_projected_strikeouts": 5.6,
      "skill_score": 52.0,
      "opportunity_score": 59.0,
      "opponent_weakness_score": 51.5,
      "support_tier": "TRIPLE_SUPPORT",
      "support_label": "Triple Support",
      "support_note": "Skill, workload, and opponent pressure all support a stronger strikeout environment.",
      "suppression_score": 35.9,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "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.4728,
      "model_under_probability": 0.5272,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5968,
      "implied_under_probability_raw": 0.4505,
      "implied_over_probability_novig": 0.5698,
      "implied_under_probability_novig": 0.4302,
      "edge_over": -0.124,
      "edge_under": 0.0767,
      "recommended_side": "Under",
      "recommended_edge": 0.0767,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.52,
      "adjustment_multiplier": 1.102,
      "aggregate_matchup_score": 69.9,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 19346.0,
      "lineup_expected_strikeouts": 6.31,
      "environment_summary": "neutral",
      "temperature_f": 63.7,
      "wind_speed_mph": 7.3,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Ryne Nelson",
      "pitcher_id": 669194,
      "team_abbr": "AZ",
      "opponent_abbr": "COL",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:50.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -160,
      "under_odds": 125,
      "expected_strikeouts": 4.66,
      "baseline_projected_strikeouts": 4.45,
      "adjusted_projected_strikeouts": 4.66,
      "skill_score": 7.9,
      "opportunity_score": 28.5,
      "opponent_weakness_score": 40.4,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 69.2,
      "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.4824,
      "model_under_probability": 0.5176,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6154,
      "implied_under_probability_raw": 0.4444,
      "implied_over_probability_novig": 0.5807,
      "implied_under_probability_novig": 0.4193,
      "edge_over": -0.133,
      "edge_under": 0.0732,
      "recommended_side": "Under",
      "recommended_edge": 0.0732,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.21,
      "adjustment_multiplier": 1.047,
      "aggregate_matchup_score": 49.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 25783.0,
      "lineup_expected_strikeouts": 5.05,
      "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 Young",
      "pitcher_id": 687064,
      "team_abbr": "BAL",
      "opponent_abbr": "DET",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 4.5,
      "line_type": "half",
      "over_odds": 118,
      "under_odds": -144,
      "expected_strikeouts": 3.83,
      "baseline_projected_strikeouts": 3.67,
      "adjusted_projected_strikeouts": 3.83,
      "skill_score": 4.5,
      "opportunity_score": 45.2,
      "opponent_weakness_score": 35.1,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 58.5,
      "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.3406,
      "model_under_probability": 0.6594,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4587,
      "implied_under_probability_raw": 0.5902,
      "implied_over_probability_novig": 0.4373,
      "implied_under_probability_novig": 0.5627,
      "edge_over": -0.1181,
      "edge_under": 0.0692,
      "recommended_side": "Under",
      "recommended_edge": 0.0692,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.16,
      "adjustment_multiplier": 1.043,
      "aggregate_matchup_score": 32.3,
      "lineup_confidence": "confirmed",
      "pitch_mix_sample_size": 4695.0,
      "lineup_expected_strikeouts": 4.28,
      "environment_summary": "neutral",
      "temperature_f": 58.8,
      "wind_speed_mph": 4.5,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Brandon Young",
      "pitcher_id": 687064,
      "team_abbr": "BAL",
      "opponent_abbr": "DET",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:35.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 118,
      "under_odds": -144,
      "expected_strikeouts": 3.83,
      "baseline_projected_strikeouts": 3.67,
      "adjusted_projected_strikeouts": 3.83,
      "skill_score": 4.5,
      "opportunity_score": 45.2,
      "opponent_weakness_score": 35.1,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 58.5,
      "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.3406,
      "model_under_probability": 0.6594,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4587,
      "implied_under_probability_raw": 0.5902,
      "implied_over_probability_novig": 0.4373,
      "implied_under_probability_novig": 0.5627,
      "edge_over": -0.1181,
      "edge_under": 0.0692,
      "recommended_side": "Under",
      "recommended_edge": 0.0692,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.16,
      "adjustment_multiplier": 1.043,
      "aggregate_matchup_score": 32.3,
      "lineup_confidence": "confirmed",
      "pitch_mix_sample_size": 4695.0,
      "lineup_expected_strikeouts": 4.28,
      "environment_summary": "neutral",
      "temperature_f": 58.8,
      "wind_speed_mph": 4.5,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Robbie Ray",
      "pitcher_id": 592662,
      "team_abbr": "SF",
      "opponent_abbr": "CWS",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:31.000Z",
      "line": 6.5,
      "line_type": "half",
      "over_odds": 124,
      "under_odds": -158,
      "expected_strikeouts": 5.47,
      "baseline_projected_strikeouts": 5.58,
      "adjusted_projected_strikeouts": 5.47,
      "skill_score": 18.5,
      "opportunity_score": 57.2,
      "opponent_weakness_score": 37.0,
      "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.9,
      "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.3193,
      "model_under_probability": 0.6807,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4464,
      "implied_under_probability_raw": 0.6124,
      "implied_over_probability_novig": 0.4216,
      "implied_under_probability_novig": 0.5784,
      "edge_over": -0.1271,
      "edge_under": 0.0683,
      "recommended_side": "Under",
      "recommended_edge": 0.0683,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.11,
      "adjustment_multiplier": 0.989,
      "aggregate_matchup_score": 57.2,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 17890.0,
      "lineup_expected_strikeouts": 5.32,
      "environment_summary": "neutral",
      "temperature_f": 56.3,
      "wind_speed_mph": 11.2,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Ryne Nelson",
      "pitcher_id": 669194,
      "team_abbr": "AZ",
      "opponent_abbr": "COL",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:07.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -160,
      "under_odds": 120,
      "expected_strikeouts": 4.66,
      "baseline_projected_strikeouts": 4.45,
      "adjusted_projected_strikeouts": 4.66,
      "skill_score": 7.9,
      "opportunity_score": 28.5,
      "opponent_weakness_score": 40.4,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 69.2,
      "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.4824,
      "model_under_probability": 0.5176,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6154,
      "implied_under_probability_raw": 0.4545,
      "implied_over_probability_novig": 0.5752,
      "implied_under_probability_novig": 0.4248,
      "edge_over": -0.133,
      "edge_under": 0.0631,
      "recommended_side": "Under",
      "recommended_edge": 0.0631,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.21,
      "adjustment_multiplier": 1.047,
      "aggregate_matchup_score": 49.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 25783.0,
      "lineup_expected_strikeouts": 5.05,
      "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 Young",
      "pitcher_id": 687064,
      "team_abbr": "BAL",
      "opponent_abbr": "DET",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:20.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 116,
      "under_odds": -148,
      "expected_strikeouts": 3.83,
      "baseline_projected_strikeouts": 3.67,
      "adjusted_projected_strikeouts": 3.83,
      "skill_score": 4.5,
      "opportunity_score": 45.2,
      "opponent_weakness_score": 35.1,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 58.5,
      "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.3406,
      "model_under_probability": 0.6594,
      "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.1224,
      "edge_under": 0.0626,
      "recommended_side": "Under",
      "recommended_edge": 0.0626,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.16,
      "adjustment_multiplier": 1.043,
      "aggregate_matchup_score": 32.3,
      "lineup_confidence": "confirmed",
      "pitch_mix_sample_size": 4695.0,
      "lineup_expected_strikeouts": 4.28,
      "environment_summary": "neutral",
      "temperature_f": 58.8,
      "wind_speed_mph": 4.5,
      "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": "ATH",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:23.000Z",
      "line": 6.5,
      "line_type": "half",
      "over_odds": 124,
      "under_odds": -158,
      "expected_strikeouts": 5.6,
      "baseline_projected_strikeouts": 5.08,
      "adjusted_projected_strikeouts": 5.6,
      "skill_score": 52.0,
      "opportunity_score": 59.0,
      "opponent_weakness_score": 51.5,
      "support_tier": "TRIPLE_SUPPORT",
      "support_label": "Triple Support",
      "support_note": "Skill, workload, and opponent pressure all support a stronger strikeout environment.",
      "suppression_score": 35.9,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "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.3373,
      "model_under_probability": 0.6627,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4464,
      "implied_under_probability_raw": 0.6124,
      "implied_over_probability_novig": 0.4216,
      "implied_under_probability_novig": 0.5784,
      "edge_over": -0.1091,
      "edge_under": 0.0503,
      "recommended_side": "Under",
      "recommended_edge": 0.0503,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.52,
      "adjustment_multiplier": 1.102,
      "aggregate_matchup_score": 69.9,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 19346.0,
      "lineup_expected_strikeouts": 6.31,
      "environment_summary": "neutral",
      "temperature_f": 63.7,
      "wind_speed_mph": 7.3,
      "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": "ATH",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:50:55.000Z",
      "line": 6.5,
      "line_type": "half",
      "over_odds": 120,
      "under_odds": -160,
      "expected_strikeouts": 5.6,
      "baseline_projected_strikeouts": 5.08,
      "adjusted_projected_strikeouts": 5.6,
      "skill_score": 52.0,
      "opportunity_score": 59.0,
      "opponent_weakness_score": 51.5,
      "support_tier": "TRIPLE_SUPPORT",
      "support_label": "Triple Support",
      "support_note": "Skill, workload, and opponent pressure all support a stronger strikeout environment.",
      "suppression_score": 35.9,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "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.3373,
      "model_under_probability": 0.6627,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4545,
      "implied_under_probability_raw": 0.6154,
      "implied_over_probability_novig": 0.4248,
      "implied_under_probability_novig": 0.5752,
      "edge_over": -0.1172,
      "edge_under": 0.0473,
      "recommended_side": "Under",
      "recommended_edge": 0.0473,
      "play_tier": "Play",
      "no_play_reason": null,
      "adjustment_delta": 0.52,
      "adjustment_multiplier": 1.102,
      "aggregate_matchup_score": 69.9,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 19346.0,
      "lineup_expected_strikeouts": 6.31,
      "environment_summary": "neutral",
      "temperature_f": 63.7,
      "wind_speed_mph": 7.3,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Robbie Ray",
      "pitcher_id": 592662,
      "team_abbr": "SF",
      "opponent_abbr": "CWS",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:18.000Z",
      "line": 6.5,
      "line_type": "half",
      "over_odds": 130,
      "under_odds": -175,
      "expected_strikeouts": 5.47,
      "baseline_projected_strikeouts": 5.58,
      "adjusted_projected_strikeouts": 5.47,
      "skill_score": 18.5,
      "opportunity_score": 57.2,
      "opponent_weakness_score": 37.0,
      "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.9,
      "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.3193,
      "model_under_probability": 0.6807,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4348,
      "implied_under_probability_raw": 0.6364,
      "implied_over_probability_novig": 0.4059,
      "implied_under_probability_novig": 0.5941,
      "edge_over": -0.1155,
      "edge_under": 0.0443,
      "recommended_side": "Under",
      "recommended_edge": 0.0443,
      "play_tier": "Play",
      "no_play_reason": null,
      "adjustment_delta": -0.11,
      "adjustment_multiplier": 0.989,
      "aggregate_matchup_score": 57.2,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 17890.0,
      "lineup_expected_strikeouts": 5.32,
      "environment_summary": "neutral",
      "temperature_f": 56.3,
      "wind_speed_mph": 11.2,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Bryan Woo",
      "pitcher_id": 693433,
      "team_abbr": "SEA",
      "opponent_abbr": "KC",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:15.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -165,
      "under_odds": 125,
      "expected_strikeouts": 4.88,
      "baseline_projected_strikeouts": 4.71,
      "adjusted_projected_strikeouts": 4.88,
      "skill_score": 32.4,
      "opportunity_score": 48.0,
      "opponent_weakness_score": 42.9,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 51.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.5175,
      "model_under_probability": 0.4825,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6226,
      "implied_under_probability_raw": 0.4444,
      "implied_over_probability_novig": 0.5835,
      "implied_under_probability_novig": 0.4165,
      "edge_over": -0.1051,
      "edge_under": 0.0381,
      "recommended_side": "Under",
      "recommended_edge": 0.0381,
      "play_tier": "Play",
      "no_play_reason": null,
      "adjustment_delta": 0.17,
      "adjustment_multiplier": 1.035,
      "aggregate_matchup_score": 59.5,
      "lineup_confidence": "confirmed",
      "pitch_mix_sample_size": 24778.0,
      "lineup_expected_strikeouts": 5.08,
      "environment_summary": "neutral",
      "temperature_f": 79.5,
      "wind_speed_mph": 8.9,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Bryan Woo",
      "pitcher_id": 693433,
      "team_abbr": "SEA",
      "opponent_abbr": "KC",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:23.000Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": 118,
      "under_odds": -153,
      "expected_strikeouts": 4.88,
      "baseline_projected_strikeouts": 4.71,
      "adjusted_projected_strikeouts": 4.88,
      "skill_score": 32.4,
      "opportunity_score": 48.0,
      "opponent_weakness_score": 42.9,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 51.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.3646,
      "model_under_probability": 0.6354,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4587,
      "implied_under_probability_raw": 0.6047,
      "implied_over_probability_novig": 0.4314,
      "implied_under_probability_novig": 0.5686,
      "edge_over": -0.0941,
      "edge_under": 0.0307,
      "recommended_side": "Under",
      "recommended_edge": 0.0307,
      "play_tier": "Play",
      "no_play_reason": null,
      "adjustment_delta": 0.17,
      "adjustment_multiplier": 1.035,
      "aggregate_matchup_score": 59.5,
      "lineup_confidence": "confirmed",
      "pitch_mix_sample_size": 24778.0,
      "lineup_expected_strikeouts": 5.08,
      "environment_summary": "neutral",
      "temperature_f": 79.5,
      "wind_speed_mph": 8.9,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Jose Quintana",
      "pitcher_id": 500779,
      "team_abbr": "COL",
      "opponent_abbr": "AZ",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:50.000Z",
      "line": 2.5,
      "line_type": "half",
      "over_odds": -107,
      "under_odds": -119,
      "expected_strikeouts": 2.91,
      "baseline_projected_strikeouts": 2.66,
      "adjusted_projected_strikeouts": 2.91,
      "skill_score": 9.0,
      "opportunity_score": 44.3,
      "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": 59.8,
      "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.539,
      "model_under_probability": 0.461,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5169,
      "implied_under_probability_raw": 0.5434,
      "implied_over_probability_novig": 0.4875,
      "implied_under_probability_novig": 0.5125,
      "edge_over": 0.0221,
      "edge_under": -0.0824,
      "recommended_side": "Over",
      "recommended_edge": 0.0221,
      "play_tier": "Lean",
      "no_play_reason": null,
      "adjustment_delta": 0.25,
      "adjustment_multiplier": 1.096,
      "aggregate_matchup_score": 22.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 25833.0,
      "lineup_expected_strikeouts": 3.74,
      "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": "Bryan Woo",
      "pitcher_id": 693433,
      "team_abbr": "SEA",
      "opponent_abbr": "KC",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 5.5,
      "line_type": "half",
      "over_odds": 120,
      "under_odds": -160,
      "expected_strikeouts": 4.88,
      "baseline_projected_strikeouts": 4.71,
      "adjusted_projected_strikeouts": 4.88,
      "skill_score": 32.4,
      "opportunity_score": 48.0,
      "opponent_weakness_score": 42.9,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 51.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.3646,
      "model_under_probability": 0.6354,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4545,
      "implied_under_probability_raw": 0.6154,
      "implied_over_probability_novig": 0.4248,
      "implied_under_probability_novig": 0.5752,
      "edge_over": -0.0899,
      "edge_under": 0.02,
      "recommended_side": "Under",
      "recommended_edge": 0.02,
      "play_tier": "Lean",
      "no_play_reason": null,
      "adjustment_delta": 0.17,
      "adjustment_multiplier": 1.035,
      "aggregate_matchup_score": 59.5,
      "lineup_confidence": "confirmed",
      "pitch_mix_sample_size": 24778.0,
      "lineup_expected_strikeouts": 5.08,
      "environment_summary": "neutral",
      "temperature_f": 79.5,
      "wind_speed_mph": 8.9,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Bryan Woo",
      "pitcher_id": 693433,
      "team_abbr": "SEA",
      "opponent_abbr": "KC",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:51.000Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": 120,
      "under_odds": -160,
      "expected_strikeouts": 4.88,
      "baseline_projected_strikeouts": 4.71,
      "adjusted_projected_strikeouts": 4.88,
      "skill_score": 32.4,
      "opportunity_score": 48.0,
      "opponent_weakness_score": 42.9,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 51.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.3646,
      "model_under_probability": 0.6354,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4545,
      "implied_under_probability_raw": 0.6154,
      "implied_over_probability_novig": 0.4248,
      "implied_under_probability_novig": 0.5752,
      "edge_over": -0.0899,
      "edge_under": 0.02,
      "recommended_side": "Under",
      "recommended_edge": 0.02,
      "play_tier": "Lean",
      "no_play_reason": null,
      "adjustment_delta": 0.17,
      "adjustment_multiplier": 1.035,
      "aggregate_matchup_score": 59.5,
      "lineup_confidence": "confirmed",
      "pitch_mix_sample_size": 24778.0,
      "lineup_expected_strikeouts": 5.08,
      "environment_summary": "neutral",
      "temperature_f": 79.5,
      "wind_speed_mph": 8.9,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Jose Quintana",
      "pitcher_id": 500779,
      "team_abbr": "COL",
      "opponent_abbr": "AZ",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:07.000Z",
      "line": 2.5,
      "line_type": "half",
      "over_odds": -110,
      "under_odds": -120,
      "expected_strikeouts": 2.91,
      "baseline_projected_strikeouts": 2.66,
      "adjusted_projected_strikeouts": 2.91,
      "skill_score": 9.0,
      "opportunity_score": 44.3,
      "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": 59.8,
      "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.539,
      "model_under_probability": 0.461,
      "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.0152,
      "edge_under": -0.0845,
      "recommended_side": "Over",
      "recommended_edge": 0.0152,
      "play_tier": "Lean",
      "no_play_reason": null,
      "adjustment_delta": 0.25,
      "adjustment_multiplier": 1.096,
      "aggregate_matchup_score": 22.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 25833.0,
      "lineup_expected_strikeouts": 3.74,
      "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": "Brady Singer",
      "pitcher_id": 663903,
      "team_abbr": "CIN",
      "opponent_abbr": "STL",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 4.5,
      "line_type": "half",
      "over_odds": 108,
      "under_odds": -132,
      "expected_strikeouts": 4.72,
      "baseline_projected_strikeouts": 4.28,
      "adjusted_projected_strikeouts": 4.72,
      "skill_score": 19.1,
      "opportunity_score": 33.3,
      "opponent_weakness_score": 43.9,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 73.2,
      "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.4921,
      "model_under_probability": 0.5079,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4808,
      "implied_under_probability_raw": 0.569,
      "implied_over_probability_novig": 0.458,
      "implied_under_probability_novig": 0.542,
      "edge_over": 0.0113,
      "edge_under": -0.0611,
      "recommended_side": "No Play",
      "recommended_edge": 0.0113,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.44,
      "adjustment_multiplier": 1.102,
      "aggregate_matchup_score": 53.2,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 33950.0,
      "lineup_expected_strikeouts": 5.49,
      "environment_summary": "hitter-friendly",
      "temperature_f": 72.0,
      "wind_speed_mph": 2.5,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Brady Singer",
      "pitcher_id": 663903,
      "team_abbr": "CIN",
      "opponent_abbr": "STL",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:49.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 108,
      "under_odds": -132,
      "expected_strikeouts": 4.72,
      "baseline_projected_strikeouts": 4.28,
      "adjusted_projected_strikeouts": 4.72,
      "skill_score": 19.1,
      "opportunity_score": 33.3,
      "opponent_weakness_score": 43.9,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 73.2,
      "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.4921,
      "model_under_probability": 0.5079,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4808,
      "implied_under_probability_raw": 0.569,
      "implied_over_probability_novig": 0.458,
      "implied_under_probability_novig": 0.542,
      "edge_over": 0.0113,
      "edge_under": -0.0611,
      "recommended_side": "No Play",
      "recommended_edge": 0.0113,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.44,
      "adjustment_multiplier": 1.102,
      "aggregate_matchup_score": 53.2,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 33950.0,
      "lineup_expected_strikeouts": 5.49,
      "environment_summary": "hitter-friendly",
      "temperature_f": 72.0,
      "wind_speed_mph": 2.5,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Brady Singer",
      "pitcher_id": 663903,
      "team_abbr": "CIN",
      "opponent_abbr": "STL",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:21.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 107,
      "under_odds": -136,
      "expected_strikeouts": 4.72,
      "baseline_projected_strikeouts": 4.28,
      "adjusted_projected_strikeouts": 4.72,
      "skill_score": 19.1,
      "opportunity_score": 33.3,
      "opponent_weakness_score": 43.9,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 73.2,
      "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.4921,
      "model_under_probability": 0.5079,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4831,
      "implied_under_probability_raw": 0.5763,
      "implied_over_probability_novig": 0.456,
      "implied_under_probability_novig": 0.544,
      "edge_over": 0.009,
      "edge_under": -0.0684,
      "recommended_side": "No Play",
      "recommended_edge": 0.009,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.44,
      "adjustment_multiplier": 1.102,
      "aggregate_matchup_score": 53.2,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 33950.0,
      "lineup_expected_strikeouts": 5.49,
      "environment_summary": "hitter-friendly",
      "temperature_f": 72.0,
      "wind_speed_mph": 2.5,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "MacKenzie Gore",
      "pitcher_id": 669022,
      "team_abbr": "TEX",
      "opponent_abbr": "LAA",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:19.000Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -149,
      "under_odds": 116,
      "expected_strikeouts": 6.01,
      "baseline_projected_strikeouts": 5.77,
      "adjusted_projected_strikeouts": 6.01,
      "skill_score": 21.8,
      "opportunity_score": 32.7,
      "opponent_weakness_score": 46.0,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 81.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.5307,
      "model_under_probability": 0.4693,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5984,
      "implied_under_probability_raw": 0.463,
      "implied_over_probability_novig": 0.5638,
      "implied_under_probability_novig": 0.4362,
      "edge_over": -0.0677,
      "edge_under": 0.0063,
      "recommended_side": "No Play",
      "recommended_edge": 0.0063,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.24,
      "adjustment_multiplier": 1.042,
      "aggregate_matchup_score": 65.9,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 33452.0,
      "lineup_expected_strikeouts": 6.25,
      "environment_summary": "neutral",
      "temperature_f": 60.6,
      "wind_speed_mph": 3.5,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Framber Valdez",
      "pitcher_id": 664285,
      "team_abbr": "DET",
      "opponent_abbr": "BAL",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:20.000Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": 112,
      "under_odds": -143,
      "expected_strikeouts": 5.15,
      "baseline_projected_strikeouts": 4.57,
      "adjusted_projected_strikeouts": 5.15,
      "skill_score": 24.7,
      "opportunity_score": 46.5,
      "opponent_weakness_score": 45.5,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 53.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.4059,
      "model_under_probability": 0.5941,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4717,
      "implied_under_probability_raw": 0.5885,
      "implied_over_probability_novig": 0.4449,
      "implied_under_probability_novig": 0.5551,
      "edge_over": -0.0658,
      "edge_under": 0.0056,
      "recommended_side": "No Play",
      "recommended_edge": 0.0056,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.58,
      "adjustment_multiplier": 1.126,
      "aggregate_matchup_score": 56.6,
      "lineup_confidence": "confirmed",
      "pitch_mix_sample_size": 33697.0,
      "lineup_expected_strikeouts": 6.32,
      "environment_summary": "neutral",
      "temperature_f": 58.8,
      "wind_speed_mph": 4.5,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Framber Valdez",
      "pitcher_id": 664285,
      "team_abbr": "DET",
      "opponent_abbr": "BAL",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:04.000Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": 105,
      "under_odds": -145,
      "expected_strikeouts": 5.15,
      "baseline_projected_strikeouts": 4.57,
      "adjusted_projected_strikeouts": 5.15,
      "skill_score": 24.7,
      "opportunity_score": 46.5,
      "opponent_weakness_score": 45.5,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 53.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.4059,
      "model_under_probability": 0.5941,
      "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.0819,
      "edge_under": 0.0023,
      "recommended_side": "No Play",
      "recommended_edge": 0.0023,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.58,
      "adjustment_multiplier": 1.126,
      "aggregate_matchup_score": 56.6,
      "lineup_confidence": "confirmed",
      "pitch_mix_sample_size": 33697.0,
      "lineup_expected_strikeouts": 6.32,
      "environment_summary": "neutral",
      "temperature_f": 58.8,
      "wind_speed_mph": 4.5,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Framber Valdez",
      "pitcher_id": 664285,
      "team_abbr": "DET",
      "opponent_abbr": "BAL",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 5.5,
      "line_type": "half",
      "over_odds": 110,
      "under_odds": -146,
      "expected_strikeouts": 5.15,
      "baseline_projected_strikeouts": 4.57,
      "adjusted_projected_strikeouts": 5.15,
      "skill_score": 24.7,
      "opportunity_score": 46.5,
      "opponent_weakness_score": 45.5,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 53.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.4059,
      "model_under_probability": 0.5941,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4762,
      "implied_under_probability_raw": 0.5935,
      "implied_over_probability_novig": 0.4452,
      "implied_under_probability_novig": 0.5548,
      "edge_over": -0.0703,
      "edge_under": 0.0006,
      "recommended_side": "No Play",
      "recommended_edge": 0.0006,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.58,
      "adjustment_multiplier": 1.126,
      "aggregate_matchup_score": 56.6,
      "lineup_confidence": "confirmed",
      "pitch_mix_sample_size": 33697.0,
      "lineup_expected_strikeouts": 6.32,
      "environment_summary": "neutral",
      "temperature_f": 58.8,
      "wind_speed_mph": 4.5,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Framber Valdez",
      "pitcher_id": 664285,
      "team_abbr": "DET",
      "opponent_abbr": "BAL",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:35.000Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": 110,
      "under_odds": -146,
      "expected_strikeouts": 5.15,
      "baseline_projected_strikeouts": 4.57,
      "adjusted_projected_strikeouts": 5.15,
      "skill_score": 24.7,
      "opportunity_score": 46.5,
      "opponent_weakness_score": 45.5,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 53.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.4059,
      "model_under_probability": 0.5941,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4762,
      "implied_under_probability_raw": 0.5935,
      "implied_over_probability_novig": 0.4452,
      "implied_under_probability_novig": 0.5548,
      "edge_over": -0.0703,
      "edge_under": 0.0006,
      "recommended_side": "No Play",
      "recommended_edge": 0.0006,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.58,
      "adjustment_multiplier": 1.126,
      "aggregate_matchup_score": 56.6,
      "lineup_confidence": "confirmed",
      "pitch_mix_sample_size": 33697.0,
      "lineup_expected_strikeouts": 6.32,
      "environment_summary": "neutral",
      "temperature_f": 58.8,
      "wind_speed_mph": 4.5,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "MacKenzie Gore",
      "pitcher_id": 669022,
      "team_abbr": "TEX",
      "opponent_abbr": "LAA",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:37.000Z",
      "line": 6.5,
      "line_type": "half",
      "over_odds": 115,
      "under_odds": -155,
      "expected_strikeouts": 6.01,
      "baseline_projected_strikeouts": 5.77,
      "adjusted_projected_strikeouts": 6.01,
      "skill_score": 21.8,
      "opportunity_score": 32.7,
      "opponent_weakness_score": 46.0,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 81.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.3937,
      "model_under_probability": 0.6063,
      "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.0714,
      "edge_under": -0.0015,
      "recommended_side": "No Play",
      "recommended_edge": -0.0015,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.24,
      "adjustment_multiplier": 1.042,
      "aggregate_matchup_score": 65.9,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 33452.0,
      "lineup_expected_strikeouts": 6.25,
      "environment_summary": "neutral",
      "temperature_f": 60.6,
      "wind_speed_mph": 3.5,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Sonny Gray",
      "pitcher_id": 543243,
      "team_abbr": "BOS",
      "opponent_abbr": "MIN",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 5.5,
      "line_type": "half",
      "over_odds": 104,
      "under_odds": -128,
      "expected_strikeouts": 5.38,
      "baseline_projected_strikeouts": 4.68,
      "adjusted_projected_strikeouts": 5.38,
      "skill_score": 18.6,
      "opportunity_score": 24.3,
      "opponent_weakness_score": 51.4,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 82.0,
      "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.4405,
      "model_under_probability": 0.5595,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4902,
      "implied_under_probability_raw": 0.5614,
      "implied_over_probability_novig": 0.4661,
      "implied_under_probability_novig": 0.5339,
      "edge_over": -0.0497,
      "edge_under": -0.0019,
      "recommended_side": "No Play",
      "recommended_edge": -0.0019,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.7,
      "adjustment_multiplier": 1.138,
      "aggregate_matchup_score": 69.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 31976.0,
      "lineup_expected_strikeouts": 6.45,
      "environment_summary": "neutral",
      "temperature_f": 50.9,
      "wind_speed_mph": 10.0,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Sonny Gray",
      "pitcher_id": 543243,
      "team_abbr": "BOS",
      "opponent_abbr": "MIN",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:38.000Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": 104,
      "under_odds": -128,
      "expected_strikeouts": 5.38,
      "baseline_projected_strikeouts": 4.68,
      "adjusted_projected_strikeouts": 5.38,
      "skill_score": 18.6,
      "opportunity_score": 24.3,
      "opponent_weakness_score": 51.4,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 82.0,
      "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.4405,
      "model_under_probability": 0.5595,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4902,
      "implied_under_probability_raw": 0.5614,
      "implied_over_probability_novig": 0.4661,
      "implied_under_probability_novig": 0.5339,
      "edge_over": -0.0497,
      "edge_under": -0.0019,
      "recommended_side": "No Play",
      "recommended_edge": -0.0019,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.7,
      "adjustment_multiplier": 1.138,
      "aggregate_matchup_score": 69.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 31976.0,
      "lineup_expected_strikeouts": 6.45,
      "environment_summary": "neutral",
      "temperature_f": 50.9,
      "wind_speed_mph": 10.0,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Jose Quintana",
      "pitcher_id": 500779,
      "team_abbr": "COL",
      "opponent_abbr": "AZ",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 2.5,
      "line_type": "half",
      "over_odds": -118,
      "under_odds": -112,
      "expected_strikeouts": 2.91,
      "baseline_projected_strikeouts": 2.66,
      "adjusted_projected_strikeouts": 2.91,
      "skill_score": 9.0,
      "opportunity_score": 44.3,
      "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": 59.8,
      "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.539,
      "model_under_probability": 0.461,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5413,
      "implied_under_probability_raw": 0.5283,
      "implied_over_probability_novig": 0.5061,
      "implied_under_probability_novig": 0.4939,
      "edge_over": -0.0023,
      "edge_under": -0.0673,
      "recommended_side": "No Play",
      "recommended_edge": -0.0023,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.25,
      "adjustment_multiplier": 1.096,
      "aggregate_matchup_score": 22.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 25833.0,
      "lineup_expected_strikeouts": 3.74,
      "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": "Jose Quintana",
      "pitcher_id": 500779,
      "team_abbr": "COL",
      "opponent_abbr": "AZ",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:32.000Z",
      "line": 2.5,
      "line_type": "half",
      "over_odds": -118,
      "under_odds": -112,
      "expected_strikeouts": 2.91,
      "baseline_projected_strikeouts": 2.66,
      "adjusted_projected_strikeouts": 2.91,
      "skill_score": 9.0,
      "opportunity_score": 44.3,
      "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": 59.8,
      "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.539,
      "model_under_probability": 0.461,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5413,
      "implied_under_probability_raw": 0.5283,
      "implied_over_probability_novig": 0.5061,
      "implied_under_probability_novig": 0.4939,
      "edge_over": -0.0023,
      "edge_under": -0.0673,
      "recommended_side": "No Play",
      "recommended_edge": -0.0023,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.25,
      "adjustment_multiplier": 1.096,
      "aggregate_matchup_score": 22.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 25833.0,
      "lineup_expected_strikeouts": 3.74,
      "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": "Sonny Gray",
      "pitcher_id": 543243,
      "team_abbr": "BOS",
      "opponent_abbr": "MIN",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:38.000Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": 101,
      "under_odds": -129,
      "expected_strikeouts": 5.38,
      "baseline_projected_strikeouts": 4.68,
      "adjusted_projected_strikeouts": 5.38,
      "skill_score": 18.6,
      "opportunity_score": 24.3,
      "opponent_weakness_score": 51.4,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 82.0,
      "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.4405,
      "model_under_probability": 0.5595,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4975,
      "implied_under_probability_raw": 0.5633,
      "implied_over_probability_novig": 0.469,
      "implied_under_probability_novig": 0.531,
      "edge_over": -0.057,
      "edge_under": -0.0038,
      "recommended_side": "No Play",
      "recommended_edge": -0.0038,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.7,
      "adjustment_multiplier": 1.138,
      "aggregate_matchup_score": 69.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 31976.0,
      "lineup_expected_strikeouts": 6.45,
      "environment_summary": "neutral",
      "temperature_f": 50.9,
      "wind_speed_mph": 10.0,
      "wind_direction": "in",
      "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": "SEA",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:23.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -154,
      "under_odds": 122,
      "expected_strikeouts": 5.2,
      "baseline_projected_strikeouts": 5.11,
      "adjusted_projected_strikeouts": 5.2,
      "skill_score": 17.1,
      "opportunity_score": 69.4,
      "opponent_weakness_score": 35.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": 21.3,
      "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.5661,
      "model_under_probability": 0.4339,
      "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.0402,
      "edge_under": -0.0166,
      "recommended_side": "No Play",
      "recommended_edge": -0.0166,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.09,
      "adjustment_multiplier": 1.017,
      "aggregate_matchup_score": 45.3,
      "lineup_confidence": "confirmed",
      "pitch_mix_sample_size": 31476.0,
      "lineup_expected_strikeouts": 5.42,
      "environment_summary": "neutral",
      "temperature_f": 79.5,
      "wind_speed_mph": 8.9,
      "wind_direction": "cross",
      "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": "SEA",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 4.5,
      "line_type": "half",
      "over_odds": -150,
      "under_odds": 122,
      "expected_strikeouts": 5.2,
      "baseline_projected_strikeouts": 5.11,
      "adjusted_projected_strikeouts": 5.2,
      "skill_score": 17.1,
      "opportunity_score": 69.4,
      "opponent_weakness_score": 35.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": 21.3,
      "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.5661,
      "model_under_probability": 0.4339,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6,
      "implied_under_probability_raw": 0.4505,
      "implied_over_probability_novig": 0.5712,
      "implied_under_probability_novig": 0.4288,
      "edge_over": -0.0339,
      "edge_under": -0.0166,
      "recommended_side": "No Play",
      "recommended_edge": -0.0166,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.09,
      "adjustment_multiplier": 1.017,
      "aggregate_matchup_score": 45.3,
      "lineup_confidence": "confirmed",
      "pitch_mix_sample_size": 31476.0,
      "lineup_expected_strikeouts": 5.42,
      "environment_summary": "neutral",
      "temperature_f": 79.5,
      "wind_speed_mph": 8.9,
      "wind_direction": "cross",
      "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": "SEA",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:51.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -150,
      "under_odds": 122,
      "expected_strikeouts": 5.2,
      "baseline_projected_strikeouts": 5.11,
      "adjusted_projected_strikeouts": 5.2,
      "skill_score": 17.1,
      "opportunity_score": 69.4,
      "opponent_weakness_score": 35.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": 21.3,
      "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.5661,
      "model_under_probability": 0.4339,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6,
      "implied_under_probability_raw": 0.4505,
      "implied_over_probability_novig": 0.5712,
      "implied_under_probability_novig": 0.4288,
      "edge_over": -0.0339,
      "edge_under": -0.0166,
      "recommended_side": "No Play",
      "recommended_edge": -0.0166,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.09,
      "adjustment_multiplier": 1.017,
      "aggregate_matchup_score": 45.3,
      "lineup_confidence": "confirmed",
      "pitch_mix_sample_size": 31476.0,
      "lineup_expected_strikeouts": 5.42,
      "environment_summary": "neutral",
      "temperature_f": 79.5,
      "wind_speed_mph": 8.9,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "MacKenzie Gore",
      "pitcher_id": 669022,
      "team_abbr": "TEX",
      "opponent_abbr": "LAA",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 6.5,
      "line_type": "half",
      "over_odds": 124,
      "under_odds": -166,
      "expected_strikeouts": 6.01,
      "baseline_projected_strikeouts": 5.77,
      "adjusted_projected_strikeouts": 6.01,
      "skill_score": 21.8,
      "opportunity_score": 32.7,
      "opponent_weakness_score": 46.0,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 81.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.3937,
      "model_under_probability": 0.6063,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4464,
      "implied_under_probability_raw": 0.6241,
      "implied_over_probability_novig": 0.417,
      "implied_under_probability_novig": 0.583,
      "edge_over": -0.0527,
      "edge_under": -0.0178,
      "recommended_side": "No Play",
      "recommended_edge": -0.0178,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.24,
      "adjustment_multiplier": 1.042,
      "aggregate_matchup_score": 65.9,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 33452.0,
      "lineup_expected_strikeouts": 6.25,
      "environment_summary": "neutral",
      "temperature_f": 60.6,
      "wind_speed_mph": 3.5,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "MacKenzie Gore",
      "pitcher_id": 669022,
      "team_abbr": "TEX",
      "opponent_abbr": "LAA",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:35.000Z",
      "line": 6.5,
      "line_type": "half",
      "over_odds": 124,
      "under_odds": -166,
      "expected_strikeouts": 6.01,
      "baseline_projected_strikeouts": 5.77,
      "adjusted_projected_strikeouts": 6.01,
      "skill_score": 21.8,
      "opportunity_score": 32.7,
      "opponent_weakness_score": 46.0,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 81.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.3937,
      "model_under_probability": 0.6063,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4464,
      "implied_under_probability_raw": 0.6241,
      "implied_over_probability_novig": 0.417,
      "implied_under_probability_novig": 0.583,
      "edge_over": -0.0527,
      "edge_under": -0.0178,
      "recommended_side": "No Play",
      "recommended_edge": -0.0178,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.24,
      "adjustment_multiplier": 1.042,
      "aggregate_matchup_score": 65.9,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 33452.0,
      "lineup_expected_strikeouts": 6.25,
      "environment_summary": "neutral",
      "temperature_f": 60.6,
      "wind_speed_mph": 3.5,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Brady Singer",
      "pitcher_id": 663903,
      "team_abbr": "CIN",
      "opponent_abbr": "STL",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:37.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -105,
      "under_odds": -125,
      "expected_strikeouts": 4.72,
      "baseline_projected_strikeouts": 4.28,
      "adjusted_projected_strikeouts": 4.72,
      "skill_score": 19.1,
      "opportunity_score": 33.3,
      "opponent_weakness_score": 43.9,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 73.2,
      "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.4921,
      "model_under_probability": 0.5079,
      "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.0201,
      "edge_under": -0.0477,
      "recommended_side": "No Play",
      "recommended_edge": -0.0201,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.44,
      "adjustment_multiplier": 1.102,
      "aggregate_matchup_score": 53.2,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 33950.0,
      "lineup_expected_strikeouts": 5.49,
      "environment_summary": "hitter-friendly",
      "temperature_f": 72.0,
      "wind_speed_mph": 2.5,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Mitch Keller",
      "pitcher_id": 656605,
      "team_abbr": "PIT",
      "opponent_abbr": "TOR",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:27.000Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -167,
      "under_odds": 131,
      "expected_strikeouts": 4.25,
      "baseline_projected_strikeouts": 3.9,
      "adjusted_projected_strikeouts": 4.25,
      "skill_score": 22.9,
      "opportunity_score": 52.6,
      "opponent_weakness_score": 42.0,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 36.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.5874,
      "model_under_probability": 0.4126,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6255,
      "implied_under_probability_raw": 0.4329,
      "implied_over_probability_novig": 0.591,
      "implied_under_probability_novig": 0.409,
      "edge_over": -0.0381,
      "edge_under": -0.0203,
      "recommended_side": "No Play",
      "recommended_edge": -0.0203,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.35,
      "adjustment_multiplier": 1.089,
      "aggregate_matchup_score": 49.0,
      "lineup_confidence": "confirmed",
      "pitch_mix_sample_size": 35103.0,
      "lineup_expected_strikeouts": 4.9,
      "environment_summary": "neutral",
      "temperature_f": 54.7,
      "wind_speed_mph": 2.5,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Mitch Keller",
      "pitcher_id": 656605,
      "team_abbr": "PIT",
      "opponent_abbr": "TOR",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 4.5,
      "line_type": "half",
      "over_odds": 130,
      "under_odds": -174,
      "expected_strikeouts": 4.25,
      "baseline_projected_strikeouts": 3.9,
      "adjusted_projected_strikeouts": 4.25,
      "skill_score": 22.9,
      "opportunity_score": 52.6,
      "opponent_weakness_score": 42.0,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 36.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.4137,
      "model_under_probability": 0.5863,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4348,
      "implied_under_probability_raw": 0.635,
      "implied_over_probability_novig": 0.4064,
      "implied_under_probability_novig": 0.5936,
      "edge_over": -0.0211,
      "edge_under": -0.0487,
      "recommended_side": "No Play",
      "recommended_edge": -0.0211,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.35,
      "adjustment_multiplier": 1.089,
      "aggregate_matchup_score": 49.0,
      "lineup_confidence": "confirmed",
      "pitch_mix_sample_size": 35103.0,
      "lineup_expected_strikeouts": 4.9,
      "environment_summary": "neutral",
      "temperature_f": 54.7,
      "wind_speed_mph": 2.5,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Mitch Keller",
      "pitcher_id": 656605,
      "team_abbr": "PIT",
      "opponent_abbr": "TOR",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:20.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 130,
      "under_odds": -174,
      "expected_strikeouts": 4.25,
      "baseline_projected_strikeouts": 3.9,
      "adjusted_projected_strikeouts": 4.25,
      "skill_score": 22.9,
      "opportunity_score": 52.6,
      "opponent_weakness_score": 42.0,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 36.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.4137,
      "model_under_probability": 0.5863,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4348,
      "implied_under_probability_raw": 0.635,
      "implied_over_probability_novig": 0.4064,
      "implied_under_probability_novig": 0.5936,
      "edge_over": -0.0211,
      "edge_under": -0.0487,
      "recommended_side": "No Play",
      "recommended_edge": -0.0211,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.35,
      "adjustment_multiplier": 1.089,
      "aggregate_matchup_score": 49.0,
      "lineup_confidence": "confirmed",
      "pitch_mix_sample_size": 35103.0,
      "lineup_expected_strikeouts": 4.9,
      "environment_summary": "neutral",
      "temperature_f": 54.7,
      "wind_speed_mph": 2.5,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Sonny Gray",
      "pitcher_id": 543243,
      "team_abbr": "BOS",
      "opponent_abbr": "MIN",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:08.000Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": 105,
      "under_odds": -140,
      "expected_strikeouts": 5.38,
      "baseline_projected_strikeouts": 4.68,
      "adjusted_projected_strikeouts": 5.38,
      "skill_score": 18.6,
      "opportunity_score": 24.3,
      "opponent_weakness_score": 51.4,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 82.0,
      "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.4405,
      "model_under_probability": 0.5595,
      "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.0473,
      "edge_under": -0.0238,
      "recommended_side": "No Play",
      "recommended_edge": -0.0238,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.7,
      "adjustment_multiplier": 1.138,
      "aggregate_matchup_score": 69.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 31976.0,
      "lineup_expected_strikeouts": 6.45,
      "environment_summary": "neutral",
      "temperature_f": 50.9,
      "wind_speed_mph": 10.0,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Bailey Ober",
      "pitcher_id": 641927,
      "team_abbr": "MIN",
      "opponent_abbr": "BOS",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:08.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 110,
      "under_odds": -150,
      "expected_strikeouts": 4.46,
      "baseline_projected_strikeouts": 3.97,
      "adjusted_projected_strikeouts": 4.46,
      "skill_score": 13.0,
      "opportunity_score": 58.1,
      "opponent_weakness_score": 43.1,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 42.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.4493,
      "model_under_probability": 0.5507,
      "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.0269,
      "edge_under": -0.0493,
      "recommended_side": "No Play",
      "recommended_edge": -0.0269,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.49,
      "adjustment_multiplier": 1.112,
      "aggregate_matchup_score": 51.5,
      "lineup_confidence": "confirmed",
      "pitch_mix_sample_size": 29545.0,
      "lineup_expected_strikeouts": 5.23,
      "environment_summary": "neutral",
      "temperature_f": 50.9,
      "wind_speed_mph": 10.0,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Bailey Ober",
      "pitcher_id": 641927,
      "team_abbr": "MIN",
      "opponent_abbr": "BOS",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 4.5,
      "line_type": "half",
      "over_odds": 110,
      "under_odds": -146,
      "expected_strikeouts": 4.46,
      "baseline_projected_strikeouts": 3.97,
      "adjusted_projected_strikeouts": 4.46,
      "skill_score": 13.0,
      "opportunity_score": 58.1,
      "opponent_weakness_score": 43.1,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 42.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.4493,
      "model_under_probability": 0.5507,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4762,
      "implied_under_probability_raw": 0.5935,
      "implied_over_probability_novig": 0.4452,
      "implied_under_probability_novig": 0.5548,
      "edge_over": -0.0269,
      "edge_under": -0.0428,
      "recommended_side": "No Play",
      "recommended_edge": -0.0269,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.49,
      "adjustment_multiplier": 1.112,
      "aggregate_matchup_score": 51.5,
      "lineup_confidence": "confirmed",
      "pitch_mix_sample_size": 29545.0,
      "lineup_expected_strikeouts": 5.23,
      "environment_summary": "neutral",
      "temperature_f": 50.9,
      "wind_speed_mph": 10.0,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Bailey Ober",
      "pitcher_id": 641927,
      "team_abbr": "MIN",
      "opponent_abbr": "BOS",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:38.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 110,
      "under_odds": -146,
      "expected_strikeouts": 4.46,
      "baseline_projected_strikeouts": 3.97,
      "adjusted_projected_strikeouts": 4.46,
      "skill_score": 13.0,
      "opportunity_score": 58.1,
      "opponent_weakness_score": 43.1,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 42.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.4493,
      "model_under_probability": 0.5507,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4762,
      "implied_under_probability_raw": 0.5935,
      "implied_over_probability_novig": 0.4452,
      "implied_under_probability_novig": 0.5548,
      "edge_over": -0.0269,
      "edge_under": -0.0428,
      "recommended_side": "No Play",
      "recommended_edge": -0.0269,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.49,
      "adjustment_multiplier": 1.112,
      "aggregate_matchup_score": 51.5,
      "lineup_confidence": "confirmed",
      "pitch_mix_sample_size": 29545.0,
      "lineup_expected_strikeouts": 5.23,
      "environment_summary": "neutral",
      "temperature_f": 50.9,
      "wind_speed_mph": 10.0,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Bailey Ober",
      "pitcher_id": 641927,
      "team_abbr": "MIN",
      "opponent_abbr": "BOS",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:38.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 108,
      "under_odds": -138,
      "expected_strikeouts": 4.46,
      "baseline_projected_strikeouts": 3.97,
      "adjusted_projected_strikeouts": 4.46,
      "skill_score": 13.0,
      "opportunity_score": 58.1,
      "opponent_weakness_score": 43.1,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 42.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.4493,
      "model_under_probability": 0.5507,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4808,
      "implied_under_probability_raw": 0.5798,
      "implied_over_probability_novig": 0.4533,
      "implied_under_probability_novig": 0.5467,
      "edge_over": -0.0315,
      "edge_under": -0.0291,
      "recommended_side": "No Play",
      "recommended_edge": -0.0291,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.49,
      "adjustment_multiplier": 1.112,
      "aggregate_matchup_score": 51.5,
      "lineup_confidence": "confirmed",
      "pitch_mix_sample_size": 29545.0,
      "lineup_expected_strikeouts": 5.23,
      "environment_summary": "neutral",
      "temperature_f": 50.9,
      "wind_speed_mph": 10.0,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Mitch Keller",
      "pitcher_id": 656605,
      "team_abbr": "PIT",
      "opponent_abbr": "TOR",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:48.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 125,
      "under_odds": -165,
      "expected_strikeouts": 4.25,
      "baseline_projected_strikeouts": 3.9,
      "adjusted_projected_strikeouts": 4.25,
      "skill_score": 22.9,
      "opportunity_score": 52.6,
      "opponent_weakness_score": 42.0,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 36.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.4137,
      "model_under_probability": 0.5863,
      "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.0307,
      "edge_under": -0.0363,
      "recommended_side": "No Play",
      "recommended_edge": -0.0307,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.35,
      "adjustment_multiplier": 1.089,
      "aggregate_matchup_score": 49.0,
      "lineup_confidence": "confirmed",
      "pitch_mix_sample_size": 35103.0,
      "lineup_expected_strikeouts": 4.9,
      "environment_summary": "neutral",
      "temperature_f": 54.7,
      "wind_speed_mph": 2.5,
      "wind_direction": "in",
      "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": "SEA",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-24T14:51:15.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -150,
      "under_odds": 110,
      "expected_strikeouts": 5.2,
      "baseline_projected_strikeouts": 5.11,
      "adjusted_projected_strikeouts": 5.2,
      "skill_score": 17.1,
      "opportunity_score": 69.4,
      "opponent_weakness_score": 35.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": 21.3,
      "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.5661,
      "model_under_probability": 0.4339,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6,
      "implied_under_probability_raw": 0.4762,
      "implied_over_probability_novig": 0.5575,
      "implied_under_probability_novig": 0.4425,
      "edge_over": -0.0339,
      "edge_under": -0.0423,
      "recommended_side": "No Play",
      "recommended_edge": -0.0339,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.09,
      "adjustment_multiplier": 1.017,
      "aggregate_matchup_score": 45.3,
      "lineup_confidence": "confirmed",
      "pitch_mix_sample_size": 31476.0,
      "lineup_expected_strikeouts": 5.42,
      "environment_summary": "neutral",
      "temperature_f": 79.5,
      "wind_speed_mph": 8.9,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    }
  ],
  "unmatched_inputs": [
    {
      "pitcher_name": "Andrew Painter",
      "team_abbr": "PHI",
      "opponent_abbr": "CLE",
      "sportsbook": "BetMGM",
      "line": 3.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Andrew Painter",
      "team_abbr": "PHI",
      "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": "Andrew Painter",
      "team_abbr": null,
      "opponent_abbr": null,
      "sportsbook": "FanDuel",
      "line": 3.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Andrew Painter",
      "team_abbr": "PHI",
      "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": "Brandon Sproat",
      "team_abbr": "MIL",
      "opponent_abbr": "LAD",
      "sportsbook": "BetMGM",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Brandon Sproat",
      "team_abbr": "MIL",
      "opponent_abbr": "LAD",
      "sportsbook": "DraftKings",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Brandon Sproat",
      "team_abbr": null,
      "opponent_abbr": null,
      "sportsbook": "FanDuel",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Brandon Sproat",
      "team_abbr": "MIL",
      "opponent_abbr": "LAD",
      "sportsbook": "FanDuel",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Brycen Mautz",
      "team_abbr": "STL",
      "opponent_abbr": "CIN",
      "sportsbook": "DraftKings",
      "line": 3.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Brycen Mautz",
      "team_abbr": "STL",
      "opponent_abbr": "CIN",
      "sportsbook": "FanDuel",
      "line": 3.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Christian Scott",
      "team_abbr": "NYM",
      "opponent_abbr": "MIA",
      "sportsbook": "BetMGM",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Christian Scott",
      "team_abbr": "NYM",
      "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": "Christian Scott",
      "team_abbr": null,
      "opponent_abbr": null,
      "sportsbook": "FanDuel",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Christian Scott",
      "team_abbr": "NYM",
      "opponent_abbr": "MIA",
      "sportsbook": "FanDuel",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Foster Griffin",
      "team_abbr": "WSH",
      "opponent_abbr": "ATL",
      "sportsbook": "BetMGM",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Foster Griffin",
      "team_abbr": "WSH",
      "opponent_abbr": "ATL",
      "sportsbook": "DraftKings",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Foster Griffin",
      "team_abbr": null,
      "opponent_abbr": null,
      "sportsbook": "FanDuel",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Foster Griffin",
      "team_abbr": "WSH",
      "opponent_abbr": "ATL",
      "sportsbook": "FanDuel",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Martin Perez",
      "team_abbr": null,
      "opponent_abbr": null,
      "sportsbook": "FanDuel",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Noah Schultz",
      "team_abbr": null,
      "opponent_abbr": null,
      "sportsbook": "FanDuel",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Parker Messick",
      "team_abbr": "CLE",
      "opponent_abbr": "PHI",
      "sportsbook": "BetMGM",
      "line": 5.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Parker Messick",
      "team_abbr": "CLE",
      "opponent_abbr": "PHI",
      "sportsbook": "DraftKings",
      "line": 5.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Parker Messick",
      "team_abbr": null,
      "opponent_abbr": null,
      "sportsbook": "FanDuel",
      "line": 5.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Parker Messick",
      "team_abbr": "CLE",
      "opponent_abbr": "PHI",
      "sportsbook": "FanDuel",
      "line": 5.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Peter Lambert",
      "team_abbr": null,
      "opponent_abbr": null,
      "sportsbook": "FanDuel",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Reid Detmers",
      "team_abbr": "LAA",
      "opponent_abbr": "TEX",
      "sportsbook": "BetMGM",
      "line": 6.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Reid Detmers",
      "team_abbr": "LAA",
      "opponent_abbr": "TEX",
      "sportsbook": "DraftKings",
      "line": 6.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Reid Detmers",
      "team_abbr": null,
      "opponent_abbr": null,
      "sportsbook": "FanDuel",
      "line": 6.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Reid Detmers",
      "team_abbr": "LAA",
      "opponent_abbr": "TEX",
      "sportsbook": "FanDuel",
      "line": 6.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Tyler Phillips",
      "team_abbr": "MIA",
      "opponent_abbr": "NYM",
      "sportsbook": "FanDuel",
      "line": 2.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    }
  ]
}