paperclipai/paperclip · error · PaperclipRunnerProviderProfileError

paperclip_runner_acpx_model_unqualified

paperclip_runner_acpx_model_unqualified

Error message

Paperclip Runner ACPX ${acpxAgent} requires exact model ${qualifiedModel}.

What it means

Guard in resolvePaperclipRunnerProviderProfile for ACPX: once the agent is qualified, the model must exactly equal that agent's qualified model from the ACPX qualification table; otherwise 'paperclip_runner_acpx_agent_unavailable'-style error naming the exact model is thrown. ACPX profiles are pinned to one model version, so any other string is rejected.

Source

Thrown at server/src/services/native-runtime/provider-profile.ts:415

      model,
      maxEstimatedSessionCostUsd: positiveNumberOrNull(
        config.maxEstimatedSessionCostUsd,
        "paperclip_runner_aws_agentcore_spend_cap_invalid",
        "Paperclip Runner AWS AgentCore requires a positive estimated session spend ceiling when overridden.",
      ),
    };
  }

  const acpxAgent = config.acpxAgent ?? "claude";
  if (acpxAgent !== "claude" && acpxAgent !== "codex") {
    throw new PaperclipRunnerProviderProfileError(
      "paperclip_runner_acpx_agent_unavailable",
      "Paperclip Runner ACPX requires the qualified Claude or Codex agent profile; Pi is not available.",
    );
  }
  const qualifiedModel = QUALIFIED_ACPX_RUNNER_MODELS[acpxAgent];
  if (acpxAgent === "codex" && model !== qualifiedModel) {
    throw new PaperclipRunnerProviderProfileError(
      "paperclip_runner_acpx_model_unqualified",
      `Paperclip Runner ACPX ${acpxAgent} requires exact model ${qualifiedModel}.`,
    );
  }
  return {
    provider: "acpx",
    backend: "acpx_runtime",
    model: model || qualifiedModel,
    acpxAgent,
  };
}

/**
 * Project the operator-owned adapter configuration and a qualified stored
 * profile into the closed native execution descriptor. Editable adapter
 * configuration can select a stored profile, but it cannot replace that
 * profile's immutable remote resource identity.
 */

View on GitHub (pinned to 01ad858492)

Solutions

  1. Set the model to the exact qualified model named in the error message.
  2. Remove the model override so the agent's qualified default applies.
  3. Re-qualify the ACPX agent profile if a different model version is needed.
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at server/src/services/native-runtime/provider-profile.ts:409 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of paperclipai/paperclip@01ad858492 (2026-09-10). Data as JSON: /api/errors/9c71bf657bebcb38. Report an issue: GitHub.