{ "$schema": "http://json-schema.org/draft-07/schema#", "definitions": { "GuardianApprovalReview": { "description": "[UNSTABLE] Temporary guardian approval review payload used by `item/autoApprovalReview/*` notifications. This shape is expected to change soon.", "properties": { "rationale": { "type": [ "string", "null" ] }, "riskLevel": { "anyOf": [ { "$ref": "#/definitions/GuardianRiskLevel" }, { "type": "null" } ] }, "riskScore": { "format": "uint8", "minimum": 0.0, "type": [ "integer", "null" ] }, "status": { "$ref": "#/definitions/GuardianApprovalReviewStatus" } }, "required": [ "status" ], "type": "object" }, "GuardianApprovalReviewStatus": { "description": "[UNSTABLE] Lifecycle state for a guardian approval review.", "enum": [ "inProgress", "approved", "denied", "aborted" ], "type": "string" }, "GuardianRiskLevel": { "description": "[UNSTABLE] Risk level assigned by guardian approval review.", "enum": [ "low", "medium", "high" ], "type": "string" } }, "description": "[UNSTABLE] Temporary notification payload for guardian automatic approval review. This shape is expected to change soon.\n\nTODO(ccunningham): Attach guardian review state to the reviewed tool item's lifecycle instead of sending separate standalone review notifications so the app-server API can persist and replay review state via `thread/read`.", "properties": { "action": true, "review": { "$ref": "#/definitions/GuardianApprovalReview" }, "targetItemId": { "type": "string" }, "threadId": { "type": "string" }, "turnId": { "type": "string" } }, "required": [ "review", "targetItemId", "threadId", "turnId" ], "title": "ItemGuardianApprovalReviewCompletedNotification", "type": "object" }