{
  "date": "2026-07-30",
  "generated_at": "2026-07-31T00:00:01.031777",
  "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-07-30",
  "sportsbook_input_summary": {
    "input_type": "canonical_processed_sportsbook_input",
    "source_count": 1,
    "row_count": 48,
    "matched_count": 34,
    "unmatched_count": 14
  },
  "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": 34,
    "grouped_pitcher_count": 12,
    "sportsbook_count": 3
  },
  "edge_count": 34,
  "edges": [
    {
      "pitcher_name": "Sean Burke",
      "pitcher_id": 680732,
      "team_abbr": "CWS",
      "opponent_abbr": "NYY",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-07-30T11:58:32.858Z",
      "line": 6.5,
      "line_type": "half",
      "over_odds": -148,
      "under_odds": 116,
      "expected_strikeouts": 4.31,
      "baseline_projected_strikeouts": 4.05,
      "adjusted_projected_strikeouts": 4.31,
      "skill_score": 59.9,
      "opportunity_score": 57.2,
      "opponent_weakness_score": 35.6,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 31.9,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.1678,
      "model_under_probability": 0.8322,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5968,
      "implied_under_probability_raw": 0.463,
      "implied_over_probability_novig": 0.5631,
      "implied_under_probability_novig": 0.4369,
      "edge_over": -0.429,
      "edge_under": 0.3692,
      "recommended_side": "Under",
      "recommended_edge": 0.3692,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.26,
      "adjustment_multiplier": 1.064,
      "aggregate_matchup_score": 30.4,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 10284.0,
      "lineup_expected_strikeouts": 4.99,
      "environment_summary": "neutral",
      "temperature_f": 75.4,
      "wind_speed_mph": 7.0,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Sean Burke",
      "pitcher_id": 680732,
      "team_abbr": "CWS",
      "opponent_abbr": "NYY",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-07-30T11:58:26.842Z",
      "line": 7.5,
      "line_type": "half",
      "over_odds": 113,
      "under_odds": -146,
      "expected_strikeouts": 4.31,
      "baseline_projected_strikeouts": 4.05,
      "adjusted_projected_strikeouts": 4.31,
      "skill_score": 59.9,
      "opportunity_score": 57.2,
      "opponent_weakness_score": 35.6,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 31.9,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.095,
      "model_under_probability": 0.905,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4695,
      "implied_under_probability_raw": 0.5935,
      "implied_over_probability_novig": 0.4417,
      "implied_under_probability_novig": 0.5583,
      "edge_over": -0.3745,
      "edge_under": 0.3115,
      "recommended_side": "Under",
      "recommended_edge": 0.3115,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.26,
      "adjustment_multiplier": 1.064,
      "aggregate_matchup_score": 30.4,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 10284.0,
      "lineup_expected_strikeouts": 4.99,
      "environment_summary": "neutral",
      "temperature_f": 75.4,
      "wind_speed_mph": 7.0,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Sean Burke",
      "pitcher_id": 680732,
      "team_abbr": "CWS",
      "opponent_abbr": "NYY",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-07-30T11:58:29.000Z",
      "line": 7.5,
      "line_type": "half",
      "over_odds": 115,
      "under_odds": -155,
      "expected_strikeouts": 4.31,
      "baseline_projected_strikeouts": 4.05,
      "adjusted_projected_strikeouts": 4.31,
      "skill_score": 59.9,
      "opportunity_score": 57.2,
      "opponent_weakness_score": 35.6,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 31.9,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.095,
      "model_under_probability": 0.905,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4651,
      "implied_under_probability_raw": 0.6078,
      "implied_over_probability_novig": 0.4335,
      "implied_under_probability_novig": 0.5665,
      "edge_over": -0.3701,
      "edge_under": 0.2972,
      "recommended_side": "Under",
      "recommended_edge": 0.2972,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.26,
      "adjustment_multiplier": 1.064,
      "aggregate_matchup_score": 30.4,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 10284.0,
      "lineup_expected_strikeouts": 4.99,
      "environment_summary": "neutral",
      "temperature_f": 75.4,
      "wind_speed_mph": 7.0,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Ryan Weathers",
      "pitcher_id": 677960,
      "team_abbr": "NYY",
      "opponent_abbr": "CWS",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-07-30T11:58:26.842Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -171,
      "under_odds": 127,
      "expected_strikeouts": 4.65,
      "baseline_projected_strikeouts": 4.87,
      "adjusted_projected_strikeouts": 4.65,
      "skill_score": 49.6,
      "opportunity_score": 30.0,
      "opponent_weakness_score": 29.6,
      "support_tier": "STRONG_SKILL",
      "support_label": "Strong Skill",
      "support_note": "Underlying strikeout skill is the clearest support input.",
      "suppression_score": 81.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.3291,
      "model_under_probability": 0.6709,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.631,
      "implied_under_probability_raw": 0.4405,
      "implied_over_probability_novig": 0.5889,
      "implied_under_probability_novig": 0.4111,
      "edge_over": -0.3019,
      "edge_under": 0.2304,
      "recommended_side": "Under",
      "recommended_edge": 0.2304,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.22,
      "adjustment_multiplier": 0.956,
      "aggregate_matchup_score": 43.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 11703.0,
      "lineup_expected_strikeouts": 4.32,
      "environment_summary": "neutral",
      "temperature_f": 75.4,
      "wind_speed_mph": 7.0,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Ryan Weathers",
      "pitcher_id": 677960,
      "team_abbr": "NYY",
      "opponent_abbr": "CWS",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-07-30T11:58:32.858Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -158,
      "under_odds": 124,
      "expected_strikeouts": 4.65,
      "baseline_projected_strikeouts": 4.87,
      "adjusted_projected_strikeouts": 4.65,
      "skill_score": 49.6,
      "opportunity_score": 30.0,
      "opponent_weakness_score": 29.6,
      "support_tier": "STRONG_SKILL",
      "support_label": "Strong Skill",
      "support_note": "Underlying strikeout skill is the clearest support input.",
      "suppression_score": 81.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.3291,
      "model_under_probability": 0.6709,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6124,
      "implied_under_probability_raw": 0.4464,
      "implied_over_probability_novig": 0.5784,
      "implied_under_probability_novig": 0.4216,
      "edge_over": -0.2833,
      "edge_under": 0.2245,
      "recommended_side": "Under",
      "recommended_edge": 0.2245,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.22,
      "adjustment_multiplier": 0.956,
      "aggregate_matchup_score": 43.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 11703.0,
      "lineup_expected_strikeouts": 4.32,
      "environment_summary": "neutral",
      "temperature_f": 75.4,
      "wind_speed_mph": 7.0,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Ryan Weathers",
      "pitcher_id": 677960,
      "team_abbr": "NYY",
      "opponent_abbr": "CWS",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-07-30T11:58:29.000Z",
      "line": 6.5,
      "line_type": "half",
      "over_odds": 105,
      "under_odds": -140,
      "expected_strikeouts": 4.65,
      "baseline_projected_strikeouts": 4.87,
      "adjusted_projected_strikeouts": 4.65,
      "skill_score": 49.6,
      "opportunity_score": 30.0,
      "opponent_weakness_score": 29.6,
      "support_tier": "STRONG_SKILL",
      "support_label": "Strong Skill",
      "support_note": "Underlying strikeout skill is the clearest support input.",
      "suppression_score": 81.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.2096,
      "model_under_probability": 0.7904,
      "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.2782,
      "edge_under": 0.2071,
      "recommended_side": "Under",
      "recommended_edge": 0.2071,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.22,
      "adjustment_multiplier": 0.956,
      "aggregate_matchup_score": 43.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 11703.0,
      "lineup_expected_strikeouts": 4.32,
      "environment_summary": "neutral",
      "temperature_f": 75.4,
      "wind_speed_mph": 7.0,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Eury P\u00e9rez",
      "pitcher_id": 691587,
      "team_abbr": "MIA",
      "opponent_abbr": "NYM",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-07-30T11:58:26.842Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -136,
      "under_odds": 106,
      "expected_strikeouts": 4.59,
      "baseline_projected_strikeouts": 4.28,
      "adjusted_projected_strikeouts": 4.59,
      "skill_score": 41.5,
      "opportunity_score": 53.5,
      "opponent_weakness_score": 44.2,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 43.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.3199,
      "model_under_probability": 0.6801,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5763,
      "implied_under_probability_raw": 0.4854,
      "implied_over_probability_novig": 0.5428,
      "implied_under_probability_novig": 0.4572,
      "edge_over": -0.2564,
      "edge_under": 0.1947,
      "recommended_side": "Under",
      "recommended_edge": 0.1947,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.31,
      "adjustment_multiplier": 1.073,
      "aggregate_matchup_score": 53.8,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 12967.0,
      "lineup_expected_strikeouts": 5.13,
      "environment_summary": "neutral",
      "temperature_f": 70.0,
      "wind_speed_mph": 2.6,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Eury P\u00e9rez",
      "pitcher_id": 691587,
      "team_abbr": "MIA",
      "opponent_abbr": "NYM",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-07-30T11:58:32.858Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -132,
      "under_odds": 104,
      "expected_strikeouts": 4.59,
      "baseline_projected_strikeouts": 4.28,
      "adjusted_projected_strikeouts": 4.59,
      "skill_score": 41.5,
      "opportunity_score": 53.5,
      "opponent_weakness_score": 44.2,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 43.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.3199,
      "model_under_probability": 0.6801,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.569,
      "implied_under_probability_raw": 0.4902,
      "implied_over_probability_novig": 0.5372,
      "implied_under_probability_novig": 0.4628,
      "edge_over": -0.2491,
      "edge_under": 0.1899,
      "recommended_side": "Under",
      "recommended_edge": 0.1899,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.31,
      "adjustment_multiplier": 1.073,
      "aggregate_matchup_score": 53.8,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 12967.0,
      "lineup_expected_strikeouts": 5.13,
      "environment_summary": "neutral",
      "temperature_f": 70.0,
      "wind_speed_mph": 2.6,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Eury P\u00e9rez",
      "pitcher_id": 691587,
      "team_abbr": "MIA",
      "opponent_abbr": "NYM",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-07-30T11:57:54.000Z",
      "line": 6.5,
      "line_type": "half",
      "over_odds": 125,
      "under_odds": -165,
      "expected_strikeouts": 4.59,
      "baseline_projected_strikeouts": 4.28,
      "adjusted_projected_strikeouts": 4.59,
      "skill_score": 41.5,
      "opportunity_score": 53.5,
      "opponent_weakness_score": 44.2,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 43.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.202,
      "model_under_probability": 0.798,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4444,
      "implied_under_probability_raw": 0.6226,
      "implied_over_probability_novig": 0.4165,
      "implied_under_probability_novig": 0.5835,
      "edge_over": -0.2424,
      "edge_under": 0.1754,
      "recommended_side": "Under",
      "recommended_edge": 0.1754,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.31,
      "adjustment_multiplier": 1.073,
      "aggregate_matchup_score": 53.8,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 12967.0,
      "lineup_expected_strikeouts": 5.13,
      "environment_summary": "neutral",
      "temperature_f": 70.0,
      "wind_speed_mph": 2.6,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Andre Pallante",
      "pitcher_id": 669467,
      "team_abbr": "STL",
      "opponent_abbr": "CHC",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-07-30T11:58:26.842Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 123,
      "under_odds": -157,
      "expected_strikeouts": 3.53,
      "baseline_projected_strikeouts": 3.27,
      "adjusted_projected_strikeouts": 3.53,
      "skill_score": 9.3,
      "opportunity_score": 57.0,
      "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": 31.9,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.2879,
      "model_under_probability": 0.7121,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4484,
      "implied_under_probability_raw": 0.6109,
      "implied_over_probability_novig": 0.4233,
      "implied_under_probability_novig": 0.5767,
      "edge_over": -0.1605,
      "edge_under": 0.1012,
      "recommended_side": "Under",
      "recommended_edge": 0.1012,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.26,
      "adjustment_multiplier": 1.08,
      "aggregate_matchup_score": 25.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 20588.0,
      "lineup_expected_strikeouts": 4.22,
      "environment_summary": "neutral",
      "temperature_f": 89.2,
      "wind_speed_mph": 7.5,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "JP Sears",
      "pitcher_id": 676664,
      "team_abbr": "SD",
      "opponent_abbr": "SF",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-07-30T11:58:32.858Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": 104,
      "under_odds": -132,
      "expected_strikeouts": 4.22,
      "baseline_projected_strikeouts": 4.16,
      "adjusted_projected_strikeouts": 4.22,
      "skill_score": 12.6,
      "opportunity_score": 29.8,
      "opponent_weakness_score": 32.9,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 75.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.5825,
      "model_under_probability": 0.4175,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4902,
      "implied_under_probability_raw": 0.569,
      "implied_over_probability_novig": 0.4628,
      "implied_under_probability_novig": 0.5372,
      "edge_over": 0.0923,
      "edge_under": -0.1515,
      "recommended_side": "Over",
      "recommended_edge": 0.0923,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.06,
      "adjustment_multiplier": 1.014,
      "aggregate_matchup_score": 38.6,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 31855.0,
      "lineup_expected_strikeouts": 4.44,
      "environment_summary": "neutral",
      "temperature_f": 66.9,
      "wind_speed_mph": 1.6,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Andre Pallante",
      "pitcher_id": 669467,
      "team_abbr": "STL",
      "opponent_abbr": "CHC",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-07-30T11:58:26.000Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -160,
      "under_odds": 120,
      "expected_strikeouts": 3.53,
      "baseline_projected_strikeouts": 3.27,
      "adjusted_projected_strikeouts": 3.53,
      "skill_score": 9.3,
      "opportunity_score": 57.0,
      "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": 31.9,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.4584,
      "model_under_probability": 0.5416,
      "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.157,
      "edge_under": 0.0871,
      "recommended_side": "Under",
      "recommended_edge": 0.0871,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.26,
      "adjustment_multiplier": 1.08,
      "aggregate_matchup_score": 25.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 20588.0,
      "lineup_expected_strikeouts": 4.22,
      "environment_summary": "neutral",
      "temperature_f": 89.2,
      "wind_speed_mph": 7.5,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Andre Pallante",
      "pitcher_id": 669467,
      "team_abbr": "STL",
      "opponent_abbr": "CHC",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-07-30T11:58:32.858Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 134,
      "under_odds": -172,
      "expected_strikeouts": 3.53,
      "baseline_projected_strikeouts": 3.27,
      "adjusted_projected_strikeouts": 3.53,
      "skill_score": 9.3,
      "opportunity_score": 57.0,
      "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": 31.9,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.2879,
      "model_under_probability": 0.7121,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4274,
      "implied_under_probability_raw": 0.6324,
      "implied_over_probability_novig": 0.4033,
      "implied_under_probability_novig": 0.5967,
      "edge_over": -0.1395,
      "edge_under": 0.0797,
      "recommended_side": "Under",
      "recommended_edge": 0.0797,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.26,
      "adjustment_multiplier": 1.08,
      "aggregate_matchup_score": 25.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 20588.0,
      "lineup_expected_strikeouts": 4.22,
      "environment_summary": "neutral",
      "temperature_f": 89.2,
      "wind_speed_mph": 7.5,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Noah Cameron",
      "pitcher_id": 702070,
      "team_abbr": "KC",
      "opponent_abbr": "MIN",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-07-30T11:58:32.858Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -122,
      "under_odds": -104,
      "expected_strikeouts": 4.3,
      "baseline_projected_strikeouts": 4.0,
      "adjusted_projected_strikeouts": 4.3,
      "skill_score": 14.7,
      "opportunity_score": 57.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": 41.5,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.4222,
      "model_under_probability": 0.5778,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5495,
      "implied_under_probability_raw": 0.5098,
      "implied_over_probability_novig": 0.5187,
      "implied_under_probability_novig": 0.4813,
      "edge_over": -0.1273,
      "edge_under": 0.068,
      "recommended_side": "Under",
      "recommended_edge": 0.068,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.3,
      "adjustment_multiplier": 1.075,
      "aggregate_matchup_score": 43.1,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 10820.0,
      "lineup_expected_strikeouts": 4.92,
      "environment_summary": "neutral",
      "temperature_f": 88.5,
      "wind_speed_mph": 8.7,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Noah Cameron",
      "pitcher_id": 702070,
      "team_abbr": "KC",
      "opponent_abbr": "MIN",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-07-30T11:58:26.842Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -125,
      "under_odds": -105,
      "expected_strikeouts": 4.3,
      "baseline_projected_strikeouts": 4.0,
      "adjusted_projected_strikeouts": 4.3,
      "skill_score": 14.7,
      "opportunity_score": 57.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": 41.5,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.4222,
      "model_under_probability": 0.5778,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5556,
      "implied_under_probability_raw": 0.5122,
      "implied_over_probability_novig": 0.5203,
      "implied_under_probability_novig": 0.4797,
      "edge_over": -0.1334,
      "edge_under": 0.0656,
      "recommended_side": "Under",
      "recommended_edge": 0.0656,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.3,
      "adjustment_multiplier": 1.075,
      "aggregate_matchup_score": 43.1,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 10820.0,
      "lineup_expected_strikeouts": 4.92,
      "environment_summary": "neutral",
      "temperature_f": 88.5,
      "wind_speed_mph": 8.7,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "JP Sears",
      "pitcher_id": 676664,
      "team_abbr": "SD",
      "opponent_abbr": "SF",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-07-30T11:58:26.842Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -107,
      "under_odds": -119,
      "expected_strikeouts": 4.22,
      "baseline_projected_strikeouts": 4.16,
      "adjusted_projected_strikeouts": 4.22,
      "skill_score": 12.6,
      "opportunity_score": 29.8,
      "opponent_weakness_score": 32.9,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 75.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.5825,
      "model_under_probability": 0.4175,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5169,
      "implied_under_probability_raw": 0.5434,
      "implied_over_probability_novig": 0.4875,
      "implied_under_probability_novig": 0.5125,
      "edge_over": 0.0656,
      "edge_under": -0.1259,
      "recommended_side": "Over",
      "recommended_edge": 0.0656,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.06,
      "adjustment_multiplier": 1.014,
      "aggregate_matchup_score": 38.6,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 31855.0,
      "lineup_expected_strikeouts": 4.44,
      "environment_summary": "neutral",
      "temperature_f": 66.9,
      "wind_speed_mph": 1.6,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Javier Assad",
      "pitcher_id": 665871,
      "team_abbr": "CHC",
      "opponent_abbr": "STL",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-07-30T11:58:32.858Z",
      "line": 2.5,
      "line_type": "half",
      "over_odds": -148,
      "under_odds": 116,
      "expected_strikeouts": 3.53,
      "baseline_projected_strikeouts": 3.19,
      "adjusted_projected_strikeouts": 3.53,
      "skill_score": 5.3,
      "opportunity_score": 34.8,
      "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": 70.4,
      "suppression_tier": "HEAVY_SUPPRESSION",
      "suppression_label": "Heavy Suppression",
      "suppression_note": "Leash or workload context materially weakens the strikeout conversion path.",
      "interaction_tier": "SUPPRESSED_ALIGNMENT",
      "interaction_label": "Suppressed Alignment",
      "interaction_note": "Runway drag or weak alignment materially softens the strikeout path.",
      "trust_modifier": "SUPPRESSED",
      "trust_label": "Suppressed",
      "trust_note": "Leash or alignment drag is materially weakening the strikeout trust case.",
      "model_over_probability": 0.657,
      "model_under_probability": 0.343,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5968,
      "implied_under_probability_raw": 0.463,
      "implied_over_probability_novig": 0.5631,
      "implied_under_probability_novig": 0.4369,
      "edge_over": 0.0602,
      "edge_under": -0.12,
      "recommended_side": "Over",
      "recommended_edge": 0.0602,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.34,
      "adjustment_multiplier": 1.107,
      "aggregate_matchup_score": 35.0,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 15298.0,
      "lineup_expected_strikeouts": 4.48,
      "environment_summary": "neutral",
      "temperature_f": 89.2,
      "wind_speed_mph": 7.5,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Robbie Ray",
      "pitcher_id": 592662,
      "team_abbr": "SF",
      "opponent_abbr": "SD",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-07-30T11:58:26.842Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -105,
      "under_odds": -124,
      "expected_strikeouts": 5.23,
      "baseline_projected_strikeouts": 5.2,
      "adjusted_projected_strikeouts": 5.23,
      "skill_score": 10.3,
      "opportunity_score": 54.5,
      "opponent_weakness_score": 34.8,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 34.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.5705,
      "model_under_probability": 0.4295,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5122,
      "implied_under_probability_raw": 0.5536,
      "implied_over_probability_novig": 0.4806,
      "implied_under_probability_novig": 0.5194,
      "edge_over": 0.0583,
      "edge_under": -0.1241,
      "recommended_side": "Over",
      "recommended_edge": 0.0583,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.03,
      "adjustment_multiplier": 1.006,
      "aggregate_matchup_score": 46.2,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 17890.0,
      "lineup_expected_strikeouts": 5.33,
      "environment_summary": "neutral",
      "temperature_f": 66.9,
      "wind_speed_mph": 1.6,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Javier Assad",
      "pitcher_id": 665871,
      "team_abbr": "CHC",
      "opponent_abbr": "STL",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-07-30T11:58:26.000Z",
      "line": 2.5,
      "line_type": "half",
      "over_odds": -150,
      "under_odds": 110,
      "expected_strikeouts": 3.53,
      "baseline_projected_strikeouts": 3.19,
      "adjusted_projected_strikeouts": 3.53,
      "skill_score": 5.3,
      "opportunity_score": 34.8,
      "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": 70.4,
      "suppression_tier": "HEAVY_SUPPRESSION",
      "suppression_label": "Heavy Suppression",
      "suppression_note": "Leash or workload context materially weakens the strikeout conversion path.",
      "interaction_tier": "SUPPRESSED_ALIGNMENT",
      "interaction_label": "Suppressed Alignment",
      "interaction_note": "Runway drag or weak alignment materially softens the strikeout path.",
      "trust_modifier": "SUPPRESSED",
      "trust_label": "Suppressed",
      "trust_note": "Leash or alignment drag is materially weakening the strikeout trust case.",
      "model_over_probability": 0.657,
      "model_under_probability": 0.343,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6,
      "implied_under_probability_raw": 0.4762,
      "implied_over_probability_novig": 0.5575,
      "implied_under_probability_novig": 0.4425,
      "edge_over": 0.057,
      "edge_under": -0.1332,
      "recommended_side": "Over",
      "recommended_edge": 0.057,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.34,
      "adjustment_multiplier": 1.107,
      "aggregate_matchup_score": 35.0,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 15298.0,
      "lineup_expected_strikeouts": 4.48,
      "environment_summary": "neutral",
      "temperature_f": 89.2,
      "wind_speed_mph": 7.5,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Javier Assad",
      "pitcher_id": 665871,
      "team_abbr": "CHC",
      "opponent_abbr": "STL",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-07-30T11:58:26.842Z",
      "line": 2.5,
      "line_type": "half",
      "over_odds": -163,
      "under_odds": 130,
      "expected_strikeouts": 3.53,
      "baseline_projected_strikeouts": 3.19,
      "adjusted_projected_strikeouts": 3.53,
      "skill_score": 5.3,
      "opportunity_score": 34.8,
      "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": 70.4,
      "suppression_tier": "HEAVY_SUPPRESSION",
      "suppression_label": "Heavy Suppression",
      "suppression_note": "Leash or workload context materially weakens the strikeout conversion path.",
      "interaction_tier": "SUPPRESSED_ALIGNMENT",
      "interaction_label": "Suppressed Alignment",
      "interaction_note": "Runway drag or weak alignment materially softens the strikeout path.",
      "trust_modifier": "SUPPRESSED",
      "trust_label": "Suppressed",
      "trust_note": "Leash or alignment drag is materially weakening the strikeout trust case.",
      "model_over_probability": 0.657,
      "model_under_probability": 0.343,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6198,
      "implied_under_probability_raw": 0.4348,
      "implied_over_probability_novig": 0.5877,
      "implied_under_probability_novig": 0.4123,
      "edge_over": 0.0372,
      "edge_under": -0.0918,
      "recommended_side": "Over",
      "recommended_edge": 0.0372,
      "play_tier": "Play",
      "no_play_reason": null,
      "adjustment_delta": 0.34,
      "adjustment_multiplier": 1.107,
      "aggregate_matchup_score": 35.0,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 15298.0,
      "lineup_expected_strikeouts": 4.48,
      "environment_summary": "neutral",
      "temperature_f": 89.2,
      "wind_speed_mph": 7.5,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Noah Cameron",
      "pitcher_id": 702070,
      "team_abbr": "KC",
      "opponent_abbr": "MIN",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-07-30T11:58:35.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -110,
      "under_odds": -120,
      "expected_strikeouts": 4.3,
      "baseline_projected_strikeouts": 4.0,
      "adjusted_projected_strikeouts": 4.3,
      "skill_score": 14.7,
      "opportunity_score": 57.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": 41.5,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.4222,
      "model_under_probability": 0.5778,
      "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.1016,
      "edge_under": 0.0323,
      "recommended_side": "Under",
      "recommended_edge": 0.0323,
      "play_tier": "Play",
      "no_play_reason": null,
      "adjustment_delta": 0.3,
      "adjustment_multiplier": 1.075,
      "aggregate_matchup_score": 43.1,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 10820.0,
      "lineup_expected_strikeouts": 4.92,
      "environment_summary": "neutral",
      "temperature_f": 88.5,
      "wind_speed_mph": 8.7,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Grant Holmes",
      "pitcher_id": 656550,
      "team_abbr": "ATL",
      "opponent_abbr": "WSH",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-07-30T11:58:32.858Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 102,
      "under_odds": -130,
      "expected_strikeouts": 4.88,
      "baseline_projected_strikeouts": 4.82,
      "adjusted_projected_strikeouts": 4.88,
      "skill_score": 13.8,
      "opportunity_score": 36.9,
      "opponent_weakness_score": 36.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": 65.0,
      "suppression_tier": "HEAVY_SUPPRESSION",
      "suppression_label": "Heavy Suppression",
      "suppression_note": "Leash or workload context materially weakens the strikeout conversion path.",
      "interaction_tier": "SUPPRESSED_ALIGNMENT",
      "interaction_label": "Suppressed Alignment",
      "interaction_note": "Runway drag or weak alignment materially softens the strikeout path.",
      "trust_modifier": "SUPPRESSED",
      "trust_label": "Suppressed",
      "trust_note": "Leash or alignment drag is materially weakening the strikeout trust case.",
      "model_over_probability": 0.5175,
      "model_under_probability": 0.4825,
      "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.0225,
      "edge_under": -0.0827,
      "recommended_side": "Over",
      "recommended_edge": 0.0225,
      "play_tier": "Lean",
      "no_play_reason": null,
      "adjustment_delta": 0.06,
      "adjustment_multiplier": 1.012,
      "aggregate_matchup_score": 48.2,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 11879.0,
      "lineup_expected_strikeouts": 5.01,
      "environment_summary": "neutral",
      "temperature_f": 74.8,
      "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": "Grant Holmes",
      "pitcher_id": 656550,
      "team_abbr": "ATL",
      "opponent_abbr": "WSH",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-07-30T11:58:40.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 100,
      "under_odds": -135,
      "expected_strikeouts": 4.88,
      "baseline_projected_strikeouts": 4.82,
      "adjusted_projected_strikeouts": 4.88,
      "skill_score": 13.8,
      "opportunity_score": 36.9,
      "opponent_weakness_score": 36.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": 65.0,
      "suppression_tier": "HEAVY_SUPPRESSION",
      "suppression_label": "Heavy Suppression",
      "suppression_note": "Leash or workload context materially weakens the strikeout conversion path.",
      "interaction_tier": "SUPPRESSED_ALIGNMENT",
      "interaction_label": "Suppressed Alignment",
      "interaction_note": "Runway drag or weak alignment materially softens the strikeout path.",
      "trust_modifier": "SUPPRESSED",
      "trust_label": "Suppressed",
      "trust_note": "Leash or alignment drag is materially weakening the strikeout trust case.",
      "model_over_probability": 0.5175,
      "model_under_probability": 0.4825,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5,
      "implied_under_probability_raw": 0.5745,
      "implied_over_probability_novig": 0.4653,
      "implied_under_probability_novig": 0.5347,
      "edge_over": 0.0175,
      "edge_under": -0.092,
      "recommended_side": "Over",
      "recommended_edge": 0.0175,
      "play_tier": "Lean",
      "no_play_reason": null,
      "adjustment_delta": 0.06,
      "adjustment_multiplier": 1.012,
      "aggregate_matchup_score": 48.2,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 11879.0,
      "lineup_expected_strikeouts": 5.01,
      "environment_summary": "neutral",
      "temperature_f": 74.8,
      "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": "Grant Holmes",
      "pitcher_id": 656550,
      "team_abbr": "ATL",
      "opponent_abbr": "WSH",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-07-30T11:58:26.842Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -102,
      "under_odds": -124,
      "expected_strikeouts": 4.88,
      "baseline_projected_strikeouts": 4.82,
      "adjusted_projected_strikeouts": 4.88,
      "skill_score": 13.8,
      "opportunity_score": 36.9,
      "opponent_weakness_score": 36.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": 65.0,
      "suppression_tier": "HEAVY_SUPPRESSION",
      "suppression_label": "Heavy Suppression",
      "suppression_note": "Leash or workload context materially weakens the strikeout conversion path.",
      "interaction_tier": "SUPPRESSED_ALIGNMENT",
      "interaction_label": "Suppressed Alignment",
      "interaction_note": "Runway drag or weak alignment materially softens the strikeout path.",
      "trust_modifier": "SUPPRESSED",
      "trust_label": "Suppressed",
      "trust_note": "Leash or alignment drag is materially weakening the strikeout trust case.",
      "model_over_probability": 0.5175,
      "model_under_probability": 0.4825,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.505,
      "implied_under_probability_raw": 0.5536,
      "implied_over_probability_novig": 0.477,
      "implied_under_probability_novig": 0.523,
      "edge_over": 0.0125,
      "edge_under": -0.0711,
      "recommended_side": "No Play",
      "recommended_edge": 0.0125,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.06,
      "adjustment_multiplier": 1.012,
      "aggregate_matchup_score": 48.2,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 11879.0,
      "lineup_expected_strikeouts": 5.01,
      "environment_summary": "neutral",
      "temperature_f": 74.8,
      "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": "Bailey Ober",
      "pitcher_id": 641927,
      "team_abbr": "MIN",
      "opponent_abbr": "KC",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-07-30T11:58:32.858Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -162,
      "under_odds": 126,
      "expected_strikeouts": 4.52,
      "baseline_projected_strikeouts": 4.34,
      "adjusted_projected_strikeouts": 4.52,
      "skill_score": 12.6,
      "opportunity_score": 40.8,
      "opponent_weakness_score": 40.1,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 66.6,
      "suppression_tier": "HEAVY_SUPPRESSION",
      "suppression_label": "Heavy Suppression",
      "suppression_note": "Leash or workload context materially weakens the strikeout conversion path.",
      "interaction_tier": "SUPPRESSED_ALIGNMENT",
      "interaction_label": "Suppressed Alignment",
      "interaction_note": "Runway drag or weak alignment materially softens the strikeout path.",
      "trust_modifier": "SUPPRESSED",
      "trust_label": "Suppressed",
      "trust_note": "Leash or alignment drag is materially weakening the strikeout trust case.",
      "model_over_probability": 0.6298,
      "model_under_probability": 0.3702,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6183,
      "implied_under_probability_raw": 0.4425,
      "implied_over_probability_novig": 0.5829,
      "implied_under_probability_novig": 0.4171,
      "edge_over": 0.0115,
      "edge_under": -0.0723,
      "recommended_side": "No Play",
      "recommended_edge": 0.0115,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.18,
      "adjustment_multiplier": 1.041,
      "aggregate_matchup_score": 50.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 29545.0,
      "lineup_expected_strikeouts": 4.84,
      "environment_summary": "neutral",
      "temperature_f": 88.5,
      "wind_speed_mph": 8.7,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Bailey Ober",
      "pitcher_id": 641927,
      "team_abbr": "MIN",
      "opponent_abbr": "KC",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-07-30T11:58:26.842Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -164,
      "under_odds": 124,
      "expected_strikeouts": 4.52,
      "baseline_projected_strikeouts": 4.34,
      "adjusted_projected_strikeouts": 4.52,
      "skill_score": 12.6,
      "opportunity_score": 40.8,
      "opponent_weakness_score": 40.1,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 66.6,
      "suppression_tier": "HEAVY_SUPPRESSION",
      "suppression_label": "Heavy Suppression",
      "suppression_note": "Leash or workload context materially weakens the strikeout conversion path.",
      "interaction_tier": "SUPPRESSED_ALIGNMENT",
      "interaction_label": "Suppressed Alignment",
      "interaction_note": "Runway drag or weak alignment materially softens the strikeout path.",
      "trust_modifier": "SUPPRESSED",
      "trust_label": "Suppressed",
      "trust_note": "Leash or alignment drag is materially weakening the strikeout trust case.",
      "model_over_probability": 0.6298,
      "model_under_probability": 0.3702,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6212,
      "implied_under_probability_raw": 0.4464,
      "implied_over_probability_novig": 0.5819,
      "implied_under_probability_novig": 0.4181,
      "edge_over": 0.0086,
      "edge_under": -0.0762,
      "recommended_side": "No Play",
      "recommended_edge": 0.0086,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.18,
      "adjustment_multiplier": 1.041,
      "aggregate_matchup_score": 50.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 29545.0,
      "lineup_expected_strikeouts": 4.84,
      "environment_summary": "neutral",
      "temperature_f": 88.5,
      "wind_speed_mph": 8.7,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Bailey Ober",
      "pitcher_id": 641927,
      "team_abbr": "MIN",
      "opponent_abbr": "KC",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-07-30T11:58:35.000Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -165,
      "under_odds": 125,
      "expected_strikeouts": 4.52,
      "baseline_projected_strikeouts": 4.34,
      "adjusted_projected_strikeouts": 4.52,
      "skill_score": 12.6,
      "opportunity_score": 40.8,
      "opponent_weakness_score": 40.1,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 66.6,
      "suppression_tier": "HEAVY_SUPPRESSION",
      "suppression_label": "Heavy Suppression",
      "suppression_note": "Leash or workload context materially weakens the strikeout conversion path.",
      "interaction_tier": "SUPPRESSED_ALIGNMENT",
      "interaction_label": "Suppressed Alignment",
      "interaction_note": "Runway drag or weak alignment materially softens the strikeout path.",
      "trust_modifier": "SUPPRESSED",
      "trust_label": "Suppressed",
      "trust_note": "Leash or alignment drag is materially weakening the strikeout trust case.",
      "model_over_probability": 0.6298,
      "model_under_probability": 0.3702,
      "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.0072,
      "edge_under": -0.0742,
      "recommended_side": "No Play",
      "recommended_edge": 0.0072,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.18,
      "adjustment_multiplier": 1.041,
      "aggregate_matchup_score": 50.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 29545.0,
      "lineup_expected_strikeouts": 4.84,
      "environment_summary": "neutral",
      "temperature_f": 88.5,
      "wind_speed_mph": 8.7,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Bryan Woo",
      "pitcher_id": 693433,
      "team_abbr": "SEA",
      "opponent_abbr": "LAD",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-07-30T11:58:32.858Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": 122,
      "under_odds": -156,
      "expected_strikeouts": 5.05,
      "baseline_projected_strikeouts": 4.71,
      "adjusted_projected_strikeouts": 5.05,
      "skill_score": 24.8,
      "opportunity_score": 50.3,
      "opponent_weakness_score": 45.8,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 42.1,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "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.3906,
      "model_under_probability": 0.6094,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4505,
      "implied_under_probability_raw": 0.6094,
      "implied_over_probability_novig": 0.425,
      "implied_under_probability_novig": 0.575,
      "edge_over": -0.0599,
      "edge_under": 0.0,
      "recommended_side": "No Play",
      "recommended_edge": 0.0,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.34,
      "adjustment_multiplier": 1.072,
      "aggregate_matchup_score": 57.4,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 24778.0,
      "lineup_expected_strikeouts": 5.6,
      "environment_summary": "neutral",
      "temperature_f": 66.7,
      "wind_speed_mph": 1.8,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Bryan Woo",
      "pitcher_id": 693433,
      "team_abbr": "SEA",
      "opponent_abbr": "LAD",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-07-30T11:58:55.000Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": 120,
      "under_odds": -160,
      "expected_strikeouts": 5.05,
      "baseline_projected_strikeouts": 4.71,
      "adjusted_projected_strikeouts": 5.05,
      "skill_score": 24.8,
      "opportunity_score": 50.3,
      "opponent_weakness_score": 45.8,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 42.1,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "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.3906,
      "model_under_probability": 0.6094,
      "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.0639,
      "edge_under": -0.006,
      "recommended_side": "No Play",
      "recommended_edge": -0.006,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.34,
      "adjustment_multiplier": 1.072,
      "aggregate_matchup_score": 57.4,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 24778.0,
      "lineup_expected_strikeouts": 5.6,
      "environment_summary": "neutral",
      "temperature_f": 66.7,
      "wind_speed_mph": 1.8,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Bryan Woo",
      "pitcher_id": 693433,
      "team_abbr": "SEA",
      "opponent_abbr": "LAD",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-07-30T11:58:26.842Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": 126,
      "under_odds": -160,
      "expected_strikeouts": 5.05,
      "baseline_projected_strikeouts": 4.71,
      "adjusted_projected_strikeouts": 5.05,
      "skill_score": 24.8,
      "opportunity_score": 50.3,
      "opponent_weakness_score": 45.8,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 42.1,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "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.3906,
      "model_under_probability": 0.6094,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4425,
      "implied_under_probability_raw": 0.6154,
      "implied_over_probability_novig": 0.4183,
      "implied_under_probability_novig": 0.5817,
      "edge_over": -0.0519,
      "edge_under": -0.006,
      "recommended_side": "No Play",
      "recommended_edge": -0.006,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.34,
      "adjustment_multiplier": 1.072,
      "aggregate_matchup_score": 57.4,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 24778.0,
      "lineup_expected_strikeouts": 5.6,
      "environment_summary": "neutral",
      "temperature_f": 66.7,
      "wind_speed_mph": 1.8,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Sonny Gray",
      "pitcher_id": 543243,
      "team_abbr": "BOS",
      "opponent_abbr": "ATH",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-07-30T11:57:59.000Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -115,
      "under_odds": -115,
      "expected_strikeouts": 4.9,
      "baseline_projected_strikeouts": 4.3,
      "adjusted_projected_strikeouts": 4.9,
      "skill_score": 28.2,
      "opportunity_score": 44.0,
      "opponent_weakness_score": 52.3,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 54.5,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.5207,
      "model_under_probability": 0.4793,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5349,
      "implied_under_probability_raw": 0.5349,
      "implied_over_probability_novig": 0.5,
      "implied_under_probability_novig": 0.5,
      "edge_over": -0.0142,
      "edge_under": -0.0556,
      "recommended_side": "No Play",
      "recommended_edge": -0.0142,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.6,
      "adjustment_multiplier": 1.139,
      "aggregate_matchup_score": 71.6,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 31976.0,
      "lineup_expected_strikeouts": 6.71,
      "environment_summary": "neutral",
      "temperature_f": 72.5,
      "wind_speed_mph": 5.6,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Sonny Gray",
      "pitcher_id": 543243,
      "team_abbr": "BOS",
      "opponent_abbr": "ATH",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-07-30T11:58:32.858Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -128,
      "under_odds": 100,
      "expected_strikeouts": 4.9,
      "baseline_projected_strikeouts": 4.3,
      "adjusted_projected_strikeouts": 4.9,
      "skill_score": 28.2,
      "opportunity_score": 44.0,
      "opponent_weakness_score": 52.3,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 54.5,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.5207,
      "model_under_probability": 0.4793,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5614,
      "implied_under_probability_raw": 0.5,
      "implied_over_probability_novig": 0.5289,
      "implied_under_probability_novig": 0.4711,
      "edge_over": -0.0407,
      "edge_under": -0.0207,
      "recommended_side": "No Play",
      "recommended_edge": -0.0207,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.6,
      "adjustment_multiplier": 1.139,
      "aggregate_matchup_score": 71.6,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 31976.0,
      "lineup_expected_strikeouts": 6.71,
      "environment_summary": "neutral",
      "temperature_f": 72.5,
      "wind_speed_mph": 5.6,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Sonny Gray",
      "pitcher_id": 543243,
      "team_abbr": "BOS",
      "opponent_abbr": "ATH",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-07-30T11:58:26.842Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -122,
      "under_odds": -104,
      "expected_strikeouts": 4.9,
      "baseline_projected_strikeouts": 4.3,
      "adjusted_projected_strikeouts": 4.9,
      "skill_score": 28.2,
      "opportunity_score": 44.0,
      "opponent_weakness_score": 52.3,
      "support_tier": "STRONG_OPPONENT",
      "support_label": "Strong Opponent",
      "support_note": "Opponent strikeout pressure is the clearest support input.",
      "suppression_score": 54.5,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.5207,
      "model_under_probability": 0.4793,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5495,
      "implied_under_probability_raw": 0.5098,
      "implied_over_probability_novig": 0.5187,
      "implied_under_probability_novig": 0.4813,
      "edge_over": -0.0288,
      "edge_under": -0.0305,
      "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.6,
      "adjustment_multiplier": 1.139,
      "aggregate_matchup_score": 71.6,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 31976.0,
      "lineup_expected_strikeouts": 6.71,
      "environment_summary": "neutral",
      "temperature_f": 72.5,
      "wind_speed_mph": 5.6,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Robbie Ray",
      "pitcher_id": 592662,
      "team_abbr": "SF",
      "opponent_abbr": "SD",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-07-30T11:58:18.855Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -150,
      "under_odds": 110,
      "expected_strikeouts": 5.23,
      "baseline_projected_strikeouts": 5.2,
      "adjusted_projected_strikeouts": 5.23,
      "skill_score": 10.3,
      "opportunity_score": 54.5,
      "opponent_weakness_score": 34.8,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 34.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.5705,
      "model_under_probability": 0.4295,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6,
      "implied_under_probability_raw": 0.4762,
      "implied_over_probability_novig": 0.5575,
      "implied_under_probability_novig": 0.4425,
      "edge_over": -0.0295,
      "edge_under": -0.0467,
      "recommended_side": "No Play",
      "recommended_edge": -0.0295,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.03,
      "adjustment_multiplier": 1.006,
      "aggregate_matchup_score": 46.2,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 17890.0,
      "lineup_expected_strikeouts": 5.33,
      "environment_summary": "neutral",
      "temperature_f": 66.9,
      "wind_speed_mph": 1.6,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    }
  ],
  "unmatched_inputs": [
    {
      "pitcher_name": "Bryce Miller",
      "team_abbr": "SEA",
      "opponent_abbr": "LAD",
      "sportsbook": "FanDuel",
      "line": 5.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Nolan McLean",
      "team_abbr": "NYM",
      "opponent_abbr": "MIA",
      "sportsbook": "BetMGM",
      "line": 6.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Nolan McLean",
      "team_abbr": "NYM",
      "opponent_abbr": "MIA",
      "sportsbook": "DraftKings",
      "line": 6.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Nolan McLean",
      "team_abbr": "NYM",
      "opponent_abbr": "MIA",
      "sportsbook": "FanDuel",
      "line": 6.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Rhett Lowder",
      "team_abbr": "CIN",
      "opponent_abbr": "PIT",
      "sportsbook": "BetMGM",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Rhett Lowder",
      "team_abbr": "CIN",
      "opponent_abbr": "PIT",
      "sportsbook": "DraftKings",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Rhett Lowder",
      "team_abbr": "CIN",
      "opponent_abbr": "PIT",
      "sportsbook": "FanDuel",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Roki Sasaki",
      "team_abbr": "LAD",
      "opponent_abbr": "SEA",
      "sportsbook": "BetMGM",
      "line": 5.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Roki Sasaki",
      "team_abbr": "LAD",
      "opponent_abbr": "SEA",
      "sportsbook": "DraftKings",
      "line": 5.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Roki Sasaki",
      "team_abbr": "LAD",
      "opponent_abbr": "SEA",
      "sportsbook": "FanDuel",
      "line": 5.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Shane McClanahan",
      "team_abbr": "TB",
      "opponent_abbr": "TEX",
      "sportsbook": "BetMGM",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Shane McClanahan",
      "team_abbr": "TB",
      "opponent_abbr": "TEX",
      "sportsbook": "DraftKings",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Shane McClanahan",
      "team_abbr": "TB",
      "opponent_abbr": "TEX",
      "sportsbook": "FanDuel",
      "line": 5.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Yohan Ram\u00edrez",
      "team_abbr": "PIT",
      "opponent_abbr": "CIN",
      "sportsbook": "FanDuel",
      "line": 2.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    }
  ]
}