From f5af8b24825604e561b06209dd042f7d8d7a4a7d Mon Sep 17 00:00:00 2001 From: Dotta Date: Thu, 3 Sep 2026 03:09:50 -0500 Subject: [PATCH] fix(runner): mirror qualified Claude runtime --- .../crates/runner-core/src/acpx_provider_backend.rs | 8 ++++---- .../src/backends/native-backend-factory.test.ts | 4 ++-- .../src/drivers/acpx/installation-integrity.ts | 5 +++-- 3 files changed, 9 insertions(+), 8 deletions(-) diff --git a/packages/paperclip-runner/runner/crates/runner-core/src/acpx_provider_backend.rs b/packages/paperclip-runner/runner/crates/runner-core/src/acpx_provider_backend.rs index 55fe69216f..a295eb7207 100644 --- a/packages/paperclip-runner/runner/crates/runner-core/src/acpx_provider_backend.rs +++ b/packages/paperclip-runner/runner/crates/runner-core/src/acpx_provider_backend.rs @@ -88,8 +88,8 @@ impl AcpxProviderDescriptor { "claude-sonnet-5", "@agentclientprotocol/claude-agent-acp", "0.70.0", - None, - None, + Some("@anthropic-ai/claude-agent-sdk"), + Some("0.3.232"), "sha256:9d73d1f0f121fb96cc8badb28c22d5bff02d8582eb2e40360a81c189e1b9422a", ), "codex" => ( @@ -1360,8 +1360,8 @@ mod tests { "claude-sonnet-5", "@agentclientprotocol/claude-agent-acp", "0.70.0", - Value::Null, - Value::Null, + json!("@anthropic-ai/claude-agent-sdk"), + json!("0.3.232"), "sha256:9d73d1f0f121fb96cc8badb28c22d5bff02d8582eb2e40360a81c189e1b9422a", ) } else { diff --git a/packages/paperclip-runner/src/backends/native-backend-factory.test.ts b/packages/paperclip-runner/src/backends/native-backend-factory.test.ts index d34edb211c..f31d0c3b4c 100644 --- a/packages/paperclip-runner/src/backends/native-backend-factory.test.ts +++ b/packages/paperclip-runner/src/backends/native-backend-factory.test.ts @@ -95,9 +95,9 @@ function acpxExecution( ? "@earendil-works/pi-coding-agent" : agent === "codex" ? "@openai/codex" - : null, + : "@anthropic-ai/claude-agent-sdk", agentRuntimeVersion: - agent === "pi" ? "0.84.2" : agent === "codex" ? "0.148.0" : null, + agent === "pi" ? "0.84.2" : agent === "codex" ? "0.148.0" : "0.3.232", commandDigest: agent === "codex" ? "sha256:7a923b3829884d3cabcc9659d22cace3f86813e7bfffc90974b10140a45bc400" diff --git a/packages/paperclip-runner/src/drivers/acpx/installation-integrity.ts b/packages/paperclip-runner/src/drivers/acpx/installation-integrity.ts index a283f9d444..27b4420302 100644 --- a/packages/paperclip-runner/src/drivers/acpx/installation-integrity.ts +++ b/packages/paperclip-runner/src/drivers/acpx/installation-integrity.ts @@ -755,8 +755,9 @@ function defaultPackageJsonResolver( } // Source-mode and direct runtimes still have a stable module URL. The // descriptor-backed runner sidecar always receives the explicit root above. - return createRequire(issuerPackageJsonPath ?? import.meta.url).resolve( - `${packageName}/package.json`, + return resolvePackageJsonFromIssuer( + packageName, + issuerPackageJsonPath ?? import.meta.url, ); }