{
  "date": "2026-08-31",
  "generated_at": "2026-08-31T23:51:50.780816",
  "artifact_type": "strikeout_edges",
  "market_type": "pitcher_strikeouts",
  "model_version": "strikeout_edges_v1_overlay",
  "projection_model_version": "strikeout_props_v2_calibrated_ladder",
  "projection_date": "2026-08-31",
  "sportsbook_input_summary": {
    "input_type": "canonical_processed_sportsbook_input",
    "source_count": 1,
    "row_count": 59,
    "matched_count": 35,
    "unmatched_count": 24
  },
  "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": 35,
    "grouped_pitcher_count": 12,
    "sportsbook_count": 3
  },
  "edge_count": 35,
  "edges": [
    {
      "pitcher_name": "Jacob deGrom",
      "pitcher_id": 594798,
      "team_abbr": "TEX",
      "opponent_abbr": "ATH",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-31T11:54:48.559Z",
      "line": 6.5,
      "line_type": "half",
      "over_odds": -138,
      "under_odds": 108,
      "expected_strikeouts": 5.9,
      "baseline_projected_strikeouts": 5.6,
      "adjusted_projected_strikeouts": 5.9,
      "skill_score": 53.3,
      "opportunity_score": 25.6,
      "opponent_weakness_score": 49.7,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 93.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.3786,
      "model_under_probability": 0.6214,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5798,
      "implied_under_probability_raw": 0.4808,
      "implied_over_probability_novig": 0.5467,
      "implied_under_probability_novig": 0.4533,
      "edge_over": -0.2012,
      "edge_under": 0.1406,
      "recommended_side": "Under",
      "recommended_edge": 0.1406,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.3,
      "adjustment_multiplier": 1.053,
      "aggregate_matchup_score": 73.0,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 15111.0,
      "lineup_expected_strikeouts": 6.14,
      "environment_summary": "hitter-friendly",
      "temperature_f": 88.7,
      "wind_speed_mph": 4.0,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Bryce Elder",
      "pitcher_id": 693821,
      "team_abbr": "ATL",
      "opponent_abbr": "SF",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-31T11:55:10.224Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 124,
      "under_odds": -158,
      "expected_strikeouts": 5.06,
      "baseline_projected_strikeouts": 5.26,
      "adjusted_projected_strikeouts": 5.06,
      "skill_score": 6.9,
      "opportunity_score": 60.9,
      "opponent_weakness_score": 29.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": 37.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.5453,
      "model_under_probability": 0.4547,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4464,
      "implied_under_probability_raw": 0.6124,
      "implied_over_probability_novig": 0.4216,
      "implied_under_probability_novig": 0.5784,
      "edge_over": 0.0989,
      "edge_under": -0.1577,
      "recommended_side": "Over",
      "recommended_edge": 0.0989,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.2,
      "adjustment_multiplier": 0.963,
      "aggregate_matchup_score": 43.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 24573.0,
      "lineup_expected_strikeouts": 4.77,
      "environment_summary": "neutral",
      "temperature_f": 82.6,
      "wind_speed_mph": 4.1,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Brandon Pfaadt",
      "pitcher_id": 694297,
      "team_abbr": "AZ",
      "opponent_abbr": "PHI",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-31T11:55:10.224Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -128,
      "under_odds": 100,
      "expected_strikeouts": 4.72,
      "baseline_projected_strikeouts": 4.48,
      "adjusted_projected_strikeouts": 4.72,
      "skill_score": 17.2,
      "opportunity_score": 65.7,
      "opponent_weakness_score": 39.2,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 31.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.6591,
      "model_under_probability": 0.3409,
      "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.0977,
      "edge_under": -0.1591,
      "recommended_side": "Over",
      "recommended_edge": 0.0977,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.24,
      "adjustment_multiplier": 1.053,
      "aggregate_matchup_score": 44.1,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 30360.0,
      "lineup_expected_strikeouts": 5.22,
      "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": "Jacob deGrom",
      "pitcher_id": 594798,
      "team_abbr": "TEX",
      "opponent_abbr": "ATH",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-31T11:55:29.991Z",
      "line": 6.5,
      "line_type": "half",
      "over_odds": -120,
      "under_odds": -110,
      "expected_strikeouts": 5.9,
      "baseline_projected_strikeouts": 5.6,
      "adjusted_projected_strikeouts": 5.9,
      "skill_score": 53.3,
      "opportunity_score": 25.6,
      "opponent_weakness_score": 49.7,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 93.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.3786,
      "model_under_probability": 0.6214,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5455,
      "implied_under_probability_raw": 0.5238,
      "implied_over_probability_novig": 0.5101,
      "implied_under_probability_novig": 0.4899,
      "edge_over": -0.1669,
      "edge_under": 0.0976,
      "recommended_side": "Under",
      "recommended_edge": 0.0976,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.3,
      "adjustment_multiplier": 1.053,
      "aggregate_matchup_score": 73.0,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 15111.0,
      "lineup_expected_strikeouts": 6.14,
      "environment_summary": "hitter-friendly",
      "temperature_f": 88.7,
      "wind_speed_mph": 4.0,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Bryce Elder",
      "pitcher_id": 693821,
      "team_abbr": "ATL",
      "opponent_abbr": "SF",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-31T11:54:48.559Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 123,
      "under_odds": -157,
      "expected_strikeouts": 5.06,
      "baseline_projected_strikeouts": 5.26,
      "adjusted_projected_strikeouts": 5.06,
      "skill_score": 6.9,
      "opportunity_score": 60.9,
      "opponent_weakness_score": 29.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": 37.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.5453,
      "model_under_probability": 0.4547,
      "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.0969,
      "edge_under": -0.1562,
      "recommended_side": "Over",
      "recommended_edge": 0.0969,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.2,
      "adjustment_multiplier": 0.963,
      "aggregate_matchup_score": 43.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 24573.0,
      "lineup_expected_strikeouts": 4.77,
      "environment_summary": "neutral",
      "temperature_f": 82.6,
      "wind_speed_mph": 4.1,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Brandon Pfaadt",
      "pitcher_id": 694297,
      "team_abbr": "AZ",
      "opponent_abbr": "PHI",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-31T11:54:48.559Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -129,
      "under_odds": -102,
      "expected_strikeouts": 4.72,
      "baseline_projected_strikeouts": 4.48,
      "adjusted_projected_strikeouts": 4.72,
      "skill_score": 17.2,
      "opportunity_score": 65.7,
      "opponent_weakness_score": 39.2,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 31.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.6591,
      "model_under_probability": 0.3409,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5633,
      "implied_under_probability_raw": 0.505,
      "implied_over_probability_novig": 0.5273,
      "implied_under_probability_novig": 0.4727,
      "edge_over": 0.0958,
      "edge_under": -0.1641,
      "recommended_side": "Over",
      "recommended_edge": 0.0958,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.24,
      "adjustment_multiplier": 1.053,
      "aggregate_matchup_score": 44.1,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 30360.0,
      "lineup_expected_strikeouts": 5.22,
      "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": "Jacob deGrom",
      "pitcher_id": 594798,
      "team_abbr": "TEX",
      "opponent_abbr": "ATH",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-31T11:55:10.224Z",
      "line": 6.5,
      "line_type": "half",
      "over_odds": -115,
      "under_odds": -111,
      "expected_strikeouts": 5.9,
      "baseline_projected_strikeouts": 5.6,
      "adjusted_projected_strikeouts": 5.9,
      "skill_score": 53.3,
      "opportunity_score": 25.6,
      "opponent_weakness_score": 49.7,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 93.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.3786,
      "model_under_probability": 0.6214,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5349,
      "implied_under_probability_raw": 0.5261,
      "implied_over_probability_novig": 0.5041,
      "implied_under_probability_novig": 0.4959,
      "edge_over": -0.1563,
      "edge_under": 0.0953,
      "recommended_side": "Under",
      "recommended_edge": 0.0953,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.3,
      "adjustment_multiplier": 1.053,
      "aggregate_matchup_score": 73.0,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 15111.0,
      "lineup_expected_strikeouts": 6.14,
      "environment_summary": "hitter-friendly",
      "temperature_f": 88.7,
      "wind_speed_mph": 4.0,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Michael King",
      "pitcher_id": 650633,
      "team_abbr": "SD",
      "opponent_abbr": "CIN",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-31T11:54:48.559Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -148,
      "under_odds": 115,
      "expected_strikeouts": 5.38,
      "baseline_projected_strikeouts": 4.72,
      "adjusted_projected_strikeouts": 5.38,
      "skill_score": 27.7,
      "opportunity_score": 63.5,
      "opponent_weakness_score": 52.8,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 31.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.4405,
      "model_under_probability": 0.5595,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5968,
      "implied_under_probability_raw": 0.4651,
      "implied_over_probability_novig": 0.562,
      "implied_under_probability_novig": 0.438,
      "edge_over": -0.1563,
      "edge_under": 0.0944,
      "recommended_side": "Under",
      "recommended_edge": 0.0944,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.66,
      "adjustment_multiplier": 1.14,
      "aggregate_matchup_score": 72.6,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 19346.0,
      "lineup_expected_strikeouts": 6.52,
      "environment_summary": "hitter-friendly",
      "temperature_f": 81.9,
      "wind_speed_mph": 2.1,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Michael King",
      "pitcher_id": 650633,
      "team_abbr": "SD",
      "opponent_abbr": "CIN",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-31T11:55:10.224Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -142,
      "under_odds": 112,
      "expected_strikeouts": 5.38,
      "baseline_projected_strikeouts": 4.72,
      "adjusted_projected_strikeouts": 5.38,
      "skill_score": 27.7,
      "opportunity_score": 63.5,
      "opponent_weakness_score": 52.8,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 31.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.4405,
      "model_under_probability": 0.5595,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5868,
      "implied_under_probability_raw": 0.4717,
      "implied_over_probability_novig": 0.5544,
      "implied_under_probability_novig": 0.4456,
      "edge_over": -0.1463,
      "edge_under": 0.0878,
      "recommended_side": "Under",
      "recommended_edge": 0.0878,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.66,
      "adjustment_multiplier": 1.14,
      "aggregate_matchup_score": 72.6,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 19346.0,
      "lineup_expected_strikeouts": 6.52,
      "environment_summary": "hitter-friendly",
      "temperature_f": 81.9,
      "wind_speed_mph": 2.1,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Bryce Elder",
      "pitcher_id": 693821,
      "team_abbr": "ATL",
      "opponent_abbr": "SF",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-31T11:54:36.544Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 115,
      "under_odds": -155,
      "expected_strikeouts": 5.06,
      "baseline_projected_strikeouts": 5.26,
      "adjusted_projected_strikeouts": 5.06,
      "skill_score": 6.9,
      "opportunity_score": 60.9,
      "opponent_weakness_score": 29.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": 37.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.5453,
      "model_under_probability": 0.4547,
      "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.0802,
      "edge_under": -0.1531,
      "recommended_side": "Over",
      "recommended_edge": 0.0802,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.2,
      "adjustment_multiplier": 0.963,
      "aggregate_matchup_score": 43.7,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 24573.0,
      "lineup_expected_strikeouts": 4.77,
      "environment_summary": "neutral",
      "temperature_f": 82.6,
      "wind_speed_mph": 4.1,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Tanner Gordon",
      "pitcher_id": 685299,
      "team_abbr": "COL",
      "opponent_abbr": "BAL",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-31T11:54:48.559Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 101,
      "under_odds": -126,
      "expected_strikeouts": 3.97,
      "baseline_projected_strikeouts": 4.0,
      "adjusted_projected_strikeouts": 3.97,
      "skill_score": 3.7,
      "opportunity_score": 45.0,
      "opponent_weakness_score": 30.1,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 45.7,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.3651,
      "model_under_probability": 0.6349,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4975,
      "implied_under_probability_raw": 0.5575,
      "implied_over_probability_novig": 0.4716,
      "implied_under_probability_novig": 0.5284,
      "edge_over": -0.1324,
      "edge_under": 0.0774,
      "recommended_side": "Under",
      "recommended_edge": 0.0774,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.03,
      "adjustment_multiplier": 0.992,
      "aggregate_matchup_score": 24.9,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 8648.0,
      "lineup_expected_strikeouts": 4.14,
      "environment_summary": "hitter-friendly",
      "temperature_f": 64.9,
      "wind_speed_mph": 2.8,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Kyle Harrison",
      "pitcher_id": 690986,
      "team_abbr": "MIL",
      "opponent_abbr": "CHC",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-31T11:54:48.559Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": 115,
      "under_odds": -150,
      "expected_strikeouts": 4.61,
      "baseline_projected_strikeouts": 4.76,
      "adjusted_projected_strikeouts": 4.61,
      "skill_score": 46.9,
      "opportunity_score": 26.7,
      "opponent_weakness_score": 27.0,
      "support_tier": "STRONG_SKILL",
      "support_label": "Strong Skill",
      "support_note": "Underlying strikeout skill is the clearest support input.",
      "suppression_score": 89.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.3229,
      "model_under_probability": 0.6771,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4651,
      "implied_under_probability_raw": 0.6,
      "implied_over_probability_novig": 0.4367,
      "implied_under_probability_novig": 0.5633,
      "edge_over": -0.1422,
      "edge_under": 0.0771,
      "recommended_side": "Under",
      "recommended_edge": 0.0771,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.15,
      "adjustment_multiplier": 0.969,
      "aggregate_matchup_score": 36.1,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 12381.0,
      "lineup_expected_strikeouts": 4.48,
      "environment_summary": "hitter-friendly",
      "temperature_f": 77.5,
      "wind_speed_mph": 9.2,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Kyle Harrison",
      "pitcher_id": 690986,
      "team_abbr": "MIL",
      "opponent_abbr": "CHC",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-31T11:55:10.224Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": 118,
      "under_odds": -150,
      "expected_strikeouts": 4.61,
      "baseline_projected_strikeouts": 4.76,
      "adjusted_projected_strikeouts": 4.61,
      "skill_score": 46.9,
      "opportunity_score": 26.7,
      "opponent_weakness_score": 27.0,
      "support_tier": "STRONG_SKILL",
      "support_label": "Strong Skill",
      "support_note": "Underlying strikeout skill is the clearest support input.",
      "suppression_score": 89.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.3229,
      "model_under_probability": 0.6771,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4587,
      "implied_under_probability_raw": 0.6,
      "implied_over_probability_novig": 0.4333,
      "implied_under_probability_novig": 0.5667,
      "edge_over": -0.1358,
      "edge_under": 0.0771,
      "recommended_side": "Under",
      "recommended_edge": 0.0771,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.15,
      "adjustment_multiplier": 0.969,
      "aggregate_matchup_score": 36.1,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 12381.0,
      "lineup_expected_strikeouts": 4.48,
      "environment_summary": "hitter-friendly",
      "temperature_f": 77.5,
      "wind_speed_mph": 9.2,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Brandon Pfaadt",
      "pitcher_id": 694297,
      "team_abbr": "AZ",
      "opponent_abbr": "PHI",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-31T11:54:24.753Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -140,
      "under_odds": 105,
      "expected_strikeouts": 4.72,
      "baseline_projected_strikeouts": 4.48,
      "adjusted_projected_strikeouts": 4.72,
      "skill_score": 17.2,
      "opportunity_score": 65.7,
      "opponent_weakness_score": 39.2,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 31.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.6591,
      "model_under_probability": 0.3409,
      "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.0758,
      "edge_under": -0.1469,
      "recommended_side": "Over",
      "recommended_edge": 0.0758,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.24,
      "adjustment_multiplier": 1.053,
      "aggregate_matchup_score": 44.1,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 30360.0,
      "lineup_expected_strikeouts": 5.22,
      "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": "Tanner Gordon",
      "pitcher_id": 685299,
      "team_abbr": "COL",
      "opponent_abbr": "BAL",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-31T11:55:10.224Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 100,
      "under_odds": -128,
      "expected_strikeouts": 3.97,
      "baseline_projected_strikeouts": 4.0,
      "adjusted_projected_strikeouts": 3.97,
      "skill_score": 3.7,
      "opportunity_score": 45.0,
      "opponent_weakness_score": 30.1,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 45.7,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.3651,
      "model_under_probability": 0.6349,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5,
      "implied_under_probability_raw": 0.5614,
      "implied_over_probability_novig": 0.4711,
      "implied_under_probability_novig": 0.5289,
      "edge_over": -0.1349,
      "edge_under": 0.0735,
      "recommended_side": "Under",
      "recommended_edge": 0.0735,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.03,
      "adjustment_multiplier": 0.992,
      "aggregate_matchup_score": 24.9,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 8648.0,
      "lineup_expected_strikeouts": 4.14,
      "environment_summary": "hitter-friendly",
      "temperature_f": 64.9,
      "wind_speed_mph": 2.8,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Kyle Harrison",
      "pitcher_id": 690986,
      "team_abbr": "MIL",
      "opponent_abbr": "CHC",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-31T11:55:08.393Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -160,
      "under_odds": 120,
      "expected_strikeouts": 4.61,
      "baseline_projected_strikeouts": 4.76,
      "adjusted_projected_strikeouts": 4.61,
      "skill_score": 46.9,
      "opportunity_score": 26.7,
      "opponent_weakness_score": 27.0,
      "support_tier": "STRONG_SKILL",
      "support_label": "Strong Skill",
      "support_note": "Underlying strikeout skill is the clearest support input.",
      "suppression_score": 89.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.4742,
      "model_under_probability": 0.5258,
      "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.1412,
      "edge_under": 0.0713,
      "recommended_side": "Under",
      "recommended_edge": 0.0713,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": -0.15,
      "adjustment_multiplier": 0.969,
      "aggregate_matchup_score": 36.1,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 12381.0,
      "lineup_expected_strikeouts": 4.48,
      "environment_summary": "hitter-friendly",
      "temperature_f": 77.5,
      "wind_speed_mph": 9.2,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "George Kirby",
      "pitcher_id": 669923,
      "team_abbr": "SEA",
      "opponent_abbr": "BOS",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-31T11:55:10.224Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -113,
      "under_odds": -113,
      "expected_strikeouts": 5.4,
      "baseline_projected_strikeouts": 5.28,
      "adjusted_projected_strikeouts": 5.4,
      "skill_score": 17.6,
      "opportunity_score": 57.0,
      "opponent_weakness_score": 40.7,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 38.9,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.5948,
      "model_under_probability": 0.4052,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5305,
      "implied_under_probability_raw": 0.5305,
      "implied_over_probability_novig": 0.5,
      "implied_under_probability_novig": 0.5,
      "edge_over": 0.0643,
      "edge_under": -0.1253,
      "recommended_side": "Over",
      "recommended_edge": 0.0643,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.12,
      "adjustment_multiplier": 1.024,
      "aggregate_matchup_score": 57.0,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 30773.0,
      "lineup_expected_strikeouts": 5.55,
      "environment_summary": "hitter-friendly",
      "temperature_f": 69.1,
      "wind_speed_mph": 9.6,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Michael King",
      "pitcher_id": 650633,
      "team_abbr": "SD",
      "opponent_abbr": "CIN",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-31T11:54:36.434Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -135,
      "under_odds": 100,
      "expected_strikeouts": 5.38,
      "baseline_projected_strikeouts": 4.72,
      "adjusted_projected_strikeouts": 5.38,
      "skill_score": 27.7,
      "opportunity_score": 63.5,
      "opponent_weakness_score": 52.8,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 31.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.4405,
      "model_under_probability": 0.5595,
      "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.134,
      "edge_under": 0.0595,
      "recommended_side": "Under",
      "recommended_edge": 0.0595,
      "play_tier": "Strong",
      "no_play_reason": null,
      "adjustment_delta": 0.66,
      "adjustment_multiplier": 1.14,
      "aggregate_matchup_score": 72.6,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 19346.0,
      "lineup_expected_strikeouts": 6.52,
      "environment_summary": "hitter-friendly",
      "temperature_f": 81.9,
      "wind_speed_mph": 2.1,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "George Kirby",
      "pitcher_id": 669923,
      "team_abbr": "SEA",
      "opponent_abbr": "BOS",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-31T11:54:48.559Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -120,
      "under_odds": -108,
      "expected_strikeouts": 5.4,
      "baseline_projected_strikeouts": 5.28,
      "adjusted_projected_strikeouts": 5.4,
      "skill_score": 17.6,
      "opportunity_score": 57.0,
      "opponent_weakness_score": 40.7,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 38.9,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.5948,
      "model_under_probability": 0.4052,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5455,
      "implied_under_probability_raw": 0.5192,
      "implied_over_probability_novig": 0.5124,
      "implied_under_probability_novig": 0.4876,
      "edge_over": 0.0493,
      "edge_under": -0.114,
      "recommended_side": "Over",
      "recommended_edge": 0.0493,
      "play_tier": "Play",
      "no_play_reason": null,
      "adjustment_delta": 0.12,
      "adjustment_multiplier": 1.024,
      "aggregate_matchup_score": 57.0,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 30773.0,
      "lineup_expected_strikeouts": 5.55,
      "environment_summary": "hitter-friendly",
      "temperature_f": 69.1,
      "wind_speed_mph": 9.6,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "George Kirby",
      "pitcher_id": 669923,
      "team_abbr": "SEA",
      "opponent_abbr": "BOS",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-31T11:55:24.512Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -125,
      "under_odds": -105,
      "expected_strikeouts": 5.4,
      "baseline_projected_strikeouts": 5.28,
      "adjusted_projected_strikeouts": 5.4,
      "skill_score": 17.6,
      "opportunity_score": 57.0,
      "opponent_weakness_score": 40.7,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 38.9,
      "suppression_tier": "MILD_SUPPRESSION",
      "suppression_label": "Mild Suppression",
      "suppression_note": "Some workload drag is present, but the strikeout path remains mostly intact.",
      "interaction_tier": "NEUTRAL_ALIGNMENT",
      "interaction_label": "Neutral Alignment",
      "interaction_note": "The signal stack is mixed and better used as context than conviction.",
      "trust_modifier": "NEUTRAL",
      "trust_label": "Neutral",
      "trust_note": "The strikeout trust picture is mixed and better used as context than conviction.",
      "model_over_probability": 0.5948,
      "model_under_probability": 0.4052,
      "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.0392,
      "edge_under": -0.107,
      "recommended_side": "Over",
      "recommended_edge": 0.0392,
      "play_tier": "Play",
      "no_play_reason": null,
      "adjustment_delta": 0.12,
      "adjustment_multiplier": 1.024,
      "aggregate_matchup_score": 57.0,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 30773.0,
      "lineup_expected_strikeouts": 5.55,
      "environment_summary": "hitter-friendly",
      "temperature_f": 69.1,
      "wind_speed_mph": 9.6,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Taj Bradley",
      "pitcher_id": 671737,
      "team_abbr": "MIN",
      "opponent_abbr": "DET",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-31T11:55:10.224Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -122,
      "under_odds": -104,
      "expected_strikeouts": 5.46,
      "baseline_projected_strikeouts": 5.4,
      "adjusted_projected_strikeouts": 5.46,
      "skill_score": 34.9,
      "opportunity_score": 59.4,
      "opponent_weakness_score": 37.9,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 35.4,
      "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.4523,
      "model_under_probability": 0.5477,
      "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.0972,
      "edge_under": 0.0379,
      "recommended_side": "Under",
      "recommended_edge": 0.0379,
      "play_tier": "Play",
      "no_play_reason": null,
      "adjustment_delta": 0.06,
      "adjustment_multiplier": 1.01,
      "aggregate_matchup_score": 53.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 25885.0,
      "lineup_expected_strikeouts": 5.52,
      "environment_summary": "neutral",
      "temperature_f": 73.0,
      "wind_speed_mph": 4.3,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Taj Bradley",
      "pitcher_id": 671737,
      "team_abbr": "MIN",
      "opponent_abbr": "DET",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-31T11:55:09.527Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -130,
      "under_odds": -105,
      "expected_strikeouts": 5.46,
      "baseline_projected_strikeouts": 5.4,
      "adjusted_projected_strikeouts": 5.46,
      "skill_score": 34.9,
      "opportunity_score": 59.4,
      "opponent_weakness_score": 37.9,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 35.4,
      "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.4523,
      "model_under_probability": 0.5477,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5652,
      "implied_under_probability_raw": 0.5122,
      "implied_over_probability_novig": 0.5246,
      "implied_under_probability_novig": 0.4754,
      "edge_over": -0.1129,
      "edge_under": 0.0355,
      "recommended_side": "Under",
      "recommended_edge": 0.0355,
      "play_tier": "Play",
      "no_play_reason": null,
      "adjustment_delta": 0.06,
      "adjustment_multiplier": 1.01,
      "aggregate_matchup_score": 53.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 25885.0,
      "lineup_expected_strikeouts": 5.52,
      "environment_summary": "neutral",
      "temperature_f": 73.0,
      "wind_speed_mph": 4.3,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Taj Bradley",
      "pitcher_id": 671737,
      "team_abbr": "MIN",
      "opponent_abbr": "DET",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-31T11:54:48.559Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": -121,
      "under_odds": -108,
      "expected_strikeouts": 5.46,
      "baseline_projected_strikeouts": 5.4,
      "adjusted_projected_strikeouts": 5.46,
      "skill_score": 34.9,
      "opportunity_score": 59.4,
      "opponent_weakness_score": 37.9,
      "support_tier": "STRONG_OPPORTUNITY",
      "support_label": "Strong Opportunity",
      "support_note": "Workload and batters-faced path are doing most of the support work.",
      "suppression_score": 35.4,
      "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.4523,
      "model_under_probability": 0.5477,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5475,
      "implied_under_probability_raw": 0.5192,
      "implied_over_probability_novig": 0.5133,
      "implied_under_probability_novig": 0.4867,
      "edge_over": -0.0952,
      "edge_under": 0.0285,
      "recommended_side": "Under",
      "recommended_edge": 0.0285,
      "play_tier": "Lean",
      "no_play_reason": null,
      "adjustment_delta": 0.06,
      "adjustment_multiplier": 1.01,
      "aggregate_matchup_score": 53.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 25885.0,
      "lineup_expected_strikeouts": 5.52,
      "environment_summary": "neutral",
      "temperature_f": 73.0,
      "wind_speed_mph": 4.3,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Ryan Gusto",
      "pitcher_id": 687473,
      "team_abbr": "MIA",
      "opponent_abbr": "WSH",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-31T11:55:26.556Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -130,
      "under_odds": -105,
      "expected_strikeouts": 4.27,
      "baseline_projected_strikeouts": 4.24,
      "adjusted_projected_strikeouts": 4.27,
      "skill_score": 16.3,
      "opportunity_score": 15.4,
      "opponent_weakness_score": 32.8,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 92.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.5906,
      "model_under_probability": 0.4094,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5652,
      "implied_under_probability_raw": 0.5122,
      "implied_over_probability_novig": 0.5246,
      "implied_under_probability_novig": 0.4754,
      "edge_over": 0.0254,
      "edge_under": -0.1028,
      "recommended_side": "Over",
      "recommended_edge": 0.0254,
      "play_tier": "Lean",
      "no_play_reason": null,
      "adjustment_delta": 0.03,
      "adjustment_multiplier": 1.007,
      "aggregate_matchup_score": 40.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 7135.0,
      "lineup_expected_strikeouts": 4.42,
      "environment_summary": "neutral",
      "temperature_f": 81.9,
      "wind_speed_mph": 2.1,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Jackson Jobe",
      "pitcher_id": 695549,
      "team_abbr": "DET",
      "opponent_abbr": "MIN",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-31T11:55:10.224Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": 100,
      "under_odds": -128,
      "expected_strikeouts": 3.86,
      "baseline_projected_strikeouts": 3.53,
      "adjusted_projected_strikeouts": 3.86,
      "skill_score": 1.3,
      "opportunity_score": 26.3,
      "opponent_weakness_score": 35.7,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 80.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.5202,
      "model_under_probability": 0.4798,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5,
      "implied_under_probability_raw": 0.5614,
      "implied_over_probability_novig": 0.4711,
      "implied_under_probability_novig": 0.5289,
      "edge_over": 0.0202,
      "edge_under": -0.0816,
      "recommended_side": "Over",
      "recommended_edge": 0.0202,
      "play_tier": "Lean",
      "no_play_reason": null,
      "adjustment_delta": 0.33,
      "adjustment_multiplier": 1.095,
      "aggregate_matchup_score": 25.2,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 4385.0,
      "lineup_expected_strikeouts": 4.71,
      "environment_summary": "neutral",
      "temperature_f": 73.0,
      "wind_speed_mph": 4.3,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Brady Singer",
      "pitcher_id": 663903,
      "team_abbr": "CIN",
      "opponent_abbr": "SD",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-31T11:55:10.224Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 126,
      "under_odds": -162,
      "expected_strikeouts": 4.52,
      "baseline_projected_strikeouts": 4.33,
      "adjusted_projected_strikeouts": 4.52,
      "skill_score": 16.9,
      "opportunity_score": 67.2,
      "opponent_weakness_score": 37.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.4,
      "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.4593,
      "model_under_probability": 0.5407,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4425,
      "implied_under_probability_raw": 0.6183,
      "implied_over_probability_novig": 0.4171,
      "implied_under_probability_novig": 0.5829,
      "edge_over": 0.0168,
      "edge_under": -0.0776,
      "recommended_side": "Over",
      "recommended_edge": 0.0168,
      "play_tier": "Lean",
      "no_play_reason": null,
      "adjustment_delta": 0.19,
      "adjustment_multiplier": 1.045,
      "aggregate_matchup_score": 41.9,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 33950.0,
      "lineup_expected_strikeouts": 4.97,
      "environment_summary": "hitter-friendly",
      "temperature_f": 81.9,
      "wind_speed_mph": 2.1,
      "wind_direction": "out",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Brady Singer",
      "pitcher_id": 663903,
      "team_abbr": "CIN",
      "opponent_abbr": "SD",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-31T11:54:48.559Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": 122,
      "under_odds": -157,
      "expected_strikeouts": 4.52,
      "baseline_projected_strikeouts": 4.33,
      "adjusted_projected_strikeouts": 4.52,
      "skill_score": 16.9,
      "opportunity_score": 67.2,
      "opponent_weakness_score": 37.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.4,
      "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.4593,
      "model_under_probability": 0.5407,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.4505,
      "implied_under_probability_raw": 0.6109,
      "implied_over_probability_novig": 0.4244,
      "implied_under_probability_novig": 0.5756,
      "edge_over": 0.0088,
      "edge_under": -0.0702,
      "recommended_side": "No Play",
      "recommended_edge": 0.0088,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.19,
      "adjustment_multiplier": 1.045,
      "aggregate_matchup_score": 41.9,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 33950.0,
      "lineup_expected_strikeouts": 4.97,
      "environment_summary": "hitter-friendly",
      "temperature_f": 81.9,
      "wind_speed_mph": 2.1,
      "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": "WSH",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-31T11:55:10.224Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -140,
      "under_odds": 110,
      "expected_strikeouts": 4.27,
      "baseline_projected_strikeouts": 4.24,
      "adjusted_projected_strikeouts": 4.27,
      "skill_score": 16.3,
      "opportunity_score": 15.4,
      "opponent_weakness_score": 32.8,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 92.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.5906,
      "model_under_probability": 0.4094,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5833,
      "implied_under_probability_raw": 0.4762,
      "implied_over_probability_novig": 0.5505,
      "implied_under_probability_novig": 0.4495,
      "edge_over": 0.0073,
      "edge_under": -0.0668,
      "recommended_side": "No Play",
      "recommended_edge": 0.0073,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.03,
      "adjustment_multiplier": 1.007,
      "aggregate_matchup_score": 40.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 7135.0,
      "lineup_expected_strikeouts": 4.42,
      "environment_summary": "neutral",
      "temperature_f": 81.9,
      "wind_speed_mph": 2.1,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Jackson Jobe",
      "pitcher_id": 695549,
      "team_abbr": "DET",
      "opponent_abbr": "MIN",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-31T11:54:48.559Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -106,
      "under_odds": -122,
      "expected_strikeouts": 3.86,
      "baseline_projected_strikeouts": 3.53,
      "adjusted_projected_strikeouts": 3.86,
      "skill_score": 1.3,
      "opportunity_score": 26.3,
      "opponent_weakness_score": 35.7,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 80.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.5202,
      "model_under_probability": 0.4798,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5146,
      "implied_under_probability_raw": 0.5495,
      "implied_over_probability_novig": 0.4836,
      "implied_under_probability_novig": 0.5164,
      "edge_over": 0.0056,
      "edge_under": -0.0697,
      "recommended_side": "No Play",
      "recommended_edge": 0.0056,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.33,
      "adjustment_multiplier": 1.095,
      "aggregate_matchup_score": 25.2,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 4385.0,
      "lineup_expected_strikeouts": 4.71,
      "environment_summary": "neutral",
      "temperature_f": 73.0,
      "wind_speed_mph": 4.3,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Aaron Nola",
      "pitcher_id": 605400,
      "team_abbr": "PHI",
      "opponent_abbr": "AZ",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-31T11:54:24.753Z",
      "line": 5.5,
      "line_type": "half",
      "over_odds": 125,
      "under_odds": -165,
      "expected_strikeouts": 4.94,
      "baseline_projected_strikeouts": 4.94,
      "adjusted_projected_strikeouts": 4.94,
      "skill_score": 58.2,
      "opportunity_score": 58.8,
      "opponent_weakness_score": 34.1,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 37.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.3738,
      "model_under_probability": 0.6262,
      "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.0706,
      "edge_under": 0.0036,
      "recommended_side": "No Play",
      "recommended_edge": 0.0036,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.0,
      "adjustment_multiplier": 0.999,
      "aggregate_matchup_score": 46.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 29857.0,
      "lineup_expected_strikeouts": 4.97,
      "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": "Aaron Nola",
      "pitcher_id": 605400,
      "team_abbr": "PHI",
      "opponent_abbr": "AZ",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-31T11:54:48.559Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -142,
      "under_odds": 111,
      "expected_strikeouts": 4.94,
      "baseline_projected_strikeouts": 4.94,
      "adjusted_projected_strikeouts": 4.94,
      "skill_score": 58.2,
      "opportunity_score": 58.8,
      "opponent_weakness_score": 34.1,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 37.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.5269,
      "model_under_probability": 0.4731,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5868,
      "implied_under_probability_raw": 0.4739,
      "implied_over_probability_novig": 0.5532,
      "implied_under_probability_novig": 0.4468,
      "edge_over": -0.0599,
      "edge_under": -0.0008,
      "recommended_side": "No Play",
      "recommended_edge": -0.0008,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.0,
      "adjustment_multiplier": 0.999,
      "aggregate_matchup_score": 46.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 29857.0,
      "lineup_expected_strikeouts": 4.97,
      "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": "Aaron Nola",
      "pitcher_id": 605400,
      "team_abbr": "PHI",
      "opponent_abbr": "AZ",
      "sportsbook": "FanDuel",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-31T11:55:10.224Z",
      "line": 4.5,
      "line_type": "half",
      "over_odds": -140,
      "under_odds": 110,
      "expected_strikeouts": 4.94,
      "baseline_projected_strikeouts": 4.94,
      "adjusted_projected_strikeouts": 4.94,
      "skill_score": 58.2,
      "opportunity_score": 58.8,
      "opponent_weakness_score": 34.1,
      "support_tier": "DUAL_SUPPORT",
      "support_label": "Dual Support",
      "support_note": "Two of the three strikeout support layers align cleanly.",
      "suppression_score": 37.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.5269,
      "model_under_probability": 0.4731,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.5833,
      "implied_under_probability_raw": 0.4762,
      "implied_over_probability_novig": 0.5505,
      "implied_under_probability_novig": 0.4495,
      "edge_over": -0.0564,
      "edge_under": -0.0031,
      "recommended_side": "No Play",
      "recommended_edge": -0.0031,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.0,
      "adjustment_multiplier": 0.999,
      "aggregate_matchup_score": 46.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 29857.0,
      "lineup_expected_strikeouts": 4.97,
      "environment_summary": "neutral",
      "temperature_f": null,
      "wind_speed_mph": null,
      "wind_direction": "unknown",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Brady Singer",
      "pitcher_id": 663903,
      "team_abbr": "CIN",
      "opponent_abbr": "SD",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-31T11:54:36.434Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -175,
      "under_odds": 130,
      "expected_strikeouts": 4.52,
      "baseline_projected_strikeouts": 4.33,
      "adjusted_projected_strikeouts": 4.52,
      "skill_score": 16.9,
      "opportunity_score": 67.2,
      "opponent_weakness_score": 37.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.4,
      "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.6298,
      "model_under_probability": 0.3702,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6364,
      "implied_under_probability_raw": 0.4348,
      "implied_over_probability_novig": 0.5941,
      "implied_under_probability_novig": 0.4059,
      "edge_over": -0.0066,
      "edge_under": -0.0646,
      "recommended_side": "No Play",
      "recommended_edge": -0.0066,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.19,
      "adjustment_multiplier": 1.045,
      "aggregate_matchup_score": 41.9,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 33950.0,
      "lineup_expected_strikeouts": 4.97,
      "environment_summary": "hitter-friendly",
      "temperature_f": 81.9,
      "wind_speed_mph": 2.1,
      "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": "WSH",
      "sportsbook": "DraftKings",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-31T11:54:48.559Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -152,
      "under_odds": 118,
      "expected_strikeouts": 4.27,
      "baseline_projected_strikeouts": 4.24,
      "adjusted_projected_strikeouts": 4.27,
      "skill_score": 16.3,
      "opportunity_score": 15.4,
      "opponent_weakness_score": 32.8,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 92.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.5906,
      "model_under_probability": 0.4094,
      "model_push_probability": 0.0,
      "implied_over_probability_raw": 0.6032,
      "implied_under_probability_raw": 0.4587,
      "implied_over_probability_novig": 0.568,
      "implied_under_probability_novig": 0.432,
      "edge_over": -0.0126,
      "edge_under": -0.0493,
      "recommended_side": "No Play",
      "recommended_edge": -0.0126,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.03,
      "adjustment_multiplier": 1.007,
      "aggregate_matchup_score": 40.3,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 7135.0,
      "lineup_expected_strikeouts": 4.42,
      "environment_summary": "neutral",
      "temperature_f": 81.9,
      "wind_speed_mph": 2.1,
      "wind_direction": "in",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    },
    {
      "pitcher_name": "Jackson Jobe",
      "pitcher_id": 695549,
      "team_abbr": "DET",
      "opponent_abbr": "MIN",
      "sportsbook": "BetMGM",
      "source_provider": "sportsgameodds",
      "timestamp": "2026-08-31T11:55:09.527Z",
      "line": 3.5,
      "line_type": "half",
      "over_odds": -115,
      "under_odds": -115,
      "expected_strikeouts": 3.86,
      "baseline_projected_strikeouts": 3.53,
      "adjusted_projected_strikeouts": 3.86,
      "skill_score": 1.3,
      "opportunity_score": 26.3,
      "opponent_weakness_score": 35.7,
      "support_tier": "WEAK_SUPPORT",
      "support_label": "Weak Support",
      "support_note": "The strikeout support stack is lighter across skill, workload, and opponent context.",
      "suppression_score": 80.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.5202,
      "model_under_probability": 0.4798,
      "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.0147,
      "edge_under": -0.0551,
      "recommended_side": "No Play",
      "recommended_edge": -0.0147,
      "play_tier": "No Play",
      "no_play_reason": "Best edge did not clear the minimum play threshold.",
      "adjustment_delta": 0.33,
      "adjustment_multiplier": 1.095,
      "aggregate_matchup_score": 25.2,
      "lineup_confidence": "projected",
      "pitch_mix_sample_size": 4385.0,
      "lineup_expected_strikeouts": 4.71,
      "environment_summary": "neutral",
      "temperature_f": 73.0,
      "wind_speed_mph": 4.3,
      "wind_direction": "cross",
      "starter_confidence": "probable",
      "projection_model_version": "negative_binomial_style",
      "source_file": "canonical_all_providers.json"
    }
  ],
  "unmatched_inputs": [
    {
      "pitcher_name": "Anthony Kay",
      "team_abbr": "CWS",
      "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": "Anthony Kay",
      "team_abbr": "CWS",
      "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": "Anthony Kay",
      "team_abbr": "CWS",
      "opponent_abbr": "HOU",
      "sportsbook": "FanDuel",
      "line": 3.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Anthony Molina",
      "team_abbr": "ATL",
      "opponent_abbr": "SF",
      "sportsbook": "BetMGM",
      "line": 2.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Anthony Molina",
      "team_abbr": "ATL",
      "opponent_abbr": "SF",
      "sportsbook": "FanDuel",
      "line": 2.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Gage Jump",
      "team_abbr": "OAK",
      "opponent_abbr": "TEX",
      "sportsbook": "BetMGM",
      "line": 5.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Gage Jump",
      "team_abbr": "OAK",
      "opponent_abbr": "TEX",
      "sportsbook": "DraftKings",
      "line": 5.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Gage Jump",
      "team_abbr": "OAK",
      "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": "Ian Seymour",
      "team_abbr": "TB",
      "opponent_abbr": "NYM",
      "sportsbook": "BetMGM",
      "line": 5.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Ian Seymour",
      "team_abbr": "TB",
      "opponent_abbr": "NYM",
      "sportsbook": "DraftKings",
      "line": 6.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Ian Seymour",
      "team_abbr": "TB",
      "opponent_abbr": "NYM",
      "sportsbook": "FanDuel",
      "line": 6.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Landen Roupp",
      "team_abbr": "SF",
      "opponent_abbr": "ATL",
      "sportsbook": "DraftKings",
      "line": 5.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Landen Roupp",
      "team_abbr": "SF",
      "opponent_abbr": "ATL",
      "sportsbook": "FanDuel",
      "line": 5.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Mart\u00edn P\u00e9rez",
      "team_abbr": "ATL",
      "opponent_abbr": "SF",
      "sportsbook": "DraftKings",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Mart\u00edn P\u00e9rez",
      "team_abbr": "ATL",
      "opponent_abbr": "SF",
      "sportsbook": "FanDuel",
      "line": 4.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Payton Tolle",
      "team_abbr": "BOS",
      "opponent_abbr": "SEA",
      "sportsbook": "BetMGM",
      "line": 6.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Payton Tolle",
      "team_abbr": "BOS",
      "opponent_abbr": "SEA",
      "sportsbook": "DraftKings",
      "line": 6.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Payton Tolle",
      "team_abbr": "BOS",
      "opponent_abbr": "SEA",
      "sportsbook": "FanDuel",
      "line": 6.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Peter Lambert",
      "team_abbr": "HOU",
      "opponent_abbr": "CWS",
      "sportsbook": "BetMGM",
      "line": 5.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Peter Lambert",
      "team_abbr": "HOU",
      "opponent_abbr": "CWS",
      "sportsbook": "DraftKings",
      "line": 5.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    },
    {
      "pitcher_name": "Peter Lambert",
      "team_abbr": "HOU",
      "opponent_abbr": "CWS",
      "sportsbook": "FanDuel",
      "line": 5.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": "NYY",
      "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": "NYY",
      "sportsbook": "DraftKings",
      "line": 5.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": "NYY",
      "sportsbook": "FanDuel",
      "line": 5.5,
      "source_file": "canonical_all_providers.json",
      "reason": "No matching Mithrandir strikeout props row was found."
    }
  ]
}