{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://bound-method.github.io/docs/reference/schemas/verification-plan.schema.json",
  "title": "BOUND Verification Plan",
  "description": "Proposed machine-readable verification obligations for a bounded change.",
  "type": "object",
  "additionalProperties": false,
  "required": ["version", "target", "checks", "acceptance_evidence"],
  "properties": {
    "version": { "type": "string", "minLength": 1 },
    "target": { "type": "string", "minLength": 1 },
    "checks": {
      "type": "array",
      "minItems": 1,
      "items": {
        "type": "object",
        "additionalProperties": false,
        "required": ["id", "type", "command", "purpose"],
        "properties": {
          "id": { "type": "string", "minLength": 1 },
          "type": { "type": "string", "enum": ["schema", "contract", "unit", "integration", "static", "policy", "manual"] },
          "command": { "type": "string", "minLength": 1 },
          "purpose": { "type": "string", "minLength": 1 }
        }
      }
    },
    "acceptance_evidence": { "type": "array", "items": { "type": "string" } },
    "rollback": { "type": "array", "items": { "type": "string" } }
  }
}
