paperclipai/paperclip · error
createdByRunId is not valid for this company
Error message
createdByRunId is not valid for this company
What it means
403 from resolveWorkProductCreatedByRunId (board-actor branch): the requested run id does not resolve to a run within the target company, so a board user cannot attribute the work product to it.
Source
Thrown at server/src/routes/issues.ts:5169
recoveryCause === "successful_run_missing_state" ||
recoveryCause === "successful_run_missing_issue_disposition"
) {
return null;
}
const firstLine = body.split(/\r?\n/, 1)[0]?.trim() || "Recovery update";
const title = firstLine.length > 160 ? `${firstLine.slice(0, 159)}…` : firstLine;
return {
kind: "system_notice",
tone: "info",
title,
detailsDefaultOpen: false,
density: "compact",
};
}
async function assertDeliverableMutationAllowedByRunContext(
req: Request,
res: Response,
issue: { id: string; companyId: string },
) {
const run = await loadActorRunContext(req, issue.companyId);
if (!run) return true;
if (!isStatusOnlyRecoveryContext(run.contextSnapshot)) return true;
res.status(403).json({
error: "Status-only recovery runs cannot update issue documents, plans, or deliverable artifacts",
details: {
issueId: issue.id,
runId: run.id,
recoveryIntent: "status_only",
resumeRequiresNormalModel: true,
},
});
return false;
}View on GitHub (pinned to 01ad858492)
Solutions
- Include the required field(s) in the request path, query, or body as named by the error message, then retry.
- Check the API contract in packages/shared validators for the exact required shape of this endpoint.
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at server/src/routes/issues.ts:5013 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of paperclipai/paperclip@01ad858492 (2026-08-18).
Data as JSON: /api/errors/777cfcbe94e9a561.
Report an issue: GitHub.