{"record":{"id":"1d3b9e7f4c013d38","repo":"paperclipai/paperclip","slug":"issue-is-not-wakeable-in-status-issue-status","errorCode":null,"errorMessage":"Issue is not wakeable in status: ${issue.status}","messagePattern":"Issue is not wakeable in status: (.+?)","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"server/src/services/plugin-host-services.ts","lineNumber":2172,"sourceCode":"          ...(assigneeRows\n            ? {\n                assignees: Object.fromEntries(assigneeRows.map((agent) => [\n                  agent.id,\n                  { ...agent, status: agent.status as Agent[\"status\"] } as PluginIssueAssigneeSummary,\n                ])),\n              }\n            : {}),\n        };\n      },\n      async requestWakeup(params) {\n        const companyId = ensureCompanyId(params.companyId);\n        await ensurePluginAvailableForCompany(companyId);\n        const issue = requireInCompany(\"Issue\", await issues.getById(params.issueId), companyId);\n        if (!issue.assigneeAgentId) {\n          throw new Error(\"Issue has no assigned agent to wake\");\n        }\n        if ([\"backlog\", \"done\", \"cancelled\"].includes(issue.status)) {\n          throw new Error(`Issue is not wakeable in status: ${issue.status}`);\n        }\n        const relations = await issues.getRelationSummaries(issue.id);\n        const unresolvedBlockers = relations.blockedBy.filter((blocker) => blocker.status !== \"done\");\n        if (unresolvedBlockers.length > 0) {\n          throw new Error(\"Issue is blocked by unresolved blockers\");\n        }\n        const budgetBlock = await budgets.getInvocationBlock(companyId, issue.assigneeAgentId, {\n          issueId: issue.id,\n          projectId: issue.projectId,\n        });\n        if (budgetBlock) {\n          throw new Error(budgetBlock.reason);\n        }\n        const contextSource = params.contextSource ?? \"plugin.issue.requestWakeup\";\n        const run = await heartbeat.wakeup(issue.assigneeAgentId, {\n          source: \"assignment\",\n          triggerDetail: \"system\",\n          reason: params.reason ?? \"plugin_issue_wakeup_requested\",","sourceCodeStart":2154,"sourceCodeEnd":2190,"githubUrl":"https://github.com/paperclipai/paperclip/blob/a7e689b3c35347b529cb9f54c9b9a8575a3dcab6/server/src/services/plugin-host-services.ts#L2154-L2190","documentation":"requestWakeup was called on an issue in a terminal/parked status (backlog, done, or cancelled). Only active workflow statuses can be woken; the issue must be moved back into an active status first.","triggerScenarios":"Thrown at server/src/services/plugin-host-services.ts:2163 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Only request a wake when the issue is in a wakeable status (e.g. todo/in_progress). Check issue.status first and skip the wake for done/cancelled/blocked states."],"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-14T00:17:10.932Z"}