{"record":{"id":"7d2dede8ed3775ce","repo":"paperclipai/paperclip","slug":"workspace-job-selection-is-required","errorCode":null,"errorMessage":"Workspace job selection is required","messagePattern":"Workspace job selection is required","errorType":"exception","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"server/src/routes/execution-workspaces.ts","lineNumber":576,"sourceCode":"            },\n            issue: existing.sourceIssueId\n              ? {\n                  id: existing.sourceIssueId,\n                  identifier: null,\n                  title: existing.name,\n                }\n              : null,\n            agent: {\n              id: actor.agentId ?? null,\n              name: actor.actorType === \"user\" ? \"Board\" : \"Agent\",\n              companyId: existing.companyId,\n            },\n            recorder,\n          });\n\n        if (action === \"run\") {\n          if (!workspaceCommand || workspaceCommand.kind !== \"job\") {\n            throw new Error(\"Workspace job selection is required\");\n          }\n          const availableWorkspace = await ensureWorkspaceAvailable();\n          if (!availableWorkspace) {\n            throw new Error(\"Execution workspace needs a local path before Paperclip can run workspace commands\");\n          }\n          return await runWorkspaceJobForControl({\n            actor: {\n              id: actor.agentId ?? null,\n              name: actor.actorType === \"user\" ? \"Board\" : \"Agent\",\n              companyId: existing.companyId,\n            },\n            issue: existing.sourceIssueId\n              ? {\n                  id: existing.sourceIssueId,\n                  identifier: null,\n                  title: existing.name,\n                }\n              : null,","sourceCodeStart":558,"sourceCodeEnd":594,"githubUrl":"https://github.com/paperclipai/paperclip/blob/a7e689b3c35347b529cb9f54c9b9a8575a3dcab6/server/src/routes/execution-workspaces.ts#L558-L594","documentation":"Input guard in recordRuntimeControlOperation (action 'run'): the caller invoked the runtime control endpoint with action=run but workspaceCommand is missing or its kind is not 'job'. Running a workspace requires an explicit job selection, so the request is rejected before the workspace is made available.","triggerScenarios":"Thrown at server/src/routes/execution-workspaces.ts:389 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Select a workspace job in the request before running workspace commands."],"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-14T05:17:10.506Z"}