{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/Layer",
  "title": "Layer",
  "type": "object",
  "description": "A layer within a render job",
  "properties": {
    "id": {
      "type": "string",
      "description": "Unique layer identifier",
      "example": "layer-ghi789"
    },
    "name": {
      "type": "string",
      "description": "Layer name",
      "example": "render"
    },
    "type": {
      "type": "string",
      "description": "Layer type",
      "example": "RENDER",
      "enum": [
        "RENDER",
        "UTIL"
      ]
    },
    "state": {
      "type": "string",
      "description": "Layer state",
      "example": "RUNNING"
    },
    "minCores": {
      "type": "integer",
      "description": "Minimum cores required per frame",
      "example": 100
    },
    "maxCores": {
      "type": "integer",
      "description": "Maximum cores allowed per frame",
      "example": 2000
    },
    "threadable": {
      "type": "boolean",
      "description": "Whether frames can run multi-threaded",
      "example": false
    },
    "totalFrames": {
      "type": "integer",
      "description": "Total number of frames in this layer",
      "example": 100
    },
    "doneFrames": {
      "type": "integer",
      "description": "Number of completed frames in this layer",
      "example": 45
    }
  }
}