{
  "date": "2026-06-08",
  "generated_at": "2026-06-08T08:02:28.174349",
  "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-06-08",
  "sportsbook_input_summary": {
    "input_type": "canonical_processed_sportsbook_input",
    "source_count": 1,
    "row_count": 77,
    "matched_count": 57,
    "unmatched_count": 20
  },
  "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": 57,
    "grouped_pitcher_count": 12,
    "sportsbook_count": 3
  },
  "edge_count": 57,
  "edges": [
    {
      "pitcher_name": "Kyle Harrison",
      "pitcher_id": 690986,
      "team_abbr": "MIL",
      "opponent_abbr": "ATH",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-08T11:59:09.000Z",
      "line": 6.5,
      "line_type": "half",
      "over_odds": -130,
      "under_odds": 106,
      "expected_strikeouts": 4.89,
      "baseline_projected_strikeouts": 4.75,
      "adjusted_projected_strikeouts": 4.89,
      "skill_score": 60.9,
      "opportunity_score": 49.5,
      "opponent_weakness_score": 37.4,
      "support_tier": "STRONG_SKILL",
      "support_label": "Strong Skill",
      "support_note": "Underlying strikeout skill is the clearest support input.",
      "suppression_score": 58.2,
      "suppression_tier": "HEAVY_SUPPRESSION",
      "suppression_label": "Heavy Suppression",
      "suppression_note": "Leash or workload context materially weakens the strikeout conversion path.",
      "interaction_tier": "SUPPRESSED_ALIGNMENT",
      "interaction_label": "Suppressed Alignment",
      "interaction_note": "Runway drag or weak alignment materially softens the strikeout path.",
      "trust_modifier": "SUPPRESSED",
      "trust_label": "Suppressed",
      "trust_note": "Leash or alignment drag is materially weakening the strikeout trust case.",
      "model_over_probability": 0.2407,
      "model_under_probability": 0.7593,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5652,
      "implied_under_probability_raw": 0.4854,
      "implied_over_probability_novig": 0.538,
      "implied_under_probability_novig": 0.462,
      "edge_over": -0.3245,
      "edge_under": 0.2739,
      "recommended_side": "Under",
      "recommended_edge": 0.2739,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.14,
      "adjustment_multiplier": 1.031,
      "aggregate_matchup_score": 45.9,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 12381.0,
      "lineup_expected_strikeouts": 5.21,
      "environment_summary": "neutral",
      "temperature_f": 65.5,
      "wind_speed_mph": 6.9,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Kyle Harrison",
      "pitcher_id": 690986,
      "team_abbr": "MIL",
      "opponent_abbr": "ATH",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-08T11:58:48.000Z",
      "line": 6.5,
      "line_type": "half",
      "over_odds": -140,
      "under_odds": 105,
      "expected_strikeouts": 4.89,
      "baseline_projected_strikeouts": 4.75,
      "adjusted_projected_strikeouts": 4.89,
      "skill_score": 60.9,
      "opportunity_score": 49.5,
      "opponent_weakness_score": 37.4,
      "support_tier": "STRONG_SKILL",
      "support_label": "Strong Skill",
      "support_note": "Underlying strikeout skill is the clearest support input.",
      "suppression_score": 58.2,
      "suppression_tier": "HEAVY_SUPPRESSION",
      "suppression_label": "Heavy Suppression",
      "suppression_note": "Leash or workload context materially weakens the strikeout conversion path.",
      "interaction_tier": "SUPPRESSED_ALIGNMENT",
      "interaction_label": "Suppressed Alignment",
      "interaction_note": "Runway drag or weak alignment materially softens the strikeout path.",
      "trust_modifier": "SUPPRESSED",
      "trust_label": "Suppressed",
      "trust_note": "Leash or alignment drag is materially weakening the strikeout trust case.",
      "model_over_probability": 0.2407,
      "model_under_probability": 0.7593,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5833,
      "implied_under_probability_raw": 0.4878,
      "implied_over_probability_novig": 0.5446,
      "implied_under_probability_novig": 0.4554,
      "edge_over": -0.3426,
      "edge_under": 0.2715,
      "recommended_side": "Under",
      "recommended_edge": 0.2715,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.14,
      "adjustment_multiplier": 1.031,
      "aggregate_matchup_score": 45.9,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 12381.0,
      "lineup_expected_strikeouts": 5.21,
      "environment_summary": "neutral",
      "temperature_f": 65.5,
      "wind_speed_mph": 6.9,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Kyle Harrison",
      "pitcher_id": 690986,
      "team_abbr": "MIL",
      "opponent_abbr": "ATH",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-08T11:58:15.000Z",
      "line": 6.5,
      "line_type": "half",
      "over_odds": -125,
      "under_odds": -102,
      "expected_strikeouts": 4.89,
      "baseline_projected_strikeouts": 4.75,
      "adjusted_projected_strikeouts": 4.89,
      "skill_score": 60.9,
      "opportunity_score": 49.5,
      "opponent_weakness_score": 37.4,
      "support_tier": "STRONG_SKILL",
      "support_label": "Strong Skill",
      "support_note": "Underlying strikeout skill is the clearest support input.",
      "suppression_score": 58.2,
      "suppression_tier": "HEAVY_SUPPRESSION",
      "suppression_label": "Heavy Suppression",
      "suppression_note": "Leash or workload context materially weakens the strikeout conversion path.",
      "interaction_tier": "SUPPRESSED_ALIGNMENT",
      "interaction_label": "Suppressed Alignment",
      "interaction_note": "Runway drag or weak alignment materially softens the strikeout path.",
      "trust_modifier": "SUPPRESSED",
      "trust_label": "Suppressed",
      "trust_note": "Leash or alignment drag is materially weakening the strikeout trust case.",
      "model_over_probability": 0.2407,
      "model_under_probability": 0.7593,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5556,
      "implied_under_probability_raw": 0.505,
      "implied_over_probability_novig": 0.5239,
      "implied_under_probability_novig": 0.4761,
      "edge_over": -0.3149,
      "edge_under": 0.2543,
      "recommended_side": "Under",
      "recommended_edge": 0.2543,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.14,
      "adjustment_multiplier": 1.031,
      "aggregate_matchup_score": 45.9,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 12381.0,
      "lineup_expected_strikeouts": 5.21,
      "environment_summary": "neutral",
      "temperature_f": 65.5,
      "wind_speed_mph": 6.9,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Emerson Hancock",
      "pitcher_id": 676106,
      "team_abbr": "SEA",
      "opponent_abbr": "BAL",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-08T11:58:58.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -147,
      "under_odds": 114,
      "expected_strikeouts": 3.97,
      "baseline_projected_strikeouts": 3.9,
      "adjusted_projected_strikeouts": 3.97,
      "skill_score": 23.2,
      "opportunity_score": 65.0,
      "opponent_weakness_score": 33.2,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 32.5,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.3651,
      "model_under_probability": 0.6349,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5951,
      "implied_under_probability_raw": 0.4673,
      "implied_over_probability_novig": 0.5601,
      "implied_under_probability_novig": 0.4399,
      "edge_over": -0.23,
      "edge_under": 0.1676,
      "recommended_side": "Under",
      "recommended_edge": 0.1676,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.07,
      "adjustment_multiplier": 1.019,
      "aggregate_matchup_score": 22.9,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 11123.0,
      "lineup_expected_strikeouts": 4.36,
      "environment_summary": "neutral",
      "temperature_f": 68.0,
      "wind_speed_mph": 7.4,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Emerson Hancock",
      "pitcher_id": 676106,
      "team_abbr": "SEA",
      "opponent_abbr": "BAL",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 4.5,
      "line_type": "half",
      "over_odds": -146,
      "under_odds": 110,
      "expected_strikeouts": 3.97,
      "baseline_projected_strikeouts": 3.9,
      "adjusted_projected_strikeouts": 3.97,
      "skill_score": 23.2,
      "opportunity_score": 65.0,
      "opponent_weakness_score": 33.2,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 32.5,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.3651,
      "model_under_probability": 0.6349,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5935,
      "implied_under_probability_raw": 0.4762,
      "implied_over_probability_novig": 0.5548,
      "implied_under_probability_novig": 0.4452,
      "edge_over": -0.2284,
      "edge_under": 0.1587,
      "recommended_side": "Under",
      "recommended_edge": 0.1587,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.07,
      "adjustment_multiplier": 1.019,
      "aggregate_matchup_score": 22.9,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 11123.0,
      "lineup_expected_strikeouts": 4.36,
      "environment_summary": "neutral",
      "temperature_f": 68.0,
      "wind_speed_mph": 7.4,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Emerson Hancock",
      "pitcher_id": 676106,
      "team_abbr": "SEA",
      "opponent_abbr": "BAL",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-08T11:58:56.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -146,
      "under_odds": 110,
      "expected_strikeouts": 3.97,
      "baseline_projected_strikeouts": 3.9,
      "adjusted_projected_strikeouts": 3.97,
      "skill_score": 23.2,
      "opportunity_score": 65.0,
      "opponent_weakness_score": 33.2,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 32.5,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.3651,
      "model_under_probability": 0.6349,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5935,
      "implied_under_probability_raw": 0.4762,
      "implied_over_probability_novig": 0.5548,
      "implied_under_probability_novig": 0.4452,
      "edge_over": -0.2284,
      "edge_under": 0.1587,
      "recommended_side": "Under",
      "recommended_edge": 0.1587,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.07,
      "adjustment_multiplier": 1.019,
      "aggregate_matchup_score": 22.9,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 11123.0,
      "lineup_expected_strikeouts": 4.36,
      "environment_summary": "neutral",
      "temperature_f": 68.0,
      "wind_speed_mph": 7.4,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Gavin Williams",
      "pitcher_id": 668909,
      "team_abbr": "CLE",
      "opponent_abbr": "NYY",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 6.5,
      "line_type": "half",
      "over_odds": -140,
      "under_odds": 110,
      "expected_strikeouts": 5.82,
      "baseline_projected_strikeouts": 5.9,
      "adjusted_projected_strikeouts": 5.82,
      "skill_score": 57.9,
      "opportunity_score": 80.5,
      "opponent_weakness_score": 31.8,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 10.3,
      "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.3676,
      "model_under_probability": 0.6324,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5833,
      "implied_under_probability_raw": 0.4762,
      "implied_over_probability_novig": 0.5505,
      "implied_under_probability_novig": 0.4495,
      "edge_over": -0.2157,
      "edge_under": 0.1562,
      "recommended_side": "Under",
      "recommended_edge": 0.1562,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.08,
      "adjustment_multiplier": 0.987,
      "aggregate_matchup_score": 43.6,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 24255.0,
      "lineup_expected_strikeouts": 5.77,
      "environment_summary": "neutral",
      "temperature_f": 79.0,
      "wind_speed_mph": 5.7,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Gavin Williams",
      "pitcher_id": 668909,
      "team_abbr": "CLE",
      "opponent_abbr": "NYY",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-08T11:59:08.000Z",
      "line": 6.5,
      "line_type": "half",
      "over_odds": -134,
      "under_odds": 110,
      "expected_strikeouts": 5.82,
      "baseline_projected_strikeouts": 5.9,
      "adjusted_projected_strikeouts": 5.82,
      "skill_score": 57.9,
      "opportunity_score": 80.5,
      "opponent_weakness_score": 31.8,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 10.3,
      "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.3676,
      "model_under_probability": 0.6324,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5726,
      "implied_under_probability_raw": 0.4762,
      "implied_over_probability_novig": 0.546,
      "implied_under_probability_novig": 0.454,
      "edge_over": -0.205,
      "edge_under": 0.1562,
      "recommended_side": "Under",
      "recommended_edge": 0.1562,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.08,
      "adjustment_multiplier": 0.987,
      "aggregate_matchup_score": 43.6,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 24255.0,
      "lineup_expected_strikeouts": 5.77,
      "environment_summary": "neutral",
      "temperature_f": 79.0,
      "wind_speed_mph": 5.7,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Walker Buehler",
      "pitcher_id": 621111,
      "team_abbr": "SD",
      "opponent_abbr": "CIN",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-08T11:58:18.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -122,
      "under_odds": -105,
      "expected_strikeouts": 3.83,
      "baseline_projected_strikeouts": 3.48,
      "adjusted_projected_strikeouts": 3.83,
      "skill_score": 9.1,
      "opportunity_score": 33.5,
      "opponent_weakness_score": 35.6,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 80.8,
      "suppression_tier": "HEAVY_SUPPRESSION",
      "suppression_label": "Heavy Suppression",
      "suppression_note": "Leash or workload context materially weakens the strikeout conversion path.",
      "interaction_tier": "SUPPRESSED_ALIGNMENT",
      "interaction_label": "Suppressed Alignment",
      "interaction_note": "Runway drag or weak alignment materially softens the strikeout path.",
      "trust_modifier": "SUPPRESSED",
      "trust_label": "Suppressed",
      "trust_note": "Leash or alignment drag is materially weakening the strikeout trust case.",
      "model_over_probability": 0.3406,
      "model_under_probability": 0.6594,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5495,
      "implied_under_probability_raw": 0.5122,
      "implied_over_probability_novig": 0.5176,
      "implied_under_probability_novig": 0.4824,
      "edge_over": -0.2089,
      "edge_under": 0.1472,
      "recommended_side": "Under",
      "recommended_edge": 0.1472,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.35,
      "adjustment_multiplier": 1.099,
      "aggregate_matchup_score": 32.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 15814.0,
      "lineup_expected_strikeouts": 4.62,
      "environment_summary": "neutral",
      "temperature_f": 60.1,
      "wind_speed_mph": 2.2,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Walker Buehler",
      "pitcher_id": 621111,
      "team_abbr": "SD",
      "opponent_abbr": "CIN",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-08T11:58:47.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -115,
      "under_odds": -105,
      "expected_strikeouts": 3.83,
      "baseline_projected_strikeouts": 3.48,
      "adjusted_projected_strikeouts": 3.83,
      "skill_score": 9.1,
      "opportunity_score": 33.5,
      "opponent_weakness_score": 35.6,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 80.8,
      "suppression_tier": "HEAVY_SUPPRESSION",
      "suppression_label": "Heavy Suppression",
      "suppression_note": "Leash or workload context materially weakens the strikeout conversion path.",
      "interaction_tier": "SUPPRESSED_ALIGNMENT",
      "interaction_label": "Suppressed Alignment",
      "interaction_note": "Runway drag or weak alignment materially softens the strikeout path.",
      "trust_modifier": "SUPPRESSED",
      "trust_label": "Suppressed",
      "trust_note": "Leash or alignment drag is materially weakening the strikeout trust case.",
      "model_over_probability": 0.3406,
      "model_under_probability": 0.6594,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5349,
      "implied_under_probability_raw": 0.5122,
      "implied_over_probability_novig": 0.5108,
      "implied_under_probability_novig": 0.4892,
      "edge_over": -0.1943,
      "edge_under": 0.1472,
      "recommended_side": "Under",
      "recommended_edge": 0.1472,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.35,
      "adjustment_multiplier": 1.099,
      "aggregate_matchup_score": 32.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 15814.0,
      "lineup_expected_strikeouts": 4.62,
      "environment_summary": "neutral",
      "temperature_f": 60.1,
      "wind_speed_mph": 2.2,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Gavin Williams",
      "pitcher_id": 668909,
      "team_abbr": "CLE",
      "opponent_abbr": "NYY",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-08T11:58:55.000Z",
      "line": 6.5,
      "line_type": "half",
      "over_odds": -135,
      "under_odds": 106,
      "expected_strikeouts": 5.82,
      "baseline_projected_strikeouts": 5.9,
      "adjusted_projected_strikeouts": 5.82,
      "skill_score": 57.9,
      "opportunity_score": 80.5,
      "opponent_weakness_score": 31.8,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 10.3,
      "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.3676,
      "model_under_probability": 0.6324,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5745,
      "implied_under_probability_raw": 0.4854,
      "implied_over_probability_novig": 0.542,
      "implied_under_probability_novig": 0.458,
      "edge_over": -0.2069,
      "edge_under": 0.147,
      "recommended_side": "Under",
      "recommended_edge": 0.147,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.08,
      "adjustment_multiplier": 0.987,
      "aggregate_matchup_score": 43.6,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 24255.0,
      "lineup_expected_strikeouts": 5.77,
      "environment_summary": "neutral",
      "temperature_f": 79.0,
      "wind_speed_mph": 5.7,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Cristopher S\u00e1nchez",
      "pitcher_id": 650911,
      "team_abbr": "PHI",
      "opponent_abbr": "TOR",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-08T11:57:30.000Z",
      "line": 6.5,
      "line_type": "half",
      "over_odds": -120,
      "under_odds": -106,
      "expected_strikeouts": 5.71,
      "baseline_projected_strikeouts": 5.84,
      "adjusted_projected_strikeouts": 5.71,
      "skill_score": 71.5,
      "opportunity_score": 88.8,
      "opponent_weakness_score": 36.9,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 8.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.3524,
      "model_under_probability": 0.6476,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5455,
      "implied_under_probability_raw": 0.5146,
      "implied_over_probability_novig": 0.5146,
      "implied_under_probability_novig": 0.4854,
      "edge_over": -0.1931,
      "edge_under": 0.133,
      "recommended_side": "Under",
      "recommended_edge": 0.133,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.13,
      "adjustment_multiplier": 0.977,
      "aggregate_matchup_score": 59.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 30021.0,
      "lineup_expected_strikeouts": 5.33,
      "environment_summary": "neutral",
      "temperature_f": 60.4,
      "wind_speed_mph": 5.3,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Gavin Williams",
      "pitcher_id": 668909,
      "team_abbr": "CLE",
      "opponent_abbr": "NYY",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-08T11:58:58.000Z",
      "line": 6.5,
      "line_type": "half",
      "over_odds": -135,
      "under_odds": 100,
      "expected_strikeouts": 5.82,
      "baseline_projected_strikeouts": 5.9,
      "adjusted_projected_strikeouts": 5.82,
      "skill_score": 57.9,
      "opportunity_score": 80.5,
      "opponent_weakness_score": 31.8,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 10.3,
      "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.3676,
      "model_under_probability": 0.6324,
      "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.2069,
      "edge_under": 0.1324,
      "recommended_side": "Under",
      "recommended_edge": 0.1324,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.08,
      "adjustment_multiplier": 0.987,
      "aggregate_matchup_score": 43.6,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 24255.0,
      "lineup_expected_strikeouts": 5.77,
      "environment_summary": "neutral",
      "temperature_f": 79.0,
      "wind_speed_mph": 5.7,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Walker Buehler",
      "pitcher_id": 621111,
      "team_abbr": "SD",
      "opponent_abbr": "CIN",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-08T11:58:41.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -115,
      "under_odds": -115,
      "expected_strikeouts": 3.83,
      "baseline_projected_strikeouts": 3.48,
      "adjusted_projected_strikeouts": 3.83,
      "skill_score": 9.1,
      "opportunity_score": 33.5,
      "opponent_weakness_score": 35.6,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 80.8,
      "suppression_tier": "HEAVY_SUPPRESSION",
      "suppression_label": "Heavy Suppression",
      "suppression_note": "Leash or workload context materially weakens the strikeout conversion path.",
      "interaction_tier": "SUPPRESSED_ALIGNMENT",
      "interaction_label": "Suppressed Alignment",
      "interaction_note": "Runway drag or weak alignment materially softens the strikeout path.",
      "trust_modifier": "SUPPRESSED",
      "trust_label": "Suppressed",
      "trust_note": "Leash or alignment drag is materially weakening the strikeout trust case.",
      "model_over_probability": 0.3406,
      "model_under_probability": 0.6594,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5349,
      "implied_under_probability_raw": 0.5349,
      "implied_over_probability_novig": 0.5,
      "implied_under_probability_novig": 0.5,
      "edge_over": -0.1943,
      "edge_under": 0.1245,
      "recommended_side": "Under",
      "recommended_edge": 0.1245,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.35,
      "adjustment_multiplier": 1.099,
      "aggregate_matchup_score": 32.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 15814.0,
      "lineup_expected_strikeouts": 4.62,
      "environment_summary": "neutral",
      "temperature_f": 60.1,
      "wind_speed_mph": 2.2,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Cristopher S\u00e1nchez",
      "pitcher_id": 650911,
      "team_abbr": "PHI",
      "opponent_abbr": "TOR",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-08T11:59:07.000Z",
      "line": 6.5,
      "line_type": "half",
      "over_odds": -108,
      "under_odds": -122,
      "expected_strikeouts": 5.71,
      "baseline_projected_strikeouts": 5.84,
      "adjusted_projected_strikeouts": 5.71,
      "skill_score": 71.5,
      "opportunity_score": 88.8,
      "opponent_weakness_score": 36.9,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 8.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.3524,
      "model_under_probability": 0.6476,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5192,
      "implied_under_probability_raw": 0.5495,
      "implied_over_probability_novig": 0.4858,
      "implied_under_probability_novig": 0.5142,
      "edge_over": -0.1668,
      "edge_under": 0.0981,
      "recommended_side": "Under",
      "recommended_edge": 0.0981,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.13,
      "adjustment_multiplier": 0.977,
      "aggregate_matchup_score": 59.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 30021.0,
      "lineup_expected_strikeouts": 5.33,
      "environment_summary": "neutral",
      "temperature_f": 60.4,
      "wind_speed_mph": 5.3,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Cristopher S\u00e1nchez",
      "pitcher_id": 650911,
      "team_abbr": "PHI",
      "opponent_abbr": "TOR",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-08T11:58:38.000Z",
      "line": 6.5,
      "line_type": "half",
      "over_odds": -105,
      "under_odds": -125,
      "expected_strikeouts": 5.71,
      "baseline_projected_strikeouts": 5.84,
      "adjusted_projected_strikeouts": 5.71,
      "skill_score": 71.5,
      "opportunity_score": 88.8,
      "opponent_weakness_score": 36.9,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 8.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.3524,
      "model_under_probability": 0.6476,
      "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.1598,
      "edge_under": 0.092,
      "recommended_side": "Under",
      "recommended_edge": 0.092,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.13,
      "adjustment_multiplier": 0.977,
      "aggregate_matchup_score": 59.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 30021.0,
      "lineup_expected_strikeouts": 5.33,
      "environment_summary": "neutral",
      "temperature_f": 60.4,
      "wind_speed_mph": 5.3,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Andrew Abbott",
      "pitcher_id": 671096,
      "team_abbr": "CIN",
      "opponent_abbr": "SD",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-08T11:58:41.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 105,
      "under_odds": -140,
      "expected_strikeouts": 3.95,
      "baseline_projected_strikeouts": 3.63,
      "adjusted_projected_strikeouts": 3.95,
      "skill_score": 12.7,
      "opportunity_score": 57.1,
      "opponent_weakness_score": 37.8,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 44.9,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.3616,
      "model_under_probability": 0.6384,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4878,
      "implied_under_probability_raw": 0.5833,
      "implied_over_probability_novig": 0.4554,
      "implied_under_probability_novig": 0.5446,
      "edge_over": -0.1262,
      "edge_under": 0.0551,
      "recommended_side": "Under",
      "recommended_edge": 0.0551,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.32,
      "adjustment_multiplier": 1.087,
      "aggregate_matchup_score": 39.8,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 28405.0,
      "lineup_expected_strikeouts": 4.63,
      "environment_summary": "neutral",
      "temperature_f": 60.1,
      "wind_speed_mph": 2.2,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Andrew Abbott",
      "pitcher_id": 671096,
      "team_abbr": "CIN",
      "opponent_abbr": "SD",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-08T11:58:18.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 109,
      "under_odds": -140,
      "expected_strikeouts": 3.95,
      "baseline_projected_strikeouts": 3.63,
      "adjusted_projected_strikeouts": 3.95,
      "skill_score": 12.7,
      "opportunity_score": 57.1,
      "opponent_weakness_score": 37.8,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 44.9,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.3616,
      "model_under_probability": 0.6384,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4785,
      "implied_under_probability_raw": 0.5833,
      "implied_over_probability_novig": 0.4506,
      "implied_under_probability_novig": 0.5494,
      "edge_over": -0.1169,
      "edge_under": 0.0551,
      "recommended_side": "Under",
      "recommended_edge": 0.0551,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.32,
      "adjustment_multiplier": 1.087,
      "aggregate_matchup_score": 39.8,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 28405.0,
      "lineup_expected_strikeouts": 4.63,
      "environment_summary": "neutral",
      "temperature_f": 60.1,
      "wind_speed_mph": 2.2,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Andrew Abbott",
      "pitcher_id": 671096,
      "team_abbr": "CIN",
      "opponent_abbr": "SD",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-08T11:58:47.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 116,
      "under_odds": -142,
      "expected_strikeouts": 3.95,
      "baseline_projected_strikeouts": 3.63,
      "adjusted_projected_strikeouts": 3.95,
      "skill_score": 12.7,
      "opportunity_score": 57.1,
      "opponent_weakness_score": 37.8,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 44.9,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.3616,
      "model_under_probability": 0.6384,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.463,
      "implied_under_probability_raw": 0.5868,
      "implied_over_probability_novig": 0.441,
      "implied_under_probability_novig": 0.559,
      "edge_over": -0.1014,
      "edge_under": 0.0516,
      "recommended_side": "Under",
      "recommended_edge": 0.0516,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.32,
      "adjustment_multiplier": 1.087,
      "aggregate_matchup_score": 39.8,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 28405.0,
      "lineup_expected_strikeouts": 4.63,
      "environment_summary": "neutral",
      "temperature_f": 60.1,
      "wind_speed_mph": 2.2,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Will Warren",
      "pitcher_id": 701542,
      "team_abbr": "NYY",
      "opponent_abbr": "CLE",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 6.5,
      "line_type": "half",
      "over_odds": 430,
      "under_odds": null,
      "expected_strikeouts": 4.79,
      "baseline_projected_strikeouts": 4.74,
      "adjusted_projected_strikeouts": 4.79,
      "skill_score": 38.2,
      "opportunity_score": 53.1,
      "opponent_weakness_score": 36.4,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 44.8,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.2276,
      "model_under_probability": 0.7724,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.1887,
      "implied_under_probability_raw": null,
      "implied_over_probability_novig": null,
      "implied_under_probability_novig": null,
      "edge_over": 0.0389,
      "edge_under": null,
      "recommended_side": "Over",
      "recommended_edge": 0.0389,
      "play_tier": "Play",
      "no_play_reason": null,
      "adjustment_delta": 0.05,
      "adjustment_multiplier": 1.011,
      "aggregate_matchup_score": 49.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 15754.0,
      "lineup_expected_strikeouts": 4.89,
      "environment_summary": "neutral",
      "temperature_f": 79.0,
      "wind_speed_mph": 5.7,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Will Warren",
      "pitcher_id": 701542,
      "team_abbr": "NYY",
      "opponent_abbr": "CLE",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 5.5,
      "line_type": "half",
      "over_odds": 220,
      "under_odds": null,
      "expected_strikeouts": 4.79,
      "baseline_projected_strikeouts": 4.74,
      "adjusted_projected_strikeouts": 4.79,
      "skill_score": 38.2,
      "opportunity_score": 53.1,
      "opponent_weakness_score": 36.4,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 44.8,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.3507,
      "model_under_probability": 0.6493,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.3125,
      "implied_under_probability_raw": null,
      "implied_over_probability_novig": null,
      "implied_under_probability_novig": null,
      "edge_over": 0.0382,
      "edge_under": null,
      "recommended_side": "Over",
      "recommended_edge": 0.0382,
      "play_tier": "Play",
      "no_play_reason": null,
      "adjustment_delta": 0.05,
      "adjustment_multiplier": 1.011,
      "aggregate_matchup_score": 49.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 15754.0,
      "lineup_expected_strikeouts": 4.89,
      "environment_summary": "neutral",
      "temperature_f": 79.0,
      "wind_speed_mph": 5.7,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Patrick Corbin",
      "pitcher_id": 571578,
      "team_abbr": "TOR",
      "opponent_abbr": "PHI",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 6.5,
      "line_type": "half",
      "over_odds": 630,
      "under_odds": null,
      "expected_strikeouts": 4.33,
      "baseline_projected_strikeouts": 4.11,
      "adjusted_projected_strikeouts": 4.33,
      "skill_score": 9.8,
      "opportunity_score": 35.3,
      "opponent_weakness_score": 35.6,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 71.5,
      "suppression_tier": "HEAVY_SUPPRESSION",
      "suppression_label": "Heavy Suppression",
      "suppression_note": "Leash or workload context materially weakens the strikeout conversion path.",
      "interaction_tier": "SUPPRESSED_ALIGNMENT",
      "interaction_label": "Suppressed Alignment",
      "interaction_note": "Runway drag or weak alignment materially softens the strikeout path.",
      "trust_modifier": "SUPPRESSED",
      "trust_label": "Suppressed",
      "trust_note": "Leash or alignment drag is materially weakening the strikeout trust case.",
      "model_over_probability": 0.1702,
      "model_under_probability": 0.8298,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.137,
      "implied_under_probability_raw": null,
      "implied_over_probability_novig": null,
      "implied_under_probability_novig": null,
      "edge_over": 0.0332,
      "edge_under": null,
      "recommended_side": "Over",
      "recommended_edge": 0.0332,
      "play_tier": "Play",
      "no_play_reason": null,
      "adjustment_delta": 0.22,
      "adjustment_multiplier": 1.055,
      "aggregate_matchup_score": 30.2,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 33148.0,
      "lineup_expected_strikeouts": 4.95,
      "environment_summary": "neutral",
      "temperature_f": 60.4,
      "wind_speed_mph": 5.3,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Patrick Corbin",
      "pitcher_id": 571578,
      "team_abbr": "TOR",
      "opponent_abbr": "PHI",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 5.5,
      "line_type": "half",
      "over_odds": 300,
      "under_odds": null,
      "expected_strikeouts": 4.33,
      "baseline_projected_strikeouts": 4.11,
      "adjusted_projected_strikeouts": 4.33,
      "skill_score": 9.8,
      "opportunity_score": 35.3,
      "opponent_weakness_score": 35.6,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 71.5,
      "suppression_tier": "HEAVY_SUPPRESSION",
      "suppression_label": "Heavy Suppression",
      "suppression_note": "Leash or workload context materially weakens the strikeout conversion path.",
      "interaction_tier": "SUPPRESSED_ALIGNMENT",
      "interaction_label": "Suppressed Alignment",
      "interaction_note": "Runway drag or weak alignment materially softens the strikeout path.",
      "trust_modifier": "SUPPRESSED",
      "trust_label": "Suppressed",
      "trust_note": "Leash or alignment drag is materially weakening the strikeout trust case.",
      "model_over_probability": 0.28,
      "model_under_probability": 0.72,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.25,
      "implied_under_probability_raw": null,
      "implied_over_probability_novig": null,
      "implied_under_probability_novig": null,
      "edge_over": 0.03,
      "edge_under": null,
      "recommended_side": "Over",
      "recommended_edge": 0.03,
      "play_tier": "Play",
      "no_play_reason": null,
      "adjustment_delta": 0.22,
      "adjustment_multiplier": 1.055,
      "aggregate_matchup_score": 30.2,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 33148.0,
      "lineup_expected_strikeouts": 4.95,
      "environment_summary": "neutral",
      "temperature_f": 60.4,
      "wind_speed_mph": 5.3,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Will Warren",
      "pitcher_id": 701542,
      "team_abbr": "NYY",
      "opponent_abbr": "CLE",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-08T11:58:55.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 109,
      "under_odds": -140,
      "expected_strikeouts": 4.79,
      "baseline_projected_strikeouts": 4.74,
      "adjusted_projected_strikeouts": 4.79,
      "skill_score": 38.2,
      "opportunity_score": 53.1,
      "opponent_weakness_score": 36.4,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 44.8,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.5033,
      "model_under_probability": 0.4967,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4785,
      "implied_under_probability_raw": 0.5833,
      "implied_over_probability_novig": 0.4506,
      "implied_under_probability_novig": 0.5494,
      "edge_over": 0.0248,
      "edge_under": -0.0866,
      "recommended_side": "Over",
      "recommended_edge": 0.0248,
      "play_tier": "Lean",
      "no_play_reason": null,
      "adjustment_delta": 0.05,
      "adjustment_multiplier": 1.011,
      "aggregate_matchup_score": 49.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 15754.0,
      "lineup_expected_strikeouts": 4.89,
      "environment_summary": "neutral",
      "temperature_f": 79.0,
      "wind_speed_mph": 5.7,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Spencer Arrighetti",
      "pitcher_id": 681293,
      "team_abbr": "HOU",
      "opponent_abbr": "LAA",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-08T11:59:07.000Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -110,
      "under_odds": -118,
      "expected_strikeouts": 5.37,
      "baseline_projected_strikeouts": 4.81,
      "adjusted_projected_strikeouts": 5.37,
      "skill_score": 22.5,
      "opportunity_score": 62.8,
      "opponent_weakness_score": 47.0,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 30.7,
      "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.439,
      "model_under_probability": 0.561,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5238,
      "implied_under_probability_raw": 0.5413,
      "implied_over_probability_novig": 0.4918,
      "implied_under_probability_novig": 0.5082,
      "edge_over": -0.0848,
      "edge_under": 0.0197,
      "recommended_side": "Under",
      "recommended_edge": 0.0197,
      "play_tier": "Lean",
      "no_play_reason": null,
      "adjustment_delta": 0.56,
      "adjustment_multiplier": 1.116,
      "aggregate_matchup_score": 59.9,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 12902.0,
      "lineup_expected_strikeouts": 6.29,
      "environment_summary": "neutral",
      "temperature_f": 61.9,
      "wind_speed_mph": 3.4,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Logan Webb",
      "pitcher_id": 657277,
      "team_abbr": "SF",
      "opponent_abbr": "WSH",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-08T11:58:52.000Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": 120,
      "under_odds": -148,
      "expected_strikeouts": 5.59,
      "baseline_projected_strikeouts": 5.69,
      "adjusted_projected_strikeouts": 5.59,
      "skill_score": 23.4,
      "opportunity_score": 70.4,
      "opponent_weakness_score": 36.0,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 22.4,
      "suppression_tier": "CLEAR_RUNWAY",
      "suppression_label": "Clear Runway",
      "suppression_note": "Workload and leash context support the strikeout projection cleanly.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.4714,
      "model_under_probability": 0.5286,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4545,
      "implied_under_probability_raw": 0.5968,
      "implied_over_probability_novig": 0.4323,
      "implied_under_probability_novig": 0.5677,
      "edge_over": 0.0169,
      "edge_under": -0.0682,
      "recommended_side": "Over",
      "recommended_edge": 0.0169,
      "play_tier": "Lean",
      "no_play_reason": null,
      "adjustment_delta": -0.1,
      "adjustment_multiplier": 0.982,
      "aggregate_matchup_score": 56.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 38756.0,
      "lineup_expected_strikeouts": 5.31,
      "environment_summary": "pitcher-friendly",
      "temperature_f": 56.8,
      "wind_speed_mph": 5.8,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Spencer Arrighetti",
      "pitcher_id": 681293,
      "team_abbr": "HOU",
      "opponent_abbr": "LAA",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-08T11:59:09.000Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -102,
      "under_odds": -120,
      "expected_strikeouts": 5.37,
      "baseline_projected_strikeouts": 4.81,
      "adjusted_projected_strikeouts": 5.37,
      "skill_score": 22.5,
      "opportunity_score": 62.8,
      "opponent_weakness_score": 47.0,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 30.7,
      "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.439,
      "model_under_probability": 0.561,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.505,
      "implied_under_probability_raw": 0.5455,
      "implied_over_probability_novig": 0.4807,
      "implied_under_probability_novig": 0.5193,
      "edge_over": -0.066,
      "edge_under": 0.0155,
      "recommended_side": "Under",
      "recommended_edge": 0.0155,
      "play_tier": "Lean",
      "no_play_reason": null,
      "adjustment_delta": 0.56,
      "adjustment_multiplier": 1.116,
      "aggregate_matchup_score": 59.9,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 12902.0,
      "lineup_expected_strikeouts": 6.29,
      "environment_summary": "neutral",
      "temperature_f": 61.9,
      "wind_speed_mph": 3.4,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Will Warren",
      "pitcher_id": 701542,
      "team_abbr": "NYY",
      "opponent_abbr": "CLE",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-08T11:58:58.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 105,
      "under_odds": -140,
      "expected_strikeouts": 4.79,
      "baseline_projected_strikeouts": 4.74,
      "adjusted_projected_strikeouts": 4.79,
      "skill_score": 38.2,
      "opportunity_score": 53.1,
      "opponent_weakness_score": 36.4,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 44.8,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.5033,
      "model_under_probability": 0.4967,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4878,
      "implied_under_probability_raw": 0.5833,
      "implied_over_probability_novig": 0.4554,
      "implied_under_probability_novig": 0.5446,
      "edge_over": 0.0155,
      "edge_under": -0.0866,
      "recommended_side": "Over",
      "recommended_edge": 0.0155,
      "play_tier": "Lean",
      "no_play_reason": null,
      "adjustment_delta": 0.05,
      "adjustment_multiplier": 1.011,
      "aggregate_matchup_score": 49.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 15754.0,
      "lineup_expected_strikeouts": 4.89,
      "environment_summary": "neutral",
      "temperature_f": 79.0,
      "wind_speed_mph": 5.7,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Jeffrey Springs",
      "pitcher_id": 605488,
      "team_abbr": "ATH",
      "opponent_abbr": "MIL",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-08T11:58:15.000Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -158,
      "under_odds": 124,
      "expected_strikeouts": 4.48,
      "baseline_projected_strikeouts": 4.68,
      "adjusted_projected_strikeouts": 4.48,
      "skill_score": 20.1,
      "opportunity_score": 55.8,
      "opponent_weakness_score": 25.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": 41.2,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.6238,
      "model_under_probability": 0.3762,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6124,
      "implied_under_probability_raw": 0.4464,
      "implied_over_probability_novig": 0.5784,
      "implied_under_probability_novig": 0.4216,
      "edge_over": 0.0114,
      "edge_under": -0.0702,
      "recommended_side": "No Play",
      "recommended_edge": 0.0114,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": -0.2,
      "adjustment_multiplier": 0.958,
      "aggregate_matchup_score": 33.2,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 16173.0,
      "lineup_expected_strikeouts": 4.29,
      "environment_summary": "neutral",
      "temperature_f": 65.5,
      "wind_speed_mph": 6.9,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Logan Webb",
      "pitcher_id": 657277,
      "team_abbr": "SF",
      "opponent_abbr": "WSH",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-08T11:58:03.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -160,
      "under_odds": 120,
      "expected_strikeouts": 5.59,
      "baseline_projected_strikeouts": 5.69,
      "adjusted_projected_strikeouts": 5.59,
      "skill_score": 23.4,
      "opportunity_score": 70.4,
      "opponent_weakness_score": 36.0,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 22.4,
      "suppression_tier": "CLEAR_RUNWAY",
      "suppression_label": "Clear Runway",
      "suppression_note": "Workload and leash context support the strikeout projection cleanly.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.6209,
      "model_under_probability": 0.3791,
      "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.0055,
      "edge_under": -0.0754,
      "recommended_side": "No Play",
      "recommended_edge": 0.0055,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": -0.1,
      "adjustment_multiplier": 0.982,
      "aggregate_matchup_score": 56.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 38756.0,
      "lineup_expected_strikeouts": 5.31,
      "environment_summary": "pitcher-friendly",
      "temperature_f": 56.8,
      "wind_speed_mph": 5.8,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Patrick Corbin",
      "pitcher_id": 571578,
      "team_abbr": "TOR",
      "opponent_abbr": "PHI",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 4.5,
      "line_type": "half",
      "over_odds": 132,
      "under_odds": null,
      "expected_strikeouts": 4.33,
      "baseline_projected_strikeouts": 4.11,
      "adjusted_projected_strikeouts": 4.33,
      "skill_score": 9.8,
      "opportunity_score": 35.3,
      "opponent_weakness_score": 35.6,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 71.5,
      "suppression_tier": "HEAVY_SUPPRESSION",
      "suppression_label": "Heavy Suppression",
      "suppression_note": "Leash or workload context materially weakens the strikeout conversion path.",
      "interaction_tier": "SUPPRESSED_ALIGNMENT",
      "interaction_label": "Suppressed Alignment",
      "interaction_note": "Runway drag or weak alignment materially softens the strikeout path.",
      "trust_modifier": "SUPPRESSED",
      "trust_label": "Suppressed",
      "trust_note": "Leash or alignment drag is materially weakening the strikeout trust case.",
      "model_over_probability": 0.4274,
      "model_under_probability": 0.5726,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.431,
      "implied_under_probability_raw": null,
      "implied_over_probability_novig": null,
      "implied_under_probability_novig": null,
      "edge_over": -0.0036,
      "edge_under": null,
      "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.22,
      "adjustment_multiplier": 1.055,
      "aggregate_matchup_score": 30.2,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 33148.0,
      "lineup_expected_strikeouts": 4.95,
      "environment_summary": "neutral",
      "temperature_f": 60.4,
      "wind_speed_mph": 5.3,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Will Warren",
      "pitcher_id": 701542,
      "team_abbr": "NYY",
      "opponent_abbr": "CLE",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 4.5,
      "line_type": "half",
      "over_odds": -104,
      "under_odds": -128,
      "expected_strikeouts": 4.79,
      "baseline_projected_strikeouts": 4.74,
      "adjusted_projected_strikeouts": 4.79,
      "skill_score": 38.2,
      "opportunity_score": 53.1,
      "opponent_weakness_score": 36.4,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 44.8,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.5033,
      "model_under_probability": 0.4967,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5098,
      "implied_under_probability_raw": 0.5614,
      "implied_over_probability_novig": 0.4759,
      "implied_under_probability_novig": 0.5241,
      "edge_over": -0.0065,
      "edge_under": -0.0647,
      "recommended_side": "No Play",
      "recommended_edge": -0.0065,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.05,
      "adjustment_multiplier": 1.011,
      "aggregate_matchup_score": 49.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 15754.0,
      "lineup_expected_strikeouts": 4.89,
      "environment_summary": "neutral",
      "temperature_f": 79.0,
      "wind_speed_mph": 5.7,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Will Warren",
      "pitcher_id": 701542,
      "team_abbr": "NYY",
      "opponent_abbr": "CLE",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-08T11:59:08.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -104,
      "under_odds": -128,
      "expected_strikeouts": 4.79,
      "baseline_projected_strikeouts": 4.74,
      "adjusted_projected_strikeouts": 4.79,
      "skill_score": 38.2,
      "opportunity_score": 53.1,
      "opponent_weakness_score": 36.4,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 44.8,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.5033,
      "model_under_probability": 0.4967,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5098,
      "implied_under_probability_raw": 0.5614,
      "implied_over_probability_novig": 0.4759,
      "implied_under_probability_novig": 0.5241,
      "edge_over": -0.0065,
      "edge_under": -0.0647,
      "recommended_side": "No Play",
      "recommended_edge": -0.0065,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.05,
      "adjustment_multiplier": 1.011,
      "aggregate_matchup_score": 49.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 15754.0,
      "lineup_expected_strikeouts": 4.89,
      "environment_summary": "neutral",
      "temperature_f": 79.0,
      "wind_speed_mph": 5.7,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Miles Mikolas",
      "pitcher_id": 571945,
      "team_abbr": "WSH",
      "opponent_abbr": "SF",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-08T11:58:51.000Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": 121,
      "under_odds": -155,
      "expected_strikeouts": 3.23,
      "baseline_projected_strikeouts": 3.0,
      "adjusted_projected_strikeouts": 3.23,
      "skill_score": 16.4,
      "opportunity_score": 18.6,
      "opponent_weakness_score": 35.6,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 93.7,
      "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.3991,
      "model_under_probability": 0.6009,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4525,
      "implied_under_probability_raw": 0.6078,
      "implied_over_probability_novig": 0.4268,
      "implied_under_probability_novig": 0.5732,
      "edge_over": -0.0534,
      "edge_under": -0.0069,
      "recommended_side": "No Play",
      "recommended_edge": -0.0069,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.23,
      "adjustment_multiplier": 1.077,
      "aggregate_matchup_score": 31.1,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 32803.0,
      "lineup_expected_strikeouts": 3.8,
      "environment_summary": "pitcher-friendly",
      "temperature_f": 56.8,
      "wind_speed_mph": 5.8,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Spencer Arrighetti",
      "pitcher_id": 681293,
      "team_abbr": "HOU",
      "opponent_abbr": "LAA",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-08T11:58:19.000Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": 104,
      "under_odds": -133,
      "expected_strikeouts": 5.37,
      "baseline_projected_strikeouts": 4.81,
      "adjusted_projected_strikeouts": 5.37,
      "skill_score": 22.5,
      "opportunity_score": 62.8,
      "opponent_weakness_score": 47.0,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 30.7,
      "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.439,
      "model_under_probability": 0.561,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4902,
      "implied_under_probability_raw": 0.5708,
      "implied_over_probability_novig": 0.462,
      "implied_under_probability_novig": 0.538,
      "edge_over": -0.0512,
      "edge_under": -0.0098,
      "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.56,
      "adjustment_multiplier": 1.116,
      "aggregate_matchup_score": 59.9,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 12902.0,
      "lineup_expected_strikeouts": 6.29,
      "environment_summary": "neutral",
      "temperature_f": 61.9,
      "wind_speed_mph": 3.4,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Jeffrey Springs",
      "pitcher_id": 605488,
      "team_abbr": "ATH",
      "opponent_abbr": "MIL",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-08T11:59:09.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 116,
      "under_odds": -142,
      "expected_strikeouts": 4.48,
      "baseline_projected_strikeouts": 4.68,
      "adjusted_projected_strikeouts": 4.48,
      "skill_score": 20.1,
      "opportunity_score": 55.8,
      "opponent_weakness_score": 25.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": 41.2,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.4527,
      "model_under_probability": 0.5473,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.463,
      "implied_under_probability_raw": 0.5868,
      "implied_over_probability_novig": 0.441,
      "implied_under_probability_novig": 0.559,
      "edge_over": -0.0103,
      "edge_under": -0.0395,
      "recommended_side": "No Play",
      "recommended_edge": -0.0103,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": -0.2,
      "adjustment_multiplier": 0.958,
      "aggregate_matchup_score": 33.2,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 16173.0,
      "lineup_expected_strikeouts": 4.29,
      "environment_summary": "neutral",
      "temperature_f": 65.5,
      "wind_speed_mph": 6.9,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Patrick Corbin",
      "pitcher_id": 571578,
      "team_abbr": "TOR",
      "opponent_abbr": "PHI",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-08T11:57:30.000Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -164,
      "under_odds": 129,
      "expected_strikeouts": 4.33,
      "baseline_projected_strikeouts": 4.11,
      "adjusted_projected_strikeouts": 4.33,
      "skill_score": 9.8,
      "opportunity_score": 35.3,
      "opponent_weakness_score": 35.6,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 71.5,
      "suppression_tier": "HEAVY_SUPPRESSION",
      "suppression_label": "Heavy Suppression",
      "suppression_note": "Leash or workload context materially weakens the strikeout conversion path.",
      "interaction_tier": "SUPPRESSED_ALIGNMENT",
      "interaction_label": "Suppressed Alignment",
      "interaction_note": "Runway drag or weak alignment materially softens the strikeout path.",
      "trust_modifier": "SUPPRESSED",
      "trust_label": "Suppressed",
      "trust_note": "Leash or alignment drag is materially weakening the strikeout trust case.",
      "model_over_probability": 0.6003,
      "model_under_probability": 0.3997,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6212,
      "implied_under_probability_raw": 0.4367,
      "implied_over_probability_novig": 0.5872,
      "implied_under_probability_novig": 0.4128,
      "edge_over": -0.0209,
      "edge_under": -0.037,
      "recommended_side": "No Play",
      "recommended_edge": -0.0209,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.22,
      "adjustment_multiplier": 1.055,
      "aggregate_matchup_score": 30.2,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 33148.0,
      "lineup_expected_strikeouts": 4.95,
      "environment_summary": "neutral",
      "temperature_f": 60.4,
      "wind_speed_mph": 5.3,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Patrick Corbin",
      "pitcher_id": 571578,
      "team_abbr": "TOR",
      "opponent_abbr": "PHI",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-08T11:59:07.000Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -164,
      "under_odds": 134,
      "expected_strikeouts": 4.33,
      "baseline_projected_strikeouts": 4.11,
      "adjusted_projected_strikeouts": 4.33,
      "skill_score": 9.8,
      "opportunity_score": 35.3,
      "opponent_weakness_score": 35.6,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 71.5,
      "suppression_tier": "HEAVY_SUPPRESSION",
      "suppression_label": "Heavy Suppression",
      "suppression_note": "Leash or workload context materially weakens the strikeout conversion path.",
      "interaction_tier": "SUPPRESSED_ALIGNMENT",
      "interaction_label": "Suppressed Alignment",
      "interaction_note": "Runway drag or weak alignment materially softens the strikeout path.",
      "trust_modifier": "SUPPRESSED",
      "trust_label": "Suppressed",
      "trust_note": "Leash or alignment drag is materially weakening the strikeout trust case.",
      "model_over_probability": 0.6003,
      "model_under_probability": 0.3997,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6212,
      "implied_under_probability_raw": 0.4274,
      "implied_over_probability_novig": 0.5924,
      "implied_under_probability_novig": 0.4076,
      "edge_over": -0.0209,
      "edge_under": -0.0277,
      "recommended_side": "No Play",
      "recommended_edge": -0.0209,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.22,
      "adjustment_multiplier": 1.055,
      "aggregate_matchup_score": 30.2,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 33148.0,
      "lineup_expected_strikeouts": 4.95,
      "environment_summary": "neutral",
      "temperature_f": 60.4,
      "wind_speed_mph": 5.3,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Miles Mikolas",
      "pitcher_id": 571945,
      "team_abbr": "WSH",
      "opponent_abbr": "SF",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-08T11:58:52.000Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": 138,
      "under_odds": -170,
      "expected_strikeouts": 3.23,
      "baseline_projected_strikeouts": 3.0,
      "adjusted_projected_strikeouts": 3.23,
      "skill_score": 16.4,
      "opportunity_score": 18.6,
      "opponent_weakness_score": 35.6,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 93.7,
      "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.3991,
      "model_under_probability": 0.6009,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4202,
      "implied_under_probability_raw": 0.6296,
      "implied_over_probability_novig": 0.4003,
      "implied_under_probability_novig": 0.5997,
      "edge_over": -0.0211,
      "edge_under": -0.0287,
      "recommended_side": "No Play",
      "recommended_edge": -0.0211,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.23,
      "adjustment_multiplier": 1.077,
      "aggregate_matchup_score": 31.1,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 32803.0,
      "lineup_expected_strikeouts": 3.8,
      "environment_summary": "pitcher-friendly",
      "temperature_f": 56.8,
      "wind_speed_mph": 5.8,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Logan Webb",
      "pitcher_id": 657277,
      "team_abbr": "SF",
      "opponent_abbr": "WSH",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-08T11:58:51.000Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -103,
      "under_odds": -124,
      "expected_strikeouts": 5.59,
      "baseline_projected_strikeouts": 5.69,
      "adjusted_projected_strikeouts": 5.59,
      "skill_score": 23.4,
      "opportunity_score": 70.4,
      "opponent_weakness_score": 36.0,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 22.4,
      "suppression_tier": "CLEAR_RUNWAY",
      "suppression_label": "Clear Runway",
      "suppression_note": "Workload and leash context support the strikeout projection cleanly.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.4714,
      "model_under_probability": 0.5286,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5074,
      "implied_under_probability_raw": 0.5536,
      "implied_over_probability_novig": 0.4782,
      "implied_under_probability_novig": 0.5218,
      "edge_over": -0.036,
      "edge_under": -0.025,
      "recommended_side": "No Play",
      "recommended_edge": -0.025,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": -0.1,
      "adjustment_multiplier": 0.982,
      "aggregate_matchup_score": 56.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 38756.0,
      "lineup_expected_strikeouts": 5.31,
      "environment_summary": "pitcher-friendly",
      "temperature_f": 56.8,
      "wind_speed_mph": 5.8,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Miles Mikolas",
      "pitcher_id": 571945,
      "team_abbr": "WSH",
      "opponent_abbr": "SF",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-08T11:58:03.000Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": 135,
      "under_odds": -185,
      "expected_strikeouts": 3.23,
      "baseline_projected_strikeouts": 3.0,
      "adjusted_projected_strikeouts": 3.23,
      "skill_score": 16.4,
      "opportunity_score": 18.6,
      "opponent_weakness_score": 35.6,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 93.7,
      "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.3991,
      "model_under_probability": 0.6009,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4255,
      "implied_under_probability_raw": 0.6491,
      "implied_over_probability_novig": 0.396,
      "implied_under_probability_novig": 0.604,
      "edge_over": -0.0264,
      "edge_under": -0.0482,
      "recommended_side": "No Play",
      "recommended_edge": -0.0264,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.23,
      "adjustment_multiplier": 1.077,
      "aggregate_matchup_score": 31.1,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 32803.0,
      "lineup_expected_strikeouts": 3.8,
      "environment_summary": "pitcher-friendly",
      "temperature_f": 56.8,
      "wind_speed_mph": 5.8,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Jeffrey Springs",
      "pitcher_id": 605488,
      "team_abbr": "ATH",
      "opponent_abbr": "MIL",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-08T11:58:48.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 100,
      "under_odds": -135,
      "expected_strikeouts": 4.48,
      "baseline_projected_strikeouts": 4.68,
      "adjusted_projected_strikeouts": 4.48,
      "skill_score": 20.1,
      "opportunity_score": 55.8,
      "opponent_weakness_score": 25.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": 41.2,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.4527,
      "model_under_probability": 0.5473,
      "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.0473,
      "edge_under": -0.0272,
      "recommended_side": "No Play",
      "recommended_edge": -0.0272,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": -0.2,
      "adjustment_multiplier": 0.958,
      "aggregate_matchup_score": 33.2,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 16173.0,
      "lineup_expected_strikeouts": 4.29,
      "environment_summary": "neutral",
      "temperature_f": 65.5,
      "wind_speed_mph": 6.9,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Patrick Corbin",
      "pitcher_id": 571578,
      "team_abbr": "TOR",
      "opponent_abbr": "PHI",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 3.5,
      "line_type": "half",
      "over_odds": -174,
      "under_odds": 134,
      "expected_strikeouts": 4.33,
      "baseline_projected_strikeouts": 4.11,
      "adjusted_projected_strikeouts": 4.33,
      "skill_score": 9.8,
      "opportunity_score": 35.3,
      "opponent_weakness_score": 35.6,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 71.5,
      "suppression_tier": "HEAVY_SUPPRESSION",
      "suppression_label": "Heavy Suppression",
      "suppression_note": "Leash or workload context materially weakens the strikeout conversion path.",
      "interaction_tier": "SUPPRESSED_ALIGNMENT",
      "interaction_label": "Suppressed Alignment",
      "interaction_note": "Runway drag or weak alignment materially softens the strikeout path.",
      "trust_modifier": "SUPPRESSED",
      "trust_label": "Suppressed",
      "trust_note": "Leash or alignment drag is materially weakening the strikeout trust case.",
      "model_over_probability": 0.6003,
      "model_under_probability": 0.3997,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.635,
      "implied_under_probability_raw": 0.4274,
      "implied_over_probability_novig": 0.5977,
      "implied_under_probability_novig": 0.4023,
      "edge_over": -0.0347,
      "edge_under": -0.0277,
      "recommended_side": "No Play",
      "recommended_edge": -0.0277,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.22,
      "adjustment_multiplier": 1.055,
      "aggregate_matchup_score": 30.2,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 33148.0,
      "lineup_expected_strikeouts": 4.95,
      "environment_summary": "neutral",
      "temperature_f": 60.4,
      "wind_speed_mph": 5.3,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Patrick Corbin",
      "pitcher_id": 571578,
      "team_abbr": "TOR",
      "opponent_abbr": "PHI",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-08T11:58:38.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 115,
      "under_odds": -155,
      "expected_strikeouts": 4.33,
      "baseline_projected_strikeouts": 4.11,
      "adjusted_projected_strikeouts": 4.33,
      "skill_score": 9.8,
      "opportunity_score": 35.3,
      "opponent_weakness_score": 35.6,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 71.5,
      "suppression_tier": "HEAVY_SUPPRESSION",
      "suppression_label": "Heavy Suppression",
      "suppression_note": "Leash or workload context materially weakens the strikeout conversion path.",
      "interaction_tier": "SUPPRESSED_ALIGNMENT",
      "interaction_label": "Suppressed Alignment",
      "interaction_note": "Runway drag or weak alignment materially softens the strikeout path.",
      "trust_modifier": "SUPPRESSED",
      "trust_label": "Suppressed",
      "trust_note": "Leash or alignment drag is materially weakening the strikeout trust case.",
      "model_over_probability": 0.4274,
      "model_under_probability": 0.5726,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4651,
      "implied_under_probability_raw": 0.6078,
      "implied_over_probability_novig": 0.4335,
      "implied_under_probability_novig": 0.5665,
      "edge_over": -0.0377,
      "edge_under": -0.0352,
      "recommended_side": "No Play",
      "recommended_edge": -0.0352,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.22,
      "adjustment_multiplier": 1.055,
      "aggregate_matchup_score": 30.2,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 33148.0,
      "lineup_expected_strikeouts": 4.95,
      "environment_summary": "neutral",
      "temperature_f": 60.4,
      "wind_speed_mph": 5.3,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Will Warren",
      "pitcher_id": 701542,
      "team_abbr": "NYY",
      "opponent_abbr": "CLE",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 3.5,
      "line_type": "half",
      "over_odds": -270,
      "under_odds": null,
      "expected_strikeouts": 4.79,
      "baseline_projected_strikeouts": 4.74,
      "adjusted_projected_strikeouts": 4.79,
      "skill_score": 38.2,
      "opportunity_score": 53.1,
      "opponent_weakness_score": 36.4,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 44.8,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.6689,
      "model_under_probability": 0.3311,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.7297,
      "implied_under_probability_raw": null,
      "implied_over_probability_novig": null,
      "implied_under_probability_novig": null,
      "edge_over": -0.0608,
      "edge_under": null,
      "recommended_side": "No Play",
      "recommended_edge": -0.0608,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.05,
      "adjustment_multiplier": 1.011,
      "aggregate_matchup_score": 49.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 15754.0,
      "lineup_expected_strikeouts": 4.89,
      "environment_summary": "neutral",
      "temperature_f": 79.0,
      "wind_speed_mph": 5.7,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Emerson Hancock",
      "pitcher_id": 676106,
      "team_abbr": "SEA",
      "opponent_abbr": "BAL",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 7.5,
      "line_type": "half",
      "over_odds": 630,
      "under_odds": null,
      "expected_strikeouts": 3.97,
      "baseline_projected_strikeouts": 3.9,
      "adjusted_projected_strikeouts": 3.97,
      "skill_score": 23.2,
      "opportunity_score": 65.0,
      "opponent_weakness_score": 33.2,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 32.5,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.0692,
      "model_under_probability": 0.9308,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.137,
      "implied_under_probability_raw": null,
      "implied_over_probability_novig": null,
      "implied_under_probability_novig": null,
      "edge_over": -0.0678,
      "edge_under": null,
      "recommended_side": "No Play",
      "recommended_edge": -0.0678,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.07,
      "adjustment_multiplier": 1.019,
      "aggregate_matchup_score": 22.9,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 11123.0,
      "lineup_expected_strikeouts": 4.36,
      "environment_summary": "neutral",
      "temperature_f": 68.0,
      "wind_speed_mph": 7.4,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Patrick Corbin",
      "pitcher_id": 571578,
      "team_abbr": "TOR",
      "opponent_abbr": "PHI",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 2.5,
      "line_type": "half",
      "over_odds": -550,
      "under_odds": null,
      "expected_strikeouts": 4.33,
      "baseline_projected_strikeouts": 4.11,
      "adjusted_projected_strikeouts": 4.33,
      "skill_score": 9.8,
      "opportunity_score": 35.3,
      "opponent_weakness_score": 35.6,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 71.5,
      "suppression_tier": "HEAVY_SUPPRESSION",
      "suppression_label": "Heavy Suppression",
      "suppression_note": "Leash or workload context materially weakens the strikeout conversion path.",
      "interaction_tier": "SUPPRESSED_ALIGNMENT",
      "interaction_label": "Suppressed Alignment",
      "interaction_note": "Runway drag or weak alignment materially softens the strikeout path.",
      "trust_modifier": "SUPPRESSED",
      "trust_label": "Suppressed",
      "trust_note": "Leash or alignment drag is materially weakening the strikeout trust case.",
      "model_over_probability": 0.7712,
      "model_under_probability": 0.2288,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.8462,
      "implied_under_probability_raw": null,
      "implied_over_probability_novig": null,
      "implied_under_probability_novig": null,
      "edge_over": -0.075,
      "edge_under": null,
      "recommended_side": "No Play",
      "recommended_edge": -0.075,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.22,
      "adjustment_multiplier": 1.055,
      "aggregate_matchup_score": 30.2,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 33148.0,
      "lineup_expected_strikeouts": 4.95,
      "environment_summary": "neutral",
      "temperature_f": 60.4,
      "wind_speed_mph": 5.3,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Will Warren",
      "pitcher_id": 701542,
      "team_abbr": "NYY",
      "opponent_abbr": "CLE",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 2.5,
      "line_type": "half",
      "over_odds": -900,
      "under_odds": null,
      "expected_strikeouts": 4.79,
      "baseline_projected_strikeouts": 4.74,
      "adjusted_projected_strikeouts": 4.79,
      "skill_score": 38.2,
      "opportunity_score": 53.1,
      "opponent_weakness_score": 36.4,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 44.8,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.82,
      "model_under_probability": 0.18,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.9,
      "implied_under_probability_raw": null,
      "implied_over_probability_novig": null,
      "implied_under_probability_novig": null,
      "edge_over": -0.08,
      "edge_under": null,
      "recommended_side": "No Play",
      "recommended_edge": -0.08,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.05,
      "adjustment_multiplier": 1.011,
      "aggregate_matchup_score": 49.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 15754.0,
      "lineup_expected_strikeouts": 4.89,
      "environment_summary": "neutral",
      "temperature_f": 79.0,
      "wind_speed_mph": 5.7,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Emerson Hancock",
      "pitcher_id": 676106,
      "team_abbr": "SEA",
      "opponent_abbr": "BAL",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 6.5,
      "line_type": "half",
      "over_odds": 320,
      "under_odds": null,
      "expected_strikeouts": 3.97,
      "baseline_projected_strikeouts": 3.9,
      "adjusted_projected_strikeouts": 3.97,
      "skill_score": 23.2,
      "opportunity_score": 65.0,
      "opponent_weakness_score": 33.2,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 32.5,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.1296,
      "model_under_probability": 0.8704,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.2381,
      "implied_under_probability_raw": null,
      "implied_over_probability_novig": null,
      "implied_under_probability_novig": null,
      "edge_over": -0.1085,
      "edge_under": null,
      "recommended_side": "No Play",
      "recommended_edge": -0.1085,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.07,
      "adjustment_multiplier": 1.019,
      "aggregate_matchup_score": 22.9,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 11123.0,
      "lineup_expected_strikeouts": 4.36,
      "environment_summary": "neutral",
      "temperature_f": 68.0,
      "wind_speed_mph": 7.4,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Gavin Williams",
      "pitcher_id": 668909,
      "team_abbr": "CLE",
      "opponent_abbr": "NYY",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 8.5,
      "line_type": "half",
      "over_odds": 250,
      "under_odds": null,
      "expected_strikeouts": 5.82,
      "baseline_projected_strikeouts": 5.9,
      "adjusted_projected_strikeouts": 5.82,
      "skill_score": 57.9,
      "opportunity_score": 80.5,
      "opponent_weakness_score": 31.8,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 10.3,
      "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.1652,
      "model_under_probability": 0.8348,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.2857,
      "implied_under_probability_raw": null,
      "implied_over_probability_novig": null,
      "implied_under_probability_novig": null,
      "edge_over": -0.1205,
      "edge_under": null,
      "recommended_side": "No Play",
      "recommended_edge": -0.1205,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": -0.08,
      "adjustment_multiplier": 0.987,
      "aggregate_matchup_score": 43.6,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 24255.0,
      "lineup_expected_strikeouts": 5.77,
      "environment_summary": "neutral",
      "temperature_f": 79.0,
      "wind_speed_mph": 5.7,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Emerson Hancock",
      "pitcher_id": 676106,
      "team_abbr": "SEA",
      "opponent_abbr": "BAL",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 5.5,
      "line_type": "half",
      "over_odds": 154,
      "under_odds": null,
      "expected_strikeouts": 3.97,
      "baseline_projected_strikeouts": 3.9,
      "adjusted_projected_strikeouts": 3.97,
      "skill_score": 23.2,
      "opportunity_score": 65.0,
      "opponent_weakness_score": 33.2,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 32.5,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.2262,
      "model_under_probability": 0.7738,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.3937,
      "implied_under_probability_raw": null,
      "implied_over_probability_novig": null,
      "implied_under_probability_novig": null,
      "edge_over": -0.1675,
      "edge_under": null,
      "recommended_side": "No Play",
      "recommended_edge": -0.1675,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.07,
      "adjustment_multiplier": 1.019,
      "aggregate_matchup_score": 22.9,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 11123.0,
      "lineup_expected_strikeouts": 4.36,
      "environment_summary": "neutral",
      "temperature_f": 68.0,
      "wind_speed_mph": 7.4,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Gavin Williams",
      "pitcher_id": 668909,
      "team_abbr": "CLE",
      "opponent_abbr": "NYY",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 7.5,
      "line_type": "half",
      "over_odds": 132,
      "under_odds": null,
      "expected_strikeouts": 5.82,
      "baseline_projected_strikeouts": 5.9,
      "adjusted_projected_strikeouts": 5.82,
      "skill_score": 57.9,
      "opportunity_score": 80.5,
      "opponent_weakness_score": 31.8,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 10.3,
      "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.253,
      "model_under_probability": 0.747,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.431,
      "implied_under_probability_raw": null,
      "implied_over_probability_novig": null,
      "implied_under_probability_novig": null,
      "edge_over": -0.178,
      "edge_under": null,
      "recommended_side": "No Play",
      "recommended_edge": -0.178,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": -0.08,
      "adjustment_multiplier": 0.987,
      "aggregate_matchup_score": 43.6,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 24255.0,
      "lineup_expected_strikeouts": 5.77,
      "environment_summary": "neutral",
      "temperature_f": 79.0,
      "wind_speed_mph": 5.7,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Gavin Williams",
      "pitcher_id": 668909,
      "team_abbr": "CLE",
      "opponent_abbr": "NYY",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 3.5,
      "line_type": "half",
      "over_odds": -3500,
      "under_odds": null,
      "expected_strikeouts": 5.82,
      "baseline_projected_strikeouts": 5.9,
      "adjusted_projected_strikeouts": 5.82,
      "skill_score": 57.9,
      "opportunity_score": 80.5,
      "opponent_weakness_score": 31.8,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 10.3,
      "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.7878,
      "model_under_probability": 0.2122,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.9722,
      "implied_under_probability_raw": null,
      "implied_over_probability_novig": null,
      "implied_under_probability_novig": null,
      "edge_over": -0.1844,
      "edge_under": null,
      "recommended_side": "No Play",
      "recommended_edge": -0.1844,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": -0.08,
      "adjustment_multiplier": 0.987,
      "aggregate_matchup_score": 43.6,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 24255.0,
      "lineup_expected_strikeouts": 5.77,
      "environment_summary": "neutral",
      "temperature_f": 79.0,
      "wind_speed_mph": 5.7,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Emerson Hancock",
      "pitcher_id": 676106,
      "team_abbr": "SEA",
      "opponent_abbr": "BAL",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 2.5,
      "line_type": "half",
      "over_odds": -1200,
      "under_odds": null,
      "expected_strikeouts": 3.97,
      "baseline_projected_strikeouts": 3.9,
      "adjusted_projected_strikeouts": 3.97,
      "skill_score": 23.2,
      "opportunity_score": 65.0,
      "opponent_weakness_score": 33.2,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 32.5,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.7248,
      "model_under_probability": 0.2752,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.9231,
      "implied_under_probability_raw": null,
      "implied_over_probability_novig": null,
      "implied_under_probability_novig": null,
      "edge_over": -0.1983,
      "edge_under": null,
      "recommended_side": "No Play",
      "recommended_edge": -0.1983,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.07,
      "adjustment_multiplier": 1.019,
      "aggregate_matchup_score": 22.9,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 11123.0,
      "lineup_expected_strikeouts": 4.36,
      "environment_summary": "neutral",
      "temperature_f": 68.0,
      "wind_speed_mph": 7.4,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Emerson Hancock",
      "pitcher_id": 676106,
      "team_abbr": "SEA",
      "opponent_abbr": "BAL",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 3.5,
      "line_type": "half",
      "over_odds": -350,
      "under_odds": null,
      "expected_strikeouts": 3.97,
      "baseline_projected_strikeouts": 3.9,
      "adjusted_projected_strikeouts": 3.97,
      "skill_score": 23.2,
      "opportunity_score": 65.0,
      "opponent_weakness_score": 33.2,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 32.5,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.5398,
      "model_under_probability": 0.4602,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.7778,
      "implied_under_probability_raw": null,
      "implied_over_probability_novig": null,
      "implied_under_probability_novig": null,
      "edge_over": -0.238,
      "edge_under": null,
      "recommended_side": "No Play",
      "recommended_edge": -0.238,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.07,
      "adjustment_multiplier": 1.019,
      "aggregate_matchup_score": 22.9,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 11123.0,
      "lineup_expected_strikeouts": 4.36,
      "environment_summary": "neutral",
      "temperature_f": 68.0,
      "wind_speed_mph": 7.4,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Gavin Williams",
      "pitcher_id": 668909,
      "team_abbr": "CLE",
      "opponent_abbr": "NYY",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 4.5,
      "line_type": "half",
      "over_odds": -850,
      "under_odds": null,
      "expected_strikeouts": 5.82,
      "baseline_projected_strikeouts": 5.9,
      "adjusted_projected_strikeouts": 5.82,
      "skill_score": 57.9,
      "opportunity_score": 80.5,
      "opponent_weakness_score": 31.8,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 10.3,
      "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.6507,
      "model_under_probability": 0.3493,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.8947,
      "implied_under_probability_raw": null,
      "implied_over_probability_novig": null,
      "implied_under_probability_novig": null,
      "edge_over": -0.244,
      "edge_under": null,
      "recommended_side": "No Play",
      "recommended_edge": -0.244,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": -0.08,
      "adjustment_multiplier": 0.987,
      "aggregate_matchup_score": 43.6,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 24255.0,
      "lineup_expected_strikeouts": 5.77,
      "environment_summary": "neutral",
      "temperature_f": 79.0,
      "wind_speed_mph": 5.7,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Gavin Williams",
      "pitcher_id": 668909,
      "team_abbr": "CLE",
      "opponent_abbr": "NYY",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 5.5,
      "line_type": "half",
      "over_odds": -330,
      "under_odds": null,
      "expected_strikeouts": 5.82,
      "baseline_projected_strikeouts": 5.9,
      "adjusted_projected_strikeouts": 5.82,
      "skill_score": 57.9,
      "opportunity_score": 80.5,
      "opponent_weakness_score": 31.8,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 10.3,
      "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.5043,
      "model_under_probability": 0.4957,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.7674,
      "implied_under_probability_raw": null,
      "implied_over_probability_novig": null,
      "implied_under_probability_novig": null,
      "edge_over": -0.2631,
      "edge_under": null,
      "recommended_side": "No Play",
      "recommended_edge": -0.2631,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": -0.08,
      "adjustment_multiplier": 0.987,
      "aggregate_matchup_score": 43.6,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 24255.0,
      "lineup_expected_strikeouts": 5.77,
      "environment_summary": "neutral",
      "temperature_f": 79.0,
      "wind_speed_mph": 5.7,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    }
  ],
  "unmatched_inputs": [
    {
      "pitcher_name": "Connelly Early",
      "team_abbr": "BOS",
      "opponent_abbr": "TB",
      "sportsbook": "BetMGM",
      "line": 5.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Connelly Early",
      "team_abbr": "BOS",
      "opponent_abbr": "TB",
      "sportsbook": "DraftKings",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Connelly Early",
      "team_abbr": null,
      "opponent_abbr": null,
      "sportsbook": "FanDuel",
      "line": 2.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Connelly Early",
      "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": "Connelly Early",
      "team_abbr": null,
      "opponent_abbr": null,
      "sportsbook": "FanDuel",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Connelly Early",
      "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": "Connelly Early",
      "team_abbr": "BOS",
      "opponent_abbr": "TB",
      "sportsbook": "FanDuel",
      "line": 5.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Connelly Early",
      "team_abbr": null,
      "opponent_abbr": null,
      "sportsbook": "FanDuel",
      "line": 6.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Connelly Early",
      "team_abbr": null,
      "opponent_abbr": null,
      "sportsbook": "FanDuel",
      "line": 7.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Cristopher Sanchez",
      "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": "Cristopher Sanchez",
      "team_abbr": null,
      "opponent_abbr": null,
      "sportsbook": "FanDuel",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Cristopher Sanchez",
      "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": "Cristopher Sanchez",
      "team_abbr": null,
      "opponent_abbr": null,
      "sportsbook": "FanDuel",
      "line": 6.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Cristopher Sanchez",
      "team_abbr": null,
      "opponent_abbr": null,
      "sportsbook": "FanDuel",
      "line": 7.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Cristopher Sanchez",
      "team_abbr": null,
      "opponent_abbr": null,
      "sportsbook": "FanDuel",
      "line": 8.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Cristopher Sanchez 10+ Strikeouts",
      "team_abbr": null,
      "opponent_abbr": null,
      "sportsbook": "FanDuel",
      "line": 9.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Gavin Williams 10+ Strikeouts",
      "team_abbr": null,
      "opponent_abbr": null,
      "sportsbook": "FanDuel",
      "line": 9.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Grayson Rodriguez",
      "team_abbr": "LAA",
      "opponent_abbr": "HOU",
      "sportsbook": "BetMGM",
      "line": 5.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Grayson Rodriguez",
      "team_abbr": "LAA",
      "opponent_abbr": "HOU",
      "sportsbook": "DraftKings",
      "line": 5.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Grayson Rodriguez",
      "team_abbr": "LAA",
      "opponent_abbr": "HOU",
      "sportsbook": "FanDuel",
      "line": 5.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    }
  ]
}