paperclipai/paperclip · error · Error
runner_remote_provider_artifact_incompatible
runner_remote_provider_artifact_incompatible
Error message
runner_remote_provider_artifact_incompatible: ${label} path must be ${expectedPath} What it means
Artifact verification guard over the remote provider pack: each artifact entry (provider Node command, production lockfile, OpenCode command/executable, etc.) must exist at the exact expected path in REMOTE_PROVIDER_PACK_ARTIFACT_PATHS; any deviation throws 'runner_remote_provider_artifact_incompatible: <label> path must be <expectedPath>'. This prevents launching from relocated or tampered pack artifacts.
Source
Thrown at server/src/services/native-runtime/native-session-executor.ts:5761
],
[
"OpenCode proxy",
payload.artifacts?.opencodeProxy,
REMOTE_PROVIDER_PACK_ARTIFACT_PATHS.opencodeProxy,
],
[
"ACPX sidecar",
payload.artifacts?.acpxSidecar,
REMOTE_PROVIDER_PACK_ARTIFACT_PATHS.acpxSidecar,
],
] as const;
for (const [label, artifact, expectedPath] of artifactEntries) {
const artifactPath = providerPackRelativePath(
artifact?.path,
`${label} path`,
);
if (artifactPath !== expectedPath) {
throw new Error(
`runner_remote_provider_artifact_incompatible: ${label} path must be ${expectedPath}`,
);
}
if (
typeof artifact?.sha256 !== "string" ||
sha256File(resolve(packRoot, artifactPath)) !== artifact.sha256
) {
throw new Error(
`runner_remote_provider_artifact_incompatible: ${label} digest mismatch`,
);
}
}
if (sha256DirectoryTree(resolve(packRoot, "dist")) !== payload.distDigest) {
throw new Error(
"runner_remote_provider_artifact_incompatible: provider dist tree digest mismatch",
);
}
const bridgeDigest = `sha256:${createHash("sha256")View on GitHub (pinned to 01ad858492)
Solutions
- Install the provider pack so each artifact sits at its expected canonical path.
- Fix the payload's artifacts paths to match REMOTE_PROVIDER_PACK_ARTIFACT_PATHS.
- Re-download/repackage the provider pack if artifacts were moved or partially extracted.
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at server/src/services/native-runtime/native-session-executor.ts:4098 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of paperclipai/paperclip@01ad858492 (2026-09-02).
Data as JSON: /api/errors/6516e8f788b7d844.
Report an issue: GitHub.