paperclipai/paperclip · error

Only board users can view feedback votes

Error message

Only board users can view feedback votes

What it means

Error "Only board users can view feedback votes" thrown in paperclipai/paperclip.

Source

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

      const id = req.params.id as string;
      const interactionId = req.params.interactionId as string;
      const issue = await getAccessibleResource(req, res, svc.getById(id), "Issue not found");
      if (!issue) return;
      const authorizedResolution = await getIssueThreadInteractionResolutionAuthorization(
        req,
        res,
        issue,
        interactionId,
      );
      if (!authorizedResolution) return;
      const { interactionSvc, current, resolutionAuthorization } = authorizedResolution;
      if (current.kind === "connection_intent") {
        throw unprocessable("Connection intents must be resolved through the connection intent endpoints");
      }
      const suggestedTaskEffectsAuthorized = current.kind === "suggest_tasks"
        ? await assertSuggestedTaskEffectsAllowed(
            req,
            res,
            issue,
            current,
            req.body.selectedClientKeys,
          )
        : true;
      if (!suggestedTaskEffectsAuthorized) return;

      const actor = getActorInfo(req);
      if (current.kind === "request_confirmation" && current.payload.toolAction) {
        if (!opts.approveToolActionRequest) throw unprocessable("Tool review resolution is unavailable");
        await opts.approveToolActionRequest({ companyId: issue.companyId, issueId: issue.id, interactionId: current.id, actionRequestId: current.payload.toolAction.actionRequestId, rememberAction: req.body.rememberAction === true, actor: { agentId: actor.agentId, userId: actor.actorType === "user" ? actor.actorId : null } });
        res.json(await interactionSvc.getById(current.id));
        return;
      }
      if (req.body.rememberAction) throw unprocessable("Remembered permission is only supported for tool reviews");
      const { interaction, createdIssues, continuationIssue } = await interactionSvc.acceptInteraction(issue, interactionId, req.body, {
        agentId: actor.agentId,
        runId: actor.runId,

View on GitHub (pinned to 01ad858492)

Solutions

  1. 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).
  2. If access should be allowed, verify the actor's credentials/company scope and the resource's ownership before retrying.

When it happens

Trigger: Thrown at server/src/routes/issues.ts:11703 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/5ef11d014834d66d. Report an issue: GitHub.