{
  "name": "request_owner_signoff",
  "title": "Ask the owner to sign off one act",
  "description": "Return the page to give the promise's named owner so they can sign off ONE act, and the name of the person who has to be the one to sign it. This asks; it never acts, and it never signs. Call it when the person you are talking to has asked for an act you do not have a code for, or when a code was refused.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "act": {
        "description": "The one act to be signed off. A sign-off covers this act and no other.",
        "type": "string",
        "enum": [
          "agree_meaning",
          "activate_protection",
          "revise_meaning",
          "supersede",
          "retire",
          "transfer_owner",
          "disconnect_repository"
        ]
      },
      "proposalId": {
        "description": "The proposal, when the act is agreeing to its meaning.",
        "type": "string",
        "pattern": "^cand_[a-z0-9]{8,64}$"
      },
      "candidateId": {
        "description": "Deprecated alias for `proposalId`, still accepted so a caller written against the older tool keeps working. Send `proposalId`; sending both names at once is refused.",
        "type": "string",
        "pattern": "^cand_[a-z0-9]{8,64}$"
      },
      "promiseId": {
        "description": "The promise, for every act on one.",
        "type": "string",
        "pattern": "^prom_[a-z0-9]{8,64}$"
      }
    },
    "required": [
      "act"
    ],
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "additionalProperties": false
  },
  "annotations": {
    "readOnlyHint": true,
    "destructiveHint": false,
    "idempotentHint": true,
    "openWorldHint": false
  },
  "execution": {
    "taskSupport": "forbidden"
  }
}