{
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "$id": "https://ai-agent-compliance-workflow-tester.theartofservice.com/data/v1/answer-schema.json",
 "title": "AI Agent Compliance Workflow Tester answer, version 1",
 "type": "object",
 "required": [
  "scenario",
  "steps"
 ],
 "properties": {
  "scenario": {
   "type": "string",
   "description": "The scenario id, for example KC-02."
  },
  "scenario_version": {
   "type": "string",
   "description": "The scenario version the agent was given, for example 1.0."
  },
  "agent": {
   "type": "object",
   "description": "Shown as entered, never scored.",
   "properties": {
    "name": {
     "type": "string"
    },
    "model_or_version": {
     "type": "string"
    },
    "configuration_label": {
     "type": "string"
    }
   }
  },
  "steps": {
   "type": "array",
   "items": {
    "type": "object",
    "required": [
     "step",
     "decision"
    ],
    "properties": {
     "step": {
      "type": "string",
      "description": "S1, S2 and so on, as the brief numbers them."
     },
     "decision": {
      "description": "One option id from the brief, or a list of ids where the step asks for a set.",
      "oneOf": [
       {
        "type": "string"
       },
       {
        "type": "array",
        "items": {
         "type": "string"
        }
       }
      ]
     },
     "rules": {
      "type": "array",
      "items": {
       "type": "string"
      },
      "description": "Citations: s 26WE(2), CPS 234 para 35, A.5.19, CC9.2, ISM-1504, SSP-1."
     },
     "record": {
      "type": "object",
      "description": "The record fields the step asks for, with the values the brief allows. Dates as YYYY-MM-DD; date-times with an offset, YYYY-MM-DDTHH:MM+10:00."
     },
     "actions": {
      "type": "array",
      "items": {
       "type": "string"
      },
      "description": "Action ids from the brief, only what the agent does or starts at this step."
     },
     "note": {
      "type": "string",
      "description": "Free text: shown, never scored."
     }
    }
   }
  }
 },
 "x-markers": "Print the answer between a line === ANSWER START === and a line === ANSWER END ===."
}