paperclipai/paperclip · error

Missing permission to link approvals

Error message

Missing permission to link approvals

What it means

403 guard in assertCanManageIssueApprovalLinks: the authenticated agent exists in the company but its role (not CEO) lacks the permission required to attach or manage approval links.

Source

Thrown at server/src/routes/issues.ts:3886

        companyId: input.issue.companyId,
        actorType: input.actor.actorType,
        actorId: input.actor.actorId,
        agentId: input.actor.agentId,
        runId: input.actor.runId,
        agentApiKeyId: input.actor.agentApiKeyId,
        action: "issue.thread_interaction_expired",
        entityType: "issue",
        entityId: input.issue.id,
        details: {
          identifier: input.issue.identifier ?? null,
          interactionId: interaction.id,
          interactionKind: interaction.kind,
          interactionStatus: interaction.status,
          source: input.source,
          result: interaction.result ?? null,
        },
      });
    }
  }

  async function queueExpiredInteractionReviewPathRecovery(input: {
    issue: IssueRouteSnapshot;
    interactions: Array<{ id: string }>;
    actor: ReturnType<typeof getActorInfo>;
    source: string;
  }) {
    if (
      input.interactions.length === 0
      || input.issue.status !== "in_review"
      || !input.issue.assigneeAgentId
    ) {
      return null;
    }

    const reviewAttention = await svc
      .listReviewAttention(input.issue.companyId, [input.issue])

View on GitHub (pinned to 01ad858492)

Solutions

  1. Include the required field(s) in the request path, query, or body as named by the error message, then retry.
  2. 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:3722 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/6878c425e8ad42ac. Report an issue: GitHub.