{
  "date": "2026-05-04",
  "generated_at": "2026-05-06T10:47:20.861383",
  "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-04",
  "sportsbook_input_summary": {
    "input_type": "canonical_processed_sportsbook_input",
    "source_count": 1,
    "row_count": 73,
    "matched_count": 55,
    "unmatched_count": 18
  },
  "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": 55,
    "grouped_pitcher_count": 15,
    "sportsbook_count": 3
  },
  "edge_count": 55,
  "edges": [
    {
      "pitcher_name": "Davis Martin",
      "pitcher_id": 663436,
      "team_abbr": "CWS",
      "opponent_abbr": "LAA",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:05:21.000Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -105,
      "under_odds": -125,
      "expected_strikeouts": 4.32,
      "baseline_projected_strikeouts": 3.97,
      "adjusted_projected_strikeouts": 4.32,
      "skill_score": 24.9,
      "opportunity_score": 65.1,
      "opponent_weakness_score": 37.5,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 25.2,
      "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.2785,
      "model_under_probability": 0.7215,
      "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.2337,
      "edge_under": 0.1659,
      "recommended_side": "Under",
      "recommended_edge": 0.1659,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.35,
      "adjustment_multiplier": 1.087,
      "aggregate_matchup_score": 39.1,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 14498.0,
      "lineup_expected_strikeouts": 5.07,
      "environment_summary": "neutral",
      "temperature_f": 59.5,
      "wind_speed_mph": 4.0,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Cam Schlittler",
      "pitcher_id": 693645,
      "team_abbr": "NYY",
      "opponent_abbr": "BAL",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:04:54.000Z",
      "line": 7.5,
      "line_type": "half",
      "over_odds": 100,
      "under_odds": -135,
      "expected_strikeouts": 6.07,
      "baseline_projected_strikeouts": 5.91,
      "adjusted_projected_strikeouts": 6.07,
      "skill_score": 53.9,
      "opportunity_score": 55.5,
      "opponent_weakness_score": 46.1,
      "support_tier": "TRIPLE_SUPPORT",
      "support_label": "Triple Support",
      "support_note": "Skill, workload, and opponent pressure all support a stronger strikeout environment.",
      "suppression_score": 42.1,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "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.2836,
      "model_under_probability": 0.7164,
      "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.2164,
      "edge_under": 0.1419,
      "recommended_side": "Under",
      "recommended_edge": 0.1419,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.16,
      "adjustment_multiplier": 1.027,
      "aggregate_matchup_score": 70.6,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 6265.0,
      "lineup_expected_strikeouts": 6.09,
      "environment_summary": "hitter-friendly",
      "temperature_f": 60.3,
      "wind_speed_mph": 7.0,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Cam Schlittler",
      "pitcher_id": 693645,
      "team_abbr": "NYY",
      "opponent_abbr": "BAL",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:05:19.000Z",
      "line": 6.5,
      "line_type": "half",
      "over_odds": -152,
      "under_odds": 114,
      "expected_strikeouts": 6.07,
      "baseline_projected_strikeouts": 5.91,
      "adjusted_projected_strikeouts": 6.07,
      "skill_score": 53.9,
      "opportunity_score": 55.5,
      "opponent_weakness_score": 46.1,
      "support_tier": "TRIPLE_SUPPORT",
      "support_label": "Triple Support",
      "support_note": "Skill, workload, and opponent pressure all support a stronger strikeout environment.",
      "suppression_score": 42.1,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "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.4019,
      "model_under_probability": 0.5981,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6032,
      "implied_under_probability_raw": 0.4673,
      "implied_over_probability_novig": 0.5635,
      "implied_under_probability_novig": 0.4365,
      "edge_over": -0.2013,
      "edge_under": 0.1308,
      "recommended_side": "Under",
      "recommended_edge": 0.1308,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.16,
      "adjustment_multiplier": 1.027,
      "aggregate_matchup_score": 70.6,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 6265.0,
      "lineup_expected_strikeouts": 6.09,
      "environment_summary": "hitter-friendly",
      "temperature_f": 60.3,
      "wind_speed_mph": 7.0,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Davis Martin",
      "pitcher_id": 663436,
      "team_abbr": "CWS",
      "opponent_abbr": "LAA",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:04:44.000Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": 115,
      "under_odds": -146,
      "expected_strikeouts": 4.32,
      "baseline_projected_strikeouts": 3.97,
      "adjusted_projected_strikeouts": 4.32,
      "skill_score": 24.9,
      "opportunity_score": 65.1,
      "opponent_weakness_score": 37.5,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 25.2,
      "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.2785,
      "model_under_probability": 0.7215,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4651,
      "implied_under_probability_raw": 0.5935,
      "implied_over_probability_novig": 0.4394,
      "implied_under_probability_novig": 0.5606,
      "edge_over": -0.1866,
      "edge_under": 0.128,
      "recommended_side": "Under",
      "recommended_edge": 0.128,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.35,
      "adjustment_multiplier": 1.087,
      "aggregate_matchup_score": 39.1,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 14498.0,
      "lineup_expected_strikeouts": 5.07,
      "environment_summary": "neutral",
      "temperature_f": 59.5,
      "wind_speed_mph": 4.0,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Davis Martin",
      "pitcher_id": 663436,
      "team_abbr": "CWS",
      "opponent_abbr": "LAA",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:05:45.000Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": 110,
      "under_odds": -146,
      "expected_strikeouts": 4.32,
      "baseline_projected_strikeouts": 3.97,
      "adjusted_projected_strikeouts": 4.32,
      "skill_score": 24.9,
      "opportunity_score": 65.1,
      "opponent_weakness_score": 37.5,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 25.2,
      "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.2785,
      "model_under_probability": 0.7215,
      "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.1977,
      "edge_under": 0.128,
      "recommended_side": "Under",
      "recommended_edge": 0.128,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.35,
      "adjustment_multiplier": 1.087,
      "aggregate_matchup_score": 39.1,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 14498.0,
      "lineup_expected_strikeouts": 5.07,
      "environment_summary": "neutral",
      "temperature_f": 59.5,
      "wind_speed_mph": 4.0,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Jos\u00e9 Soriano",
      "pitcher_id": 667755,
      "team_abbr": "LAA",
      "opponent_abbr": "CWS",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:04:44.000Z",
      "line": 6.5,
      "line_type": "half",
      "over_odds": -119,
      "under_odds": -107,
      "expected_strikeouts": 5.74,
      "baseline_projected_strikeouts": 5.92,
      "adjusted_projected_strikeouts": 5.74,
      "skill_score": 63.8,
      "opportunity_score": 64.7,
      "opponent_weakness_score": 33.6,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 24.6,
      "suppression_tier": "CLEAR_RUNWAY",
      "suppression_label": "Clear Runway",
      "suppression_note": "Workload and leash context support the strikeout projection cleanly.",
      "interaction_tier": "STRONG_ALIGNMENT",
      "interaction_label": "Strong Alignment",
      "interaction_note": "The strikeout structure is favorable, but not as clean as the premium runway pocket.",
      "trust_modifier": "WATCHLIST_RUNWAY",
      "trust_label": "Watchlist Runway",
      "trust_note": "The strikeout structure is supportive and worth watching, but it is not as clean as the premium bucket.",
      "model_over_probability": 0.3566,
      "model_under_probability": 0.6434,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5434,
      "implied_under_probability_raw": 0.5169,
      "implied_over_probability_novig": 0.5125,
      "implied_under_probability_novig": 0.4875,
      "edge_over": -0.1868,
      "edge_under": 0.1265,
      "recommended_side": "Under",
      "recommended_edge": 0.1265,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.18,
      "adjustment_multiplier": 0.969,
      "aggregate_matchup_score": 52.5,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 20556.0,
      "lineup_expected_strikeouts": 5.36,
      "environment_summary": "neutral",
      "temperature_f": 59.5,
      "wind_speed_mph": 4.0,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Cam Schlittler",
      "pitcher_id": 693645,
      "team_abbr": "NYY",
      "opponent_abbr": "BAL",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 6.5,
      "line_type": "half",
      "over_odds": -148,
      "under_odds": 112,
      "expected_strikeouts": 6.07,
      "baseline_projected_strikeouts": 5.91,
      "adjusted_projected_strikeouts": 6.07,
      "skill_score": 53.9,
      "opportunity_score": 55.5,
      "opponent_weakness_score": 46.1,
      "support_tier": "TRIPLE_SUPPORT",
      "support_label": "Triple Support",
      "support_note": "Skill, workload, and opponent pressure all support a stronger strikeout environment.",
      "suppression_score": 42.1,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "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.4019,
      "model_under_probability": 0.5981,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5968,
      "implied_under_probability_raw": 0.4717,
      "implied_over_probability_novig": 0.5585,
      "implied_under_probability_novig": 0.4415,
      "edge_over": -0.1949,
      "edge_under": 0.1264,
      "recommended_side": "Under",
      "recommended_edge": 0.1264,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.16,
      "adjustment_multiplier": 1.027,
      "aggregate_matchup_score": 70.6,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 6265.0,
      "lineup_expected_strikeouts": 6.09,
      "environment_summary": "hitter-friendly",
      "temperature_f": 60.3,
      "wind_speed_mph": 7.0,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Randy V\u00e1squez",
      "pitcher_id": 681190,
      "team_abbr": "SD",
      "opponent_abbr": "SF",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:05:17.000Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -143,
      "under_odds": 112,
      "expected_strikeouts": 3.28,
      "baseline_projected_strikeouts": 3.3,
      "adjusted_projected_strikeouts": 3.28,
      "skill_score": 30.6,
      "opportunity_score": 54.6,
      "opponent_weakness_score": 30.6,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 40.6,
      "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.4092,
      "model_under_probability": 0.5908,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5885,
      "implied_under_probability_raw": 0.4717,
      "implied_over_probability_novig": 0.5551,
      "implied_under_probability_novig": 0.4449,
      "edge_over": -0.1793,
      "edge_under": 0.1191,
      "recommended_side": "Under",
      "recommended_edge": 0.1191,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.02,
      "adjustment_multiplier": 0.995,
      "aggregate_matchup_score": 23.4,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 18198.0,
      "lineup_expected_strikeouts": 3.46,
      "environment_summary": "pitcher-friendly",
      "temperature_f": 53.6,
      "wind_speed_mph": 4.7,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Cam Schlittler",
      "pitcher_id": 693645,
      "team_abbr": "NYY",
      "opponent_abbr": "BAL",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:04:43.000Z",
      "line": 7.5,
      "line_type": "half",
      "over_odds": 119,
      "under_odds": -153,
      "expected_strikeouts": 6.07,
      "baseline_projected_strikeouts": 5.91,
      "adjusted_projected_strikeouts": 6.07,
      "skill_score": 53.9,
      "opportunity_score": 55.5,
      "opponent_weakness_score": 46.1,
      "support_tier": "TRIPLE_SUPPORT",
      "support_label": "Triple Support",
      "support_note": "Skill, workload, and opponent pressure all support a stronger strikeout environment.",
      "suppression_score": 42.1,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "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.2836,
      "model_under_probability": 0.7164,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4566,
      "implied_under_probability_raw": 0.6047,
      "implied_over_probability_novig": 0.4302,
      "implied_under_probability_novig": 0.5698,
      "edge_over": -0.173,
      "edge_under": 0.1117,
      "recommended_side": "Under",
      "recommended_edge": 0.1117,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.16,
      "adjustment_multiplier": 1.027,
      "aggregate_matchup_score": 70.6,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 6265.0,
      "lineup_expected_strikeouts": 6.09,
      "environment_summary": "hitter-friendly",
      "temperature_f": 60.3,
      "wind_speed_mph": 7.0,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Jos\u00e9 Soriano",
      "pitcher_id": 667755,
      "team_abbr": "LAA",
      "opponent_abbr": "CWS",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:05:21.000Z",
      "line": 6.5,
      "line_type": "half",
      "over_odds": -110,
      "under_odds": -120,
      "expected_strikeouts": 5.74,
      "baseline_projected_strikeouts": 5.92,
      "adjusted_projected_strikeouts": 5.74,
      "skill_score": 63.8,
      "opportunity_score": 64.7,
      "opponent_weakness_score": 33.6,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 24.6,
      "suppression_tier": "CLEAR_RUNWAY",
      "suppression_label": "Clear Runway",
      "suppression_note": "Workload and leash context support the strikeout projection cleanly.",
      "interaction_tier": "STRONG_ALIGNMENT",
      "interaction_label": "Strong Alignment",
      "interaction_note": "The strikeout structure is favorable, but not as clean as the premium runway pocket.",
      "trust_modifier": "WATCHLIST_RUNWAY",
      "trust_label": "Watchlist Runway",
      "trust_note": "The strikeout structure is supportive and worth watching, but it is not as clean as the premium bucket.",
      "model_over_probability": 0.3566,
      "model_under_probability": 0.6434,
      "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.1672,
      "edge_under": 0.0979,
      "recommended_side": "Under",
      "recommended_edge": 0.0979,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.18,
      "adjustment_multiplier": 0.969,
      "aggregate_matchup_score": 52.5,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 20556.0,
      "lineup_expected_strikeouts": 5.36,
      "environment_summary": "neutral",
      "temperature_f": 59.5,
      "wind_speed_mph": 4.0,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Jos\u00e9 Soriano",
      "pitcher_id": 667755,
      "team_abbr": "LAA",
      "opponent_abbr": "CWS",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:05:45.000Z",
      "line": 6.5,
      "line_type": "half",
      "over_odds": -110,
      "under_odds": -120,
      "expected_strikeouts": 5.74,
      "baseline_projected_strikeouts": 5.92,
      "adjusted_projected_strikeouts": 5.74,
      "skill_score": 63.8,
      "opportunity_score": 64.7,
      "opponent_weakness_score": 33.6,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 24.6,
      "suppression_tier": "CLEAR_RUNWAY",
      "suppression_label": "Clear Runway",
      "suppression_note": "Workload and leash context support the strikeout projection cleanly.",
      "interaction_tier": "STRONG_ALIGNMENT",
      "interaction_label": "Strong Alignment",
      "interaction_note": "The strikeout structure is favorable, but not as clean as the premium runway pocket.",
      "trust_modifier": "WATCHLIST_RUNWAY",
      "trust_label": "Watchlist Runway",
      "trust_note": "The strikeout structure is supportive and worth watching, but it is not as clean as the premium bucket.",
      "model_over_probability": 0.3566,
      "model_under_probability": 0.6434,
      "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.1672,
      "edge_under": 0.0979,
      "recommended_side": "Under",
      "recommended_edge": 0.0979,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.18,
      "adjustment_multiplier": 0.969,
      "aggregate_matchup_score": 52.5,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 20556.0,
      "lineup_expected_strikeouts": 5.36,
      "environment_summary": "neutral",
      "temperature_f": 59.5,
      "wind_speed_mph": 4.0,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Randy V\u00e1squez",
      "pitcher_id": 681190,
      "team_abbr": "SD",
      "opponent_abbr": "SF",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:05:23.000Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -136,
      "under_odds": 102,
      "expected_strikeouts": 3.28,
      "baseline_projected_strikeouts": 3.3,
      "adjusted_projected_strikeouts": 3.28,
      "skill_score": 30.6,
      "opportunity_score": 54.6,
      "opponent_weakness_score": 30.6,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 40.6,
      "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.4092,
      "model_under_probability": 0.5908,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5763,
      "implied_under_probability_raw": 0.495,
      "implied_over_probability_novig": 0.5379,
      "implied_under_probability_novig": 0.4621,
      "edge_over": -0.1671,
      "edge_under": 0.0958,
      "recommended_side": "Under",
      "recommended_edge": 0.0958,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.02,
      "adjustment_multiplier": 0.995,
      "aggregate_matchup_score": 23.4,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 18198.0,
      "lineup_expected_strikeouts": 3.46,
      "environment_summary": "pitcher-friendly",
      "temperature_f": 53.6,
      "wind_speed_mph": 4.7,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Shane Baz",
      "pitcher_id": 669358,
      "team_abbr": "BAL",
      "opponent_abbr": "NYY",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:04:54.000Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -110,
      "under_odds": -120,
      "expected_strikeouts": 4.88,
      "baseline_projected_strikeouts": 4.39,
      "adjusted_projected_strikeouts": 4.88,
      "skill_score": 13.1,
      "opportunity_score": 68.6,
      "opponent_weakness_score": 40.5,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 21.7,
      "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.3646,
      "model_under_probability": 0.6354,
      "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.1592,
      "edge_under": 0.0899,
      "recommended_side": "Under",
      "recommended_edge": 0.0899,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.49,
      "adjustment_multiplier": 1.112,
      "aggregate_matchup_score": 45.8,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 18414.0,
      "lineup_expected_strikeouts": 5.84,
      "environment_summary": "hitter-friendly",
      "temperature_f": 60.3,
      "wind_speed_mph": 7.0,
      "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": "HOU",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:05:48.000Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -172,
      "under_odds": 128,
      "expected_strikeouts": 5.64,
      "baseline_projected_strikeouts": 5.48,
      "adjusted_projected_strikeouts": 5.64,
      "skill_score": 31.1,
      "opportunity_score": 74.1,
      "opponent_weakness_score": 45.9,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 14.9,
      "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.4786,
      "model_under_probability": 0.5214,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6324,
      "implied_under_probability_raw": 0.4386,
      "implied_over_probability_novig": 0.5905,
      "implied_under_probability_novig": 0.4095,
      "edge_over": -0.1538,
      "edge_under": 0.0828,
      "recommended_side": "Under",
      "recommended_edge": 0.0828,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.16,
      "adjustment_multiplier": 1.029,
      "aggregate_matchup_score": 69.5,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 19316.0,
      "lineup_expected_strikeouts": 5.69,
      "environment_summary": "neutral",
      "temperature_f": 69.4,
      "wind_speed_mph": 7.2,
      "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": "HOU",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:04:56.000Z",
      "line": 6.5,
      "line_type": "half",
      "over_odds": 100,
      "under_odds": -135,
      "expected_strikeouts": 5.64,
      "baseline_projected_strikeouts": 5.48,
      "adjusted_projected_strikeouts": 5.64,
      "skill_score": 31.1,
      "opportunity_score": 74.1,
      "opponent_weakness_score": 45.9,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 14.9,
      "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.3428,
      "model_under_probability": 0.6572,
      "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.1572,
      "edge_under": 0.0827,
      "recommended_side": "Under",
      "recommended_edge": 0.0827,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.16,
      "adjustment_multiplier": 1.029,
      "aggregate_matchup_score": 69.5,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 19316.0,
      "lineup_expected_strikeouts": 5.69,
      "environment_summary": "neutral",
      "temperature_f": 69.4,
      "wind_speed_mph": 7.2,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Shane Baz",
      "pitcher_id": 669358,
      "team_abbr": "BAL",
      "opponent_abbr": "NYY",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 5.5,
      "line_type": "half",
      "over_odds": -106,
      "under_odds": -125,
      "expected_strikeouts": 4.88,
      "baseline_projected_strikeouts": 4.39,
      "adjusted_projected_strikeouts": 4.88,
      "skill_score": 13.1,
      "opportunity_score": 68.6,
      "opponent_weakness_score": 40.5,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 21.7,
      "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.3646,
      "model_under_probability": 0.6354,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5146,
      "implied_under_probability_raw": 0.5556,
      "implied_over_probability_novig": 0.4808,
      "implied_under_probability_novig": 0.5192,
      "edge_over": -0.15,
      "edge_under": 0.0798,
      "recommended_side": "Under",
      "recommended_edge": 0.0798,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.49,
      "adjustment_multiplier": 1.112,
      "aggregate_matchup_score": 45.8,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 18414.0,
      "lineup_expected_strikeouts": 5.84,
      "environment_summary": "hitter-friendly",
      "temperature_f": 60.3,
      "wind_speed_mph": 7.0,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Shane Baz",
      "pitcher_id": 669358,
      "team_abbr": "BAL",
      "opponent_abbr": "NYY",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:05:19.000Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -106,
      "under_odds": -125,
      "expected_strikeouts": 4.88,
      "baseline_projected_strikeouts": 4.39,
      "adjusted_projected_strikeouts": 4.88,
      "skill_score": 13.1,
      "opportunity_score": 68.6,
      "opponent_weakness_score": 40.5,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 21.7,
      "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.3646,
      "model_under_probability": 0.6354,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5146,
      "implied_under_probability_raw": 0.5556,
      "implied_over_probability_novig": 0.4808,
      "implied_under_probability_novig": 0.5192,
      "edge_over": -0.15,
      "edge_under": 0.0798,
      "recommended_side": "Under",
      "recommended_edge": 0.0798,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.49,
      "adjustment_multiplier": 1.112,
      "aggregate_matchup_score": 45.8,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 18414.0,
      "lineup_expected_strikeouts": 5.84,
      "environment_summary": "hitter-friendly",
      "temperature_f": 60.3,
      "wind_speed_mph": 7.0,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Shane Baz",
      "pitcher_id": 669358,
      "team_abbr": "BAL",
      "opponent_abbr": "NYY",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:04:43.000Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": 101,
      "under_odds": -128,
      "expected_strikeouts": 4.88,
      "baseline_projected_strikeouts": 4.39,
      "adjusted_projected_strikeouts": 4.88,
      "skill_score": 13.1,
      "opportunity_score": 68.6,
      "opponent_weakness_score": 40.5,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 21.7,
      "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.3646,
      "model_under_probability": 0.6354,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4975,
      "implied_under_probability_raw": 0.5614,
      "implied_over_probability_novig": 0.4698,
      "implied_under_probability_novig": 0.5302,
      "edge_over": -0.1329,
      "edge_under": 0.074,
      "recommended_side": "Under",
      "recommended_edge": 0.074,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.49,
      "adjustment_multiplier": 1.112,
      "aggregate_matchup_score": 45.8,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 18414.0,
      "lineup_expected_strikeouts": 5.84,
      "environment_summary": "hitter-friendly",
      "temperature_f": 60.3,
      "wind_speed_mph": 7.0,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Randy V\u00e1squez",
      "pitcher_id": 681190,
      "team_abbr": "SD",
      "opponent_abbr": "SF",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:05:19.000Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -120,
      "under_odds": -110,
      "expected_strikeouts": 3.28,
      "baseline_projected_strikeouts": 3.3,
      "adjusted_projected_strikeouts": 3.28,
      "skill_score": 30.6,
      "opportunity_score": 54.6,
      "opponent_weakness_score": 30.6,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 40.6,
      "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.4092,
      "model_under_probability": 0.5908,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5455,
      "implied_under_probability_raw": 0.5238,
      "implied_over_probability_novig": 0.5101,
      "implied_under_probability_novig": 0.4899,
      "edge_over": -0.1363,
      "edge_under": 0.067,
      "recommended_side": "Under",
      "recommended_edge": 0.067,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.02,
      "adjustment_multiplier": 0.995,
      "aggregate_matchup_score": 23.4,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 18198.0,
      "lineup_expected_strikeouts": 3.46,
      "environment_summary": "pitcher-friendly",
      "temperature_f": 53.6,
      "wind_speed_mph": 4.7,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Eric Lauer",
      "pitcher_id": 641778,
      "team_abbr": "TOR",
      "opponent_abbr": "TB",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:04:41.000Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": 107,
      "under_odds": -137,
      "expected_strikeouts": 4.02,
      "baseline_projected_strikeouts": 3.89,
      "adjusted_projected_strikeouts": 4.02,
      "skill_score": 1.5,
      "opportunity_score": 13.5,
      "opponent_weakness_score": 37.3,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 88.1,
      "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.5486,
      "model_under_probability": 0.4514,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4831,
      "implied_under_probability_raw": 0.5781,
      "implied_over_probability_novig": 0.4552,
      "implied_under_probability_novig": 0.5448,
      "edge_over": 0.0655,
      "edge_under": -0.1267,
      "recommended_side": "Over",
      "recommended_edge": 0.0655,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.13,
      "adjustment_multiplier": 1.033,
      "aggregate_matchup_score": 44.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 8411.0,
      "lineup_expected_strikeouts": 4.31,
      "environment_summary": "neutral",
      "temperature_f": 73.6,
      "wind_speed_mph": 4.3,
      "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": "HOU",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:05:20.000Z",
      "line": 6.5,
      "line_type": "half",
      "over_odds": 114,
      "under_odds": -145,
      "expected_strikeouts": 5.64,
      "baseline_projected_strikeouts": 5.48,
      "adjusted_projected_strikeouts": 5.64,
      "skill_score": 31.1,
      "opportunity_score": 74.1,
      "opponent_weakness_score": 45.9,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 14.9,
      "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.3428,
      "model_under_probability": 0.6572,
      "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.1245,
      "edge_under": 0.0654,
      "recommended_side": "Under",
      "recommended_edge": 0.0654,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.16,
      "adjustment_multiplier": 1.029,
      "aggregate_matchup_score": 69.5,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 19316.0,
      "lineup_expected_strikeouts": 5.69,
      "environment_summary": "neutral",
      "temperature_f": 69.4,
      "wind_speed_mph": 7.2,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Eric Lauer",
      "pitcher_id": 641778,
      "team_abbr": "TOR",
      "opponent_abbr": "TB",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 3.5,
      "line_type": "half",
      "over_odds": 102,
      "under_odds": -136,
      "expected_strikeouts": 4.02,
      "baseline_projected_strikeouts": 3.89,
      "adjusted_projected_strikeouts": 4.02,
      "skill_score": 1.5,
      "opportunity_score": 13.5,
      "opponent_weakness_score": 37.3,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 88.1,
      "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.5486,
      "model_under_probability": 0.4514,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.495,
      "implied_under_probability_raw": 0.5763,
      "implied_over_probability_novig": 0.4621,
      "implied_under_probability_novig": 0.5379,
      "edge_over": 0.0536,
      "edge_under": -0.1249,
      "recommended_side": "Over",
      "recommended_edge": 0.0536,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.13,
      "adjustment_multiplier": 1.033,
      "aggregate_matchup_score": 44.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 8411.0,
      "lineup_expected_strikeouts": 4.31,
      "environment_summary": "neutral",
      "temperature_f": 73.6,
      "wind_speed_mph": 4.3,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Eric Lauer",
      "pitcher_id": 641778,
      "team_abbr": "TOR",
      "opponent_abbr": "TB",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:05:29.000Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": 102,
      "under_odds": -136,
      "expected_strikeouts": 4.02,
      "baseline_projected_strikeouts": 3.89,
      "adjusted_projected_strikeouts": 4.02,
      "skill_score": 1.5,
      "opportunity_score": 13.5,
      "opponent_weakness_score": 37.3,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 88.1,
      "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.5486,
      "model_under_probability": 0.4514,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.495,
      "implied_under_probability_raw": 0.5763,
      "implied_over_probability_novig": 0.4621,
      "implied_under_probability_novig": 0.5379,
      "edge_over": 0.0536,
      "edge_under": -0.1249,
      "recommended_side": "Over",
      "recommended_edge": 0.0536,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.13,
      "adjustment_multiplier": 1.033,
      "aggregate_matchup_score": 44.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 8411.0,
      "lineup_expected_strikeouts": 4.31,
      "environment_summary": "neutral",
      "temperature_f": 73.6,
      "wind_speed_mph": 4.3,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Janson Junk",
      "pitcher_id": 676083,
      "team_abbr": "MIA",
      "opponent_abbr": "PHI",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:05:01.000Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -129,
      "under_odds": 102,
      "expected_strikeouts": 3.58,
      "baseline_projected_strikeouts": 3.58,
      "adjusted_projected_strikeouts": 3.58,
      "skill_score": 3.8,
      "opportunity_score": 45.1,
      "opponent_weakness_score": 30.4,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 54.0,
      "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.4681,
      "model_under_probability": 0.5319,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5633,
      "implied_under_probability_raw": 0.495,
      "implied_over_probability_novig": 0.5323,
      "implied_under_probability_novig": 0.4677,
      "edge_over": -0.0952,
      "edge_under": 0.0369,
      "recommended_side": "Under",
      "recommended_edge": 0.0369,
      "play_tier": "Play",
      "no_play_reason": null,
      "adjustment_delta": 0.0,
      "adjustment_multiplier": 0.999,
      "aggregate_matchup_score": 29.1,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 6842.0,
      "lineup_expected_strikeouts": 3.74,
      "environment_summary": "pitcher-friendly",
      "temperature_f": 74.7,
      "wind_speed_mph": 7.1,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Janson Junk",
      "pitcher_id": 676083,
      "team_abbr": "MIA",
      "opponent_abbr": "PHI",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 3.5,
      "line_type": "half",
      "over_odds": -136,
      "under_odds": 102,
      "expected_strikeouts": 3.58,
      "baseline_projected_strikeouts": 3.58,
      "adjusted_projected_strikeouts": 3.58,
      "skill_score": 3.8,
      "opportunity_score": 45.1,
      "opponent_weakness_score": 30.4,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 54.0,
      "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.4681,
      "model_under_probability": 0.5319,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5763,
      "implied_under_probability_raw": 0.495,
      "implied_over_probability_novig": 0.5379,
      "implied_under_probability_novig": 0.4621,
      "edge_over": -0.1082,
      "edge_under": 0.0369,
      "recommended_side": "Under",
      "recommended_edge": 0.0369,
      "play_tier": "Play",
      "no_play_reason": null,
      "adjustment_delta": 0.0,
      "adjustment_multiplier": 0.999,
      "aggregate_matchup_score": 29.1,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 6842.0,
      "lineup_expected_strikeouts": 3.74,
      "environment_summary": "pitcher-friendly",
      "temperature_f": 74.7,
      "wind_speed_mph": 7.1,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Janson Junk",
      "pitcher_id": 676083,
      "team_abbr": "MIA",
      "opponent_abbr": "PHI",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:05:26.000Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -136,
      "under_odds": 102,
      "expected_strikeouts": 3.58,
      "baseline_projected_strikeouts": 3.58,
      "adjusted_projected_strikeouts": 3.58,
      "skill_score": 3.8,
      "opportunity_score": 45.1,
      "opponent_weakness_score": 30.4,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 54.0,
      "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.4681,
      "model_under_probability": 0.5319,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5763,
      "implied_under_probability_raw": 0.495,
      "implied_over_probability_novig": 0.5379,
      "implied_under_probability_novig": 0.4621,
      "edge_over": -0.1082,
      "edge_under": 0.0369,
      "recommended_side": "Under",
      "recommended_edge": 0.0369,
      "play_tier": "Play",
      "no_play_reason": null,
      "adjustment_delta": 0.0,
      "adjustment_multiplier": 0.999,
      "aggregate_matchup_score": 29.1,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 6842.0,
      "lineup_expected_strikeouts": 3.74,
      "environment_summary": "pitcher-friendly",
      "temperature_f": 74.7,
      "wind_speed_mph": 7.1,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Eric Lauer",
      "pitcher_id": 641778,
      "team_abbr": "TOR",
      "opponent_abbr": "TB",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:05:21.000Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -105,
      "under_odds": -125,
      "expected_strikeouts": 4.02,
      "baseline_projected_strikeouts": 3.89,
      "adjusted_projected_strikeouts": 4.02,
      "skill_score": 1.5,
      "opportunity_score": 13.5,
      "opponent_weakness_score": 37.3,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 88.1,
      "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.5486,
      "model_under_probability": 0.4514,
      "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.0364,
      "edge_under": -0.1042,
      "recommended_side": "Over",
      "recommended_edge": 0.0364,
      "play_tier": "Play",
      "no_play_reason": null,
      "adjustment_delta": 0.13,
      "adjustment_multiplier": 1.033,
      "aggregate_matchup_score": 44.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 8411.0,
      "lineup_expected_strikeouts": 4.31,
      "environment_summary": "neutral",
      "temperature_f": 73.6,
      "wind_speed_mph": 4.3,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Tanner Bibee",
      "pitcher_id": 676440,
      "team_abbr": "CLE",
      "opponent_abbr": "KC",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 4.5,
      "line_type": "half",
      "over_odds": 116,
      "under_odds": -154,
      "expected_strikeouts": 4.72,
      "baseline_projected_strikeouts": 4.46,
      "adjusted_projected_strikeouts": 4.72,
      "skill_score": 29.2,
      "opportunity_score": 47.9,
      "opponent_weakness_score": 43.5,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 54.0,
      "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.4921,
      "model_under_probability": 0.5079,
      "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.0291,
      "edge_under": -0.0984,
      "recommended_side": "Over",
      "recommended_edge": 0.0291,
      "play_tier": "Lean",
      "no_play_reason": null,
      "adjustment_delta": 0.26,
      "adjustment_multiplier": 1.059,
      "aggregate_matchup_score": 54.0,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 33227.0,
      "lineup_expected_strikeouts": 5.17,
      "environment_summary": "neutral",
      "temperature_f": 69.3,
      "wind_speed_mph": 2.7,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Tanner Bibee",
      "pitcher_id": 676440,
      "team_abbr": "CLE",
      "opponent_abbr": "KC",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:05:20.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 116,
      "under_odds": -154,
      "expected_strikeouts": 4.72,
      "baseline_projected_strikeouts": 4.46,
      "adjusted_projected_strikeouts": 4.72,
      "skill_score": 29.2,
      "opportunity_score": 47.9,
      "opponent_weakness_score": 43.5,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 54.0,
      "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.4921,
      "model_under_probability": 0.5079,
      "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.0291,
      "edge_under": -0.0984,
      "recommended_side": "Over",
      "recommended_edge": 0.0291,
      "play_tier": "Lean",
      "no_play_reason": null,
      "adjustment_delta": 0.26,
      "adjustment_multiplier": 1.059,
      "aggregate_matchup_score": 54.0,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 33227.0,
      "lineup_expected_strikeouts": 5.17,
      "environment_summary": "neutral",
      "temperature_f": 69.3,
      "wind_speed_mph": 2.7,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Edward Cabrera",
      "pitcher_id": 665795,
      "team_abbr": "CHC",
      "opponent_abbr": "CIN",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:05:16.000Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -111,
      "under_odds": -115,
      "expected_strikeouts": 5.41,
      "baseline_projected_strikeouts": 5.06,
      "adjusted_projected_strikeouts": 5.41,
      "skill_score": 27.3,
      "opportunity_score": 63.6,
      "opponent_weakness_score": 46.1,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 28.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.4449,
      "model_under_probability": 0.5551,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5261,
      "implied_under_probability_raw": 0.5349,
      "implied_over_probability_novig": 0.4959,
      "implied_under_probability_novig": 0.5041,
      "edge_over": -0.0812,
      "edge_under": 0.0202,
      "recommended_side": "Under",
      "recommended_edge": 0.0202,
      "play_tier": "Lean",
      "no_play_reason": null,
      "adjustment_delta": 0.35,
      "adjustment_multiplier": 1.069,
      "aggregate_matchup_score": 58.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 23128.0,
      "lineup_expected_strikeouts": 5.95,
      "environment_summary": "neutral",
      "temperature_f": 59.5,
      "wind_speed_mph": 9.3,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Edward Cabrera",
      "pitcher_id": 665795,
      "team_abbr": "CHC",
      "opponent_abbr": "CIN",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 5.5,
      "line_type": "half",
      "over_odds": -112,
      "under_odds": -118,
      "expected_strikeouts": 5.41,
      "baseline_projected_strikeouts": 5.06,
      "adjusted_projected_strikeouts": 5.41,
      "skill_score": 27.3,
      "opportunity_score": 63.6,
      "opponent_weakness_score": 46.1,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 28.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.4449,
      "model_under_probability": 0.5551,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5283,
      "implied_under_probability_raw": 0.5413,
      "implied_over_probability_novig": 0.4939,
      "implied_under_probability_novig": 0.5061,
      "edge_over": -0.0834,
      "edge_under": 0.0138,
      "recommended_side": "No Play",
      "recommended_edge": 0.0138,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.35,
      "adjustment_multiplier": 1.069,
      "aggregate_matchup_score": 58.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 23128.0,
      "lineup_expected_strikeouts": 5.95,
      "environment_summary": "neutral",
      "temperature_f": 59.5,
      "wind_speed_mph": 9.3,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Edward Cabrera",
      "pitcher_id": 665795,
      "team_abbr": "CHC",
      "opponent_abbr": "CIN",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:05:21.000Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -112,
      "under_odds": -118,
      "expected_strikeouts": 5.41,
      "baseline_projected_strikeouts": 5.06,
      "adjusted_projected_strikeouts": 5.41,
      "skill_score": 27.3,
      "opportunity_score": 63.6,
      "opponent_weakness_score": 46.1,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 28.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.4449,
      "model_under_probability": 0.5551,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5283,
      "implied_under_probability_raw": 0.5413,
      "implied_over_probability_novig": 0.4939,
      "implied_under_probability_novig": 0.5061,
      "edge_over": -0.0834,
      "edge_under": 0.0138,
      "recommended_side": "No Play",
      "recommended_edge": 0.0138,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.35,
      "adjustment_multiplier": 1.069,
      "aggregate_matchup_score": 58.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 23128.0,
      "lineup_expected_strikeouts": 5.95,
      "environment_summary": "neutral",
      "temperature_f": 59.5,
      "wind_speed_mph": 9.3,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Michael Wacha",
      "pitcher_id": 608379,
      "team_abbr": "KC",
      "opponent_abbr": "CLE",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 4.5,
      "line_type": "half",
      "over_odds": 120,
      "under_odds": -160,
      "expected_strikeouts": 4.55,
      "baseline_projected_strikeouts": 4.66,
      "adjusted_projected_strikeouts": 4.55,
      "skill_score": 23.1,
      "opportunity_score": 68.0,
      "opponent_weakness_score": 32.3,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 13.1,
      "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.4643,
      "model_under_probability": 0.5357,
      "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.0098,
      "edge_under": -0.0797,
      "recommended_side": "No Play",
      "recommended_edge": 0.0098,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": -0.11,
      "adjustment_multiplier": 0.976,
      "aggregate_matchup_score": 48.6,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 30396.0,
      "lineup_expected_strikeouts": 4.35,
      "environment_summary": "neutral",
      "temperature_f": 69.3,
      "wind_speed_mph": 2.7,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Michael Wacha",
      "pitcher_id": 608379,
      "team_abbr": "KC",
      "opponent_abbr": "CLE",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:05:20.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 120,
      "under_odds": -160,
      "expected_strikeouts": 4.55,
      "baseline_projected_strikeouts": 4.66,
      "adjusted_projected_strikeouts": 4.55,
      "skill_score": 23.1,
      "opportunity_score": 68.0,
      "opponent_weakness_score": 32.3,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 13.1,
      "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.4643,
      "model_under_probability": 0.5357,
      "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.0098,
      "edge_under": -0.0797,
      "recommended_side": "No Play",
      "recommended_edge": 0.0098,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": -0.11,
      "adjustment_multiplier": 0.976,
      "aggregate_matchup_score": 48.6,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 30396.0,
      "lineup_expected_strikeouts": 4.35,
      "environment_summary": "neutral",
      "temperature_f": 69.3,
      "wind_speed_mph": 2.7,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Tanner Bibee",
      "pitcher_id": 676440,
      "team_abbr": "CLE",
      "opponent_abbr": "KC",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:05:18.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 107,
      "under_odds": -136,
      "expected_strikeouts": 4.72,
      "baseline_projected_strikeouts": 4.46,
      "adjusted_projected_strikeouts": 4.72,
      "skill_score": 29.2,
      "opportunity_score": 47.9,
      "opponent_weakness_score": 43.5,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 54.0,
      "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.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.26,
      "adjustment_multiplier": 1.059,
      "aggregate_matchup_score": 54.0,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 33227.0,
      "lineup_expected_strikeouts": 5.17,
      "environment_summary": "neutral",
      "temperature_f": 69.3,
      "wind_speed_mph": 2.7,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Janson Junk",
      "pitcher_id": 676083,
      "team_abbr": "MIA",
      "opponent_abbr": "PHI",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:05:38.000Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -120,
      "under_odds": -110,
      "expected_strikeouts": 3.58,
      "baseline_projected_strikeouts": 3.58,
      "adjusted_projected_strikeouts": 3.58,
      "skill_score": 3.8,
      "opportunity_score": 45.1,
      "opponent_weakness_score": 30.4,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 54.0,
      "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.4681,
      "model_under_probability": 0.5319,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5455,
      "implied_under_probability_raw": 0.5238,
      "implied_over_probability_novig": 0.5101,
      "implied_under_probability_novig": 0.4899,
      "edge_over": -0.0774,
      "edge_under": 0.0081,
      "recommended_side": "No Play",
      "recommended_edge": 0.0081,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.0,
      "adjustment_multiplier": 0.999,
      "aggregate_matchup_score": 29.1,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 6842.0,
      "lineup_expected_strikeouts": 3.74,
      "environment_summary": "pitcher-friendly",
      "temperature_f": 74.7,
      "wind_speed_mph": 7.1,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Nick Martinez",
      "pitcher_id": 607259,
      "team_abbr": "TB",
      "opponent_abbr": "TOR",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:05:21.000Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -150,
      "under_odds": 110,
      "expected_strikeouts": 3.86,
      "baseline_projected_strikeouts": 3.84,
      "adjusted_projected_strikeouts": 3.86,
      "skill_score": 14.3,
      "opportunity_score": 61.0,
      "opponent_weakness_score": 30.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": 28.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.5202,
      "model_under_probability": 0.4798,
      "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.0798,
      "edge_under": 0.0036,
      "recommended_side": "No Play",
      "recommended_edge": 0.0036,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.02,
      "adjustment_multiplier": 1.005,
      "aggregate_matchup_score": 34.1,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 18769.0,
      "lineup_expected_strikeouts": 4.04,
      "environment_summary": "neutral",
      "temperature_f": 73.6,
      "wind_speed_mph": 4.3,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Michael Wacha",
      "pitcher_id": 608379,
      "team_abbr": "KC",
      "opponent_abbr": "CLE",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:05:18.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 117,
      "under_odds": -150,
      "expected_strikeouts": 4.55,
      "baseline_projected_strikeouts": 4.66,
      "adjusted_projected_strikeouts": 4.55,
      "skill_score": 23.1,
      "opportunity_score": 68.0,
      "opponent_weakness_score": 32.3,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 13.1,
      "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.4643,
      "model_under_probability": 0.5357,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4608,
      "implied_under_probability_raw": 0.6,
      "implied_over_probability_novig": 0.4344,
      "implied_under_probability_novig": 0.5656,
      "edge_over": 0.0035,
      "edge_under": -0.0643,
      "recommended_side": "No Play",
      "recommended_edge": 0.0035,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": -0.11,
      "adjustment_multiplier": 0.976,
      "aggregate_matchup_score": 48.6,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 30396.0,
      "lineup_expected_strikeouts": 4.35,
      "environment_summary": "neutral",
      "temperature_f": 69.3,
      "wind_speed_mph": 2.7,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Edward Cabrera",
      "pitcher_id": 665795,
      "team_abbr": "CHC",
      "opponent_abbr": "CIN",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:05:15.000Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -105,
      "under_odds": -125,
      "expected_strikeouts": 5.41,
      "baseline_projected_strikeouts": 5.06,
      "adjusted_projected_strikeouts": 5.41,
      "skill_score": 27.3,
      "opportunity_score": 63.6,
      "opponent_weakness_score": 46.1,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 28.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.4449,
      "model_under_probability": 0.5551,
      "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.0673,
      "edge_under": -0.0005,
      "recommended_side": "No Play",
      "recommended_edge": -0.0005,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.35,
      "adjustment_multiplier": 1.069,
      "aggregate_matchup_score": 58.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 23128.0,
      "lineup_expected_strikeouts": 5.95,
      "environment_summary": "neutral",
      "temperature_f": 59.5,
      "wind_speed_mph": 9.3,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Logan Gilbert",
      "pitcher_id": 669302,
      "team_abbr": "SEA",
      "opponent_abbr": "ATL",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:04:56.000Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -135,
      "under_odds": 100,
      "expected_strikeouts": 6.32,
      "baseline_projected_strikeouts": 6.49,
      "adjusted_projected_strikeouts": 6.32,
      "skill_score": 40.6,
      "opportunity_score": 53.6,
      "opponent_weakness_score": 37.9,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 40.0,
      "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.5719,
      "model_under_probability": 0.4281,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5745,
      "implied_under_probability_raw": 0.5,
      "implied_over_probability_novig": 0.5347,
      "implied_under_probability_novig": 0.4653,
      "edge_over": -0.0026,
      "edge_under": -0.0719,
      "recommended_side": "No Play",
      "recommended_edge": -0.0026,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": -0.17,
      "adjustment_multiplier": 0.973,
      "aggregate_matchup_score": 61.9,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 31714.0,
      "lineup_expected_strikeouts": 5.82,
      "environment_summary": "neutral",
      "temperature_f": 56.7,
      "wind_speed_mph": 5.2,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Chad Patrick",
      "pitcher_id": 694477,
      "team_abbr": "MIL",
      "opponent_abbr": "STL",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:05:32.000Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -145,
      "under_odds": 114,
      "expected_strikeouts": 4.24,
      "baseline_projected_strikeouts": 3.8,
      "adjusted_projected_strikeouts": 4.24,
      "skill_score": 5.2,
      "opportunity_score": 29.1,
      "opponent_weakness_score": 46.5,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 86.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.5857,
      "model_under_probability": 0.4143,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5918,
      "implied_under_probability_raw": 0.4673,
      "implied_over_probability_novig": 0.5588,
      "implied_under_probability_novig": 0.4412,
      "edge_over": -0.0061,
      "edge_under": -0.053,
      "recommended_side": "No Play",
      "recommended_edge": -0.0061,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.44,
      "adjustment_multiplier": 1.128,
      "aggregate_matchup_score": 59.0,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 9640.0,
      "lineup_expected_strikeouts": 5.36,
      "environment_summary": "neutral",
      "temperature_f": 67.6,
      "wind_speed_mph": 12.3,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Logan Gilbert",
      "pitcher_id": 669302,
      "team_abbr": "SEA",
      "opponent_abbr": "ATL",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:05:11.000Z",
      "line": 6.5,
      "line_type": "half",
      "over_odds": 105,
      "under_odds": -134,
      "expected_strikeouts": 6.32,
      "baseline_projected_strikeouts": 6.49,
      "adjusted_projected_strikeouts": 6.32,
      "skill_score": 40.6,
      "opportunity_score": 53.6,
      "opponent_weakness_score": 37.9,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 40.0,
      "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.4358,
      "model_under_probability": 0.5642,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4878,
      "implied_under_probability_raw": 0.5726,
      "implied_over_probability_novig": 0.46,
      "implied_under_probability_novig": 0.54,
      "edge_over": -0.052,
      "edge_under": -0.0084,
      "recommended_side": "No Play",
      "recommended_edge": -0.0084,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": -0.17,
      "adjustment_multiplier": 0.973,
      "aggregate_matchup_score": 61.9,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 31714.0,
      "lineup_expected_strikeouts": 5.82,
      "environment_summary": "neutral",
      "temperature_f": 56.7,
      "wind_speed_mph": 5.2,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Nick Martinez",
      "pitcher_id": 607259,
      "team_abbr": "TB",
      "opponent_abbr": "TOR",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:04:41.000Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -133,
      "under_odds": 104,
      "expected_strikeouts": 3.86,
      "baseline_projected_strikeouts": 3.84,
      "adjusted_projected_strikeouts": 3.86,
      "skill_score": 14.3,
      "opportunity_score": 61.0,
      "opponent_weakness_score": 30.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": 28.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.5202,
      "model_under_probability": 0.4798,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5708,
      "implied_under_probability_raw": 0.4902,
      "implied_over_probability_novig": 0.538,
      "implied_under_probability_novig": 0.462,
      "edge_over": -0.0506,
      "edge_under": -0.0104,
      "recommended_side": "No Play",
      "recommended_edge": -0.0104,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.02,
      "adjustment_multiplier": 1.005,
      "aggregate_matchup_score": 34.1,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 18769.0,
      "lineup_expected_strikeouts": 4.04,
      "environment_summary": "neutral",
      "temperature_f": 73.6,
      "wind_speed_mph": 4.3,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Logan Gilbert",
      "pitcher_id": 669302,
      "team_abbr": "SEA",
      "opponent_abbr": "ATL",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:05:49.000Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -172,
      "under_odds": 128,
      "expected_strikeouts": 6.32,
      "baseline_projected_strikeouts": 6.49,
      "adjusted_projected_strikeouts": 6.32,
      "skill_score": 40.6,
      "opportunity_score": 53.6,
      "opponent_weakness_score": 37.9,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 40.0,
      "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.5719,
      "model_under_probability": 0.4281,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6324,
      "implied_under_probability_raw": 0.4386,
      "implied_over_probability_novig": 0.5905,
      "implied_under_probability_novig": 0.4095,
      "edge_over": -0.0605,
      "edge_under": -0.0105,
      "recommended_side": "No Play",
      "recommended_edge": -0.0105,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": -0.17,
      "adjustment_multiplier": 0.973,
      "aggregate_matchup_score": 61.9,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 31714.0,
      "lineup_expected_strikeouts": 5.82,
      "environment_summary": "neutral",
      "temperature_f": 56.7,
      "wind_speed_mph": 5.2,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Nick Martinez",
      "pitcher_id": 607259,
      "team_abbr": "TB",
      "opponent_abbr": "TOR",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 3.5,
      "line_type": "half",
      "over_odds": -136,
      "under_odds": 102,
      "expected_strikeouts": 3.86,
      "baseline_projected_strikeouts": 3.84,
      "adjusted_projected_strikeouts": 3.86,
      "skill_score": 14.3,
      "opportunity_score": 61.0,
      "opponent_weakness_score": 30.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": 28.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.5202,
      "model_under_probability": 0.4798,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5763,
      "implied_under_probability_raw": 0.495,
      "implied_over_probability_novig": 0.5379,
      "implied_under_probability_novig": 0.4621,
      "edge_over": -0.0561,
      "edge_under": -0.0152,
      "recommended_side": "No Play",
      "recommended_edge": -0.0152,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.02,
      "adjustment_multiplier": 1.005,
      "aggregate_matchup_score": 34.1,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 18769.0,
      "lineup_expected_strikeouts": 4.04,
      "environment_summary": "neutral",
      "temperature_f": 73.6,
      "wind_speed_mph": 4.3,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Nick Martinez",
      "pitcher_id": 607259,
      "team_abbr": "TB",
      "opponent_abbr": "TOR",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:05:29.000Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -136,
      "under_odds": 102,
      "expected_strikeouts": 3.86,
      "baseline_projected_strikeouts": 3.84,
      "adjusted_projected_strikeouts": 3.86,
      "skill_score": 14.3,
      "opportunity_score": 61.0,
      "opponent_weakness_score": 30.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": 28.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.5202,
      "model_under_probability": 0.4798,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5763,
      "implied_under_probability_raw": 0.495,
      "implied_over_probability_novig": 0.5379,
      "implied_under_probability_novig": 0.4621,
      "edge_over": -0.0561,
      "edge_under": -0.0152,
      "recommended_side": "No Play",
      "recommended_edge": -0.0152,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.02,
      "adjustment_multiplier": 1.005,
      "aggregate_matchup_score": 34.1,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 18769.0,
      "lineup_expected_strikeouts": 4.04,
      "environment_summary": "neutral",
      "temperature_f": 73.6,
      "wind_speed_mph": 4.3,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Aaron Nola",
      "pitcher_id": 605400,
      "team_abbr": "PHI",
      "opponent_abbr": "MIA",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 5.5,
      "line_type": "half",
      "over_odds": 116,
      "under_odds": -154,
      "expected_strikeouts": 5.42,
      "baseline_projected_strikeouts": 5.08,
      "adjusted_projected_strikeouts": 5.42,
      "skill_score": 36.1,
      "opportunity_score": 55.0,
      "opponent_weakness_score": 47.2,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 41.1,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.4464,
      "model_under_probability": 0.5536,
      "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.0166,
      "edge_under": -0.0527,
      "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.34,
      "adjustment_multiplier": 1.067,
      "aggregate_matchup_score": 61.8,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 29857.0,
      "lineup_expected_strikeouts": 5.91,
      "environment_summary": "pitcher-friendly",
      "temperature_f": 74.7,
      "wind_speed_mph": 7.1,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Aaron Nola",
      "pitcher_id": 605400,
      "team_abbr": "PHI",
      "opponent_abbr": "MIA",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:05:26.000Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": 116,
      "under_odds": -154,
      "expected_strikeouts": 5.42,
      "baseline_projected_strikeouts": 5.08,
      "adjusted_projected_strikeouts": 5.42,
      "skill_score": 36.1,
      "opportunity_score": 55.0,
      "opponent_weakness_score": 47.2,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 41.1,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.4464,
      "model_under_probability": 0.5536,
      "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.0166,
      "edge_under": -0.0527,
      "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.34,
      "adjustment_multiplier": 1.067,
      "aggregate_matchup_score": 61.8,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 29857.0,
      "lineup_expected_strikeouts": 5.91,
      "environment_summary": "pitcher-friendly",
      "temperature_f": 74.7,
      "wind_speed_mph": 7.1,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Tanner Bibee",
      "pitcher_id": 676440,
      "team_abbr": "CLE",
      "opponent_abbr": "KC",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:05:42.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -105,
      "under_odds": -125,
      "expected_strikeouts": 4.72,
      "baseline_projected_strikeouts": 4.46,
      "adjusted_projected_strikeouts": 4.72,
      "skill_score": 29.2,
      "opportunity_score": 47.9,
      "opponent_weakness_score": 43.5,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 54.0,
      "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.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.26,
      "adjustment_multiplier": 1.059,
      "aggregate_matchup_score": 54.0,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 33227.0,
      "lineup_expected_strikeouts": 5.17,
      "environment_summary": "neutral",
      "temperature_f": 69.3,
      "wind_speed_mph": 2.7,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Aaron Nola",
      "pitcher_id": 605400,
      "team_abbr": "PHI",
      "opponent_abbr": "MIA",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:05:01.000Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": 110,
      "under_odds": -140,
      "expected_strikeouts": 5.42,
      "baseline_projected_strikeouts": 5.08,
      "adjusted_projected_strikeouts": 5.42,
      "skill_score": 36.1,
      "opportunity_score": 55.0,
      "opponent_weakness_score": 47.2,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 41.1,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.4464,
      "model_under_probability": 0.5536,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4762,
      "implied_under_probability_raw": 0.5833,
      "implied_over_probability_novig": 0.4495,
      "implied_under_probability_novig": 0.5505,
      "edge_over": -0.0298,
      "edge_under": -0.0297,
      "recommended_side": "No Play",
      "recommended_edge": -0.0297,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.34,
      "adjustment_multiplier": 1.067,
      "aggregate_matchup_score": 61.8,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 29857.0,
      "lineup_expected_strikeouts": 5.91,
      "environment_summary": "pitcher-friendly",
      "temperature_f": 74.7,
      "wind_speed_mph": 7.1,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Chad Patrick",
      "pitcher_id": 694477,
      "team_abbr": "MIL",
      "opponent_abbr": "STL",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:05:00.000Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -160,
      "under_odds": 120,
      "expected_strikeouts": 4.24,
      "baseline_projected_strikeouts": 3.8,
      "adjusted_projected_strikeouts": 4.24,
      "skill_score": 5.2,
      "opportunity_score": 29.1,
      "opponent_weakness_score": 46.5,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 86.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.5857,
      "model_under_probability": 0.4143,
      "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.0297,
      "edge_under": -0.0402,
      "recommended_side": "No Play",
      "recommended_edge": -0.0297,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.44,
      "adjustment_multiplier": 1.128,
      "aggregate_matchup_score": 59.0,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 9640.0,
      "lineup_expected_strikeouts": 5.36,
      "environment_summary": "neutral",
      "temperature_f": 67.6,
      "wind_speed_mph": 12.3,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Chad Patrick",
      "pitcher_id": 694477,
      "team_abbr": "MIL",
      "opponent_abbr": "STL",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 3.5,
      "line_type": "half",
      "over_odds": -160,
      "under_odds": 120,
      "expected_strikeouts": 4.24,
      "baseline_projected_strikeouts": 3.8,
      "adjusted_projected_strikeouts": 4.24,
      "skill_score": 5.2,
      "opportunity_score": 29.1,
      "opponent_weakness_score": 46.5,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 86.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.5857,
      "model_under_probability": 0.4143,
      "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.0297,
      "edge_under": -0.0402,
      "recommended_side": "No Play",
      "recommended_edge": -0.0297,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.44,
      "adjustment_multiplier": 1.128,
      "aggregate_matchup_score": 59.0,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 9640.0,
      "lineup_expected_strikeouts": 5.36,
      "environment_summary": "neutral",
      "temperature_f": 67.6,
      "wind_speed_mph": 12.3,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Chad Patrick",
      "pitcher_id": 694477,
      "team_abbr": "MIL",
      "opponent_abbr": "STL",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:05:19.000Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -160,
      "under_odds": 120,
      "expected_strikeouts": 4.24,
      "baseline_projected_strikeouts": 3.8,
      "adjusted_projected_strikeouts": 4.24,
      "skill_score": 5.2,
      "opportunity_score": 29.1,
      "opponent_weakness_score": 46.5,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 86.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.5857,
      "model_under_probability": 0.4143,
      "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.0297,
      "edge_under": -0.0402,
      "recommended_side": "No Play",
      "recommended_edge": -0.0297,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.44,
      "adjustment_multiplier": 1.128,
      "aggregate_matchup_score": 59.0,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 9640.0,
      "lineup_expected_strikeouts": 5.36,
      "environment_summary": "neutral",
      "temperature_f": 67.6,
      "wind_speed_mph": 12.3,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Aaron Nola",
      "pitcher_id": 605400,
      "team_abbr": "PHI",
      "opponent_abbr": "MIA",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:05:38.000Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": 110,
      "under_odds": -150,
      "expected_strikeouts": 5.42,
      "baseline_projected_strikeouts": 5.08,
      "adjusted_projected_strikeouts": 5.42,
      "skill_score": 36.1,
      "opportunity_score": 55.0,
      "opponent_weakness_score": 47.2,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 41.1,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.4464,
      "model_under_probability": 0.5536,
      "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.0298,
      "edge_under": -0.0464,
      "recommended_side": "No Play",
      "recommended_edge": -0.0298,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.34,
      "adjustment_multiplier": 1.067,
      "aggregate_matchup_score": 61.8,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 29857.0,
      "lineup_expected_strikeouts": 5.91,
      "environment_summary": "pitcher-friendly",
      "temperature_f": 74.7,
      "wind_speed_mph": 7.1,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Michael Wacha",
      "pitcher_id": 608379,
      "team_abbr": "KC",
      "opponent_abbr": "CLE",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-05-04T22:05:42.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 100,
      "under_odds": -135,
      "expected_strikeouts": 4.55,
      "baseline_projected_strikeouts": 4.66,
      "adjusted_projected_strikeouts": 4.55,
      "skill_score": 23.1,
      "opportunity_score": 68.0,
      "opponent_weakness_score": 32.3,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 13.1,
      "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.4643,
      "model_under_probability": 0.5357,
      "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.0357,
      "edge_under": -0.0388,
      "recommended_side": "No Play",
      "recommended_edge": -0.0357,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": -0.11,
      "adjustment_multiplier": 0.976,
      "aggregate_matchup_score": 48.6,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 30396.0,
      "lineup_expected_strikeouts": 4.35,
      "environment_summary": "neutral",
      "temperature_f": 69.3,
      "wind_speed_mph": 2.7,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    }
  ],
  "unmatched_inputs": [
    {
      "pitcher_name": "Chase Petty",
      "team_abbr": "CIN",
      "opponent_abbr": "CHC",
      "sportsbook": "BetMGM",
      "line": 2.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Chase Petty",
      "team_abbr": "CIN",
      "opponent_abbr": "CHC",
      "sportsbook": "DraftKings",
      "line": 3.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Chase Petty",
      "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": "Chase Petty",
      "team_abbr": "CIN",
      "opponent_abbr": "CHC",
      "sportsbook": "FanDuel",
      "line": 3.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Kyle Leahy",
      "team_abbr": "STL",
      "opponent_abbr": "MIL",
      "sportsbook": "BetMGM",
      "line": 3.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Kyle Leahy",
      "team_abbr": "STL",
      "opponent_abbr": "MIL",
      "sportsbook": "DraftKings",
      "line": 3.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Kyle Leahy",
      "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": "Kyle Leahy",
      "team_abbr": "STL",
      "opponent_abbr": "MIL",
      "sportsbook": "FanDuel",
      "line": 3.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Payton Tolle",
      "team_abbr": "BOS",
      "opponent_abbr": "DET",
      "sportsbook": "BetMGM",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Payton Tolle",
      "team_abbr": "BOS",
      "opponent_abbr": "DET",
      "sportsbook": "DraftKings",
      "line": 5.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Payton Tolle",
      "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": "Payton Tolle",
      "team_abbr": "BOS",
      "opponent_abbr": "DET",
      "sportsbook": "FanDuel",
      "line": 5.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Tarik Skubal",
      "team_abbr": "DET",
      "opponent_abbr": "BOS",
      "sportsbook": "BetMGM",
      "line": 7.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Tarik Skubal",
      "team_abbr": "DET",
      "opponent_abbr": "BOS",
      "sportsbook": "DraftKings",
      "line": 7.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Tarik Skubal",
      "team_abbr": "DET",
      "opponent_abbr": "BOS",
      "sportsbook": "FanDuel",
      "line": 7.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Trevor McDonald",
      "team_abbr": "SF",
      "opponent_abbr": "SD",
      "sportsbook": "BetMGM",
      "line": 3.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Trevor McDonald",
      "team_abbr": "SF",
      "opponent_abbr": "SD",
      "sportsbook": "DraftKings",
      "line": 3.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Trevor McDonald",
      "team_abbr": "SF",
      "opponent_abbr": "SD",
      "sportsbook": "FanDuel",
      "line": 3.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    }
  ]
}