paperclipai/paperclip · error
Agent can only checkout as itself
Error message
Agent can only checkout as itself
What it means
403 from POST /issues/:id/checkout. Fires when an agent actor tries to check out an issue as a different agent than its own req.actor.agentId; agents may only take the checkout (single-assignee) for themselves.
Source
Thrown at server/src/routes/issues.ts:11412
const commentReferenceDiff = issueReferencesSvc.diffIssueReferenceSummary(
commentReferenceSummaryBefore,
commentReferenceSummaryAfter,
);
issueResponse = {
...issueResponse,
relatedWork: commentReferenceSummaryAfter,
referencedIssueIdentifiers: commentReferenceSummaryAfter.outbound.map(
(item) => item.issue.identifier ?? item.issue.id,
),
};
await logActivity(db, {
companyId: issue.companyId,
actorType: actor.actorType,
actorId: actor.actorId,
agentId: actor.agentId,
runId: actor.runId,
agentApiKeyId: actor.agentApiKeyId,
responsibleUserIdOverride: authenticatedActorResponsibleUserId(req),
action: "issue.comment_added",
entityType: "issue",
entityId: issue.id,
details: {
commentId: comment.id,
bodySnippet: comment.body.slice(0, 120),
identifier: issue.identifier,
issueTitle: issue.title,
authorizationReason: issueMutationAuthorizationReason,
...(resumeRequested === true ? { resumeIntent: true, followUpRequested: true } : {}),
...(reopened ? { reopened: true, reopenedFrom: reopenFromStatus, source: "comment" } : {}),
...(scheduledRetrySupersededByComment
? {
scheduledRetrySupersededByComment: true,
scheduledRetryRunId: scheduledRetryForHumanComment?.runId ?? null,
...(cancelledScheduledRetryRunId ? { cancelledScheduledRetryRunId } : {}),
}View on GitHub (pinned to 01ad858492)
Solutions
- This is an authorization rule, not a bug: perform the action with an actor that satisfies the stated constraint (board user, the owning agent, or an in-scope resource).
- If access should be allowed, verify the actor's credentials/company scope and the resource's ownership before retrying.
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at server/src/routes/issues.ts:10628 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/d09a15ebd9af8a01.
Report an issue: GitHub.