paperclipai/paperclip · error · Error

The import status can no longer be read — your session may h

Error message

The import status can no longer be read — your session may have expired. Reload and sign in to check on it.

What it means

Auth-failure branch in watchImportJob: job polling returned a 4xx (excluding 429) — typically an expired board session, lost board access, or a malformed request. These errors will repeat on every poll, so the watcher stops and tells the user to reload and sign in instead of retrying forever.

Source

Thrown at ui/src/pages/CompanyImport.tsx:812

        // rather than masking a possibly-incomplete import as a success; the
        // refreshed company list lets the user confirm what actually landed.
        clearStoredImportJob(storageKey);
        throw new Error(
          "The server no longer reports this import job — it may have restarted while the import ran.",
        );
      }
      if (
        err instanceof ApiError
        && err.status >= 400
        && err.status < 500
        && err.status !== 429
      ) {
        // A permanent client error (an expired board session, lost board
        // access, or a bad request) will never recover by polling again, so
        // stop instead of leaving the import locked in its running state.
        // 429 (rate limited) and 5xx stay transient and fall through below.
        clearStoredImportJob(storageKey);
        throw new Error(
          "The import status can no longer be read — your session may have expired. Reload and sign in to check on it.",
        );
      }
      // Any other poll failure is treated as transient (network blip,
      // dropped connection, rate limit, or a 5xx): the job keeps running
      // server-side, so keep watching rather than reporting a failure that
      // may not exist.
    }
    if (job?.status === "succeeded") {
      clearStoredImportJob(storageKey);
      if (!job.importResult) {
        // The server confirmed success but retained only the compact summary
        // (a cloud tenant job, or a board job whose full result aged out of
        // memory). Still a success — navigate by the summary's company id.
        return {
          status: "completed-expired",
          companyId: job.result?.companyId ?? null,
        };

View on GitHub (pinned to a7e689b3c3)

Solutions

  1. Reload the page and sign in again, then check the import status.
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at ui/src/pages/CompanyImport.tsx:812 when the library encounters an invalid state.

Common situations: See trigger scenarios.


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