{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://oms.local/schemas/conductor-decision.schema.json",
  "title": "OMS conductor decision",
  "type": "object",
  "additionalProperties": false,
  "required": ["action", "ticket_id", "selected_role_id", "evidence_paths", "reason"],
  "properties": {
    "action": { "enum": ["advise", "execute", "park", "block"] },
    "ticket_id": { "type": "string", "pattern": "^[a-z0-9](?:[a-z0-9-]{0,62}[a-z0-9])?$" },
    "selected_role_id": {
      "enum": [
        "oms.conductor",
        "oms.exec-advisor",
        "oms.ticket-executor",
        "oms.goal-long-executor",
        "oms.grader.codex",
        "oms.grader.claude",
        "oms.bounded-dreamer"
      ]
    },
    "evidence_paths": {
      "type": "array",
      "maxItems": 32,
      "items": { "type": "string", "pattern": "^/", "maxLength": 4096 }
    },
    "reason": { "type": "string", "minLength": 1, "maxLength": 4096 }
  }
}
