{
  "$defs": {
    "Digest": {
      "additionalProperties": false,
      "properties": {
        "algorithm": {
          "const": "sha256",
          "default": "sha256",
          "title": "Algorithm",
          "type": "string"
        },
        "value": {
          "pattern": "^[0-9a-f]{64}$",
          "title": "Value",
          "type": "string"
        }
      },
      "required": [
        "value"
      ],
      "title": "Digest",
      "type": "object"
    },
    "PlanArtifact": {
      "additionalProperties": false,
      "properties": {
        "digest": {
          "$ref": "#/$defs/Digest"
        },
        "path": {
          "title": "Path",
          "type": "string"
        }
      },
      "required": [
        "path",
        "digest"
      ],
      "title": "PlanArtifact",
      "type": "object"
    },
    "RuntimeImage": {
      "additionalProperties": false,
      "properties": {
        "image": {
          "pattern": "^sha256:[0-9a-f]{64}$",
          "title": "Image",
          "type": "string"
        },
        "platform": {
          "enum": [
            "linux/amd64",
            "linux/arm64"
          ],
          "title": "Platform",
          "type": "string"
        },
        "provider": {
          "const": "apizr.docker-engine/v1",
          "default": "apizr.docker-engine/v1",
          "title": "Provider",
          "type": "string"
        }
      },
      "required": [
        "image",
        "platform"
      ],
      "title": "RuntimeImage",
      "type": "object"
    }
  },
  "additionalProperties": false,
  "properties": {
    "artifacts": {
      "additionalProperties": {
        "$ref": "#/$defs/Digest"
      },
      "title": "Artifacts",
      "type": "object"
    },
    "backend": {
      "const": "oci-container",
      "default": "oci-container",
      "title": "Backend",
      "type": "string"
    },
    "backend_version": {
      "const": "apizr.oci-container/v1",
      "default": "apizr.oci-container/v1",
      "title": "Backend Version",
      "type": "string"
    },
    "capabilities": {
      "additionalProperties": {
        "$ref": "#/$defs/PlanArtifact"
      },
      "title": "Capabilities",
      "type": "object"
    },
    "contract_digest": {
      "$ref": "#/$defs/Digest"
    },
    "exposure_plan_digest": {
      "$ref": "#/$defs/Digest"
    },
    "policy_artifact": {
      "const": "execution/policy.json",
      "default": "execution/policy.json",
      "title": "Policy Artifact",
      "type": "string"
    },
    "policy_digest": {
      "$ref": "#/$defs/Digest"
    },
    "policy_version": {
      "const": "apizr.execution/v2",
      "default": "apizr.execution/v2",
      "title": "Policy Version",
      "type": "string"
    },
    "provider_version": {
      "const": "apizr.docker-engine/v1",
      "default": "apizr.docker-engine/v1",
      "title": "Provider Version",
      "type": "string"
    },
    "repository_interface_digest": {
      "$ref": "#/$defs/Digest"
    },
    "runtime": {
      "$ref": "#/$defs/RuntimeImage"
    },
    "schema_version": {
      "const": "apizr.repository-execution-bundle/v2",
      "default": "apizr.repository-execution-bundle/v2",
      "title": "Schema Version",
      "type": "string"
    },
    "transport": {
      "enum": [
        "rest",
        "mcp"
      ],
      "title": "Transport",
      "type": "string"
    }
  },
  "required": [
    "transport",
    "repository_interface_digest",
    "exposure_plan_digest",
    "contract_digest",
    "policy_digest",
    "capabilities",
    "artifacts",
    "runtime"
  ],
  "title": "ContainerBundle",
  "type": "object"
}
