Skip to content
Developer Preview

ApprovalDecideParams

approval/decide params: the decision. A standard command — requires the session loaded on this host, requires commandId, durable intake before ack, value-identical replay.

  • approvalId
  • choiceId
  • commandId
  • feedback
  • requirementId
  • sessionId
Source

schema/msp/experimental/msp.schema.json#/types/ApprovalDecideParams

{
"description": "`approval/decide` params: the decision. A standard\ncommand — requires the session loaded on this host, requires `commandId`,\ndurable intake before ack, value-identical replay.",
"properties": {
"approvalId": {
"description": "The approval being decided.",
"type": "string"
},
"choiceId": {
"description": "One of the current `availableChoices`; else -32052.",
"type": "string"
},
"commandId": {
"description": "The idempotency handle (UUIDv7).",
"type": "string"
},
"feedback": {
"description": "Free-text guidance delivered to the model with the denial. Only valid\non choices with `acceptsFeedback`. Never persisted in the durable\naudit record (live steer only), so it is absent from\n`approval/resolved`. Omitted and explicit `null` both\nmean \"no feedback\".",
"type": [
"string",
"null"
]
},
"requirementId": {
"$ref": "#/$defs/ApprovalRequirementRef",
"description": "Must equal the approval's `currentRequirementId`. The multi-stage race\nguard: a decision aimed at stage 1 can never accidentally satisfy\nstage 2, and a stale value is -32053."
},
"sessionId": {
"description": "The target session.",
"type": "string"
}
},
"required": [
"approvalId",
"choiceId",
"commandId",
"requirementId",
"sessionId"
],
"type": "object"
}