{"record":{"id":"217d8c5bb7a26a1c","repo":"paperclipai/paperclip","slug":"this-decision-has-no-linked-task-to-route-from","errorCode":null,"errorMessage":"This decision has no linked task to route from.","messagePattern":"This decision has no linked task to route from\\.","errorType":"exception","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"ui/src/components/DecisionTriageStrip.tsx","lineNumber":126,"sourceCode":"  const setSnooze = useMutation({\n    mutationFn: (snoozedUntil: string | null) =>\n      decisionQueuesApi.updateTriage(companyId, sourceKind, sourceId, { snoozedUntil }),\n    onSuccess: invalidate,\n    onError: onError(\"snooze\"),\n  });\n  const addToQueue = useMutation({\n    mutationFn: (key: string) => decisionQueuesApi.addItem(companyId, key, sourceKind, sourceId),\n    onSuccess: invalidate,\n    onError: onError(\"add to queue\"),\n  });\n  const removeFromQueue = useMutation({\n    mutationFn: (key: string) => decisionQueuesApi.removeItem(companyId, key, sourceKind, sourceId),\n    onSuccess: invalidate,\n    onError: onError(\"remove from queue\"),\n  });\n  const routeToAgent = useMutation({\n    mutationFn: (agent: Agent) => {\n      if (!relatedIssueId) throw new Error(\"This decision has no linked task to route from.\");\n      const mention = `[@${agent.name}](${buildAgentMentionHref(agent.id)})`;\n      const body =\n        `${mention} — could you look at this decision${taskRef ? ` on ${taskRef.identifier}` : \"\"}, `\n        + `prepare a recommendation, and re-surface it on the decisions desk? (routed from the desk)`;\n      return issuesApi.addComment(relatedIssueId, body);\n    },\n    onSuccess: (_result, agent) => {\n      invalidate();\n      pushToast({ title: `Asked ${agent.name} for a recommendation`, tone: \"success\" });\n    },\n    onError: onError(\"ask that agent for a recommendation\"),\n  });\n\n  const pending = setDecideBy.isPending || setSnooze.isPending || addToQueue.isPending || removeFromQueue.isPending;\n  const decideBy = item.decideBy;\n  const isDatePreset = decideBy != null && /^\\d{4}-\\d{2}-\\d{2}$/.test(decideBy);\n\n  return (","sourceCodeStart":108,"sourceCodeEnd":144,"githubUrl":"https://github.com/paperclipai/paperclip/blob/120ae5428fa29bee300bcf806491cd4d965fbb7c/ui/src/components/DecisionTriageStrip.tsx#L108-L144","documentation":"Error \"This decision has no linked task to route from.\" thrown in paperclipai/paperclip.","triggerScenarios":"Thrown at ui/src/components/DecisionTriageStrip.tsx:126 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Open the decision from its linked task; if no task is linked, route it from the decision detail view instead."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"120ae5428fa29bee300bcf806491cd4d965fbb7c","analyzedAt":"2026-08-18T22:49:45.177Z","contentChangedAt":"2026-08-18T22:49:45.177Z","schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}