{
  "reasons": {
    "below_calibrated_conf_threshold": "Confidence score is below the minimum threshold",
    "market_odds_missing": "Market odds are missing or too low",
    "high_risk_low_data_quality": "High risk combined with low data quality",
    "lineup_insufficient_for_market": "Lineup info is insufficient for this market",
    "lineup_not_confirmed": "Starting lineups are not confirmed yet",
    "negative_model_edge": "Model edge (EV) is negative",
    "insufficient_play_score": "Prediction play score is insufficient",
    "market_passed_all_gates": "Passed all safety gates successfully",
    "market_signal_dominant": "Market signal is dominant",
    "team_form_signal_dominant": "Team form signal is dominant",
    "lineup_signal_strong": "Starting lineup signal is strong",
    "lineup_signal_weak": "Starting lineup signal is weak",
    "lineup_probable_xi_used": "Probable starting XI was used",
    "upset_risk_detected": "Upset risk detected",
    "player_form_signal_strong": "Player form signal is strong",
    "player_form_signal_limited": "Player form signal is limited",
    "limited_data_confidence": "Limited data confidence",
    "basketball_points_model": "Basketball points model used"
  },
  "flags": {
    "missing_full_ms_odds": "Missing match result odds",
    "lineup_probable_not_confirmed": "Probable lineup is not confirmed",
    "lineup_unavailable": "Lineup data is completely unavailable",
    "lineup_incomplete": "Lineup data is incomplete",
    "missing_referee": "Referee information is missing",
    "missing_moneyline_odds": "Missing moneyline odds",
    "missing_total_odds": "Missing total goals/points odds",
    "missing_spread_odds": "Missing point spread odds",
    "missing_team_ids": "Missing team identification",
    "missing_ai_features": "Missing AI feature data",
    "missing_home_stats": "Missing home team statistics",
    "missing_away_stats": "Missing away team statistics",
    "missing_odds": "General odds are missing"
  },
  "warnings": {
    "Very tight ELO difference — coin-flip territory": "Very tight ELO difference — coin-flip territory",
    "Upset potential: bookmaker odds suggest heavy favorite but ELO says the match is closer than the market thinks": "Upset potential: bookmaker odds suggest heavy favorite but ELO says the match is closer than the market thinks"
  }
}
