{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://hwlab.pikastech.local/protocol/schemas/evidence-record.schema.json",
  "title": "HWLAB Evidence Record",
  "type": "object",
  "required": [
    "evidenceId",
    "projectId",
    "operationId",
    "kind",
    "uri",
    "sha256",
    "serviceId",
    "environment",
    "createdAt"
  ],
  "properties": {
    "evidenceId": {
      "$ref": "common.json#/$defs/id"
    },
    "projectId": {
      "$ref": "common.json#/$defs/id"
    },
    "operationId": {
      "$ref": "common.json#/$defs/id"
    },
    "agentSessionId": {
      "$ref": "common.json#/$defs/id"
    },
    "workerSessionId": {
      "$ref": "common.json#/$defs/id"
    },
    "kind": {
      "type": "string",
      "enum": ["log", "screenshot", "measurement", "artifact", "report", "trace"]
    },
    "uri": {
      "type": "string",
      "minLength": 1,
      "maxLength": 2048
    },
    "mimeType": {
      "type": "string",
      "maxLength": 128
    },
    "sha256": {
      "type": "string",
      "pattern": "^[a-f0-9]{64}$"
    },
    "sizeBytes": {
      "type": "integer",
      "minimum": 0
    },
    "serviceId": {
      "$ref": "common.json#/$defs/serviceId"
    },
    "environment": {
      "$ref": "common.json#/$defs/environment"
    },
    "metadata": {
      "$ref": "common.json#/$defs/jsonObject"
    },
    "createdAt": {
      "$ref": "common.json#/$defs/timestamp"
    }
  },
  "additionalProperties": false
}
