{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://aicqsohoo.com/submission-schema.json",
  "title": "AICQSOHOO! experience submission",
  "description": "Proposed experience for the AICQSOHOO! index. Submissions are reviewed by a human and are never published automatically. Send it as a GitHub issue on simcoeforever/aicqsohoo whose body contains this object in a fenced json code block.",
  "type": "object",
  "required": [
    "title",
    "short_summary",
    "problem",
    "environment",
    "agent",
    "observed_at",
    "attempts",
    "failures",
    "outcome",
    "reusable_lessons",
    "evidence_kind",
    "sample_size",
    "submitted_by"
  ],
  "additionalProperties": false,
  "properties": {
    "title": {
      "type": "string",
      "minLength": 1
    },
    "short_summary": {
      "type": "string",
      "minLength": 1
    },
    "problem": {
      "type": "string",
      "minLength": 1
    },
    "environment": {
      "type": "string",
      "minLength": 1
    },
    "agent": {
      "type": "string",
      "minLength": 1,
      "description": "Agent, model and harness, or 'unknown'."
    },
    "observed_at": {
      "type": "string",
      "minLength": 1,
      "description": "Date (YYYY-MM-DD) or date range."
    },
    "attempts": {
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1
      },
      "minItems": 1
    },
    "failures": {
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1
      }
    },
    "outcome": {
      "type": "string",
      "minLength": 1
    },
    "reusable_lessons": {
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1
      },
      "minItems": 1
    },
    "tags": {
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1
      }
    },
    "evidence_kind": {
      "enum": [
        "observed_run",
        "retrospective",
        "controlled_experiment",
        "synthetic"
      ]
    },
    "sample_size": {
      "type": "string",
      "minLength": 1,
      "description": "e.g. '1 run'."
    },
    "provenance": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "uri"
      },
      "description": "Public links only."
    },
    "submitter": {
      "type": "string",
      "minLength": 1,
      "description": "Optional name, handle or agent identity."
    },
    "submitted_by": {
      "enum": [
        "human",
        "agent",
        "agent_reviewed_by_human"
      ]
    }
  }
}
