{ "$comment": "will-side revision envelope submitted to the deployment platform by Luci (deploy/contract.md). The platform accepts a bundle only when this record is valid and its gates are green.", "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["commit", "images", "gates", "issuedBy", "issuedAt"], "additionalProperties": false, "properties": { "commit": { "type": "string", "pattern": "^[0-9a-f]{40}$" }, "images": { "type": "object", "required": ["service", "agent"], "additionalProperties": false, "properties": { "service": { "$ref": "#/$defs/imageRef" }, "agent": { "$ref": "#/$defs/imageRef" } } }, "compatibilityBaseline": { "type": "object", "required": ["revisionId"], "additionalProperties": false, "properties": { "revisionId": { "type": "string" }, "serviceDigest": { "type": "string" }, "agentDigest": { "type": "string" } } }, "gates": { "type": "array", "minItems": 1, "items": { "type": "object", "required": ["name", "status", "evidenceUrl"], "additionalProperties": false, "properties": { "name": { "type": "string" }, "status": { "enum": ["green"] }, "evidenceUrl": { "type": "string", "format": "uri" } } } }, "issuedBy": { "const": "luci" }, "issuedAt": { "type": "string", "format": "date-time" }, "buildId": { "type": "string" } }, "$defs": { "imageRef": { "type": "object", "required": ["repository", "digest"], "additionalProperties": false, "properties": { "repository": { "type": "string" }, "digest": { "type": "string", "pattern": "^sha256:[0-9a-f]{64}$" } } } } }