{ "$schema": "http://json-schema.org/draft-07/schema#", "$id": "workflow-artifact.schema.json", "title": "Trusted workflow artifact envelope", "type": "object", "required": ["artifact-kind", "artifact-version", "identity", "payload"], "properties": { "report-type": {"const": "workflow-artifact"}, "artifact-kind": {"type": "string", "minLength": 1}, "artifact-version": {"type": ["integer", "string"]}, "identity": { "type": "object", "required": ["artifact-id", "workflow-id", "stage", "producer-role-id"], "properties": { "artifact-id": {"type": ["string", "number"]}, "workflow-id": {"type": ["string", "number"]}, "stage": {"type": "string"}, "producer-role-id": {"type": "string"} } }, "payload": {"type": "object"} } }