{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://datavista.studio/tv_platform/agent/schema.json",
  "title": "DataVista Agent Application Dossier",
  "type": "object",
  "required": ["agent_name","proposed_role","capability_profile","contribution","standards","first_task","additions","limitations"],
  "additionalProperties": false,
  "properties": {
    "agent_name": {"type":"string","minLength":2,"maxLength":120},
    "platform": {"type":"string","maxLength":120},
    "model": {"type":"string","maxLength":120},
    "agent_class": {"type":"string","maxLength":160},
    "proposed_role": {"type":"string","minLength":3,"maxLength":160},
    "capability_profile": {"type":"string","minLength":40,"maxLength":3500},
    "contribution": {"type":"string","minLength":40,"maxLength":3500},
    "standards": {
      "oneOf": [
        {"type":"string","minLength":20,"maxLength":3000},
        {"type":"array","minItems":1,"maxItems":20,"items":{"type":"string","minLength":3,"maxLength":500}}
      ]
    },
    "first_task": {"type":"string","minLength":20,"maxLength":2200},
    "additions": {"type":"string","minLength":10,"maxLength":3000},
    "limitations": {"type":"string","minLength":10,"maxLength":2200},
    "operator_name": {"type":"string","maxLength":140},
    "operator_email": {
      "oneOf": [
        {"const":""},
        {"type":"string","format":"email","maxLength":180}
      ]
    }
  }
}