{
  "date": "2026-06-15",
  "generated_at": "2026-06-15T08:02:45.781511",
  "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-15",
  "sportsbook_input_summary": {
    "input_type": "canonical_processed_sportsbook_input",
    "source_count": 1,
    "row_count": 81,
    "matched_count": 51,
    "unmatched_count": 30
  },
  "assumptions": {
    "methodology": "Sportsbook strikeout lines are matched against the saved Mithrandir strikeout props artifact. Model over, under, and push probabilities are derived from the existing matchup-adjusted strikeout distribution. Raw implied probabilities are calculated directly from American odds, and optional no-vig implied probabilities are computed by renormalizing both sides when both odds are present.",
    "distribution": {
      "name": "negative_binomial_style",
      "alpha": 0.0619,
      "whole_line_handling": "Over = P(K >= line + 1), Under = P(K <= line - 1), Push = P(K = line).",
      "half_line_handling": "Over = P(K >= ceil(line)), Under = 1 - Over, Push = 0."
    },
    "recommendation_thresholds": {
      "no_play_edge_threshold": 0.015,
      "lean_edge_threshold": 0.03,
      "strong_edge_threshold": 0.05
    }
  },
  "summary": {
    "raw_row_count": 51,
    "grouped_pitcher_count": 11,
    "sportsbook_count": 3
  },
  "edge_count": 51,
  "edges": [
    {
      "pitcher_name": "Dustin May",
      "pitcher_id": 669160,
      "team_abbr": "STL",
      "opponent_abbr": "SD",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-15T11:56:58.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -149,
      "under_odds": 117,
      "expected_strikeouts": 4.28,
      "baseline_projected_strikeouts": 4.2,
      "adjusted_projected_strikeouts": 4.28,
      "skill_score": 26.8,
      "opportunity_score": 62.0,
      "opponent_weakness_score": 32.5,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 42.3,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.4188,
      "model_under_probability": 0.5812,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5984,
      "implied_under_probability_raw": 0.4608,
      "implied_over_probability_novig": 0.565,
      "implied_under_probability_novig": 0.435,
      "edge_over": -0.1796,
      "edge_under": 0.1204,
      "recommended_side": "Under",
      "recommended_edge": 0.1204,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.08,
      "adjustment_multiplier": 1.02,
      "aggregate_matchup_score": 32.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 12285.0,
      "lineup_expected_strikeouts": 4.61,
      "environment_summary": "neutral",
      "temperature_f": 65.8,
      "wind_speed_mph": 4.2,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Zack Wheeler",
      "pitcher_id": 554430,
      "team_abbr": "PHI",
      "opponent_abbr": "MIA",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 8.5,
      "line_type": "half",
      "over_odds": 400,
      "under_odds": null,
      "expected_strikeouts": 7.1,
      "baseline_projected_strikeouts": 6.77,
      "adjusted_projected_strikeouts": 7.1,
      "skill_score": 30.5,
      "opportunity_score": 71.2,
      "opponent_weakness_score": 52.9,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 21.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.3023,
      "model_under_probability": 0.6977,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.2,
      "implied_under_probability_raw": null,
      "implied_over_probability_novig": null,
      "implied_under_probability_novig": null,
      "edge_over": 0.1023,
      "edge_under": null,
      "recommended_side": "Over",
      "recommended_edge": 0.1023,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.33,
      "adjustment_multiplier": 1.048,
      "aggregate_matchup_score": 83.1,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 33971.0,
      "lineup_expected_strikeouts": 7.18,
      "environment_summary": "neutral",
      "temperature_f": 65.1,
      "wind_speed_mph": 4.0,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Dustin May",
      "pitcher_id": 669160,
      "team_abbr": "STL",
      "opponent_abbr": "SD",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 4.5,
      "line_type": "half",
      "over_odds": -132,
      "under_odds": 108,
      "expected_strikeouts": 4.28,
      "baseline_projected_strikeouts": 4.2,
      "adjusted_projected_strikeouts": 4.28,
      "skill_score": 26.8,
      "opportunity_score": 62.0,
      "opponent_weakness_score": 32.5,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 42.3,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.4188,
      "model_under_probability": 0.5812,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.569,
      "implied_under_probability_raw": 0.4808,
      "implied_over_probability_novig": 0.542,
      "implied_under_probability_novig": 0.458,
      "edge_over": -0.1502,
      "edge_under": 0.1004,
      "recommended_side": "Under",
      "recommended_edge": 0.1004,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.08,
      "adjustment_multiplier": 1.02,
      "aggregate_matchup_score": 32.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 12285.0,
      "lineup_expected_strikeouts": 4.61,
      "environment_summary": "neutral",
      "temperature_f": 65.8,
      "wind_speed_mph": 4.2,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Dustin May",
      "pitcher_id": 669160,
      "team_abbr": "STL",
      "opponent_abbr": "SD",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-15T11:57:42.688Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -132,
      "under_odds": 108,
      "expected_strikeouts": 4.28,
      "baseline_projected_strikeouts": 4.2,
      "adjusted_projected_strikeouts": 4.28,
      "skill_score": 26.8,
      "opportunity_score": 62.0,
      "opponent_weakness_score": 32.5,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 42.3,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.4188,
      "model_under_probability": 0.5812,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.569,
      "implied_under_probability_raw": 0.4808,
      "implied_over_probability_novig": 0.542,
      "implied_under_probability_novig": 0.458,
      "edge_over": -0.1502,
      "edge_under": 0.1004,
      "recommended_side": "Under",
      "recommended_edge": 0.1004,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.08,
      "adjustment_multiplier": 1.02,
      "aggregate_matchup_score": 32.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 12285.0,
      "lineup_expected_strikeouts": 4.61,
      "environment_summary": "neutral",
      "temperature_f": 65.8,
      "wind_speed_mph": 4.2,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Shota Imanaga",
      "pitcher_id": 684007,
      "team_abbr": "CHC",
      "opponent_abbr": "COL",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-15T11:57:42.688Z",
      "line": 6.5,
      "line_type": "half",
      "over_odds": 110,
      "under_odds": -134,
      "expected_strikeouts": 5.53,
      "baseline_projected_strikeouts": 5.35,
      "adjusted_projected_strikeouts": 5.53,
      "skill_score": 48.0,
      "opportunity_score": 65.8,
      "opponent_weakness_score": 43.9,
      "support_tier": "TRIPLE_SUPPORT",
      "support_label": "Triple Support",
      "support_note": "Skill, workload, and opponent pressure all support a stronger strikeout environment.",
      "suppression_score": 30.3,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "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.3276,
      "model_under_probability": 0.6724,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4762,
      "implied_under_probability_raw": 0.5726,
      "implied_over_probability_novig": 0.454,
      "implied_under_probability_novig": 0.546,
      "edge_over": -0.1486,
      "edge_under": 0.0998,
      "recommended_side": "Under",
      "recommended_edge": 0.0998,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.18,
      "adjustment_multiplier": 1.033,
      "aggregate_matchup_score": 62.8,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 21240.0,
      "lineup_expected_strikeouts": 5.7,
      "environment_summary": "neutral",
      "temperature_f": 59.4,
      "wind_speed_mph": 6.4,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Shota Imanaga",
      "pitcher_id": 684007,
      "team_abbr": "CHC",
      "opponent_abbr": "COL",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-15T11:57:38.000Z",
      "line": 6.5,
      "line_type": "half",
      "over_odds": 106,
      "under_odds": -135,
      "expected_strikeouts": 5.53,
      "baseline_projected_strikeouts": 5.35,
      "adjusted_projected_strikeouts": 5.53,
      "skill_score": 48.0,
      "opportunity_score": 65.8,
      "opponent_weakness_score": 43.9,
      "support_tier": "TRIPLE_SUPPORT",
      "support_label": "Triple Support",
      "support_note": "Skill, workload, and opponent pressure all support a stronger strikeout environment.",
      "suppression_score": 30.3,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "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.3276,
      "model_under_probability": 0.6724,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4854,
      "implied_under_probability_raw": 0.5745,
      "implied_over_probability_novig": 0.458,
      "implied_under_probability_novig": 0.542,
      "edge_over": -0.1578,
      "edge_under": 0.0979,
      "recommended_side": "Under",
      "recommended_edge": 0.0979,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.18,
      "adjustment_multiplier": 1.033,
      "aggregate_matchup_score": 62.8,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 21240.0,
      "lineup_expected_strikeouts": 5.7,
      "environment_summary": "neutral",
      "temperature_f": 59.4,
      "wind_speed_mph": 6.4,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Shota Imanaga",
      "pitcher_id": 684007,
      "team_abbr": "CHC",
      "opponent_abbr": "COL",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-15T11:57:42.000Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -160,
      "under_odds": 120,
      "expected_strikeouts": 5.53,
      "baseline_projected_strikeouts": 5.35,
      "adjusted_projected_strikeouts": 5.53,
      "skill_score": 48.0,
      "opportunity_score": 65.8,
      "opponent_weakness_score": 43.9,
      "support_tier": "TRIPLE_SUPPORT",
      "support_label": "Triple Support",
      "support_note": "Skill, workload, and opponent pressure all support a stronger strikeout environment.",
      "suppression_score": 30.3,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "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.4626,
      "model_under_probability": 0.5374,
      "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.1528,
      "edge_under": 0.0829,
      "recommended_side": "Under",
      "recommended_edge": 0.0829,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.18,
      "adjustment_multiplier": 1.033,
      "aggregate_matchup_score": 62.8,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 21240.0,
      "lineup_expected_strikeouts": 5.7,
      "environment_summary": "neutral",
      "temperature_f": 59.4,
      "wind_speed_mph": 6.4,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Dustin May",
      "pitcher_id": 669160,
      "team_abbr": "STL",
      "opponent_abbr": "SD",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-15T11:57:45.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -135,
      "under_odds": 100,
      "expected_strikeouts": 4.28,
      "baseline_projected_strikeouts": 4.2,
      "adjusted_projected_strikeouts": 4.28,
      "skill_score": 26.8,
      "opportunity_score": 62.0,
      "opponent_weakness_score": 32.5,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 42.3,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.4188,
      "model_under_probability": 0.5812,
      "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.1557,
      "edge_under": 0.0812,
      "recommended_side": "Under",
      "recommended_edge": 0.0812,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.08,
      "adjustment_multiplier": 1.02,
      "aggregate_matchup_score": 32.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 12285.0,
      "lineup_expected_strikeouts": 4.61,
      "environment_summary": "neutral",
      "temperature_f": 65.8,
      "wind_speed_mph": 4.2,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Eric Lauer",
      "pitcher_id": 641778,
      "team_abbr": "LAD",
      "opponent_abbr": "TB",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-15T11:57:09.000Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -104,
      "under_odds": -122,
      "expected_strikeouts": 4.27,
      "baseline_projected_strikeouts": 4.27,
      "adjusted_projected_strikeouts": 4.27,
      "skill_score": 1.5,
      "opportunity_score": 32.3,
      "opponent_weakness_score": 33.5,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 81.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.5906,
      "model_under_probability": 0.4094,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5098,
      "implied_under_probability_raw": 0.5495,
      "implied_over_probability_novig": 0.4813,
      "implied_under_probability_novig": 0.5187,
      "edge_over": 0.0808,
      "edge_under": -0.1401,
      "recommended_side": "Over",
      "recommended_edge": 0.0808,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.0,
      "adjustment_multiplier": 0.999,
      "aggregate_matchup_score": 44.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 8411.0,
      "lineup_expected_strikeouts": 4.31,
      "environment_summary": "neutral",
      "temperature_f": 61.9,
      "wind_speed_mph": 3.9,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Zack Wheeler",
      "pitcher_id": 554430,
      "team_abbr": "PHI",
      "opponent_abbr": "MIA",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 7.5,
      "line_type": "half",
      "over_odds": 198,
      "under_odds": null,
      "expected_strikeouts": 7.1,
      "baseline_projected_strikeouts": 6.77,
      "adjusted_projected_strikeouts": 7.1,
      "skill_score": 30.5,
      "opportunity_score": 71.2,
      "opponent_weakness_score": 52.9,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 21.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.4121,
      "model_under_probability": 0.5879,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.3356,
      "implied_under_probability_raw": null,
      "implied_over_probability_novig": null,
      "implied_under_probability_novig": null,
      "edge_over": 0.0765,
      "edge_under": null,
      "recommended_side": "Over",
      "recommended_edge": 0.0765,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.33,
      "adjustment_multiplier": 1.048,
      "aggregate_matchup_score": 83.1,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 33971.0,
      "lineup_expected_strikeouts": 7.18,
      "environment_summary": "neutral",
      "temperature_f": 65.1,
      "wind_speed_mph": 4.0,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Ryne Nelson",
      "pitcher_id": 669194,
      "team_abbr": "AZ",
      "opponent_abbr": "LAA",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-15T11:57:42.688Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -150,
      "under_odds": 122,
      "expected_strikeouts": 4.66,
      "baseline_projected_strikeouts": 4.45,
      "adjusted_projected_strikeouts": 4.66,
      "skill_score": 7.9,
      "opportunity_score": 66.0,
      "opponent_weakness_score": 39.3,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 47.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.4824,
      "model_under_probability": 0.5176,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6,
      "implied_under_probability_raw": 0.4505,
      "implied_over_probability_novig": 0.5712,
      "implied_under_probability_novig": 0.4288,
      "edge_over": -0.1176,
      "edge_under": 0.0671,
      "recommended_side": "Under",
      "recommended_edge": 0.0671,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.21,
      "adjustment_multiplier": 1.048,
      "aggregate_matchup_score": 46.0,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 25783.0,
      "lineup_expected_strikeouts": 5.1,
      "environment_summary": "neutral",
      "temperature_f": null,
      "wind_speed_mph": null,
      "wind_direction": "unknown",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Eric Lauer",
      "pitcher_id": 641778,
      "team_abbr": "LAD",
      "opponent_abbr": "TB",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-15T11:57:40.000Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -110,
      "under_odds": -120,
      "expected_strikeouts": 4.27,
      "baseline_projected_strikeouts": 4.27,
      "adjusted_projected_strikeouts": 4.27,
      "skill_score": 1.5,
      "opportunity_score": 32.3,
      "opponent_weakness_score": 33.5,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 81.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.5906,
      "model_under_probability": 0.4094,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5238,
      "implied_under_probability_raw": 0.5455,
      "implied_over_probability_novig": 0.4899,
      "implied_under_probability_novig": 0.5101,
      "edge_over": 0.0668,
      "edge_under": -0.1361,
      "recommended_side": "Over",
      "recommended_edge": 0.0668,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.0,
      "adjustment_multiplier": 0.999,
      "aggregate_matchup_score": 44.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 8411.0,
      "lineup_expected_strikeouts": 4.31,
      "environment_summary": "neutral",
      "temperature_f": 61.9,
      "wind_speed_mph": 3.9,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Eric Lauer",
      "pitcher_id": 641778,
      "team_abbr": "LAD",
      "opponent_abbr": "TB",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-15T11:57:42.688Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -110,
      "under_odds": -112,
      "expected_strikeouts": 4.27,
      "baseline_projected_strikeouts": 4.27,
      "adjusted_projected_strikeouts": 4.27,
      "skill_score": 1.5,
      "opportunity_score": 32.3,
      "opponent_weakness_score": 33.5,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 81.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.5906,
      "model_under_probability": 0.4094,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5238,
      "implied_under_probability_raw": 0.5283,
      "implied_over_probability_novig": 0.4979,
      "implied_under_probability_novig": 0.5021,
      "edge_over": 0.0668,
      "edge_under": -0.1189,
      "recommended_side": "Over",
      "recommended_edge": 0.0668,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.0,
      "adjustment_multiplier": 0.999,
      "aggregate_matchup_score": 44.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 8411.0,
      "lineup_expected_strikeouts": 4.31,
      "environment_summary": "neutral",
      "temperature_f": 61.9,
      "wind_speed_mph": 3.9,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Zack Wheeler",
      "pitcher_id": 554430,
      "team_abbr": "PHI",
      "opponent_abbr": "MIA",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 6.5,
      "line_type": "half",
      "over_odds": 110,
      "under_odds": -134,
      "expected_strikeouts": 7.1,
      "baseline_projected_strikeouts": 6.77,
      "adjusted_projected_strikeouts": 7.1,
      "skill_score": 30.5,
      "opportunity_score": 71.2,
      "opponent_weakness_score": 52.9,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 21.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.5363,
      "model_under_probability": 0.4637,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4762,
      "implied_under_probability_raw": 0.5726,
      "implied_over_probability_novig": 0.454,
      "implied_under_probability_novig": 0.546,
      "edge_over": 0.0601,
      "edge_under": -0.1089,
      "recommended_side": "Over",
      "recommended_edge": 0.0601,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.33,
      "adjustment_multiplier": 1.048,
      "aggregate_matchup_score": 83.1,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 33971.0,
      "lineup_expected_strikeouts": 7.18,
      "environment_summary": "neutral",
      "temperature_f": 65.1,
      "wind_speed_mph": 4.0,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Zack Wheeler",
      "pitcher_id": 554430,
      "team_abbr": "PHI",
      "opponent_abbr": "MIA",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-15T11:57:42.688Z",
      "line": 6.5,
      "line_type": "half",
      "over_odds": 110,
      "under_odds": -134,
      "expected_strikeouts": 7.1,
      "baseline_projected_strikeouts": 6.77,
      "adjusted_projected_strikeouts": 7.1,
      "skill_score": 30.5,
      "opportunity_score": 71.2,
      "opponent_weakness_score": 52.9,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 21.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.5363,
      "model_under_probability": 0.4637,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4762,
      "implied_under_probability_raw": 0.5726,
      "implied_over_probability_novig": 0.454,
      "implied_under_probability_novig": 0.546,
      "edge_over": 0.0601,
      "edge_under": -0.1089,
      "recommended_side": "Over",
      "recommended_edge": 0.0601,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.33,
      "adjustment_multiplier": 1.048,
      "aggregate_matchup_score": 83.1,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 33971.0,
      "lineup_expected_strikeouts": 7.18,
      "environment_summary": "neutral",
      "temperature_f": 65.1,
      "wind_speed_mph": 4.0,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "J.T. Ginn",
      "pitcher_id": 669372,
      "team_abbr": "ATH",
      "opponent_abbr": "PIT",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-15T11:56:55.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 105,
      "under_odds": -140,
      "expected_strikeouts": 5.07,
      "baseline_projected_strikeouts": 4.52,
      "adjusted_projected_strikeouts": 5.07,
      "skill_score": 33.1,
      "opportunity_score": 37.0,
      "opponent_weakness_score": 47.7,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 68.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.5468,
      "model_under_probability": 0.4532,
      "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.059,
      "edge_under": -0.1301,
      "recommended_side": "Over",
      "recommended_edge": 0.059,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.55,
      "adjustment_multiplier": 1.122,
      "aggregate_matchup_score": 61.6,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 8470.0,
      "lineup_expected_strikeouts": 5.96,
      "environment_summary": "neutral",
      "temperature_f": 70.3,
      "wind_speed_mph": 9.4,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Michael Lorenzen",
      "pitcher_id": 547179,
      "team_abbr": "COL",
      "opponent_abbr": "CHC",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-15T11:57:42.688Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -172,
      "under_odds": 140,
      "expected_strikeouts": 3.91,
      "baseline_projected_strikeouts": 3.75,
      "adjusted_projected_strikeouts": 3.91,
      "skill_score": 12.4,
      "opportunity_score": 51.6,
      "opponent_weakness_score": 35.2,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 49.1,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.5292,
      "model_under_probability": 0.4708,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6324,
      "implied_under_probability_raw": 0.4167,
      "implied_over_probability_novig": 0.6028,
      "implied_under_probability_novig": 0.3972,
      "edge_over": -0.1032,
      "edge_under": 0.0541,
      "recommended_side": "Under",
      "recommended_edge": 0.0541,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.16,
      "adjustment_multiplier": 1.043,
      "aggregate_matchup_score": 30.8,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 26336.0,
      "lineup_expected_strikeouts": 4.38,
      "environment_summary": "neutral",
      "temperature_f": 59.4,
      "wind_speed_mph": 6.4,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Ryne Nelson",
      "pitcher_id": 669194,
      "team_abbr": "AZ",
      "opponent_abbr": "LAA",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-15T11:57:19.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -146,
      "under_odds": 114,
      "expected_strikeouts": 4.66,
      "baseline_projected_strikeouts": 4.45,
      "adjusted_projected_strikeouts": 4.66,
      "skill_score": 7.9,
      "opportunity_score": 66.0,
      "opponent_weakness_score": 39.3,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 47.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.4824,
      "model_under_probability": 0.5176,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5935,
      "implied_under_probability_raw": 0.4673,
      "implied_over_probability_novig": 0.5595,
      "implied_under_probability_novig": 0.4405,
      "edge_over": -0.1111,
      "edge_under": 0.0503,
      "recommended_side": "Under",
      "recommended_edge": 0.0503,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.21,
      "adjustment_multiplier": 1.048,
      "aggregate_matchup_score": 46.0,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 25783.0,
      "lineup_expected_strikeouts": 5.1,
      "environment_summary": "neutral",
      "temperature_f": null,
      "wind_speed_mph": null,
      "wind_direction": "unknown",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "J.T. Ginn",
      "pitcher_id": 669372,
      "team_abbr": "ATH",
      "opponent_abbr": "PIT",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-15T11:57:42.688Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 100,
      "under_odds": -122,
      "expected_strikeouts": 5.07,
      "baseline_projected_strikeouts": 4.52,
      "adjusted_projected_strikeouts": 5.07,
      "skill_score": 33.1,
      "opportunity_score": 37.0,
      "opponent_weakness_score": 47.7,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 68.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.5468,
      "model_under_probability": 0.4532,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5,
      "implied_under_probability_raw": 0.5495,
      "implied_over_probability_novig": 0.4764,
      "implied_under_probability_novig": 0.5236,
      "edge_over": 0.0468,
      "edge_under": -0.0963,
      "recommended_side": "Over",
      "recommended_edge": 0.0468,
      "play_tier": "Play",
      "no_play_reason": null,
      "adjustment_delta": 0.55,
      "adjustment_multiplier": 1.122,
      "aggregate_matchup_score": 61.6,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 8470.0,
      "lineup_expected_strikeouts": 5.96,
      "environment_summary": "neutral",
      "temperature_f": 70.3,
      "wind_speed_mph": 9.4,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Zack Wheeler",
      "pitcher_id": 554430,
      "team_abbr": "PHI",
      "opponent_abbr": "MIA",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-15T11:57:04.000Z",
      "line": 6.5,
      "line_type": "half",
      "over_odds": 102,
      "under_odds": -130,
      "expected_strikeouts": 7.1,
      "baseline_projected_strikeouts": 6.77,
      "adjusted_projected_strikeouts": 7.1,
      "skill_score": 30.5,
      "opportunity_score": 71.2,
      "opponent_weakness_score": 52.9,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 21.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.5363,
      "model_under_probability": 0.4637,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.495,
      "implied_under_probability_raw": 0.5652,
      "implied_over_probability_novig": 0.4669,
      "implied_under_probability_novig": 0.5331,
      "edge_over": 0.0413,
      "edge_under": -0.1015,
      "recommended_side": "Over",
      "recommended_edge": 0.0413,
      "play_tier": "Play",
      "no_play_reason": null,
      "adjustment_delta": 0.33,
      "adjustment_multiplier": 1.048,
      "aggregate_matchup_score": 83.1,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 33971.0,
      "lineup_expected_strikeouts": 7.18,
      "environment_summary": "neutral",
      "temperature_f": 65.1,
      "wind_speed_mph": 4.0,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "J.T. Ginn",
      "pitcher_id": 669372,
      "team_abbr": "ATH",
      "opponent_abbr": "PIT",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-15T11:56:49.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -106,
      "under_odds": -120,
      "expected_strikeouts": 5.07,
      "baseline_projected_strikeouts": 4.52,
      "adjusted_projected_strikeouts": 5.07,
      "skill_score": 33.1,
      "opportunity_score": 37.0,
      "opponent_weakness_score": 47.7,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 68.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.5468,
      "model_under_probability": 0.4532,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5146,
      "implied_under_probability_raw": 0.5455,
      "implied_over_probability_novig": 0.4854,
      "implied_under_probability_novig": 0.5146,
      "edge_over": 0.0322,
      "edge_under": -0.0923,
      "recommended_side": "Over",
      "recommended_edge": 0.0322,
      "play_tier": "Play",
      "no_play_reason": null,
      "adjustment_delta": 0.55,
      "adjustment_multiplier": 1.122,
      "aggregate_matchup_score": 61.6,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 8470.0,
      "lineup_expected_strikeouts": 5.96,
      "environment_summary": "neutral",
      "temperature_f": 70.3,
      "wind_speed_mph": 9.4,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Ryne Nelson",
      "pitcher_id": 669194,
      "team_abbr": "AZ",
      "opponent_abbr": "LAA",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-15T11:57:52.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -140,
      "under_odds": 105,
      "expected_strikeouts": 4.66,
      "baseline_projected_strikeouts": 4.45,
      "adjusted_projected_strikeouts": 4.66,
      "skill_score": 7.9,
      "opportunity_score": 66.0,
      "opponent_weakness_score": 39.3,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 47.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.4824,
      "model_under_probability": 0.5176,
      "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.1009,
      "edge_under": 0.0298,
      "recommended_side": "Under",
      "recommended_edge": 0.0298,
      "play_tier": "Lean",
      "no_play_reason": null,
      "adjustment_delta": 0.21,
      "adjustment_multiplier": 1.048,
      "aggregate_matchup_score": 46.0,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 25783.0,
      "lineup_expected_strikeouts": 5.1,
      "environment_summary": "neutral",
      "temperature_f": null,
      "wind_speed_mph": null,
      "wind_direction": "unknown",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "MacKenzie Gore",
      "pitcher_id": 669022,
      "team_abbr": "TEX",
      "opponent_abbr": "MIN",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-15T11:57:42.688Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -158,
      "under_odds": 128,
      "expected_strikeouts": 6.04,
      "baseline_projected_strikeouts": 6.15,
      "adjusted_projected_strikeouts": 6.04,
      "skill_score": 26.1,
      "opportunity_score": 35.3,
      "opponent_weakness_score": 37.3,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 83.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.5348,
      "model_under_probability": 0.4652,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6124,
      "implied_under_probability_raw": 0.4386,
      "implied_over_probability_novig": 0.5827,
      "implied_under_probability_novig": 0.4173,
      "edge_over": -0.0776,
      "edge_under": 0.0266,
      "recommended_side": "Under",
      "recommended_edge": 0.0266,
      "play_tier": "Lean",
      "no_play_reason": null,
      "adjustment_delta": -0.11,
      "adjustment_multiplier": 0.983,
      "aggregate_matchup_score": 59.9,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 33452.0,
      "lineup_expected_strikeouts": 5.71,
      "environment_summary": "neutral",
      "temperature_f": 78.3,
      "wind_speed_mph": 2.8,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Mitch Spence",
      "pitcher_id": 687765,
      "team_abbr": "KC",
      "opponent_abbr": "WSH",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 5.5,
      "line_type": "half",
      "over_odds": 630,
      "under_odds": null,
      "expected_strikeouts": 3.52,
      "baseline_projected_strikeouts": 3.35,
      "adjusted_projected_strikeouts": 3.52,
      "skill_score": 8.4,
      "opportunity_score": 37.0,
      "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": 69.9,
      "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.1633,
      "model_under_probability": 0.8367,
      "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.0263,
      "edge_under": null,
      "recommended_side": "Over",
      "recommended_edge": 0.0263,
      "play_tier": "Lean",
      "no_play_reason": null,
      "adjustment_delta": 0.17,
      "adjustment_multiplier": 1.051,
      "aggregate_matchup_score": 31.2,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 11502.0,
      "lineup_expected_strikeouts": 3.99,
      "environment_summary": "neutral",
      "temperature_f": 71.1,
      "wind_speed_mph": 4.4,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Mitch Spence",
      "pitcher_id": 687765,
      "team_abbr": "KC",
      "opponent_abbr": "WSH",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 3.5,
      "line_type": "half",
      "over_odds": 132,
      "under_odds": -178,
      "expected_strikeouts": 3.52,
      "baseline_projected_strikeouts": 3.35,
      "adjusted_projected_strikeouts": 3.52,
      "skill_score": 8.4,
      "opportunity_score": 37.0,
      "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": 69.9,
      "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.4565,
      "model_under_probability": 0.5435,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.431,
      "implied_under_probability_raw": 0.6403,
      "implied_over_probability_novig": 0.4023,
      "implied_under_probability_novig": 0.5977,
      "edge_over": 0.0255,
      "edge_under": -0.0968,
      "recommended_side": "Over",
      "recommended_edge": 0.0255,
      "play_tier": "Lean",
      "no_play_reason": null,
      "adjustment_delta": 0.17,
      "adjustment_multiplier": 1.051,
      "aggregate_matchup_score": 31.2,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 11502.0,
      "lineup_expected_strikeouts": 3.99,
      "environment_summary": "neutral",
      "temperature_f": 71.1,
      "wind_speed_mph": 4.4,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Zack Wheeler",
      "pitcher_id": 554430,
      "team_abbr": "PHI",
      "opponent_abbr": "MIA",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-15T11:57:04.000Z",
      "line": 6.5,
      "line_type": "half",
      "over_odds": -105,
      "under_odds": -125,
      "expected_strikeouts": 7.1,
      "baseline_projected_strikeouts": 6.77,
      "adjusted_projected_strikeouts": 7.1,
      "skill_score": 30.5,
      "opportunity_score": 71.2,
      "opponent_weakness_score": 52.9,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 21.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.5363,
      "model_under_probability": 0.4637,
      "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.0241,
      "edge_under": -0.0919,
      "recommended_side": "Over",
      "recommended_edge": 0.0241,
      "play_tier": "Lean",
      "no_play_reason": null,
      "adjustment_delta": 0.33,
      "adjustment_multiplier": 1.048,
      "aggregate_matchup_score": 83.1,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 33971.0,
      "lineup_expected_strikeouts": 7.18,
      "environment_summary": "neutral",
      "temperature_f": 65.1,
      "wind_speed_mph": 4.0,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Mitch Spence",
      "pitcher_id": 687765,
      "team_abbr": "KC",
      "opponent_abbr": "WSH",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 4.5,
      "line_type": "half",
      "over_odds": 280,
      "under_odds": null,
      "expected_strikeouts": 3.52,
      "baseline_projected_strikeouts": 3.35,
      "adjusted_projected_strikeouts": 3.52,
      "skill_score": 8.4,
      "opportunity_score": 37.0,
      "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": 69.9,
      "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.2862,
      "model_under_probability": 0.7138,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.2632,
      "implied_under_probability_raw": null,
      "implied_over_probability_novig": null,
      "implied_under_probability_novig": null,
      "edge_over": 0.023,
      "edge_under": null,
      "recommended_side": "Over",
      "recommended_edge": 0.023,
      "play_tier": "Lean",
      "no_play_reason": null,
      "adjustment_delta": 0.17,
      "adjustment_multiplier": 1.051,
      "aggregate_matchup_score": 31.2,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 11502.0,
      "lineup_expected_strikeouts": 3.99,
      "environment_summary": "neutral",
      "temperature_f": 71.1,
      "wind_speed_mph": 4.4,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Ryan Gusto",
      "pitcher_id": 687473,
      "team_abbr": "MIA",
      "opponent_abbr": "PHI",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 6.5,
      "line_type": "half",
      "over_odds": 550,
      "under_odds": null,
      "expected_strikeouts": 4.37,
      "baseline_projected_strikeouts": 3.98,
      "adjusted_projected_strikeouts": 4.37,
      "skill_score": 9.6,
      "opportunity_score": 52.6,
      "opponent_weakness_score": 39.7,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 48.1,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.1749,
      "model_under_probability": 0.8251,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.1538,
      "implied_under_probability_raw": null,
      "implied_over_probability_novig": null,
      "implied_under_probability_novig": null,
      "edge_over": 0.0211,
      "edge_under": null,
      "recommended_side": "Over",
      "recommended_edge": 0.0211,
      "play_tier": "Lean",
      "no_play_reason": null,
      "adjustment_delta": 0.39,
      "adjustment_multiplier": 1.098,
      "aggregate_matchup_score": 44.0,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 7135.0,
      "lineup_expected_strikeouts": 5.15,
      "environment_summary": "neutral",
      "temperature_f": 65.1,
      "wind_speed_mph": 4.0,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Michael Lorenzen",
      "pitcher_id": 547179,
      "team_abbr": "COL",
      "opponent_abbr": "CHC",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-15T11:57:38.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 129,
      "under_odds": -168,
      "expected_strikeouts": 3.91,
      "baseline_projected_strikeouts": 3.75,
      "adjusted_projected_strikeouts": 3.91,
      "skill_score": 12.4,
      "opportunity_score": 51.6,
      "opponent_weakness_score": 35.2,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 49.1,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.3546,
      "model_under_probability": 0.6454,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4367,
      "implied_under_probability_raw": 0.6269,
      "implied_over_probability_novig": 0.4106,
      "implied_under_probability_novig": 0.5894,
      "edge_over": -0.0821,
      "edge_under": 0.0185,
      "recommended_side": "Under",
      "recommended_edge": 0.0185,
      "play_tier": "Lean",
      "no_play_reason": null,
      "adjustment_delta": 0.16,
      "adjustment_multiplier": 1.043,
      "aggregate_matchup_score": 30.8,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 26336.0,
      "lineup_expected_strikeouts": 4.38,
      "environment_summary": "neutral",
      "temperature_f": 59.4,
      "wind_speed_mph": 6.4,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "MacKenzie Gore",
      "pitcher_id": 669022,
      "team_abbr": "TEX",
      "opponent_abbr": "MIN",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-15T11:57:14.000Z",
      "line": 6.5,
      "line_type": "half",
      "over_odds": 111,
      "under_odds": -142,
      "expected_strikeouts": 6.04,
      "baseline_projected_strikeouts": 6.15,
      "adjusted_projected_strikeouts": 6.04,
      "skill_score": 26.1,
      "opportunity_score": 35.3,
      "opponent_weakness_score": 37.3,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 83.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.3978,
      "model_under_probability": 0.6022,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4739,
      "implied_under_probability_raw": 0.5868,
      "implied_over_probability_novig": 0.4468,
      "implied_under_probability_novig": 0.5532,
      "edge_over": -0.0761,
      "edge_under": 0.0154,
      "recommended_side": "Under",
      "recommended_edge": 0.0154,
      "play_tier": "Lean",
      "no_play_reason": null,
      "adjustment_delta": -0.11,
      "adjustment_multiplier": 0.983,
      "aggregate_matchup_score": 59.9,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 33452.0,
      "lineup_expected_strikeouts": 5.71,
      "environment_summary": "neutral",
      "temperature_f": 78.3,
      "wind_speed_mph": 2.8,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Michael Lorenzen",
      "pitcher_id": 547179,
      "team_abbr": "COL",
      "opponent_abbr": "CHC",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-15T11:57:42.000Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -155,
      "under_odds": 115,
      "expected_strikeouts": 3.91,
      "baseline_projected_strikeouts": 3.75,
      "adjusted_projected_strikeouts": 3.91,
      "skill_score": 12.4,
      "opportunity_score": 51.6,
      "opponent_weakness_score": 35.2,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 49.1,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.5292,
      "model_under_probability": 0.4708,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6078,
      "implied_under_probability_raw": 0.4651,
      "implied_over_probability_novig": 0.5665,
      "implied_under_probability_novig": 0.4335,
      "edge_over": -0.0786,
      "edge_under": 0.0057,
      "recommended_side": "No Play",
      "recommended_edge": 0.0057,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.16,
      "adjustment_multiplier": 1.043,
      "aggregate_matchup_score": 30.8,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 26336.0,
      "lineup_expected_strikeouts": 4.38,
      "environment_summary": "neutral",
      "temperature_f": 59.4,
      "wind_speed_mph": 6.4,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Nick Martinez",
      "pitcher_id": 607259,
      "team_abbr": "TB",
      "opponent_abbr": "LAD",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-15T11:57:42.688Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -115,
      "under_odds": -105,
      "expected_strikeouts": 3.66,
      "baseline_projected_strikeouts": 3.47,
      "adjusted_projected_strikeouts": 3.66,
      "skill_score": 14.1,
      "opportunity_score": 63.8,
      "opponent_weakness_score": 35.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": 33.2,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.4833,
      "model_under_probability": 0.5167,
      "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.0516,
      "edge_under": 0.0045,
      "recommended_side": "No Play",
      "recommended_edge": 0.0045,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.19,
      "adjustment_multiplier": 1.055,
      "aggregate_matchup_score": 27.4,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 18769.0,
      "lineup_expected_strikeouts": 4.21,
      "environment_summary": "neutral",
      "temperature_f": 61.9,
      "wind_speed_mph": 3.9,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Ryan Gusto",
      "pitcher_id": 687473,
      "team_abbr": "MIA",
      "opponent_abbr": "PHI",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 5.5,
      "line_type": "half",
      "over_odds": 250,
      "under_odds": null,
      "expected_strikeouts": 4.37,
      "baseline_projected_strikeouts": 3.98,
      "adjusted_projected_strikeouts": 4.37,
      "skill_score": 9.6,
      "opportunity_score": 52.6,
      "opponent_weakness_score": 39.7,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 48.1,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.2861,
      "model_under_probability": 0.7139,
      "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.0004,
      "edge_under": null,
      "recommended_side": "No Play",
      "recommended_edge": 0.0004,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.39,
      "adjustment_multiplier": 1.098,
      "aggregate_matchup_score": 44.0,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 7135.0,
      "lineup_expected_strikeouts": 5.15,
      "environment_summary": "neutral",
      "temperature_f": 65.1,
      "wind_speed_mph": 4.0,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Ryan Gusto",
      "pitcher_id": 687473,
      "team_abbr": "MIA",
      "opponent_abbr": "PHI",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 4.5,
      "line_type": "half",
      "over_odds": 126,
      "under_odds": -168,
      "expected_strikeouts": 4.37,
      "baseline_projected_strikeouts": 3.98,
      "adjusted_projected_strikeouts": 4.37,
      "skill_score": 9.6,
      "opportunity_score": 52.6,
      "opponent_weakness_score": 39.7,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 48.1,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.4342,
      "model_under_probability": 0.5658,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4425,
      "implied_under_probability_raw": 0.6269,
      "implied_over_probability_novig": 0.4138,
      "implied_under_probability_novig": 0.5862,
      "edge_over": -0.0083,
      "edge_under": -0.0611,
      "recommended_side": "No Play",
      "recommended_edge": -0.0083,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.39,
      "adjustment_multiplier": 1.098,
      "aggregate_matchup_score": 44.0,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 7135.0,
      "lineup_expected_strikeouts": 5.15,
      "environment_summary": "neutral",
      "temperature_f": 65.1,
      "wind_speed_mph": 4.0,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Ryan Gusto",
      "pitcher_id": 687473,
      "team_abbr": "MIA",
      "opponent_abbr": "PHI",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-15T11:57:42.688Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 126,
      "under_odds": -168,
      "expected_strikeouts": 4.37,
      "baseline_projected_strikeouts": 3.98,
      "adjusted_projected_strikeouts": 4.37,
      "skill_score": 9.6,
      "opportunity_score": 52.6,
      "opponent_weakness_score": 39.7,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 48.1,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.4342,
      "model_under_probability": 0.5658,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4425,
      "implied_under_probability_raw": 0.6269,
      "implied_over_probability_novig": 0.4138,
      "implied_under_probability_novig": 0.5862,
      "edge_over": -0.0083,
      "edge_under": -0.0611,
      "recommended_side": "No Play",
      "recommended_edge": -0.0083,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.39,
      "adjustment_multiplier": 1.098,
      "aggregate_matchup_score": 44.0,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 7135.0,
      "lineup_expected_strikeouts": 5.15,
      "environment_summary": "neutral",
      "temperature_f": 65.1,
      "wind_speed_mph": 4.0,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Ryan Gusto",
      "pitcher_id": 687473,
      "team_abbr": "MIA",
      "opponent_abbr": "PHI",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-15T11:57:04.000Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -162,
      "under_odds": 127,
      "expected_strikeouts": 4.37,
      "baseline_projected_strikeouts": 3.98,
      "adjusted_projected_strikeouts": 4.37,
      "skill_score": 9.6,
      "opportunity_score": 52.6,
      "opponent_weakness_score": 39.7,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 48.1,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.6067,
      "model_under_probability": 0.3933,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6183,
      "implied_under_probability_raw": 0.4405,
      "implied_over_probability_novig": 0.584,
      "implied_under_probability_novig": 0.416,
      "edge_over": -0.0116,
      "edge_under": -0.0472,
      "recommended_side": "No Play",
      "recommended_edge": -0.0116,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.39,
      "adjustment_multiplier": 1.098,
      "aggregate_matchup_score": 44.0,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 7135.0,
      "lineup_expected_strikeouts": 5.15,
      "environment_summary": "neutral",
      "temperature_f": 65.1,
      "wind_speed_mph": 4.0,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "MacKenzie Gore",
      "pitcher_id": 669022,
      "team_abbr": "TEX",
      "opponent_abbr": "MIN",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-15T11:57:13.000Z",
      "line": 6.5,
      "line_type": "half",
      "over_odds": 120,
      "under_odds": -160,
      "expected_strikeouts": 6.04,
      "baseline_projected_strikeouts": 6.15,
      "adjusted_projected_strikeouts": 6.04,
      "skill_score": 26.1,
      "opportunity_score": 35.3,
      "opponent_weakness_score": 37.3,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 83.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.3978,
      "model_under_probability": 0.6022,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4545,
      "implied_under_probability_raw": 0.6154,
      "implied_over_probability_novig": 0.4248,
      "implied_under_probability_novig": 0.5752,
      "edge_over": -0.0567,
      "edge_under": -0.0132,
      "recommended_side": "No Play",
      "recommended_edge": -0.0132,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": -0.11,
      "adjustment_multiplier": 0.983,
      "aggregate_matchup_score": 59.9,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 33452.0,
      "lineup_expected_strikeouts": 5.71,
      "environment_summary": "neutral",
      "temperature_f": 78.3,
      "wind_speed_mph": 2.8,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Ryan Gusto",
      "pitcher_id": 687473,
      "team_abbr": "MIA",
      "opponent_abbr": "PHI",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-15T11:57:04.000Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -165,
      "under_odds": 125,
      "expected_strikeouts": 4.37,
      "baseline_projected_strikeouts": 3.98,
      "adjusted_projected_strikeouts": 4.37,
      "skill_score": 9.6,
      "opportunity_score": 52.6,
      "opponent_weakness_score": 39.7,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 48.1,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.6067,
      "model_under_probability": 0.3933,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6226,
      "implied_under_probability_raw": 0.4444,
      "implied_over_probability_novig": 0.5835,
      "implied_under_probability_novig": 0.4165,
      "edge_over": -0.0159,
      "edge_under": -0.0511,
      "recommended_side": "No Play",
      "recommended_edge": -0.0159,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.39,
      "adjustment_multiplier": 1.098,
      "aggregate_matchup_score": 44.0,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 7135.0,
      "lineup_expected_strikeouts": 5.15,
      "environment_summary": "neutral",
      "temperature_f": 65.1,
      "wind_speed_mph": 4.0,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Nick Martinez",
      "pitcher_id": 607259,
      "team_abbr": "TB",
      "opponent_abbr": "LAD",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-15T11:57:09.000Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -101,
      "under_odds": -127,
      "expected_strikeouts": 3.66,
      "baseline_projected_strikeouts": 3.47,
      "adjusted_projected_strikeouts": 3.66,
      "skill_score": 14.1,
      "opportunity_score": 63.8,
      "opponent_weakness_score": 35.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": 33.2,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.4833,
      "model_under_probability": 0.5167,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5025,
      "implied_under_probability_raw": 0.5595,
      "implied_over_probability_novig": 0.4732,
      "implied_under_probability_novig": 0.5268,
      "edge_over": -0.0192,
      "edge_under": -0.0428,
      "recommended_side": "No Play",
      "recommended_edge": -0.0192,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.19,
      "adjustment_multiplier": 1.055,
      "aggregate_matchup_score": 27.4,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 18769.0,
      "lineup_expected_strikeouts": 4.21,
      "environment_summary": "neutral",
      "temperature_f": 61.9,
      "wind_speed_mph": 3.9,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Dustin May",
      "pitcher_id": 669160,
      "team_abbr": "STL",
      "opponent_abbr": "SD",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 7.5,
      "line_type": "half",
      "over_odds": 750,
      "under_odds": null,
      "expected_strikeouts": 4.28,
      "baseline_projected_strikeouts": 4.2,
      "adjusted_projected_strikeouts": 4.28,
      "skill_score": 26.8,
      "opportunity_score": 62.0,
      "opponent_weakness_score": 32.5,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 42.3,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.0926,
      "model_under_probability": 0.9074,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.1176,
      "implied_under_probability_raw": null,
      "implied_over_probability_novig": null,
      "implied_under_probability_novig": null,
      "edge_over": -0.025,
      "edge_under": null,
      "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.08,
      "adjustment_multiplier": 1.02,
      "aggregate_matchup_score": 32.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 12285.0,
      "lineup_expected_strikeouts": 4.61,
      "environment_summary": "neutral",
      "temperature_f": 65.8,
      "wind_speed_mph": 4.2,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Nick Martinez",
      "pitcher_id": 607259,
      "team_abbr": "TB",
      "opponent_abbr": "LAD",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-06-15T11:57:40.000Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -110,
      "under_odds": -120,
      "expected_strikeouts": 3.66,
      "baseline_projected_strikeouts": 3.47,
      "adjusted_projected_strikeouts": 3.66,
      "skill_score": 14.1,
      "opportunity_score": 63.8,
      "opponent_weakness_score": 35.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": 33.2,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.4833,
      "model_under_probability": 0.5167,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5238,
      "implied_under_probability_raw": 0.5455,
      "implied_over_probability_novig": 0.4899,
      "implied_under_probability_novig": 0.5101,
      "edge_over": -0.0405,
      "edge_under": -0.0288,
      "recommended_side": "No Play",
      "recommended_edge": -0.0288,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.19,
      "adjustment_multiplier": 1.055,
      "aggregate_matchup_score": 27.4,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 18769.0,
      "lineup_expected_strikeouts": 4.21,
      "environment_summary": "neutral",
      "temperature_f": 61.9,
      "wind_speed_mph": 3.9,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Mitch Spence",
      "pitcher_id": 687765,
      "team_abbr": "KC",
      "opponent_abbr": "WSH",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 2.5,
      "line_type": "half",
      "over_odds": -220,
      "under_odds": null,
      "expected_strikeouts": 3.52,
      "baseline_projected_strikeouts": 3.35,
      "adjusted_projected_strikeouts": 3.52,
      "skill_score": 8.4,
      "opportunity_score": 37.0,
      "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": 69.9,
      "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.6553,
      "model_under_probability": 0.3447,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6875,
      "implied_under_probability_raw": null,
      "implied_over_probability_novig": null,
      "implied_under_probability_novig": null,
      "edge_over": -0.0322,
      "edge_under": null,
      "recommended_side": "No Play",
      "recommended_edge": -0.0322,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.17,
      "adjustment_multiplier": 1.051,
      "aggregate_matchup_score": 31.2,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 11502.0,
      "lineup_expected_strikeouts": 3.99,
      "environment_summary": "neutral",
      "temperature_f": 71.1,
      "wind_speed_mph": 4.4,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Zack Wheeler",
      "pitcher_id": 554430,
      "team_abbr": "PHI",
      "opponent_abbr": "MIA",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 5.5,
      "line_type": "half",
      "over_odds": -235,
      "under_odds": null,
      "expected_strikeouts": 7.1,
      "baseline_projected_strikeouts": 6.77,
      "adjusted_projected_strikeouts": 7.1,
      "skill_score": 30.5,
      "opportunity_score": 71.2,
      "opponent_weakness_score": 52.9,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 21.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.6648,
      "model_under_probability": 0.3352,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.7015,
      "implied_under_probability_raw": null,
      "implied_over_probability_novig": null,
      "implied_under_probability_novig": null,
      "edge_over": -0.0367,
      "edge_under": null,
      "recommended_side": "No Play",
      "recommended_edge": -0.0367,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.33,
      "adjustment_multiplier": 1.048,
      "aggregate_matchup_score": 83.1,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 33971.0,
      "lineup_expected_strikeouts": 7.18,
      "environment_summary": "neutral",
      "temperature_f": 65.1,
      "wind_speed_mph": 4.0,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Zack Wheeler",
      "pitcher_id": 554430,
      "team_abbr": "PHI",
      "opponent_abbr": "MIA",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 3.5,
      "line_type": "half",
      "over_odds": -2000,
      "under_odds": null,
      "expected_strikeouts": 7.1,
      "baseline_projected_strikeouts": 6.77,
      "adjusted_projected_strikeouts": 7.1,
      "skill_score": 30.5,
      "opportunity_score": 71.2,
      "opponent_weakness_score": 52.9,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 21.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.8812,
      "model_under_probability": 0.1188,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.9524,
      "implied_under_probability_raw": null,
      "implied_over_probability_novig": null,
      "implied_under_probability_novig": null,
      "edge_over": -0.0712,
      "edge_under": null,
      "recommended_side": "No Play",
      "recommended_edge": -0.0712,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.33,
      "adjustment_multiplier": 1.048,
      "aggregate_matchup_score": 83.1,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 33971.0,
      "lineup_expected_strikeouts": 7.18,
      "environment_summary": "neutral",
      "temperature_f": 65.1,
      "wind_speed_mph": 4.0,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Zack Wheeler",
      "pitcher_id": 554430,
      "team_abbr": "PHI",
      "opponent_abbr": "MIA",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 4.5,
      "line_type": "half",
      "over_odds": -600,
      "under_odds": null,
      "expected_strikeouts": 7.1,
      "baseline_projected_strikeouts": 6.77,
      "adjusted_projected_strikeouts": 7.1,
      "skill_score": 30.5,
      "opportunity_score": 71.2,
      "opponent_weakness_score": 52.9,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 21.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.7842,
      "model_under_probability": 0.2158,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.8571,
      "implied_under_probability_raw": null,
      "implied_over_probability_novig": null,
      "implied_under_probability_novig": null,
      "edge_over": -0.0729,
      "edge_under": null,
      "recommended_side": "No Play",
      "recommended_edge": -0.0729,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.33,
      "adjustment_multiplier": 1.048,
      "aggregate_matchup_score": 83.1,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 33971.0,
      "lineup_expected_strikeouts": 7.18,
      "environment_summary": "neutral",
      "temperature_f": 65.1,
      "wind_speed_mph": 4.0,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Dustin May",
      "pitcher_id": 669160,
      "team_abbr": "STL",
      "opponent_abbr": "SD",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 6.5,
      "line_type": "half",
      "over_odds": 320,
      "under_odds": null,
      "expected_strikeouts": 4.28,
      "baseline_projected_strikeouts": 4.2,
      "adjusted_projected_strikeouts": 4.28,
      "skill_score": 26.8,
      "opportunity_score": 62.0,
      "opponent_weakness_score": 32.5,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 42.3,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.1643,
      "model_under_probability": 0.8357,
      "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.0738,
      "edge_under": null,
      "recommended_side": "No Play",
      "recommended_edge": -0.0738,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.08,
      "adjustment_multiplier": 1.02,
      "aggregate_matchup_score": 32.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 12285.0,
      "lineup_expected_strikeouts": 4.61,
      "environment_summary": "neutral",
      "temperature_f": 65.8,
      "wind_speed_mph": 4.2,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Ryan Gusto",
      "pitcher_id": 687473,
      "team_abbr": "MIA",
      "opponent_abbr": "PHI",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 2.5,
      "line_type": "half",
      "over_odds": -600,
      "under_odds": null,
      "expected_strikeouts": 4.37,
      "baseline_projected_strikeouts": 3.98,
      "adjusted_projected_strikeouts": 4.37,
      "skill_score": 9.6,
      "opportunity_score": 52.6,
      "opponent_weakness_score": 39.7,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 48.1,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.7759,
      "model_under_probability": 0.2241,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.8571,
      "implied_under_probability_raw": null,
      "implied_over_probability_novig": null,
      "implied_under_probability_novig": null,
      "edge_over": -0.0812,
      "edge_under": null,
      "recommended_side": "No Play",
      "recommended_edge": -0.0812,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.39,
      "adjustment_multiplier": 1.098,
      "aggregate_matchup_score": 44.0,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 7135.0,
      "lineup_expected_strikeouts": 5.15,
      "environment_summary": "neutral",
      "temperature_f": 65.1,
      "wind_speed_mph": 4.0,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Ryan Gusto",
      "pitcher_id": 687473,
      "team_abbr": "MIA",
      "opponent_abbr": "PHI",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 3.5,
      "line_type": "half",
      "over_odds": -225,
      "under_odds": null,
      "expected_strikeouts": 4.37,
      "baseline_projected_strikeouts": 3.98,
      "adjusted_projected_strikeouts": 4.37,
      "skill_score": 9.6,
      "opportunity_score": 52.6,
      "opponent_weakness_score": 39.7,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 48.1,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.6067,
      "model_under_probability": 0.3933,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6923,
      "implied_under_probability_raw": null,
      "implied_over_probability_novig": null,
      "implied_under_probability_novig": null,
      "edge_over": -0.0856,
      "edge_under": null,
      "recommended_side": "No Play",
      "recommended_edge": -0.0856,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.39,
      "adjustment_multiplier": 1.098,
      "aggregate_matchup_score": 44.0,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 7135.0,
      "lineup_expected_strikeouts": 5.15,
      "environment_summary": "neutral",
      "temperature_f": 65.1,
      "wind_speed_mph": 4.0,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Dustin May",
      "pitcher_id": 669160,
      "team_abbr": "STL",
      "opponent_abbr": "SD",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 5.5,
      "line_type": "half",
      "over_odds": 164,
      "under_odds": null,
      "expected_strikeouts": 4.28,
      "baseline_projected_strikeouts": 4.2,
      "adjusted_projected_strikeouts": 4.28,
      "skill_score": 26.8,
      "opportunity_score": 62.0,
      "opponent_weakness_score": 32.5,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 42.3,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.2724,
      "model_under_probability": 0.7276,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.3788,
      "implied_under_probability_raw": null,
      "implied_over_probability_novig": null,
      "implied_under_probability_novig": null,
      "edge_over": -0.1064,
      "edge_under": null,
      "recommended_side": "No Play",
      "recommended_edge": -0.1064,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.08,
      "adjustment_multiplier": 1.02,
      "aggregate_matchup_score": 32.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 12285.0,
      "lineup_expected_strikeouts": 4.61,
      "environment_summary": "neutral",
      "temperature_f": 65.8,
      "wind_speed_mph": 4.2,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Dustin May",
      "pitcher_id": 669160,
      "team_abbr": "STL",
      "opponent_abbr": "SD",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 2.5,
      "line_type": "half",
      "over_odds": -1200,
      "under_odds": null,
      "expected_strikeouts": 4.28,
      "baseline_projected_strikeouts": 4.2,
      "adjusted_projected_strikeouts": 4.28,
      "skill_score": 26.8,
      "opportunity_score": 62.0,
      "opponent_weakness_score": 32.5,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 42.3,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.7652,
      "model_under_probability": 0.2348,
      "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.1579,
      "edge_under": null,
      "recommended_side": "No Play",
      "recommended_edge": -0.1579,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.08,
      "adjustment_multiplier": 1.02,
      "aggregate_matchup_score": 32.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 12285.0,
      "lineup_expected_strikeouts": 4.61,
      "environment_summary": "neutral",
      "temperature_f": 65.8,
      "wind_speed_mph": 4.2,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Dustin May",
      "pitcher_id": 669160,
      "team_abbr": "STL",
      "opponent_abbr": "SD",
      "sportsbook": "FanDuel",
      "source_provider": "fanduel",
      "timestamp": null,
      "line": 3.5,
      "line_type": "half",
      "over_odds": -340,
      "under_odds": null,
      "expected_strikeouts": 4.28,
      "baseline_projected_strikeouts": 4.2,
      "adjusted_projected_strikeouts": 4.28,
      "skill_score": 26.8,
      "opportunity_score": 62.0,
      "opponent_weakness_score": 32.5,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 42.3,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.5923,
      "model_under_probability": 0.4077,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.7727,
      "implied_under_probability_raw": null,
      "implied_over_probability_novig": null,
      "implied_under_probability_novig": null,
      "edge_over": -0.1804,
      "edge_under": null,
      "recommended_side": "No Play",
      "recommended_edge": -0.1804,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.08,
      "adjustment_multiplier": 1.02,
      "aggregate_matchup_score": 32.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 12285.0,
      "lineup_expected_strikeouts": 4.61,
      "environment_summary": "neutral",
      "temperature_f": 65.8,
      "wind_speed_mph": 4.2,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    }
  ],
  "unmatched_inputs": [
    {
      "pitcher_name": "Andrew Alvarez",
      "team_abbr": "WSH",
      "opponent_abbr": "KC",
      "sportsbook": "BetMGM",
      "line": 3.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Andrew Alvarez",
      "team_abbr": "WSH",
      "opponent_abbr": "KC",
      "sportsbook": "DraftKings",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Andrew Alvarez",
      "team_abbr": 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": "Andrew Alvarez",
      "team_abbr": null,
      "opponent_abbr": null,
      "sportsbook": "FanDuel",
      "line": 3.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Andrew Alvarez",
      "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": "Andrew Alvarez",
      "team_abbr": "WSH",
      "opponent_abbr": "KC",
      "sportsbook": "FanDuel",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Andrew Alvarez",
      "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": "Andrew Alvarez",
      "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": "Chase Burns",
      "team_abbr": "CIN",
      "opponent_abbr": "NYM",
      "sportsbook": "BetMGM",
      "line": 7.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Chase Burns",
      "team_abbr": "CIN",
      "opponent_abbr": "NYM",
      "sportsbook": "DraftKings",
      "line": 7.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Chase Burns",
      "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": "Chase Burns",
      "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": "Chase Burns",
      "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": "Chase Burns",
      "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": "Chase Burns",
      "team_abbr": "CIN",
      "opponent_abbr": "NYM",
      "sportsbook": "FanDuel",
      "line": 7.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Chase Burns",
      "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": "Chase Burns 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": "Chase Burns 11+ Strikeouts",
      "team_abbr": null,
      "opponent_abbr": null,
      "sportsbook": "FanDuel",
      "line": 10.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Jared Jones",
      "team_abbr": "PIT",
      "opponent_abbr": "OAK",
      "sportsbook": "BetMGM",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Jared Jones",
      "team_abbr": "PIT",
      "opponent_abbr": "OAK",
      "sportsbook": "DraftKings",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Jared Jones",
      "team_abbr": "PIT",
      "opponent_abbr": "OAK",
      "sportsbook": "FanDuel",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Kai-Wei Teng",
      "team_abbr": "HOU",
      "opponent_abbr": "DET",
      "sportsbook": "DraftKings",
      "line": 5.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Kai-Wei Teng",
      "team_abbr": "HOU",
      "opponent_abbr": "DET",
      "sportsbook": "FanDuel",
      "line": 5.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Troy Melton",
      "team_abbr": "DET",
      "opponent_abbr": "HOU",
      "sportsbook": "BetMGM",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Troy Melton",
      "team_abbr": "DET",
      "opponent_abbr": "HOU",
      "sportsbook": "DraftKings",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Troy Melton",
      "team_abbr": "DET",
      "opponent_abbr": "HOU",
      "sportsbook": "FanDuel",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Walbert Ure\u00f1a",
      "team_abbr": "LAA",
      "opponent_abbr": "ARI",
      "sportsbook": "BetMGM",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Walbert Ure\u00f1a",
      "team_abbr": "LAA",
      "opponent_abbr": "ARI",
      "sportsbook": "DraftKings",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Walbert Ure\u00f1a",
      "team_abbr": "LAA",
      "opponent_abbr": "ARI",
      "sportsbook": "FanDuel",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Zack Wheeler 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."
    }
  ]
}