{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "title": "get_doml response (input contract)",
  "type": "object",
  "properties": {
    "id": { "type": "string" },
    "title": { "type": "string" },
    "summary": { "type": "string" },
    "domainTags": { "type": "array", "items": { "type": "string" } },
    "classification": {
      "type": "string",
      "enum": ["reasoning_only", "needs_integration"]
    },
    "needsIntegration": {
      "type": "boolean",
      "description": "True when the DO has connector steps — anonymous execution runs them in delegated I/O mode (caller supplies read data, performs proposed writes)."
    },
    "integrationNote": { "type": "string" },
    "integrationSteps": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "index": { "type": "integer" },
          "title": { "type": "string" },
          "reason": { "type": "string" }
        }
      }
    },
    "inputs": {
      "type": "object",
      "description": "JSON-Schema of the inputs you supply to `do`: declared parameters PLUS one read-slot per connector-read step.",
      "properties": {
        "type": { "type": "string", "const": "object" },
        "properties": { "type": "object" },
        "required": { "type": "array", "items": { "type": "string" } }
      },
      "required": ["type", "properties", "required"]
    },
    "proposedActionSteps": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "stepId": { "type": "string" },
          "intent": { "type": "string" }
        }
      }
    }
  },
  "required": ["id", "title", "domainTags", "classification", "needsIntegration", "inputs"]
}
