{
  "general_edge_floor": 0.1,
  "markets": [
    {
      "market": "passing_yards",
      "baby_line_minimum": 200.0,
      "edge_threshold": 0.15
    },
    {
      "market": "passing_attempts",
      "baby_line_minimum": 25.0,
      "edge_threshold": 0.15
    },
    {
      "market": "passing_completions",
      "baby_line_minimum": 18.0,
      "edge_threshold": 0.15
    },
    {
      "market": "passing_tds",
      "baby_line_minimum": null,
      "edge_threshold": 0.1
    },
    {
      "market": "passing_interceptions",
      "baby_line_minimum": null,
      "edge_threshold": 0.1
    },
    {
      "market": "rushing_yards",
      "baby_line_minimum": 40.0,
      "edge_threshold": 0.25
    },
    {
      "market": "rush_attempts",
      "baby_line_minimum": 7.0,
      "edge_threshold": 0.15
    },
    {
      "market": "receiving_yards",
      "baby_line_minimum": 40.0,
      "edge_threshold": 0.2
    },
    {
      "market": "receptions",
      "baby_line_minimum": 3.0,
      "edge_threshold": 0.225
    },
    {
      "market": "rush_receiving_yards",
      "baby_line_minimum": null,
      "edge_threshold": 0.2
    },
    {
      "market": "anytime_td",
      "baby_line_minimum": null,
      "edge_threshold": 0.1
    },
    {
      "market": "moneyline",
      "baby_line_minimum": null,
      "edge_threshold": 0.1
    },
    {
      "market": "spread",
      "baby_line_minimum": null,
      "edge_threshold": 0.1
    },
    {
      "market": "game_total",
      "baby_line_minimum": null,
      "edge_threshold": 0.1
    },
    {
      "market": "team_total",
      "baby_line_minimum": null,
      "edge_threshold": 0.1
    }
  ],
  "notes": [
    "Thresholds are config constants, not hardcoded in checks.",
    "Team markets remain Lean / Review / No Play until validated.",
    "Do not widen thresholds to create action."
  ]
}