{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://git.toki-labs.com/toki/ariadne/contracts/execution-failure/v1/schema.json", "title": "Ariadne execution failure", "type": "object", "additionalProperties": false, "required": [ "schema_version", "code", "stage", "message", "user_message", "retryable", "occurred_at", "causes" ], "properties": { "schema_version": { "const": "ariadne.execution-failure.v1" }, "code": { "type": "string", "pattern": "^[A-Z][A-Z0-9_]{2,99}$" }, "stage": { "$ref": "#/$defs/stage" }, "message": { "type": "string", "minLength": 1, "maxLength": 20000 }, "user_message": { "type": "string", "minLength": 1, "maxLength": 20000 }, "retryable": { "type": "boolean" }, "occurred_at": { "type": "string", "format": "date-time" }, "details_reference": { "type": "string", "maxLength": 1000 }, "causes": { "type": "array", "maxItems": 32, "items": { "$ref": "#/$defs/cause" } } }, "$defs": { "stage": { "type": "string", "enum": [ "ingestion", "correlation", "target_selection", "repository_analysis", "runtime_analysis", "translation", "iop_submission", "iop_execution", "change", "validation", "merge_request" ] }, "cause": { "type": "object", "additionalProperties": false, "required": [ "code", "stage", "message", "retryable" ], "properties": { "code": { "type": "string", "pattern": "^[A-Z][A-Z0-9_]{2,99}$" }, "stage": { "$ref": "#/$defs/stage" }, "message": { "type": "string", "minLength": 1, "maxLength": 20000 }, "retryable": { "type": "boolean" } } } } }