@ai-hero/sandcastle 0.4.7 → 0.5.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/README.md +258 -69
- package/dist/AgentProvider.d.ts +9 -0
- package/dist/AgentProvider.d.ts.map +1 -1
- package/dist/AgentProvider.js +14 -2
- package/dist/AgentProvider.js.map +1 -1
- package/dist/CopyToWorktree.d.ts +9 -0
- package/dist/CopyToWorktree.d.ts.map +1 -0
- package/dist/{CopyToWorkspace.js → CopyToWorktree.js} +9 -3
- package/dist/CopyToWorktree.js.map +1 -0
- package/dist/DockerLifecycle.d.ts +2 -0
- package/dist/DockerLifecycle.d.ts.map +1 -1
- package/dist/DockerLifecycle.js +7 -0
- package/dist/DockerLifecycle.js.map +1 -1
- package/dist/ErrorHandler.d.ts.map +1 -1
- package/dist/ErrorHandler.js +22 -2
- package/dist/ErrorHandler.js.map +1 -1
- package/dist/InitService.d.ts +6 -1
- package/dist/InitService.d.ts.map +1 -1
- package/dist/InitService.js +90 -56
- package/dist/InitService.js.map +1 -1
- package/dist/MountConfig.d.ts +13 -2
- package/dist/MountConfig.d.ts.map +1 -1
- package/dist/Orchestrator.d.ts +14 -2
- package/dist/Orchestrator.d.ts.map +1 -1
- package/dist/Orchestrator.js +56 -12
- package/dist/Orchestrator.js.map +1 -1
- package/dist/PodmanLifecycle.d.ts +10 -0
- package/dist/PodmanLifecycle.d.ts.map +1 -1
- package/dist/PodmanLifecycle.js +22 -0
- package/dist/PodmanLifecycle.js.map +1 -1
- package/dist/PromptPreprocessor.d.ts +2 -2
- package/dist/PromptPreprocessor.d.ts.map +1 -1
- package/dist/PromptPreprocessor.js +7 -2
- package/dist/PromptPreprocessor.js.map +1 -1
- package/dist/SandboxFactory.d.ts +13 -11
- package/dist/SandboxFactory.d.ts.map +1 -1
- package/dist/SandboxFactory.js +59 -41
- package/dist/SandboxFactory.js.map +1 -1
- package/dist/SandboxLifecycle.d.ts +23 -5
- package/dist/SandboxLifecycle.d.ts.map +1 -1
- package/dist/SandboxLifecycle.js +88 -18
- package/dist/SandboxLifecycle.js.map +1 -1
- package/dist/SandboxProvider.d.ts +11 -7
- package/dist/SandboxProvider.d.ts.map +1 -1
- package/dist/SandboxProvider.js.map +1 -1
- package/dist/SessionStore.d.ts +50 -0
- package/dist/SessionStore.d.ts.map +1 -0
- package/dist/SessionStore.js +120 -0
- package/dist/SessionStore.js.map +1 -0
- package/dist/WorktreeManager.d.ts +3 -3
- package/dist/WorktreeManager.d.ts.map +1 -1
- package/dist/WorktreeManager.js +14 -3
- package/dist/WorktreeManager.js.map +1 -1
- package/dist/createSandbox.d.ts +25 -10
- package/dist/createSandbox.d.ts.map +1 -1
- package/dist/createSandbox.js +253 -133
- package/dist/createSandbox.js.map +1 -1
- package/dist/createWorktree.d.ts +121 -0
- package/dist/createWorktree.d.ts.map +1 -0
- package/dist/createWorktree.js +318 -0
- package/dist/createWorktree.js.map +1 -0
- package/dist/errors.d.ts +110 -6
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +41 -3
- package/dist/errors.js.map +1 -1
- package/dist/index.d.ts +6 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/interactive.d.ts +1 -1
- package/dist/interactive.d.ts.map +1 -1
- package/dist/interactive.js +63 -46
- package/dist/interactive.js.map +1 -1
- package/dist/run.d.ts +10 -10
- package/dist/run.d.ts.map +1 -1
- package/dist/run.js +23 -6
- package/dist/run.js.map +1 -1
- package/dist/sandboxes/daytona.js +4 -4
- package/dist/sandboxes/daytona.js.map +1 -1
- package/dist/sandboxes/docker.d.ts +9 -0
- package/dist/sandboxes/docker.d.ts.map +1 -1
- package/dist/sandboxes/docker.js +35 -5
- package/dist/sandboxes/docker.js.map +1 -1
- package/dist/sandboxes/no-sandbox.js +4 -4
- package/dist/sandboxes/no-sandbox.js.map +1 -1
- package/dist/sandboxes/podman.d.ts +9 -0
- package/dist/sandboxes/podman.d.ts.map +1 -1
- package/dist/sandboxes/podman.js +47 -5
- package/dist/sandboxes/podman.js.map +1 -1
- package/dist/sandboxes/test-bind-mount.d.ts +17 -0
- package/dist/sandboxes/test-bind-mount.d.ts.map +1 -0
- package/dist/sandboxes/test-bind-mount.js +91 -0
- package/dist/sandboxes/test-bind-mount.js.map +1 -0
- package/dist/sandboxes/test-isolated.js +5 -5
- package/dist/sandboxes/test-isolated.js.map +1 -1
- package/dist/sandboxes/vercel.js +7 -7
- package/dist/sandboxes/vercel.js.map +1 -1
- package/dist/startSandbox.d.ts +7 -6
- package/dist/startSandbox.d.ts.map +1 -1
- package/dist/startSandbox.js +38 -19
- package/dist/startSandbox.js.map +1 -1
- package/dist/syncIn.js +7 -7
- package/dist/syncIn.js.map +1 -1
- package/dist/syncOut.js +6 -6
- package/dist/syncOut.js.map +1 -1
- package/dist/templates/parallel-planner/implement-prompt.md +2 -2
- package/dist/templates/parallel-planner/main.mts +3 -7
- package/dist/templates/parallel-planner/merge-prompt.md +5 -1
- package/dist/templates/parallel-planner-with-review/implement-prompt.md +2 -2
- package/dist/templates/parallel-planner-with-review/main.mts +29 -63
- package/dist/templates/parallel-planner-with-review/merge-prompt.md +5 -1
- package/dist/templates/sequential-reviewer/main.mts +4 -4
- package/dist/templates/simple-loop/main.mts +9 -7
- package/package.json +1 -1
- package/dist/CopyToWorkspace.d.ts +0 -8
- package/dist/CopyToWorkspace.d.ts.map +0 -1
- package/dist/CopyToWorkspace.js.map +0 -1
- package/dist/templates/blank/.env.example +0 -5
- package/dist/templates/parallel-planner/.env.example +0 -5
- package/dist/templates/parallel-planner-with-review/.env.example +0 -5
- package/dist/templates/sequential-reviewer/.env.example +0 -5
- package/dist/templates/simple-loop/.env.example +0 -5
package/dist/SandboxFactory.js
CHANGED
|
@@ -1,18 +1,39 @@
|
|
|
1
1
|
import { Context, Effect, Exit, Layer } from "effect";
|
|
2
2
|
import { FileSystem } from "@effect/platform";
|
|
3
3
|
import { join, resolve } from "node:path";
|
|
4
|
-
import { AgentError, CopyError, ExecError,
|
|
4
|
+
import { AgentError, AgentIdleTimeoutError, CopyError, ExecError, WorktreeError, } from "./errors.js";
|
|
5
5
|
import * as WorktreeManager from "./WorktreeManager.js";
|
|
6
|
-
import {
|
|
6
|
+
import { copyToWorktree } from "./CopyToWorktree.js";
|
|
7
7
|
import { Display } from "./Display.js";
|
|
8
|
+
import { runHostHooks } from "./SandboxLifecycle.js";
|
|
8
9
|
import { startSandbox } from "./startSandbox.js";
|
|
9
10
|
import { syncOut } from "./syncOut.js";
|
|
10
11
|
export class Sandbox extends Context.Tag("Sandbox")() {
|
|
11
12
|
}
|
|
13
|
+
const getCopyIn = (handle) => {
|
|
14
|
+
if ("copyIn" in handle) {
|
|
15
|
+
return (hostPath, sandboxPath) => Effect.tryPromise({
|
|
16
|
+
try: () => handle.copyIn(hostPath, sandboxPath),
|
|
17
|
+
catch: (e) => new CopyError({
|
|
18
|
+
message: `copyIn failed: ${e instanceof Error ? e.message : String(e)}`,
|
|
19
|
+
}),
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
if ("copyFileIn" in handle) {
|
|
23
|
+
return (hostPath, sandboxPath) => Effect.tryPromise({
|
|
24
|
+
try: () => handle.copyFileIn(hostPath, sandboxPath),
|
|
25
|
+
catch: (e) => new CopyError({
|
|
26
|
+
message: `copyFileIn failed: ${e instanceof Error ? e.message : String(e)}`,
|
|
27
|
+
}),
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
return () => Effect.fail(new CopyError({
|
|
31
|
+
message: "copyIn is not supported for this sandbox provider",
|
|
32
|
+
}));
|
|
33
|
+
};
|
|
12
34
|
/**
|
|
13
35
|
* Wrap a Promise-based sandbox handle into an Effect-based SandboxService layer.
|
|
14
|
-
*
|
|
15
|
-
* isolated handles (copyIn/copyFileOut delegated to the handle).
|
|
36
|
+
* Delegates copyIn/copyFileOut to the handle when available.
|
|
16
37
|
*/
|
|
17
38
|
export const makeSandboxLayerFromHandle = (handle) => Layer.succeed(Sandbox, {
|
|
18
39
|
exec: (command, options) => Effect.tryPromise({
|
|
@@ -22,16 +43,7 @@ export const makeSandboxLayerFromHandle = (handle) => Layer.succeed(Sandbox, {
|
|
|
22
43
|
message: `exec failed: ${e instanceof Error ? e.message : String(e)}`,
|
|
23
44
|
}),
|
|
24
45
|
}),
|
|
25
|
-
copyIn:
|
|
26
|
-
? (hostPath, sandboxPath) => Effect.tryPromise({
|
|
27
|
-
try: () => handle.copyIn(hostPath, sandboxPath),
|
|
28
|
-
catch: (e) => new CopyError({
|
|
29
|
-
message: `copyIn failed: ${e instanceof Error ? e.message : String(e)}`,
|
|
30
|
-
}),
|
|
31
|
-
})
|
|
32
|
-
: () => Effect.fail(new CopyError({
|
|
33
|
-
message: "copyIn is not supported for bind-mount sandbox providers",
|
|
34
|
-
})),
|
|
46
|
+
copyIn: getCopyIn(handle),
|
|
35
47
|
copyFileOut: "copyFileOut" in handle
|
|
36
48
|
? (sandboxPath, hostPath) => Effect.tryPromise({
|
|
37
49
|
try: () => handle.copyFileOut(sandboxPath, hostPath),
|
|
@@ -40,17 +52,15 @@ export const makeSandboxLayerFromHandle = (handle) => Layer.succeed(Sandbox, {
|
|
|
40
52
|
}),
|
|
41
53
|
})
|
|
42
54
|
: () => Effect.fail(new CopyError({
|
|
43
|
-
message: "copyFileOut is not supported for
|
|
55
|
+
message: "copyFileOut is not supported for this sandbox provider",
|
|
44
56
|
})),
|
|
45
57
|
});
|
|
46
58
|
/** The mount point inside the sandbox where the project worktree is bound. */
|
|
47
|
-
export const
|
|
59
|
+
export const SANDBOX_REPO_DIR = "/home/agent/workspace";
|
|
48
60
|
export class SandboxFactory extends Context.Tag("SandboxFactory")() {
|
|
49
61
|
}
|
|
50
62
|
export class SandboxConfig extends Context.Tag("SandboxConfig")() {
|
|
51
63
|
}
|
|
52
|
-
/** @deprecated Use SandboxConfig instead. */
|
|
53
|
-
export const WorktreeSandboxConfig = SandboxConfig;
|
|
54
64
|
/**
|
|
55
65
|
* Print a message to stderr about a preserved worktree, with review and cleanup instructions.
|
|
56
66
|
*/
|
|
@@ -76,15 +86,15 @@ const cleanupWorktree = (worktreePath, exit) => WorktreeManager.hasUncommittedCh
|
|
|
76
86
|
return WorktreeManager.remove(worktreePath).pipe(Effect.map(() => undefined));
|
|
77
87
|
}));
|
|
78
88
|
/**
|
|
79
|
-
* Attach the preserved worktree path to
|
|
89
|
+
* Attach the preserved worktree path to AgentIdleTimeoutError and AgentError so
|
|
80
90
|
* programmatic callers can build on top of the preserved worktree.
|
|
81
91
|
*/
|
|
82
92
|
const attachPreservedPath = (path, e) => {
|
|
83
93
|
if (path !== undefined) {
|
|
84
|
-
if (e instanceof
|
|
85
|
-
return new
|
|
94
|
+
if (e instanceof AgentIdleTimeoutError) {
|
|
95
|
+
return new AgentIdleTimeoutError({
|
|
86
96
|
message: e.message,
|
|
87
|
-
|
|
97
|
+
timeoutMs: e.timeoutMs,
|
|
88
98
|
preservedWorktreePath: path,
|
|
89
99
|
});
|
|
90
100
|
}
|
|
@@ -126,7 +136,7 @@ export const resolveGitMounts = (gitPath) => Effect.gen(function* () {
|
|
|
126
136
|
});
|
|
127
137
|
export const WorktreeDockerSandboxFactory = {
|
|
128
138
|
layer: Layer.effect(SandboxFactory, Effect.gen(function* () {
|
|
129
|
-
const { env, hostRepoDir,
|
|
139
|
+
const { env, hostRepoDir, copyToWorktree: copyPaths, name, sandboxProvider, branchStrategy, throwOnDuplicateWorktree, hooks, } = yield* SandboxConfig;
|
|
130
140
|
const isHeadMode = branchStrategy.type === "head";
|
|
131
141
|
const branch = branchStrategy.type === "branch" ? branchStrategy.branch : undefined;
|
|
132
142
|
const fileSystem = yield* FileSystem.FileSystem;
|
|
@@ -146,22 +156,24 @@ export const WorktreeDockerSandboxFactory = {
|
|
|
146
156
|
if (sandboxProvider.tag === "isolated") {
|
|
147
157
|
let preservedPath;
|
|
148
158
|
return Effect.acquireUseRelease(
|
|
149
|
-
// Acquire: prune stale worktrees, create worktree, then start sandbox
|
|
150
|
-
pruneAndCreate().pipe(Effect.
|
|
159
|
+
// Acquire: prune stale worktrees, create worktree, run host hooks, then start sandbox
|
|
160
|
+
pruneAndCreate().pipe(Effect.tap((worktreeInfo) => hooks?.host?.onWorktreeReady?.length
|
|
161
|
+
? runHostHooks(hooks.host.onWorktreeReady, worktreeInfo.path)
|
|
162
|
+
: Effect.void), Effect.flatMap((worktreeInfo) => startSandbox({
|
|
151
163
|
provider: sandboxProvider,
|
|
152
164
|
hostRepoDir: worktreeInfo.path,
|
|
153
165
|
env,
|
|
154
166
|
copyPaths,
|
|
155
|
-
}).pipe(Effect.map(({ handle, sandboxLayer,
|
|
167
|
+
}).pipe(Effect.map(({ handle, sandboxLayer, worktreePath }) => ({
|
|
156
168
|
worktreeInfo,
|
|
157
169
|
handle,
|
|
158
170
|
sandboxLayer,
|
|
159
|
-
|
|
171
|
+
worktreePath,
|
|
160
172
|
}))))),
|
|
161
173
|
// Use
|
|
162
|
-
({ worktreeInfo, sandboxLayer,
|
|
174
|
+
({ worktreeInfo, sandboxLayer, worktreePath, handle }) => makeEffect({
|
|
163
175
|
hostWorktreePath: worktreeInfo.path,
|
|
164
|
-
|
|
176
|
+
sandboxRepoPath: worktreePath,
|
|
165
177
|
applyToHost: () => syncOut(worktreeInfo.path, handle),
|
|
166
178
|
}).pipe(Effect.provide(sandboxLayer)),
|
|
167
179
|
// Release: close handle, then cleanup worktree
|
|
@@ -178,7 +190,9 @@ export const WorktreeDockerSandboxFactory = {
|
|
|
178
190
|
if (isHeadMode) {
|
|
179
191
|
// Head mode: bind-mount host directory directly, no worktree
|
|
180
192
|
const gitPath = join(hostRepoDir, ".git");
|
|
181
|
-
return
|
|
193
|
+
return (hooks?.host?.onWorktreeReady?.length
|
|
194
|
+
? runHostHooks(hooks.host.onWorktreeReady, hostRepoDir)
|
|
195
|
+
: Effect.void).pipe(Effect.andThen(resolveGitMounts(gitPath)), Effect.provideService(FileSystem.FileSystem, fileSystem), Effect.mapError((e) => new WorktreeError({
|
|
182
196
|
message: `Failed to resolve git mounts: ${e}`,
|
|
183
197
|
})), Effect.flatMap((gitMounts) => Effect.acquireUseRelease(startSandbox({
|
|
184
198
|
provider: sandboxProvider,
|
|
@@ -186,13 +200,14 @@ export const WorktreeDockerSandboxFactory = {
|
|
|
186
200
|
env,
|
|
187
201
|
worktreeOrRepoPath: hostRepoDir,
|
|
188
202
|
gitMounts,
|
|
189
|
-
|
|
203
|
+
repoDir: SANDBOX_REPO_DIR,
|
|
190
204
|
}),
|
|
191
205
|
// Use
|
|
192
|
-
({ sandboxLayer,
|
|
206
|
+
({ sandboxLayer, worktreePath, handle }) => makeEffect({
|
|
193
207
|
hostWorktreePath: hostRepoDir,
|
|
194
|
-
|
|
208
|
+
sandboxRepoPath: worktreePath,
|
|
195
209
|
applyToHost: () => Effect.void,
|
|
210
|
+
bindMountHandle: handle,
|
|
196
211
|
}).pipe(Effect.provide(sandboxLayer)),
|
|
197
212
|
// Release
|
|
198
213
|
({ handle }) => Effect.tryPromise({
|
|
@@ -208,10 +223,12 @@ export const WorktreeDockerSandboxFactory = {
|
|
|
208
223
|
// so we can attach the path to recognized error types before they propagate.
|
|
209
224
|
let preservedWorktreePath;
|
|
210
225
|
return Effect.acquireUseRelease(
|
|
211
|
-
// Acquire: prune stale worktrees (best-effort), create worktree, then start sandbox
|
|
226
|
+
// Acquire: prune stale worktrees (best-effort), create worktree, run host hooks, then start sandbox
|
|
212
227
|
pruneAndCreate().pipe(Effect.flatMap((worktreeInfo) => (copyPaths && copyPaths.length > 0
|
|
213
|
-
? display.spinner("Copying to
|
|
214
|
-
: Effect.succeed(undefined)).pipe(Effect.map(() => worktreeInfo))), Effect.
|
|
228
|
+
? display.spinner("Copying to worktree", copyToWorktree(copyPaths, hostRepoDir, worktreeInfo.path))
|
|
229
|
+
: Effect.succeed(undefined)).pipe(Effect.map(() => worktreeInfo))), Effect.tap((worktreeInfo) => hooks?.host?.onWorktreeReady?.length
|
|
230
|
+
? runHostHooks(hooks.host.onWorktreeReady, worktreeInfo.path)
|
|
231
|
+
: Effect.void), Effect.flatMap((worktreeInfo) => {
|
|
215
232
|
const gitPath = join(hostRepoDir, ".git");
|
|
216
233
|
return resolveGitMounts(gitPath).pipe(Effect.provideService(FileSystem.FileSystem, fileSystem), Effect.mapError((e) => new WorktreeError({
|
|
217
234
|
message: `Failed to resolve git mounts: ${e}`,
|
|
@@ -224,19 +241,20 @@ export const WorktreeDockerSandboxFactory = {
|
|
|
224
241
|
env,
|
|
225
242
|
worktreeOrRepoPath: worktreeInfo.path,
|
|
226
243
|
gitMounts,
|
|
227
|
-
|
|
228
|
-
}).pipe(Effect.map(({ handle, sandboxLayer,
|
|
244
|
+
repoDir: SANDBOX_REPO_DIR,
|
|
245
|
+
}).pipe(Effect.map(({ handle, sandboxLayer, worktreePath }) => ({
|
|
229
246
|
worktreeInfo,
|
|
230
247
|
handle,
|
|
231
248
|
sandboxLayer,
|
|
232
|
-
|
|
249
|
+
worktreePath,
|
|
233
250
|
})))));
|
|
234
251
|
})),
|
|
235
252
|
// Use
|
|
236
|
-
({ worktreeInfo, sandboxLayer,
|
|
253
|
+
({ worktreeInfo, sandboxLayer, worktreePath, handle }) => makeEffect({
|
|
237
254
|
hostWorktreePath: worktreeInfo.path,
|
|
238
|
-
|
|
255
|
+
sandboxRepoPath: worktreePath,
|
|
239
256
|
applyToHost: () => Effect.void,
|
|
257
|
+
bindMountHandle: handle,
|
|
240
258
|
}).pipe(Effect.provide(sandboxLayer)),
|
|
241
259
|
// Release: close provider handle, then remove/preserve worktree based on dirty state.
|
|
242
260
|
({ worktreeInfo, handle }, exit) => Effect.tryPromise({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SandboxFactory.js","sourceRoot":"","sources":["../src/SandboxFactory.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SandboxFactory.js","sourceRoot":"","sources":["../src/SandboxFactory.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,31 @@
|
|
|
1
1
|
import { Effect } from "effect";
|
|
2
2
|
import { Display } from "./Display.js";
|
|
3
|
-
import { SyncError, type SandboxError } from "./errors.js";
|
|
3
|
+
import { ExecError, HookTimeoutError, SyncError, type SandboxError } from "./errors.js";
|
|
4
4
|
import { Sandbox, type SandboxService } from "./SandboxFactory.js";
|
|
5
5
|
export type SandboxHooks = {
|
|
6
|
-
readonly
|
|
7
|
-
readonly
|
|
8
|
-
|
|
9
|
-
|
|
6
|
+
readonly host?: {
|
|
7
|
+
readonly onWorktreeReady?: ReadonlyArray<{
|
|
8
|
+
readonly command: string;
|
|
9
|
+
}>;
|
|
10
|
+
readonly onSandboxReady?: ReadonlyArray<{
|
|
11
|
+
readonly command: string;
|
|
12
|
+
}>;
|
|
13
|
+
};
|
|
14
|
+
readonly sandbox?: {
|
|
15
|
+
readonly onSandboxReady?: ReadonlyArray<{
|
|
16
|
+
readonly command: string;
|
|
17
|
+
readonly sudo?: boolean;
|
|
18
|
+
}>;
|
|
19
|
+
};
|
|
10
20
|
};
|
|
21
|
+
/**
|
|
22
|
+
* Runs an array of host-side hook commands sequentially.
|
|
23
|
+
* Each command runs on the host with the given cwd.
|
|
24
|
+
* Fails fast on non-zero exit.
|
|
25
|
+
*/
|
|
26
|
+
export declare const runHostHooks: (hooks: readonly {
|
|
27
|
+
readonly command: string;
|
|
28
|
+
}[], cwd: string) => Effect.Effect<void, ExecError | HookTimeoutError, never>;
|
|
11
29
|
export interface SandboxLifecycleOptions {
|
|
12
30
|
readonly hostRepoDir: string;
|
|
13
31
|
readonly sandboxRepoDir: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SandboxLifecycle.d.ts","sourceRoot":"","sources":["../src/SandboxLifecycle.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,
|
|
1
|
+
{"version":3,"file":"SandboxLifecycle.d.ts","sourceRoot":"","sources":["../src/SandboxLifecycle.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAEL,SAAS,EAET,gBAAgB,EAEhB,SAAS,EAET,KAAK,YAAY,EAClB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,OAAO,EAEP,KAAK,cAAc,EACpB,MAAM,qBAAqB,CAAC;AA0C7B,MAAM,MAAM,YAAY,GAAG;IACzB,QAAQ,CAAC,IAAI,CAAC,EAAE;QACd,QAAQ,CAAC,eAAe,CAAC,EAAE,aAAa,CAAC;YACvC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;SAC1B,CAAC,CAAC;QACH,QAAQ,CAAC,cAAc,CAAC,EAAE,aAAa,CAAC;YACtC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;SAC1B,CAAC,CAAC;KACJ,CAAC;IACF,QAAQ,CAAC,OAAO,CAAC,EAAE;QACjB,QAAQ,CAAC,cAAc,CAAC,EAAE,aAAa,CAAC;YACtC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;YACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC;SACzB,CAAC,CAAC;KACJ,CAAC;CACH,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,YAAY;;6EAyBrB,CAAC;AAEL,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,KAAK,CAAC,EAAE,YAAY,CAAC;IAC9B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB;yFACqF;IACrF,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC;;oFAEgF;IAChF,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;CAC7D;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;IACjC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,sBAAsB,CAAC,CAAC;IACvC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IACnB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CACrC;AAED,eAAO,MAAM,oBAAoB,GAAI,CAAC,kMAoSlC,CAAC"}
|
package/dist/SandboxLifecycle.js
CHANGED
|
@@ -2,15 +2,44 @@ import { exec } from "node:child_process";
|
|
|
2
2
|
import { promisify } from "node:util";
|
|
3
3
|
import { Effect } from "effect";
|
|
4
4
|
import { Display } from "./Display.js";
|
|
5
|
-
import { ExecError, SyncError } from "./errors.js";
|
|
5
|
+
import { CommitCollectionTimeoutError, ExecError, GitSetupTimeoutError, HookTimeoutError, MergeToHostTimeoutError, SyncError, withTimeout, } from "./errors.js";
|
|
6
6
|
import { Sandbox, } from "./SandboxFactory.js";
|
|
7
|
+
const GIT_SETUP_TIMEOUT_MS = 10_000;
|
|
8
|
+
const HOOK_TIMEOUT_MS = 60_000;
|
|
9
|
+
const COMMIT_COLLECTION_TIMEOUT_MS = 30_000;
|
|
10
|
+
const MERGE_TO_HOST_TIMEOUT_MS = 30_000;
|
|
7
11
|
const execOk = (sandbox, command, options) => Effect.flatMap(sandbox.exec(command, options), (result) => result.exitCode !== 0
|
|
8
12
|
? Effect.fail(new ExecError({
|
|
9
13
|
command,
|
|
10
14
|
message: `Command failed (exit ${result.exitCode}): ${command}\n${result.stderr}`,
|
|
11
15
|
}))
|
|
12
16
|
: Effect.succeed(result));
|
|
17
|
+
const execOkWithGitTimeout = (sandbox, command, options) => execOk(sandbox, command, options).pipe(withTimeout(GIT_SETUP_TIMEOUT_MS, () => new GitSetupTimeoutError({
|
|
18
|
+
message: `Git command timed out after ${GIT_SETUP_TIMEOUT_MS}ms: ${command}`,
|
|
19
|
+
timeoutMs: GIT_SETUP_TIMEOUT_MS,
|
|
20
|
+
command,
|
|
21
|
+
})));
|
|
13
22
|
const execAsync = promisify(exec);
|
|
23
|
+
/**
|
|
24
|
+
* Runs an array of host-side hook commands sequentially.
|
|
25
|
+
* Each command runs on the host with the given cwd.
|
|
26
|
+
* Fails fast on non-zero exit.
|
|
27
|
+
*/
|
|
28
|
+
export const runHostHooks = (hooks, cwd) => Effect.gen(function* () {
|
|
29
|
+
for (const hook of hooks) {
|
|
30
|
+
yield* Effect.tryPromise({
|
|
31
|
+
try: () => execAsync(hook.command, { cwd }),
|
|
32
|
+
catch: (err) => new ExecError({
|
|
33
|
+
command: hook.command,
|
|
34
|
+
message: `Host hook failed: ${hook.command}\n${err instanceof Error ? err.message : String(err)}`,
|
|
35
|
+
}),
|
|
36
|
+
}).pipe(withTimeout(HOOK_TIMEOUT_MS, () => new HookTimeoutError({
|
|
37
|
+
message: `Host hook '${hook.command}' timed out after ${HOOK_TIMEOUT_MS}ms`,
|
|
38
|
+
timeoutMs: HOOK_TIMEOUT_MS,
|
|
39
|
+
command: hook.command,
|
|
40
|
+
})));
|
|
41
|
+
}
|
|
42
|
+
});
|
|
14
43
|
export const withSandboxLifecycle = (options, work) => Effect.gen(function* () {
|
|
15
44
|
const sandbox = yield* Sandbox;
|
|
16
45
|
const display = yield* Display;
|
|
@@ -34,38 +63,68 @@ export const withSandboxLifecycle = (options, work) => Effect.gen(function* () {
|
|
|
34
63
|
]);
|
|
35
64
|
return [nameResult, emailResult];
|
|
36
65
|
});
|
|
66
|
+
// For host-side operations, use hostWorktreePath (the real path on the host)
|
|
67
|
+
// instead of sandboxRepoDir (which may be a sandbox path like /home/agent/workspace).
|
|
68
|
+
const hostSideWorktreePath = hostWorktreePath ?? sandboxRepoDir;
|
|
37
69
|
// Setup: onSandboxReady hooks
|
|
38
70
|
let resolvedBranch = "";
|
|
39
71
|
yield* display.taskLog("Setting up sandbox", (message) => Effect.gen(function* () {
|
|
40
72
|
// The bind-mounted worktree may be owned by a different UID (host user
|
|
41
73
|
// vs sandbox user). Mark it safe so git doesn't reject it with
|
|
42
74
|
// "dubious ownership".
|
|
43
|
-
yield*
|
|
75
|
+
yield* execOkWithGitTimeout(sandbox, `git config --global --add safe.directory "${sandboxRepoDir}"`);
|
|
44
76
|
// Propagate host git identity into the sandbox so commits are attributed
|
|
45
77
|
// to the actual developer without requiring manual setup.
|
|
46
78
|
if (hostGitName) {
|
|
47
|
-
yield*
|
|
79
|
+
yield* execOkWithGitTimeout(sandbox, `git config --global user.name "${hostGitName.replace(/"/g, '\\"')}"`);
|
|
48
80
|
}
|
|
49
81
|
if (hostGitEmail) {
|
|
50
|
-
yield*
|
|
82
|
+
yield* execOkWithGitTimeout(sandbox, `git config --global user.email "${hostGitEmail.replace(/"/g, '\\"')}"`);
|
|
51
83
|
}
|
|
52
84
|
// Repo is bind-mounted — discover branch directly
|
|
53
|
-
resolvedBranch = (yield*
|
|
54
|
-
|
|
55
|
-
|
|
85
|
+
resolvedBranch = (yield* execOkWithGitTimeout(sandbox, "git rev-parse --abbrev-ref HEAD", { cwd: sandboxRepoDir })).stdout.trim();
|
|
86
|
+
// Run sandbox.onSandboxReady and host.onSandboxReady in parallel
|
|
87
|
+
const sandboxHooks = hooks?.sandbox?.onSandboxReady;
|
|
88
|
+
const hostOnSandboxReady = hooks?.host?.onSandboxReady;
|
|
89
|
+
if (sandboxHooks?.length) {
|
|
90
|
+
for (const hook of sandboxHooks) {
|
|
56
91
|
message(hook.command);
|
|
57
92
|
}
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
93
|
+
}
|
|
94
|
+
if (hostOnSandboxReady?.length) {
|
|
95
|
+
for (const hook of hostOnSandboxReady) {
|
|
96
|
+
message(`[host] ${hook.command}`);
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
const sandboxHookEffects = (sandboxHooks ?? []).map((hook) => execOk(sandbox, hook.command, {
|
|
100
|
+
cwd: sandboxRepoDir,
|
|
101
|
+
sudo: hook.sudo,
|
|
102
|
+
}).pipe(withTimeout(HOOK_TIMEOUT_MS, () => new HookTimeoutError({
|
|
103
|
+
message: `Hook '${hook.command}' timed out after ${HOOK_TIMEOUT_MS}ms`,
|
|
104
|
+
timeoutMs: HOOK_TIMEOUT_MS,
|
|
105
|
+
command: hook.command,
|
|
106
|
+
}))));
|
|
107
|
+
const hostHookEffects = (hostOnSandboxReady ?? []).map((hook) => Effect.tryPromise({
|
|
108
|
+
try: () => execAsync(hook.command, {
|
|
109
|
+
cwd: hostSideWorktreePath,
|
|
110
|
+
}),
|
|
111
|
+
catch: (err) => new ExecError({
|
|
112
|
+
command: hook.command,
|
|
113
|
+
message: `Host hook failed: ${hook.command}\n${err instanceof Error ? err.message : String(err)}`,
|
|
114
|
+
}),
|
|
115
|
+
}).pipe(withTimeout(HOOK_TIMEOUT_MS, () => new HookTimeoutError({
|
|
116
|
+
message: `Host hook '${hook.command}' timed out after ${HOOK_TIMEOUT_MS}ms`,
|
|
117
|
+
timeoutMs: HOOK_TIMEOUT_MS,
|
|
118
|
+
command: hook.command,
|
|
119
|
+
}))));
|
|
120
|
+
const allOnSandboxReady = [...sandboxHookEffects, ...hostHookEffects];
|
|
121
|
+
if (allOnSandboxReady.length > 0) {
|
|
122
|
+
yield* Effect.all(allOnSandboxReady, {
|
|
123
|
+
concurrency: "unbounded",
|
|
124
|
+
});
|
|
62
125
|
}
|
|
63
126
|
}));
|
|
64
127
|
const targetBranch = branch ?? resolvedBranch;
|
|
65
|
-
// For host-side git operations in worktree mode, use hostWorktreePath
|
|
66
|
-
// (the real path on the host) instead of sandboxRepoDir (which may be a sandbox path
|
|
67
|
-
// like /home/agent/workspace that doesn't exist on the host).
|
|
68
|
-
const hostSideWorktreePath = hostWorktreePath ?? sandboxRepoDir;
|
|
69
128
|
// Record base HEAD from the host worktree (not the sandbox).
|
|
70
129
|
// For bind-mount providers, these are the same. For isolated providers,
|
|
71
130
|
// the host-side SHA is the correct baseline for git rev-list after applyToHost
|
|
@@ -122,7 +181,12 @@ export const withSandboxLifecycle = (options, work) => Effect.gen(function* () {
|
|
|
122
181
|
catch: (e) => new SyncError({
|
|
123
182
|
message: String(e instanceof Error ? e.message : e),
|
|
124
183
|
}),
|
|
125
|
-
}))
|
|
184
|
+
}).pipe(withTimeout(MERGE_TO_HOST_TIMEOUT_MS, () => new MergeToHostTimeoutError({
|
|
185
|
+
message: `Merge of '${resolvedBranch}' to '${hostCurrentBranch}' timed out after ${MERGE_TO_HOST_TIMEOUT_MS}ms`,
|
|
186
|
+
timeoutMs: MERGE_TO_HOST_TIMEOUT_MS,
|
|
187
|
+
sourceBranch: resolvedBranch,
|
|
188
|
+
targetBranch: hostCurrentBranch,
|
|
189
|
+
}))));
|
|
126
190
|
}
|
|
127
191
|
// Delete the temp branch (now merged into host branch)
|
|
128
192
|
yield* Effect.promise(() => execAsync(`git branch -D "${resolvedBranch}"`, {
|
|
@@ -140,7 +204,10 @@ export const withSandboxLifecycle = (options, work) => Effect.gen(function* () {
|
|
|
140
204
|
catch {
|
|
141
205
|
return [];
|
|
142
206
|
}
|
|
143
|
-
}))
|
|
207
|
+
}).pipe(withTimeout(COMMIT_COLLECTION_TIMEOUT_MS, () => new CommitCollectionTimeoutError({
|
|
208
|
+
message: `Commit collection timed out after ${COMMIT_COLLECTION_TIMEOUT_MS}ms`,
|
|
209
|
+
timeoutMs: COMMIT_COLLECTION_TIMEOUT_MS,
|
|
210
|
+
}))));
|
|
144
211
|
finalBranch = hostCurrentBranch;
|
|
145
212
|
}
|
|
146
213
|
else {
|
|
@@ -157,7 +224,10 @@ export const withSandboxLifecycle = (options, work) => Effect.gen(function* () {
|
|
|
157
224
|
// Branch doesn't exist on host (no commits were produced)
|
|
158
225
|
return [];
|
|
159
226
|
}
|
|
160
|
-
}))
|
|
227
|
+
}).pipe(withTimeout(COMMIT_COLLECTION_TIMEOUT_MS, () => new CommitCollectionTimeoutError({
|
|
228
|
+
message: `Commit collection timed out after ${COMMIT_COLLECTION_TIMEOUT_MS}ms`,
|
|
229
|
+
timeoutMs: COMMIT_COLLECTION_TIMEOUT_MS,
|
|
230
|
+
}))));
|
|
161
231
|
finalBranch = targetBranch;
|
|
162
232
|
}
|
|
163
233
|
return { result, branch: finalBranch, commits };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SandboxLifecycle.js","sourceRoot":"","sources":["../src/SandboxLifecycle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,
|
|
1
|
+
{"version":3,"file":"SandboxLifecycle.js","sourceRoot":"","sources":["../src/SandboxLifecycle.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,8 +19,8 @@ export interface InteractiveExecOptions {
|
|
|
19
19
|
}
|
|
20
20
|
/** Handle to a running bind-mount sandbox. */
|
|
21
21
|
export interface BindMountSandboxHandle {
|
|
22
|
-
/** Absolute path to the
|
|
23
|
-
readonly
|
|
22
|
+
/** Absolute path to the worktree inside the sandbox. */
|
|
23
|
+
readonly worktreePath: string;
|
|
24
24
|
/**
|
|
25
25
|
* Execute a command in the sandbox.
|
|
26
26
|
*
|
|
@@ -44,6 +44,10 @@ export interface BindMountSandboxHandle {
|
|
|
44
44
|
interactiveExec?(args: string[], options: InteractiveExecOptions): Promise<{
|
|
45
45
|
exitCode: number;
|
|
46
46
|
}>;
|
|
47
|
+
/** Copy a single file from the host into the sandbox. */
|
|
48
|
+
copyFileIn(hostPath: string, sandboxPath: string): Promise<void>;
|
|
49
|
+
/** Copy a single file from the sandbox to the host. */
|
|
50
|
+
copyFileOut(sandboxPath: string, hostPath: string): Promise<void>;
|
|
47
51
|
/** Tear down the sandbox. */
|
|
48
52
|
close(): Promise<void>;
|
|
49
53
|
}
|
|
@@ -73,8 +77,8 @@ export interface BindMountSandboxProviderConfig {
|
|
|
73
77
|
}
|
|
74
78
|
/** Handle to a running isolated sandbox (extends bind-mount with file transfer). */
|
|
75
79
|
export interface IsolatedSandboxHandle {
|
|
76
|
-
/** Absolute path to the
|
|
77
|
-
readonly
|
|
80
|
+
/** Absolute path to the worktree inside the sandbox. */
|
|
81
|
+
readonly worktreePath: string;
|
|
78
82
|
/**
|
|
79
83
|
* Execute a command in the sandbox.
|
|
80
84
|
*
|
|
@@ -143,8 +147,8 @@ export interface IsolatedSandboxProvider {
|
|
|
143
147
|
}
|
|
144
148
|
/** Handle to a no-sandbox session — runs commands directly on the host. */
|
|
145
149
|
export interface NoSandboxHandle {
|
|
146
|
-
/** Absolute path to the
|
|
147
|
-
readonly
|
|
150
|
+
/** Absolute path to the worktree on the host. */
|
|
151
|
+
readonly worktreePath: string;
|
|
148
152
|
/**
|
|
149
153
|
* Execute a command on the host.
|
|
150
154
|
*
|
|
@@ -176,7 +180,7 @@ export interface NoSandboxProvider {
|
|
|
176
180
|
readonly env: Record<string, string>;
|
|
177
181
|
/** @internal Create a no-sandbox handle. */
|
|
178
182
|
readonly create: (options: {
|
|
179
|
-
readonly
|
|
183
|
+
readonly worktreePath: string;
|
|
180
184
|
readonly env: Record<string, string>;
|
|
181
185
|
}) => Promise<NoSandboxHandle>;
|
|
182
186
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SandboxProvider.d.ts","sourceRoot":"","sources":["../src/SandboxProvider.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,sDAAsD;AACtD,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED,iGAAiG;AACjG,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,cAAc,CAAC;IACtC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,cAAc,CAAC;IACvC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,cAAc,CAAC;IACvC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,8CAA8C;AAC9C,MAAM,WAAW,sBAAsB;IACrC,
|
|
1
|
+
{"version":3,"file":"SandboxProvider.d.ts","sourceRoot":"","sources":["../src/SandboxProvider.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SandboxProvider.js","sourceRoot":"","sources":["../src/SandboxProvider.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"SandboxProvider.js","sourceRoot":"","sources":["../src/SandboxProvider.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAqQH;;;GAGG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAC5C,MAAsC,EACZ,EAAE,CAAC,CAAC;IAC9B,GAAG,EAAE,YAAY;IACjB,IAAI,EAAE,MAAM,CAAC,IAAI;IACjB,GAAG,EAAE,MAAM,CAAC,GAAG,IAAI,EAAE;IACrB,MAAM,EAAE,MAAM,CAAC,MAAM;CACtB,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAC3C,MAAqC,EACZ,EAAE,CAAC,CAAC;IAC7B,GAAG,EAAE,UAAU;IACf,IAAI,EAAE,MAAM,CAAC,IAAI;IACjB,GAAG,EAAE,MAAM,CAAC,GAAG,IAAI,EAAE;IACrB,MAAM,EAAE,MAAM,CAAC,MAAM;CACtB,CAAC,CAAC"}
|