{"record":{"id":"0bc2bf3655709f5a","repo":"vercel/ai","slug":"code-mode-protocol-error","errorCode":"CODE_MODE_PROTOCOL_ERROR","errorMessage":"Approval response ${approvalResponse.approvalId} does not match pending code-mode approval ${interrupt.interruptId}.","messagePattern":"Approval response (.+?) does not match pending code-mode approval (.+?)\\.","errorType":"exception","errorClass":"CodeModeProtocolError","httpStatus":null,"severity":"error","filePath":"packages/code-mode/src/approval-continuation.ts","lineNumber":45,"sourceCode":"  );\n}\n\nexport async function continueCodeModeApproval({\n  interrupt,\n  approvalResponse,\n  tools,\n  options = {},\n  toolExecutionOptions,\n}: {\n  interrupt: CodeModeApprovalInterrupt;\n  approvalResponse: CodeModeApprovalResponse;\n  tools: CodeModeToolSet;\n  options?: CodeModeOptions;\n  toolExecutionOptions?: Partial<CodeModeToolExecutionOptions>;\n}): Promise<unknown> {\n  assertCodeModeApprovalResponse(approvalResponse);\n  if (approvalResponse.approvalId !== interrupt.interruptId) {\n    throw new CodeModeProtocolError(\n      `Approval response ${approvalResponse.approvalId} does not match pending code-mode approval ${interrupt.interruptId}.`,\n    );\n  }\n\n  return await continueCodeModeInterrupt({\n    interrupt,\n    resolution: {\n      approved: approvalResponse.approved,\n      ...(approvalResponse.reason !== undefined\n        ? { reason: approvalResponse.reason }\n        : {}),\n    },\n    tools,\n    options: {\n      ...options,\n      approval: { ...options.approval, mode: 'interrupt' },\n    },\n    ...(toolExecutionOptions !== undefined ? { toolExecutionOptions } : {}),","sourceCodeStart":27,"sourceCodeEnd":63,"githubUrl":"https://github.com/vercel/ai/blob/69428b1f8b037e4d118fb4853428d5c4e620493c/packages/code-mode/src/approval-continuation.ts#L27-L63","documentation":"Error \"Approval response ${approvalResponse.approvalId} does not match pending code-mode approval ${interrupt.interruptId}.\" thrown in vercel/ai.","triggerScenarios":"Thrown at packages/code-mode/src/approval-continuation.ts:45 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"69428b1f8b037e4d118fb4853428d5c4e620493c","analyzedAt":"2026-08-30T12:32:21.016Z","schemaVersion":2},"datasetVersion":"2026-08-30T13:17:10.514Z"}