@penclipai/adapter-utils 2026.426.0 → 2026.505.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/command-managed-runtime.d.ts +8 -2
- package/dist/command-managed-runtime.d.ts.map +1 -1
- package/dist/command-managed-runtime.js +35 -8
- package/dist/command-managed-runtime.js.map +1 -1
- package/dist/command-managed-runtime.test.d.ts +2 -0
- package/dist/command-managed-runtime.test.d.ts.map +1 -0
- package/dist/command-managed-runtime.test.js +122 -0
- package/dist/command-managed-runtime.test.js.map +1 -0
- package/dist/command-redaction.d.ts +3 -0
- package/dist/command-redaction.d.ts.map +1 -0
- package/dist/command-redaction.js +17 -0
- package/dist/command-redaction.js.map +1 -0
- package/dist/execution-target-sandbox.test.js +252 -2
- package/dist/execution-target-sandbox.test.js.map +1 -1
- package/dist/execution-target.d.ts +41 -3
- package/dist/execution-target.d.ts.map +1 -1
- package/dist/execution-target.js +290 -15
- package/dist/execution-target.js.map +1 -1
- package/dist/execution-target.test.js +96 -1
- package/dist/execution-target.test.js.map +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/remote-managed-runtime.d.ts +0 -1
- package/dist/remote-managed-runtime.d.ts.map +1 -1
- package/dist/remote-managed-runtime.js +1 -3
- package/dist/remote-managed-runtime.js.map +1 -1
- package/dist/sandbox-callback-bridge.d.ts +115 -0
- package/dist/sandbox-callback-bridge.d.ts.map +1 -0
- package/dist/sandbox-callback-bridge.js +641 -0
- package/dist/sandbox-callback-bridge.js.map +1 -0
- package/dist/sandbox-callback-bridge.test.d.ts +2 -0
- package/dist/sandbox-callback-bridge.test.d.ts.map +1 -0
- package/dist/sandbox-callback-bridge.test.js +516 -0
- package/dist/sandbox-callback-bridge.test.js.map +1 -0
- package/dist/sandbox-managed-runtime.d.ts +1 -2
- package/dist/sandbox-managed-runtime.d.ts.map +1 -1
- package/dist/sandbox-managed-runtime.js +1 -4
- package/dist/sandbox-managed-runtime.js.map +1 -1
- package/dist/sandbox-managed-runtime.test.js +7 -0
- package/dist/sandbox-managed-runtime.test.js.map +1 -1
- package/dist/sandbox-shell.d.ts +2 -0
- package/dist/sandbox-shell.d.ts.map +1 -0
- package/dist/sandbox-shell.js +4 -0
- package/dist/sandbox-shell.js.map +1 -0
- package/dist/server-utils.d.ts +29 -0
- package/dist/server-utils.d.ts.map +1 -1
- package/dist/server-utils.js +326 -11
- package/dist/server-utils.js.map +1 -1
- package/dist/server-utils.test.js +213 -1
- package/dist/server-utils.test.js.map +1 -1
- package/dist/session-compaction.d.ts.map +1 -1
- package/dist/session-compaction.js +6 -0
- package/dist/session-compaction.js.map +1 -1
- package/dist/ssh.d.ts +6 -6
- package/dist/ssh.d.ts.map +1 -1
- package/dist/ssh.js +71 -36
- package/dist/ssh.js.map +1 -1
- package/dist/types.d.ts +54 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -13,17 +13,16 @@ export interface AdapterSshExecutionTarget {
|
|
|
13
13
|
environmentId?: string | null;
|
|
14
14
|
leaseId?: string | null;
|
|
15
15
|
remoteCwd: string;
|
|
16
|
-
paperclipApiUrl?: string | null;
|
|
17
16
|
spec: SshRemoteExecutionSpec;
|
|
18
17
|
}
|
|
19
18
|
export interface AdapterSandboxExecutionTarget {
|
|
20
19
|
kind: "remote";
|
|
21
20
|
transport: "sandbox";
|
|
22
21
|
providerKey?: string | null;
|
|
22
|
+
shellCommand?: "bash" | "sh" | null;
|
|
23
23
|
environmentId?: string | null;
|
|
24
24
|
leaseId?: string | null;
|
|
25
25
|
remoteCwd: string;
|
|
26
|
-
paperclipApiUrl?: string | null;
|
|
27
26
|
timeoutMs?: number | null;
|
|
28
27
|
runner?: CommandManagedRuntimeRunner;
|
|
29
28
|
}
|
|
@@ -57,18 +56,47 @@ export interface AdapterExecutionTargetShellOptions {
|
|
|
57
56
|
graceSec?: number;
|
|
58
57
|
onLog?: (stream: "stdout" | "stderr", chunk: string) => Promise<void>;
|
|
59
58
|
}
|
|
59
|
+
export interface AdapterExecutionTargetPaperclipBridgeHandle {
|
|
60
|
+
env: Record<string, string>;
|
|
61
|
+
stop(): Promise<void>;
|
|
62
|
+
}
|
|
60
63
|
export declare function adapterExecutionTargetToRemoteSpec(target: AdapterExecutionTarget | null | undefined): AdapterRemoteExecutionSpec | null;
|
|
61
64
|
export declare function adapterExecutionTargetIsRemote(target: AdapterExecutionTarget | null | undefined): boolean;
|
|
62
65
|
export declare function adapterExecutionTargetUsesManagedHome(target: AdapterExecutionTarget | null | undefined): boolean;
|
|
63
66
|
export declare function adapterExecutionTargetRemoteCwd(target: AdapterExecutionTarget | null | undefined, localCwd: string): string;
|
|
64
|
-
export declare function
|
|
67
|
+
export declare function resolveAdapterExecutionTargetCwd(target: AdapterExecutionTarget | null | undefined, configuredCwd: string | null | undefined, localFallbackCwd: string): string;
|
|
68
|
+
export declare function adapterExecutionTargetUsesPaperclipBridge(target: AdapterExecutionTarget | null | undefined): boolean;
|
|
65
69
|
export declare function describeAdapterExecutionTarget(target: AdapterExecutionTarget | null | undefined): string;
|
|
66
70
|
export declare function ensureAdapterExecutionTargetCommandResolvable(command: string, target: AdapterExecutionTarget | null | undefined, cwd: string, env: NodeJS.ProcessEnv): Promise<void>;
|
|
67
71
|
export declare function resolveAdapterExecutionTargetCommandForLogs(command: string, target: AdapterExecutionTarget | null | undefined, cwd: string, env: NodeJS.ProcessEnv): Promise<string>;
|
|
68
72
|
export declare function runAdapterExecutionTargetProcess(runId: string, target: AdapterExecutionTarget | null | undefined, command: string, args: string[], options: AdapterExecutionTargetProcessOptions): Promise<RunProcessResult>;
|
|
69
73
|
export declare function runAdapterExecutionTargetShellCommand(runId: string, target: AdapterExecutionTarget | null | undefined, command: string, options: AdapterExecutionTargetShellOptions): Promise<RunProcessResult>;
|
|
70
74
|
export declare function readAdapterExecutionTargetHomeDir(runId: string, target: AdapterExecutionTarget | null | undefined, options: AdapterExecutionTargetShellOptions): Promise<string | null>;
|
|
75
|
+
export declare function ensureAdapterExecutionTargetRuntimeCommandInstalled(input: {
|
|
76
|
+
runId: string;
|
|
77
|
+
target: AdapterExecutionTarget | null | undefined;
|
|
78
|
+
installCommand?: string | null;
|
|
79
|
+
detectCommand?: string | null;
|
|
80
|
+
cwd: string;
|
|
81
|
+
env: Record<string, string>;
|
|
82
|
+
timeoutSec?: number;
|
|
83
|
+
graceSec?: number;
|
|
84
|
+
onLog?: AdapterExecutionTargetShellOptions["onLog"];
|
|
85
|
+
}): Promise<void>;
|
|
71
86
|
export declare function ensureAdapterExecutionTargetFile(runId: string, target: AdapterExecutionTarget | null | undefined, filePath: string, options: AdapterExecutionTargetShellOptions): Promise<void>;
|
|
87
|
+
/**
|
|
88
|
+
* Ensure a working directory exists (and is a directory) on the execution target.
|
|
89
|
+
*
|
|
90
|
+
* For local targets this delegates to the local `ensureAbsoluteDirectory` helper
|
|
91
|
+
* (Node fs). For remote (SSH/sandbox) targets it shells out and runs
|
|
92
|
+
* `mkdir -p` (when allowed) followed by a `[ -d ]` check so the result reflects
|
|
93
|
+
* the directory state inside the environment, not on the Paperclip host.
|
|
94
|
+
*
|
|
95
|
+
* Throws an Error with a human-readable message on failure.
|
|
96
|
+
*/
|
|
97
|
+
export declare function ensureAdapterExecutionTargetDirectory(runId: string, target: AdapterExecutionTarget | null | undefined, cwd: string, options: AdapterExecutionTargetShellOptions & {
|
|
98
|
+
createIfMissing?: boolean;
|
|
99
|
+
}): Promise<void>;
|
|
72
100
|
export declare function adapterExecutionTargetSessionIdentity(target: AdapterExecutionTarget | null | undefined): Record<string, unknown> | null;
|
|
73
101
|
export declare function adapterExecutionTargetSessionMatches(saved: unknown, target: AdapterExecutionTarget | null | undefined): boolean;
|
|
74
102
|
export declare function parseAdapterExecutionTarget(value: unknown): AdapterExecutionTarget | null;
|
|
@@ -87,4 +115,14 @@ export declare function prepareAdapterExecutionTargetRuntime(input: {
|
|
|
87
115
|
installCommand?: string | null;
|
|
88
116
|
}): Promise<PreparedAdapterExecutionTargetRuntime>;
|
|
89
117
|
export declare function runtimeAssetDir(prepared: Pick<PreparedAdapterExecutionTargetRuntime, "assetDirs">, key: string, fallbackRemoteCwd: string): string;
|
|
118
|
+
export declare function startAdapterExecutionTargetPaperclipBridge(input: {
|
|
119
|
+
runId: string;
|
|
120
|
+
target: AdapterExecutionTarget | null | undefined;
|
|
121
|
+
runtimeRootDir: string | null | undefined;
|
|
122
|
+
adapterKey: string;
|
|
123
|
+
hostApiToken: string | null | undefined;
|
|
124
|
+
hostApiUrl?: string | null;
|
|
125
|
+
onLog?: (stream: "stdout" | "stderr", chunk: string) => Promise<void>;
|
|
126
|
+
maxBodyBytes?: number | null;
|
|
127
|
+
}): Promise<AdapterExecutionTargetPaperclipBridgeHandle | null>;
|
|
90
128
|
//# sourceMappingURL=execution-target.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execution-target.d.ts","sourceRoot":"","sources":["../src/execution-target.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AACvD,OAAO,EAEL,KAAK,2BAA2B,EACjC,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAIL,KAAK,yBAAyB,EAC/B,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"execution-target.d.ts","sourceRoot":"","sources":["../src/execution-target.ts"],"names":[],"mappings":"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"}
|
package/dist/execution-target.js
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import path from "node:path";
|
|
2
2
|
import { prepareCommandManagedRuntime, } from "./command-managed-runtime.js";
|
|
3
3
|
import { buildRemoteExecutionSessionIdentity, prepareRemoteManagedRuntime, remoteExecutionSessionMatches, } from "./remote-managed-runtime.js";
|
|
4
|
-
import {
|
|
4
|
+
import { createCommandManagedSandboxCallbackBridgeQueueClient, createSandboxCallbackBridgeAsset, createSandboxCallbackBridgeToken, DEFAULT_SANDBOX_CALLBACK_BRIDGE_MAX_BODY_BYTES, startSandboxCallbackBridgeServer, startSandboxCallbackBridgeWorker, } from "./sandbox-callback-bridge.js";
|
|
5
|
+
import { createSshCommandManagedRuntimeRunner, parseSshRemoteExecutionSpec, runSshCommand, shellQuote } from "./ssh.js";
|
|
5
6
|
import { ensureCommandResolvable, resolveCommandForLogs, runChildProcess, } from "./server-utils.js";
|
|
7
|
+
import { preferredShellForSandbox } from "./sandbox-shell.js";
|
|
6
8
|
function parseObject(value) {
|
|
7
9
|
return value && typeof value === "object" && !Array.isArray(value)
|
|
8
10
|
? value
|
|
@@ -14,6 +16,24 @@ function readString(value) {
|
|
|
14
16
|
function readStringMeta(parsed, key) {
|
|
15
17
|
return readString(parsed[key]);
|
|
16
18
|
}
|
|
19
|
+
function resolveHostForUrl(rawHost) {
|
|
20
|
+
const host = rawHost.trim();
|
|
21
|
+
if (!host || host === "0.0.0.0" || host === "::")
|
|
22
|
+
return "localhost";
|
|
23
|
+
if (host.includes(":") && !host.startsWith("[") && !host.endsWith("]"))
|
|
24
|
+
return `[${host}]`;
|
|
25
|
+
return host;
|
|
26
|
+
}
|
|
27
|
+
function resolveDefaultPaperclipApiUrl() {
|
|
28
|
+
const runtimeHost = resolveHostForUrl(process.env.PAPERCLIP_LISTEN_HOST ?? process.env.HOST ?? "localhost");
|
|
29
|
+
// 3100 matches the default Paperclip dev server port when the runtime does not provide one.
|
|
30
|
+
const runtimePort = process.env.PAPERCLIP_LISTEN_PORT ?? process.env.PORT ?? "3100";
|
|
31
|
+
return `http://${runtimeHost}:${runtimePort}`;
|
|
32
|
+
}
|
|
33
|
+
function isBridgeDebugEnabled(env) {
|
|
34
|
+
const value = env.PAPERCLIP_BRIDGE_DEBUG?.trim().toLowerCase();
|
|
35
|
+
return value === "1" || value === "true" || value === "yes";
|
|
36
|
+
}
|
|
17
37
|
function isAdapterExecutionTargetInstance(value) {
|
|
18
38
|
const parsed = parseObject(value);
|
|
19
39
|
if (parsed.kind === "local")
|
|
@@ -38,12 +58,14 @@ export function adapterExecutionTargetUsesManagedHome(target) {
|
|
|
38
58
|
export function adapterExecutionTargetRemoteCwd(target, localCwd) {
|
|
39
59
|
return target?.kind === "remote" ? target.remoteCwd : localCwd;
|
|
40
60
|
}
|
|
41
|
-
export function
|
|
42
|
-
if (
|
|
43
|
-
return
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
61
|
+
export function resolveAdapterExecutionTargetCwd(target, configuredCwd, localFallbackCwd) {
|
|
62
|
+
if (typeof configuredCwd === "string" && configuredCwd.trim().length > 0) {
|
|
63
|
+
return configuredCwd;
|
|
64
|
+
}
|
|
65
|
+
return adapterExecutionTargetRemoteCwd(target, localFallbackCwd);
|
|
66
|
+
}
|
|
67
|
+
export function adapterExecutionTargetUsesPaperclipBridge(target) {
|
|
68
|
+
return target?.kind === "remote";
|
|
47
69
|
}
|
|
48
70
|
export function describeAdapterExecutionTarget(target) {
|
|
49
71
|
if (!target || target.kind === "local")
|
|
@@ -58,6 +80,25 @@ function requireSandboxRunner(target) {
|
|
|
58
80
|
return target.runner;
|
|
59
81
|
throw new Error("Sandbox execution target is missing its provider runtime runner. Sandbox commands must execute through the environment runtime.");
|
|
60
82
|
}
|
|
83
|
+
function preferredSandboxShell(target) {
|
|
84
|
+
return preferredShellForSandbox(target.shellCommand);
|
|
85
|
+
}
|
|
86
|
+
function adapterExecutionTargetCommandRunner(target) {
|
|
87
|
+
if (target.transport === "ssh") {
|
|
88
|
+
return createSshCommandManagedRuntimeRunner({
|
|
89
|
+
spec: target.spec,
|
|
90
|
+
defaultCwd: target.remoteCwd,
|
|
91
|
+
maxBufferBytes: DEFAULT_SANDBOX_CALLBACK_BRIDGE_MAX_BODY_BYTES * 4,
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
return requireSandboxRunner(target);
|
|
95
|
+
}
|
|
96
|
+
function adapterExecutionTargetShellCommand(target) {
|
|
97
|
+
return target.transport === "ssh" ? "sh" : preferredSandboxShell(target);
|
|
98
|
+
}
|
|
99
|
+
function adapterExecutionTargetTimeoutMs(target) {
|
|
100
|
+
return target.transport === "sandbox" ? target.timeoutMs : undefined;
|
|
101
|
+
}
|
|
61
102
|
export async function ensureAdapterExecutionTargetCommandResolvable(command, target, cwd, env) {
|
|
62
103
|
if (target?.kind === "remote" && target.transport === "sandbox") {
|
|
63
104
|
return;
|
|
@@ -162,8 +203,9 @@ export async function runAdapterExecutionTargetShellCommand(runId, target, comma
|
|
|
162
203
|
};
|
|
163
204
|
}
|
|
164
205
|
}
|
|
206
|
+
const shellCommand = preferredSandboxShell(target);
|
|
165
207
|
return await requireSandboxRunner(target).execute({
|
|
166
|
-
command:
|
|
208
|
+
command: shellCommand,
|
|
167
209
|
args: ["-lc", command],
|
|
168
210
|
cwd: target.remoteCwd,
|
|
169
211
|
env: options.env,
|
|
@@ -184,9 +226,83 @@ export async function readAdapterExecutionTargetHomeDir(runId, target, options)
|
|
|
184
226
|
const homeDir = result.stdout.trim();
|
|
185
227
|
return homeDir.length > 0 ? homeDir : null;
|
|
186
228
|
}
|
|
229
|
+
export async function ensureAdapterExecutionTargetRuntimeCommandInstalled(input) {
|
|
230
|
+
const installCommand = input.installCommand?.trim();
|
|
231
|
+
if (!installCommand || input.target?.kind !== "remote" || input.target.transport !== "sandbox") {
|
|
232
|
+
return;
|
|
233
|
+
}
|
|
234
|
+
const detectCommand = input.detectCommand?.trim();
|
|
235
|
+
if (detectCommand) {
|
|
236
|
+
const probe = await runAdapterExecutionTargetShellCommand(input.runId, input.target, `command -v ${shellQuote(detectCommand)} >/dev/null 2>&1`, {
|
|
237
|
+
cwd: input.cwd,
|
|
238
|
+
env: input.env,
|
|
239
|
+
timeoutSec: input.timeoutSec,
|
|
240
|
+
graceSec: input.graceSec,
|
|
241
|
+
});
|
|
242
|
+
if (!probe.timedOut && probe.exitCode === 0) {
|
|
243
|
+
return;
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
const result = await runAdapterExecutionTargetShellCommand(input.runId, input.target, installCommand, {
|
|
247
|
+
cwd: input.cwd,
|
|
248
|
+
env: input.env,
|
|
249
|
+
timeoutSec: input.timeoutSec,
|
|
250
|
+
graceSec: input.graceSec,
|
|
251
|
+
onLog: input.onLog,
|
|
252
|
+
});
|
|
253
|
+
if (result.timedOut) {
|
|
254
|
+
throw new Error(`Timed out while installing the adapter runtime command via: ${installCommand}`);
|
|
255
|
+
}
|
|
256
|
+
if ((result.exitCode ?? 0) !== 0) {
|
|
257
|
+
throw new Error(`Failed to install the adapter runtime command via: ${installCommand}`);
|
|
258
|
+
}
|
|
259
|
+
}
|
|
187
260
|
export async function ensureAdapterExecutionTargetFile(runId, target, filePath, options) {
|
|
188
261
|
await runAdapterExecutionTargetShellCommand(runId, target, `mkdir -p ${shellQuote(path.posix.dirname(filePath))} && : > ${shellQuote(filePath)}`, options);
|
|
189
262
|
}
|
|
263
|
+
/**
|
|
264
|
+
* Ensure a working directory exists (and is a directory) on the execution target.
|
|
265
|
+
*
|
|
266
|
+
* For local targets this delegates to the local `ensureAbsoluteDirectory` helper
|
|
267
|
+
* (Node fs). For remote (SSH/sandbox) targets it shells out and runs
|
|
268
|
+
* `mkdir -p` (when allowed) followed by a `[ -d ]` check so the result reflects
|
|
269
|
+
* the directory state inside the environment, not on the Paperclip host.
|
|
270
|
+
*
|
|
271
|
+
* Throws an Error with a human-readable message on failure.
|
|
272
|
+
*/
|
|
273
|
+
export async function ensureAdapterExecutionTargetDirectory(runId, target, cwd, options) {
|
|
274
|
+
const createIfMissing = options.createIfMissing ?? false;
|
|
275
|
+
if (!target || target.kind === "local") {
|
|
276
|
+
const { ensureAbsoluteDirectory } = await import("./server-utils.js");
|
|
277
|
+
await ensureAbsoluteDirectory(cwd, { createIfMissing });
|
|
278
|
+
return;
|
|
279
|
+
}
|
|
280
|
+
// Remote (SSH or sandbox): both expect POSIX absolute paths inside the env.
|
|
281
|
+
if (!cwd.startsWith("/")) {
|
|
282
|
+
throw new Error(`Working directory must be an absolute POSIX path on the remote target: "${cwd}"`);
|
|
283
|
+
}
|
|
284
|
+
const quoted = shellQuote(cwd);
|
|
285
|
+
const script = createIfMissing
|
|
286
|
+
? `mkdir -p ${quoted} && [ -d ${quoted} ]`
|
|
287
|
+
: `[ -d ${quoted} ]`;
|
|
288
|
+
const result = await runAdapterExecutionTargetShellCommand(runId, target, script, {
|
|
289
|
+
cwd: target.kind === "remote" ? target.remoteCwd : cwd,
|
|
290
|
+
env: options.env,
|
|
291
|
+
timeoutSec: options.timeoutSec ?? 15,
|
|
292
|
+
graceSec: options.graceSec ?? 5,
|
|
293
|
+
onLog: options.onLog,
|
|
294
|
+
});
|
|
295
|
+
if (result.timedOut) {
|
|
296
|
+
throw new Error(`Timed out checking working directory on remote target: "${cwd}"`);
|
|
297
|
+
}
|
|
298
|
+
if ((result.exitCode ?? 1) !== 0) {
|
|
299
|
+
const detail = (result.stderr || result.stdout || "").trim();
|
|
300
|
+
if (createIfMissing) {
|
|
301
|
+
throw new Error(`Could not create working directory "${cwd}" on remote target${detail ? `: ${detail}` : "."}`);
|
|
302
|
+
}
|
|
303
|
+
throw new Error(`Working directory does not exist on remote target: "${cwd}"${detail ? ` (${detail})` : ""}`);
|
|
304
|
+
}
|
|
305
|
+
}
|
|
190
306
|
export function adapterExecutionTargetSessionIdentity(target) {
|
|
191
307
|
if (!target || target.kind === "local")
|
|
192
308
|
return null;
|
|
@@ -198,7 +314,6 @@ export function adapterExecutionTargetSessionIdentity(target) {
|
|
|
198
314
|
environmentId: target.environmentId ?? null,
|
|
199
315
|
leaseId: target.leaseId ?? null,
|
|
200
316
|
remoteCwd: target.remoteCwd,
|
|
201
|
-
...(target.paperclipApiUrl ? { paperclipApiUrl: target.paperclipApiUrl } : {}),
|
|
202
317
|
};
|
|
203
318
|
}
|
|
204
319
|
export function adapterExecutionTargetSessionMatches(saved, target) {
|
|
@@ -213,8 +328,7 @@ export function adapterExecutionTargetSessionMatches(saved, target) {
|
|
|
213
328
|
readStringMeta(parsedSaved, "providerKey") === current?.providerKey &&
|
|
214
329
|
readStringMeta(parsedSaved, "environmentId") === current?.environmentId &&
|
|
215
330
|
readStringMeta(parsedSaved, "leaseId") === current?.leaseId &&
|
|
216
|
-
readStringMeta(parsedSaved, "remoteCwd") === current?.remoteCwd
|
|
217
|
-
readStringMeta(parsedSaved, "paperclipApiUrl") === (current?.paperclipApiUrl ?? null));
|
|
331
|
+
readStringMeta(parsedSaved, "remoteCwd") === current?.remoteCwd);
|
|
218
332
|
}
|
|
219
333
|
export function parseAdapterExecutionTarget(value) {
|
|
220
334
|
const parsed = parseObject(value);
|
|
@@ -236,7 +350,6 @@ export function parseAdapterExecutionTarget(value) {
|
|
|
236
350
|
environmentId: readStringMeta(parsed, "environmentId"),
|
|
237
351
|
leaseId: readStringMeta(parsed, "leaseId"),
|
|
238
352
|
remoteCwd: spec.remoteCwd,
|
|
239
|
-
paperclipApiUrl: readStringMeta(parsed, "paperclipApiUrl") ?? spec.paperclipApiUrl ?? null,
|
|
240
353
|
spec,
|
|
241
354
|
};
|
|
242
355
|
}
|
|
@@ -251,7 +364,6 @@ export function parseAdapterExecutionTarget(value) {
|
|
|
251
364
|
environmentId: readStringMeta(parsed, "environmentId"),
|
|
252
365
|
leaseId: readStringMeta(parsed, "leaseId"),
|
|
253
366
|
remoteCwd,
|
|
254
|
-
paperclipApiUrl: readStringMeta(parsed, "paperclipApiUrl"),
|
|
255
367
|
timeoutMs: typeof parsed.timeoutMs === "number" ? parsed.timeoutMs : null,
|
|
256
368
|
};
|
|
257
369
|
}
|
|
@@ -267,7 +379,6 @@ export function adapterExecutionTargetFromRemoteExecution(remoteExecution, metad
|
|
|
267
379
|
environmentId: metadata.environmentId ?? null,
|
|
268
380
|
leaseId: metadata.leaseId ?? null,
|
|
269
381
|
remoteCwd: ssh.remoteCwd,
|
|
270
|
-
paperclipApiUrl: ssh.paperclipApiUrl ?? null,
|
|
271
382
|
spec: ssh,
|
|
272
383
|
};
|
|
273
384
|
}
|
|
@@ -308,10 +419,10 @@ export async function prepareAdapterExecutionTargetRuntime(input) {
|
|
|
308
419
|
runner: requireSandboxRunner(target),
|
|
309
420
|
spec: {
|
|
310
421
|
providerKey: target.providerKey,
|
|
422
|
+
shellCommand: target.shellCommand,
|
|
311
423
|
leaseId: target.leaseId,
|
|
312
424
|
remoteCwd: target.remoteCwd,
|
|
313
425
|
timeoutMs: target.timeoutMs,
|
|
314
|
-
paperclipApiUrl: target.paperclipApiUrl,
|
|
315
426
|
},
|
|
316
427
|
adapterKey: input.adapterKey,
|
|
317
428
|
workspaceLocalDir: input.workspaceLocalDir,
|
|
@@ -330,4 +441,168 @@ export async function prepareAdapterExecutionTargetRuntime(input) {
|
|
|
330
441
|
export function runtimeAssetDir(prepared, key, fallbackRemoteCwd) {
|
|
331
442
|
return prepared.assetDirs[key] ?? path.posix.join(fallbackRemoteCwd, ".paperclip-runtime", key);
|
|
332
443
|
}
|
|
444
|
+
function buildBridgeResponseHeaders(response) {
|
|
445
|
+
const out = {};
|
|
446
|
+
for (const key of ["content-type", "etag", "last-modified"]) {
|
|
447
|
+
const value = response.headers.get(key);
|
|
448
|
+
if (value && value.trim().length > 0)
|
|
449
|
+
out[key] = value.trim();
|
|
450
|
+
}
|
|
451
|
+
return out;
|
|
452
|
+
}
|
|
453
|
+
function buildBridgeForwardUrl(baseUrl, request) {
|
|
454
|
+
const url = new URL(request.path, baseUrl);
|
|
455
|
+
const query = request.query.trim();
|
|
456
|
+
url.search = query.startsWith("?") ? query.slice(1) : query;
|
|
457
|
+
return url;
|
|
458
|
+
}
|
|
459
|
+
function bridgeResponseBodyLimitError(maxBodyBytes) {
|
|
460
|
+
return new Error(`Bridge response body exceeded the configured size limit of ${maxBodyBytes} bytes.`);
|
|
461
|
+
}
|
|
462
|
+
async function readBridgeForwardResponseBody(response, maxBodyBytes) {
|
|
463
|
+
const rawContentLength = response.headers.get("content-length");
|
|
464
|
+
if (rawContentLength) {
|
|
465
|
+
const contentLength = Number.parseInt(rawContentLength, 10);
|
|
466
|
+
if (Number.isFinite(contentLength) && contentLength > maxBodyBytes) {
|
|
467
|
+
throw bridgeResponseBodyLimitError(maxBodyBytes);
|
|
468
|
+
}
|
|
469
|
+
}
|
|
470
|
+
if (!response.body) {
|
|
471
|
+
return "";
|
|
472
|
+
}
|
|
473
|
+
const reader = response.body.getReader();
|
|
474
|
+
const chunks = [];
|
|
475
|
+
let totalBytes = 0;
|
|
476
|
+
while (true) {
|
|
477
|
+
const { done, value } = await reader.read();
|
|
478
|
+
if (done)
|
|
479
|
+
break;
|
|
480
|
+
if (!value)
|
|
481
|
+
continue;
|
|
482
|
+
totalBytes += value.byteLength;
|
|
483
|
+
if (totalBytes > maxBodyBytes) {
|
|
484
|
+
await reader.cancel().catch(() => undefined);
|
|
485
|
+
throw bridgeResponseBodyLimitError(maxBodyBytes);
|
|
486
|
+
}
|
|
487
|
+
chunks.push(Buffer.from(value));
|
|
488
|
+
}
|
|
489
|
+
return Buffer.concat(chunks, totalBytes).toString("utf8");
|
|
490
|
+
}
|
|
491
|
+
export async function startAdapterExecutionTargetPaperclipBridge(input) {
|
|
492
|
+
if (!adapterExecutionTargetUsesPaperclipBridge(input.target)) {
|
|
493
|
+
return null;
|
|
494
|
+
}
|
|
495
|
+
if (!input.target || input.target.kind !== "remote") {
|
|
496
|
+
return null;
|
|
497
|
+
}
|
|
498
|
+
const target = input.target;
|
|
499
|
+
const onLog = input.onLog ?? (async () => { });
|
|
500
|
+
const hostApiToken = input.hostApiToken?.trim() ?? "";
|
|
501
|
+
if (hostApiToken.length === 0) {
|
|
502
|
+
throw new Error("Sandbox bridge mode requires a host-side Paperclip API token.");
|
|
503
|
+
}
|
|
504
|
+
const runtimeRootDir = input.runtimeRootDir?.trim().length
|
|
505
|
+
? input.runtimeRootDir.trim()
|
|
506
|
+
: path.posix.join(target.remoteCwd, ".paperclip-runtime", input.adapterKey);
|
|
507
|
+
const bridgeRuntimeDir = path.posix.join(runtimeRootDir, "paperclip-bridge");
|
|
508
|
+
const queueDir = path.posix.join(bridgeRuntimeDir, "queue");
|
|
509
|
+
const assetRemoteDir = path.posix.join(bridgeRuntimeDir, "server");
|
|
510
|
+
const bridgeToken = createSandboxCallbackBridgeToken();
|
|
511
|
+
const maxBodyBytes = typeof input.maxBodyBytes === "number" && Number.isFinite(input.maxBodyBytes) && input.maxBodyBytes > 0
|
|
512
|
+
? Math.trunc(input.maxBodyBytes)
|
|
513
|
+
: DEFAULT_SANDBOX_CALLBACK_BRIDGE_MAX_BODY_BYTES;
|
|
514
|
+
const hostApiUrl = input.hostApiUrl?.trim() ||
|
|
515
|
+
process.env.PAPERCLIP_RUNTIME_API_URL?.trim() ||
|
|
516
|
+
process.env.PAPERCLIP_API_URL?.trim() ||
|
|
517
|
+
resolveDefaultPaperclipApiUrl();
|
|
518
|
+
const shellCommand = adapterExecutionTargetShellCommand(target);
|
|
519
|
+
const runner = adapterExecutionTargetCommandRunner(target);
|
|
520
|
+
await onLog("stdout", `[paperclip] Starting sandbox callback bridge for ${input.adapterKey} in ${bridgeRuntimeDir}.\n`);
|
|
521
|
+
const bridgeAsset = await createSandboxCallbackBridgeAsset();
|
|
522
|
+
let server = null;
|
|
523
|
+
let worker = null;
|
|
524
|
+
try {
|
|
525
|
+
const client = createCommandManagedSandboxCallbackBridgeQueueClient({
|
|
526
|
+
runner,
|
|
527
|
+
remoteCwd: target.remoteCwd,
|
|
528
|
+
timeoutMs: adapterExecutionTargetTimeoutMs(target),
|
|
529
|
+
shellCommand,
|
|
530
|
+
});
|
|
531
|
+
// PAPERCLIP_BRIDGE_DEBUG opts into verbose stdout logs of every bridge
|
|
532
|
+
// proxy request/response. The query string is logged verbatim, so callers
|
|
533
|
+
// who pass auth tokens or other sensitive values as query parameters
|
|
534
|
+
// should be aware those values appear in the host process's stdout when
|
|
535
|
+
// this flag is enabled. Only intended for active debugging in trusted
|
|
536
|
+
// environments.
|
|
537
|
+
const bridgeDebugEnabled = isBridgeDebugEnabled(process.env);
|
|
538
|
+
worker = await startSandboxCallbackBridgeWorker({
|
|
539
|
+
client,
|
|
540
|
+
queueDir,
|
|
541
|
+
maxBodyBytes,
|
|
542
|
+
handleRequest: async (request) => {
|
|
543
|
+
const method = request.method.trim().toUpperCase() || "GET";
|
|
544
|
+
if (bridgeDebugEnabled) {
|
|
545
|
+
await onLog("stdout", `[paperclip] Bridge proxy ${method} ${request.path}${request.query ? `?${request.query}` : ""}\n`);
|
|
546
|
+
}
|
|
547
|
+
const headers = new Headers();
|
|
548
|
+
for (const [key, value] of Object.entries(request.headers)) {
|
|
549
|
+
if (value.trim().length === 0)
|
|
550
|
+
continue;
|
|
551
|
+
headers.set(key, value);
|
|
552
|
+
}
|
|
553
|
+
headers.set("authorization", `Bearer ${hostApiToken}`);
|
|
554
|
+
headers.set("x-paperclip-run-id", input.runId);
|
|
555
|
+
const response = await fetch(buildBridgeForwardUrl(hostApiUrl, request), {
|
|
556
|
+
method,
|
|
557
|
+
headers,
|
|
558
|
+
...(method === "GET" || method === "HEAD" ? {} : { body: request.body }),
|
|
559
|
+
signal: AbortSignal.timeout(30_000),
|
|
560
|
+
});
|
|
561
|
+
if (bridgeDebugEnabled) {
|
|
562
|
+
await onLog("stdout", `[paperclip] Bridge proxy response ${response.status} for ${method} ${request.path}${request.query ? `?${request.query}` : ""}\n`);
|
|
563
|
+
}
|
|
564
|
+
return {
|
|
565
|
+
status: response.status,
|
|
566
|
+
headers: buildBridgeResponseHeaders(response),
|
|
567
|
+
body: await readBridgeForwardResponseBody(response, maxBodyBytes),
|
|
568
|
+
};
|
|
569
|
+
},
|
|
570
|
+
});
|
|
571
|
+
server = await startSandboxCallbackBridgeServer({
|
|
572
|
+
runner,
|
|
573
|
+
remoteCwd: target.remoteCwd,
|
|
574
|
+
assetRemoteDir,
|
|
575
|
+
queueDir,
|
|
576
|
+
bridgeToken,
|
|
577
|
+
bridgeAsset,
|
|
578
|
+
timeoutMs: adapterExecutionTargetTimeoutMs(target),
|
|
579
|
+
maxBodyBytes,
|
|
580
|
+
shellCommand,
|
|
581
|
+
});
|
|
582
|
+
}
|
|
583
|
+
catch (error) {
|
|
584
|
+
await Promise.allSettled([
|
|
585
|
+
server?.stop(),
|
|
586
|
+
worker?.stop(),
|
|
587
|
+
bridgeAsset.cleanup(),
|
|
588
|
+
]);
|
|
589
|
+
throw error;
|
|
590
|
+
}
|
|
591
|
+
return {
|
|
592
|
+
env: {
|
|
593
|
+
PAPERCLIP_API_URL: server.baseUrl,
|
|
594
|
+
PAPERCLIP_API_KEY: bridgeToken,
|
|
595
|
+
PAPERCLIP_API_BRIDGE_MODE: "queue_v1",
|
|
596
|
+
},
|
|
597
|
+
stop: async () => {
|
|
598
|
+
await Promise.allSettled([
|
|
599
|
+
server?.stop(),
|
|
600
|
+
]);
|
|
601
|
+
await Promise.allSettled([
|
|
602
|
+
worker?.stop(),
|
|
603
|
+
bridgeAsset.cleanup(),
|
|
604
|
+
]);
|
|
605
|
+
},
|
|
606
|
+
};
|
|
607
|
+
}
|
|
333
608
|
//# sourceMappingURL=execution-target.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execution-target.js","sourceRoot":"","sources":["../src/execution-target.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"execution-target.js","sourceRoot":"","sources":["../src/execution-target.ts"],"names":[],"mappings":"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"}
|