{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "title": "OverlayConfig",
  "type": "object",
  "required": ["enabled", "mode", "weights"],
  "properties": {
    "enabled": {"type": "boolean"},
    "mode": {
      "type": "string",
      "enum": ["tie_breaker", "weighted_rank", "hold_adjustment", "add_on_gate"]
    },
    "weights": {
      "type": "object",
      "required": ["yahoo", "youtube", "wikimedia", "finra", "google_trends"],
      "properties": {
        "yahoo": {"type": "number", "minimum": 0, "maximum": 1},
        "youtube": {"type": "number", "minimum": 0, "maximum": 1},
        "wikimedia": {"type": "number", "minimum": 0, "maximum": 1},
        "finra": {"type": "number", "minimum": 0, "maximum": 1},
        "google_trends": {"type": "number", "minimum": 0, "maximum": 1}
      },
      "additionalProperties": false
    },
    "strong_threshold": {"type": "number", "minimum": 0, "maximum": 1},
    "weak_threshold": {"type": "number", "minimum": 0, "maximum": 1},
    "allow_degraded_mode": {"type": "boolean"},
    "experimental_sources_enabled": {"type": "boolean"}
  },
  "additionalProperties": false
}
