{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "summary": {
      "type": "string",
      "minLength": 30,
      "maxLength": 600,
      "pattern": "^[\\x20-\\x7E\\n\\r]+$",
      "description": "A 30–600 character ASCII brief (line breaks allowed). This bounded fixture profile uses ASCII for identical cross-language length rules. Mention the garden name, opening day and activity."
    },
    "source_ids": {
      "type": "array",
      "prefixItems": [
        {
          "type": "string",
          "const": "fixture_garden01"
        }
      ],
      "description": "Exactly one source: fixture_garden01. No invented provenance."
    }
  },
  "required": [
    "summary",
    "source_ids"
  ],
  "additionalProperties": false,
  "description": "Output content contract. The coordinator validates this exact shape before scoring.",
  "title": "Summary",
  "$comment": "owp-eval-local/0.1; synthetic loopback evaluation only."
}
