paperclipai/paperclip · error

BOARD_CHAT_BUSY

BOARD_CHAT_BUSY

Error message

Too many concurrent board chats — retry shortly

What it means

Error "Too many concurrent board chats — retry shortly" thrown in paperclipai/paperclip.

Source

Thrown at server/src/routes/board-chat.ts:143

      message?: string;
      taskId?: string;
    };

    if (!companyId || !message) {
      res.status(400).json({ error: "companyId and message are required" });
      return;
    }

    // The body-supplied companyId must belong to the authenticated actor —
    // it scopes issue reads/writes below and is exported to the subprocess.
    assertCompanyAccess(req, companyId);

    // Back-pressure: each request holds a subprocess + SSE stream for up to
    // 2 minutes; cap simultaneous spawns instead of forking without bound.
    if (liveBoardChats >= MAX_CONCURRENT_BOARD_CHATS) {
      res.status(429).json({
        error: "Too many concurrent board chats — retry shortly",
        code: "BOARD_CHAT_BUSY",
      });
      return;
    }

    const issueSvc = issueService(db);
    let issueId = taskId;
    const actor = getActorInfo(req);

    // Find or create the standing "Board Operations" issue that anchors the
    // board conversation + decision log.
    if (!issueId) {
      const companyIssues = await issueSvc.list(companyId, { q: "Board Operations" });
      const boardIssue = companyIssues.find(
        (i) =>
          i.title === "Board Operations" &&
          i.status !== "done" &&
          i.status !== "cancelled",
      );

View on GitHub (pinned to 120ae5428f)

Solutions

  1. Wait for an active board chat session to end, then retry starting a new one.

When it happens

Trigger: Thrown at server/src/routes/board-chat.ts:143 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of paperclipai/paperclip@120ae5428f (2026-08-18). Data as JSON: /api/errors/a44968a82ded7e80. Report an issue: GitHub.