{"record":{"id":"410d0fa6bfe8cbf2","repo":"paperclipai/paperclip","slug":"runid-is-required","errorCode":null,"errorMessage":"runId is required","messagePattern":"runId is required","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"packages/plugins/plugin-llm-wiki/src/worker.ts","lineNumber":553,"sourceCode":"        maxCharacters: typeof params.maxCharacters === \"number\" ? params.maxCharacters : null,\n        maxCharactersPerSource: typeof params.maxCharactersPerSource === \"number\" ? params.maxCharactersPerSource : null,\n        backfillStartAt: stringField(params.backfillStartAt),\n        backfillEndAt: stringField(params.backfillEndAt),\n        routineRun: params.routineRun === true,\n        includeComments: params.includeComments !== false,\n        includeDocuments: params.includeDocuments !== false,\n        workItemId: stringField(params.workItemId),\n        operationIssueId: stringField(params.operationIssueId),\n      });\n    });\n\n    ctx.actions.register(\"record-paperclip-distillation-outcome\", async (params) => {\n      const status = stringField(params.status);\n      if (status !== \"succeeded\" && status !== \"failed\" && status !== \"review_required\") {\n        throw new Error(\"status must be succeeded, failed, or review_required\");\n      }\n      const runId = stringField(params.runId);\n      if (!runId) throw new Error(\"runId is required\");\n      return recordPaperclipDistillationOutcome(ctx, {\n        companyId: readCompanyIdFromParams(params),\n        wikiId: stringField(params.wikiId),\n        spaceSlug: stringField(params.spaceSlug),\n        runId,\n        cursorId: stringField(params.cursorId),\n        status,\n        sourceHash: stringField(params.sourceHash),\n        sourceWindowEnd: stringField(params.sourceWindowEnd),\n        warning: stringField(params.warning),\n        costCents: typeof params.costCents === \"number\" ? params.costCents : null,\n        retryCount: typeof params.retryCount === \"number\" ? params.retryCount : null,\n      });\n    });\n\n    ctx.actions.register(\"distill-paperclip-project-page\", async (params) => {\n      return distillPaperclipProjectPage(ctx, {\n        companyId: readCompanyIdFromParams(params),","sourceCodeStart":535,"sourceCodeEnd":571,"githubUrl":"https://github.com/paperclipai/paperclip/blob/5716fe907e596ce73501408fc6efdb19fb61edf2/packages/plugins/plugin-llm-wiki/src/worker.ts#L535-L571","documentation":"Error \"runId is required\" thrown in paperclipai/paperclip.","triggerScenarios":"Thrown at packages/plugins/plugin-llm-wiki/src/worker.ts:555 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Pass runId identifying the run to update."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"5716fe907e596ce73501408fc6efdb19fb61edf2","analyzedAt":"2026-08-18T22:49:45.177Z","contentChangedAt":"2026-08-18T22:49:45.177Z","schemaVersion":2},"datasetVersion":"2026-09-23T08:17:48.524Z"}