{"record":{"id":"95f9a0e7944ce62c","repo":"paperclipai/paperclip","slug":"issue-has-no-current-execution-workspace","errorCode":null,"errorMessage":"Issue has no current execution workspace","messagePattern":"Issue has no current execution workspace","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"packages/mcp-server/src/tools.ts","lineNumber":374,"sourceCode":"        const qs = companyId ? `?companyId=${encodeURIComponent(companyId)}` : \"\";\n        return client.requestJson(\"GET\", `/projects/${encodeURIComponent(projectId)}${qs}`);\n      },\n    ),\n    makeTool(\n      \"paperclipGetIssueWorkspaceRuntime\",\n      \"Get the current execution workspace and runtime services for an issue, including service URLs\",\n      z.object({ issueId: issueIdSchema }),\n      async ({ issueId }) => getIssueWorkspaceRuntime(client, issueId),\n    ),\n    makeTool(\n      \"paperclipControlIssueWorkspaceServices\",\n      \"Start, stop, or restart the current issue execution workspace runtime services\",\n      issueWorkspaceRuntimeControlSchema,\n      async ({ issueId, action, ...target }) => {\n        const runtime = await getIssueWorkspaceRuntime(client, issueId);\n        const workspaceId = typeof runtime.workspace?.id === \"string\" ? runtime.workspace.id : null;\n        if (!workspaceId) {\n          throw new Error(\"Issue has no current execution workspace\");\n        }\n        return client.requestJson(\n          \"POST\",\n          `/execution-workspaces/${encodeURIComponent(workspaceId)}/runtime-services/${action}`,\n          { body: target },\n        );\n      },\n    ),\n    makeTool(\n      \"paperclipWaitForIssueWorkspaceService\",\n      \"Wait until an issue execution workspace runtime service is running and has a URL when one is exposed\",\n      waitForIssueWorkspaceServiceSchema,\n      async ({ issueId, runtimeServiceId, serviceName, timeoutSeconds }) => {\n        const deadline = Date.now() + (timeoutSeconds ?? 60) * 1000;\n        let latest: Awaited<ReturnType<typeof getIssueWorkspaceRuntime>> | null = null;\n        while (Date.now() <= deadline) {\n          latest = await getIssueWorkspaceRuntime(client, issueId);\n          const service = selectRuntimeService(latest.runtimeServices, { runtimeServiceId, serviceName });","sourceCodeStart":356,"sourceCodeEnd":392,"githubUrl":"https://github.com/paperclipai/paperclip/blob/a7e689b3c35347b529cb9f54c9b9a8575a3dcab6/packages/mcp-server/src/tools.ts#L356-L392","documentation":"Runtime lookup failure from getIssueWorkspaceRuntime (exposed via paperclipGetIssueWorkspaceRuntime): the requested issue exists but has no currently attached execution workspace/lease, so there are no runtime services or URLs to report. Typically fires when the issue has not started, its workspace was already released, or the workspace runtime is between leases.","triggerScenarios":"Thrown at packages/mcp-server/src/tools.ts:374 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Check out/start a run for the issue so an execution workspace exists before calling workspace tools."],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"a7e689b3c35347b529cb9f54c9b9a8575a3dcab6","analyzedAt":"2026-08-18T22:49:45.177Z","contentChangedAt":"2026-08-18T22:49:45.177Z","schemaVersion":2},"datasetVersion":"2026-09-23T08:17:48.524Z"}