zeitlich 0.2.33 → 0.2.35
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 +17 -6
- package/dist/{activities-YBD5BaHh.d.ts → activities-BVI2lTwr.d.ts} +6 -4
- package/dist/{activities-fnX8-vhR.d.cts → activities-hd4aNnZE.d.cts} +6 -4
- package/dist/adapters/sandbox/bedrock/index.cjs +2 -0
- package/dist/adapters/sandbox/bedrock/index.cjs.map +1 -1
- package/dist/adapters/sandbox/bedrock/index.d.cts +4 -3
- package/dist/adapters/sandbox/bedrock/index.d.ts +4 -3
- package/dist/adapters/sandbox/bedrock/index.js +2 -0
- package/dist/adapters/sandbox/bedrock/index.js.map +1 -1
- package/dist/adapters/sandbox/bedrock/workflow.cjs +1 -0
- package/dist/adapters/sandbox/bedrock/workflow.cjs.map +1 -1
- package/dist/adapters/sandbox/bedrock/workflow.d.cts +2 -2
- package/dist/adapters/sandbox/bedrock/workflow.d.ts +2 -2
- package/dist/adapters/sandbox/bedrock/workflow.js +1 -0
- package/dist/adapters/sandbox/bedrock/workflow.js.map +1 -1
- package/dist/adapters/sandbox/daytona/index.cjs +2 -0
- package/dist/adapters/sandbox/daytona/index.cjs.map +1 -1
- package/dist/adapters/sandbox/daytona/index.d.cts +2 -1
- package/dist/adapters/sandbox/daytona/index.d.ts +2 -1
- package/dist/adapters/sandbox/daytona/index.js +2 -0
- package/dist/adapters/sandbox/daytona/index.js.map +1 -1
- package/dist/adapters/sandbox/daytona/workflow.cjs +1 -0
- package/dist/adapters/sandbox/daytona/workflow.cjs.map +1 -1
- package/dist/adapters/sandbox/daytona/workflow.d.cts +1 -1
- package/dist/adapters/sandbox/daytona/workflow.d.ts +1 -1
- package/dist/adapters/sandbox/daytona/workflow.js +1 -0
- package/dist/adapters/sandbox/daytona/workflow.js.map +1 -1
- package/dist/adapters/sandbox/e2b/index.cjs +3 -0
- package/dist/adapters/sandbox/e2b/index.cjs.map +1 -1
- package/dist/adapters/sandbox/e2b/index.d.cts +2 -1
- package/dist/adapters/sandbox/e2b/index.d.ts +2 -1
- package/dist/adapters/sandbox/e2b/index.js +3 -0
- package/dist/adapters/sandbox/e2b/index.js.map +1 -1
- package/dist/adapters/sandbox/e2b/workflow.cjs +1 -0
- package/dist/adapters/sandbox/e2b/workflow.cjs.map +1 -1
- package/dist/adapters/sandbox/e2b/workflow.d.cts +1 -1
- package/dist/adapters/sandbox/e2b/workflow.d.ts +1 -1
- package/dist/adapters/sandbox/e2b/workflow.js +1 -0
- package/dist/adapters/sandbox/e2b/workflow.js.map +1 -1
- package/dist/adapters/sandbox/inmemory/index.cjs +2 -0
- package/dist/adapters/sandbox/inmemory/index.cjs.map +1 -1
- package/dist/adapters/sandbox/inmemory/index.d.cts +2 -1
- package/dist/adapters/sandbox/inmemory/index.d.ts +2 -1
- package/dist/adapters/sandbox/inmemory/index.js +2 -0
- package/dist/adapters/sandbox/inmemory/index.js.map +1 -1
- package/dist/adapters/sandbox/inmemory/workflow.cjs +1 -0
- package/dist/adapters/sandbox/inmemory/workflow.cjs.map +1 -1
- package/dist/adapters/sandbox/inmemory/workflow.d.cts +1 -1
- package/dist/adapters/sandbox/inmemory/workflow.d.ts +1 -1
- package/dist/adapters/sandbox/inmemory/workflow.js +1 -0
- package/dist/adapters/sandbox/inmemory/workflow.js.map +1 -1
- package/dist/adapters/thread/anthropic/index.cjs +7 -2
- package/dist/adapters/thread/anthropic/index.cjs.map +1 -1
- package/dist/adapters/thread/anthropic/index.d.cts +5 -5
- package/dist/adapters/thread/anthropic/index.d.ts +5 -5
- package/dist/adapters/thread/anthropic/index.js +7 -2
- package/dist/adapters/thread/anthropic/index.js.map +1 -1
- package/dist/adapters/thread/anthropic/workflow.d.cts +5 -5
- package/dist/adapters/thread/anthropic/workflow.d.ts +5 -5
- package/dist/adapters/thread/google-genai/index.cjs +4 -3
- package/dist/adapters/thread/google-genai/index.cjs.map +1 -1
- package/dist/adapters/thread/google-genai/index.d.cts +5 -5
- package/dist/adapters/thread/google-genai/index.d.ts +5 -5
- package/dist/adapters/thread/google-genai/index.js +4 -3
- package/dist/adapters/thread/google-genai/index.js.map +1 -1
- package/dist/adapters/thread/google-genai/workflow.d.cts +5 -5
- package/dist/adapters/thread/google-genai/workflow.d.ts +5 -5
- package/dist/adapters/thread/langchain/index.cjs +4 -1
- package/dist/adapters/thread/langchain/index.cjs.map +1 -1
- package/dist/adapters/thread/langchain/index.d.cts +5 -5
- package/dist/adapters/thread/langchain/index.d.ts +5 -5
- package/dist/adapters/thread/langchain/index.js +4 -1
- package/dist/adapters/thread/langchain/index.js.map +1 -1
- package/dist/adapters/thread/langchain/workflow.d.cts +5 -5
- package/dist/adapters/thread/langchain/workflow.d.ts +5 -5
- package/dist/index.cjs +115 -31
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +10 -9
- package/dist/index.d.ts +10 -9
- package/dist/index.js +115 -31
- package/dist/index.js.map +1 -1
- package/dist/{proxy-CTCYWjkr.d.cts → proxy-7RnVaPdJ.d.cts} +1 -1
- package/dist/{proxy-Br4unLTC.d.ts → proxy-BjdFGPTm.d.ts} +1 -1
- package/dist/{thread-manager-DKWxHUzD.d.ts → thread-manager-BBzNgQWH.d.cts} +5 -2
- package/dist/{thread-manager-CUubPYPH.d.cts → thread-manager-CbpiGq1L.d.ts} +6 -3
- package/dist/{thread-manager-Cv_BR28i.d.cts → thread-manager-DjN5JYul.d.ts} +5 -2
- package/dist/{thread-manager-YJLoc1vH.d.ts → thread-manager-DzXm9eeI.d.cts} +6 -3
- package/dist/{types-Bpq5fDI5.d.cts → types-CADc5V_P.d.ts} +39 -24
- package/dist/{types-DUvEZSDe.d.cts → types-CBH54cwr.d.cts} +1 -1
- package/dist/{types-CheCTLeV.d.ts → types-DQ1l_gXL.d.cts} +39 -24
- package/dist/{types-AujBIMMn.d.cts → types-DxCpFNv_.d.cts} +4 -0
- package/dist/{types-AujBIMMn.d.ts → types-DxCpFNv_.d.ts} +4 -0
- package/dist/{types-NJDyMyUx.d.cts → types-Mc_4BCfT.d.cts} +3 -3
- package/dist/{types-DBk-C8zM.d.ts → types-wiGLvxWf.d.ts} +1 -1
- package/dist/{types-BxiT8w9d.d.ts → types-yiXmqedU.d.ts} +3 -3
- package/dist/{workflow-Od9vx5Jk.d.cts → workflow-DhtWRovz.d.cts} +3 -3
- package/dist/{workflow-D9nNERvs.d.ts → workflow-P2pTSfKu.d.ts} +3 -3
- package/dist/workflow.cjs +109 -31
- package/dist/workflow.cjs.map +1 -1
- package/dist/workflow.d.cts +3 -3
- package/dist/workflow.d.ts +3 -3
- package/dist/workflow.js +109 -31
- package/dist/workflow.js.map +1 -1
- package/package.json +1 -1
- package/src/adapters/sandbox/bedrock/index.ts +4 -0
- package/src/adapters/sandbox/bedrock/proxy.ts +1 -0
- package/src/adapters/sandbox/daytona/index.ts +4 -0
- package/src/adapters/sandbox/daytona/proxy.ts +1 -0
- package/src/adapters/sandbox/e2b/index.ts +4 -0
- package/src/adapters/sandbox/e2b/proxy.ts +1 -0
- package/src/adapters/sandbox/inmemory/index.ts +4 -0
- package/src/adapters/sandbox/inmemory/proxy.ts +1 -0
- package/src/adapters/thread/anthropic/activities.ts +2 -1
- package/src/adapters/thread/anthropic/thread-manager.ts +21 -9
- package/src/adapters/thread/google-genai/activities.ts +2 -1
- package/src/adapters/thread/google-genai/thread-manager.test.ts +1 -1
- package/src/adapters/thread/google-genai/thread-manager.ts +15 -7
- package/src/adapters/thread/langchain/activities.ts +2 -1
- package/src/adapters/thread/langchain/thread-manager.ts +12 -3
- package/src/lib/lifecycle.ts +7 -3
- package/src/lib/sandbox/manager.ts +7 -0
- package/src/lib/sandbox/types.ts +4 -0
- package/src/lib/session/session-edge-cases.integration.test.ts +194 -0
- package/src/lib/session/session.integration.test.ts +5 -0
- package/src/lib/session/session.ts +13 -1
- package/src/lib/session/types.ts +10 -2
- package/src/lib/state/manager.ts +2 -2
- package/src/lib/state/types.ts +2 -2
- package/src/lib/subagent/define.ts +1 -1
- package/src/lib/subagent/handler.ts +142 -32
- package/src/lib/subagent/index.ts +5 -1
- package/src/lib/subagent/signals.ts +8 -1
- package/src/lib/subagent/subagent.integration.test.ts +532 -25
- package/src/lib/subagent/types.ts +32 -15
- package/src/lib/subagent/workflow.ts +26 -13
- package/src/lib/thread/types.ts +2 -2
- package/src/lib/types.ts +1 -1
- package/src/lib/virtual-fs/manager.ts +1 -1
- package/src/lib/virtual-fs/types.ts +2 -2
- package/src/lib/virtual-fs/virtual-fs.test.ts +2 -2
- package/src/workflow.ts +0 -1
package/dist/index.d.cts
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { B as BashArgs, F as FileEditArgs, G as GlobArgs, a as FileReadArgs, b as FileWriteArgs } from './workflow-
|
|
2
|
-
export { A as AskUserQuestionArgs, c as FileTreeAccessor, d as GrepArgs, O as ObservabilityHooks, R as ReadSkillArgs, S as SessionEndedEvent, e as SessionStartedEvent, f as SubagentArgs, T as TaskCreateArgs, g as TaskGetArgs, h as TaskListArgs, i as TaskUpdateArgs, j as ToolExecutedEvent, k as TurnCompletedEvent, W as WorkflowConfig, l as WorkflowInput, m as WorkflowSessionInput, Z as ZeitlichObservabilitySinks, n as applyVirtualTreeMutations, o as askUserQuestionTool, p as bashTool, q as composeHooks, r as createAgentStateManager, s as createAskUserQuestionHandler, t as createBashToolDescription, u as createObservabilityHooks, v as createReadSkillHandler, w as createReadSkillTool, x as createSession, y as createTaskCreateHandler, z as createTaskGetHandler, C as createTaskListHandler, D as createTaskUpdateHandler, E as createToolRouter, H as defineSubagent, I as defineSubagentWorkflow, J as defineTool, K as defineWorkflow, L as editTool, M as filesWithMimeType, N as formatVirtualFileTree, P as getShortId, Q as globTool, U as grepTool, V as hasDirectory, X as hasFileWithMimeType, Y as hasNoOtherToolCalls, _ as parseSkillFile, $ as proxyRunAgent, a0 as proxyVirtualFsOps, a1 as readFileTool, a2 as taskCreateTool, a3 as taskGetTool, a4 as taskListTool, a5 as taskUpdateTool, a6 as writeFileTool } from './workflow-
|
|
3
|
-
import { R as RouterContext, d as ToolResultConfig, c as ActivityToolHandler, J as JsonValue, b as ToolHandlerResponse, B as BaseAgentState, e as RunAgentConfig, f as SkillProvider, g as SkillMetadata, h as Skill, F as FileEntryMetadata, i as FileResolver, V as VirtualFsContext, j as TreeMutation, k as PrefixedVirtualFsOps } from './types-
|
|
4
|
-
export { l as AgentConfig, m as AgentFile, A as AgentResponse, n as AgentState, o as AgentStateManager, p as AgentStatus, q as AppendToolResultFn, r as FileEntry, H as Hooks, I as InferToolResults, s as JsonPrimitive, t as JsonSerializable, a as ModelInvoker, M as ModelInvokerConfig, u as ParsedToolCall, v as ParsedToolCallUnion, w as PostHumanMessageAppendHook, x as PostHumanMessageAppendHookContext, y as PostToolUseFailureHook, z as PostToolUseFailureHookContext, C as PostToolUseFailureHookResult, D as PostToolUseHook, E as PostToolUseHookContext, G as PreHumanMessageAppendHook, K as PreHumanMessageAppendHookContext, L as PreToolUseHook, N as PreToolUseHookContext, O as PreToolUseHookResult, P as PrefixedThreadOps, Q as ProcessToolCallsContext, U as RawToolCall, W as RunAgentActivity, X as SandboxInit, Y as SandboxShutdown, S as ScopedPrefix, Z as SerializableToolDefinition, _ as SessionConfig, $ as SessionEndHook, a0 as SessionEndHookContext, a1 as SessionExitReason, a2 as SessionResult, a3 as SessionStartHook, a4 as SessionStartHookContext, a5 as SubagentConfig, a6 as SubagentDefinition, a7 as SubagentFnResult, a8 as SubagentHandlerResponse, a9 as SubagentHooks, aa as SubagentSandboxConfig, ab as SubagentSandboxShutdown, ac as SubagentSessionInput, ad as SubagentWorkflow, ae as SubagentWorkflowInput, af as TaskStatus, ag as ThreadInit, T as ThreadOps, ah as TokenUsage, ai as ToolArgs, aj as ToolCallResult, ak as ToolCallResultUnion, al as ToolDefinition, am as ToolHandler, an as ToolHooks, ao as ToolMap, ap as ToolNames, aq as ToolResult, ar as ToolRouter, as as ToolRouterHooks, at as ToolWithHandler, au as VirtualFileSystem, av as VirtualFileTree, aw as VirtualFsOps, ax as VirtualFsState, ay as WorkflowTask, az as ZeitlichSession, aA as isTerminalStatus } from './types-
|
|
5
|
-
import { S as Sandbox, a as SandboxFileSystem, d as SandboxCreateOptions, b as SandboxProvider, f as SandboxSnapshot, P as PrefixedSandboxOps, F as FileStat, D as DirentEntry, E as ExecResult } from './types-
|
|
6
|
-
export { h as ExecOptions, c as SandboxCapabilities, e as SandboxCreateResult, i as SandboxNotFoundError, j as SandboxNotSupportedError, g as SandboxOps } from './types-
|
|
1
|
+
import { B as BashArgs, F as FileEditArgs, G as GlobArgs, a as FileReadArgs, b as FileWriteArgs } from './workflow-DhtWRovz.cjs';
|
|
2
|
+
export { A as AskUserQuestionArgs, c as FileTreeAccessor, d as GrepArgs, O as ObservabilityHooks, R as ReadSkillArgs, S as SessionEndedEvent, e as SessionStartedEvent, f as SubagentArgs, T as TaskCreateArgs, g as TaskGetArgs, h as TaskListArgs, i as TaskUpdateArgs, j as ToolExecutedEvent, k as TurnCompletedEvent, W as WorkflowConfig, l as WorkflowInput, m as WorkflowSessionInput, Z as ZeitlichObservabilitySinks, n as applyVirtualTreeMutations, o as askUserQuestionTool, p as bashTool, q as composeHooks, r as createAgentStateManager, s as createAskUserQuestionHandler, t as createBashToolDescription, u as createObservabilityHooks, v as createReadSkillHandler, w as createReadSkillTool, x as createSession, y as createTaskCreateHandler, z as createTaskGetHandler, C as createTaskListHandler, D as createTaskUpdateHandler, E as createToolRouter, H as defineSubagent, I as defineSubagentWorkflow, J as defineTool, K as defineWorkflow, L as editTool, M as filesWithMimeType, N as formatVirtualFileTree, P as getShortId, Q as globTool, U as grepTool, V as hasDirectory, X as hasFileWithMimeType, Y as hasNoOtherToolCalls, _ as parseSkillFile, $ as proxyRunAgent, a0 as proxyVirtualFsOps, a1 as readFileTool, a2 as taskCreateTool, a3 as taskGetTool, a4 as taskListTool, a5 as taskUpdateTool, a6 as writeFileTool } from './workflow-DhtWRovz.cjs';
|
|
3
|
+
import { R as RouterContext, d as ToolResultConfig, c as ActivityToolHandler, J as JsonValue, b as ToolHandlerResponse, B as BaseAgentState, e as RunAgentConfig, f as SkillProvider, g as SkillMetadata, h as Skill, F as FileEntryMetadata, i as FileResolver, V as VirtualFsContext, j as TreeMutation, k as PrefixedVirtualFsOps } from './types-DQ1l_gXL.cjs';
|
|
4
|
+
export { l as AgentConfig, m as AgentFile, A as AgentResponse, n as AgentState, o as AgentStateManager, p as AgentStatus, q as AppendToolResultFn, r as FileEntry, H as Hooks, I as InferToolResults, s as JsonPrimitive, t as JsonSerializable, a as ModelInvoker, M as ModelInvokerConfig, u as ParsedToolCall, v as ParsedToolCallUnion, w as PostHumanMessageAppendHook, x as PostHumanMessageAppendHookContext, y as PostToolUseFailureHook, z as PostToolUseFailureHookContext, C as PostToolUseFailureHookResult, D as PostToolUseHook, E as PostToolUseHookContext, G as PreHumanMessageAppendHook, K as PreHumanMessageAppendHookContext, L as PreToolUseHook, N as PreToolUseHookContext, O as PreToolUseHookResult, P as PrefixedThreadOps, Q as ProcessToolCallsContext, U as RawToolCall, W as RunAgentActivity, X as SandboxInit, Y as SandboxShutdown, S as ScopedPrefix, Z as SerializableToolDefinition, _ as SessionConfig, $ as SessionEndHook, a0 as SessionEndHookContext, a1 as SessionExitReason, a2 as SessionResult, a3 as SessionStartHook, a4 as SessionStartHookContext, a5 as SubagentConfig, a6 as SubagentDefinition, a7 as SubagentFnResult, a8 as SubagentHandlerResponse, a9 as SubagentHooks, aa as SubagentSandboxConfig, ab as SubagentSandboxShutdown, ac as SubagentSessionInput, ad as SubagentWorkflow, ae as SubagentWorkflowInput, af as TaskStatus, ag as ThreadInit, T as ThreadOps, ah as TokenUsage, ai as ToolArgs, aj as ToolCallResult, ak as ToolCallResultUnion, al as ToolDefinition, am as ToolHandler, an as ToolHooks, ao as ToolMap, ap as ToolNames, aq as ToolResult, ar as ToolRouter, as as ToolRouterHooks, at as ToolWithHandler, au as VirtualFileSystem, av as VirtualFileTree, aw as VirtualFsOps, ax as VirtualFsState, ay as WorkflowTask, az as ZeitlichSession, aA as isTerminalStatus } from './types-DQ1l_gXL.cjs';
|
|
5
|
+
import { S as Sandbox, a as SandboxFileSystem, d as SandboxCreateOptions, b as SandboxProvider, f as SandboxSnapshot, P as PrefixedSandboxOps, F as FileStat, D as DirentEntry, E as ExecResult } from './types-DxCpFNv_.cjs';
|
|
6
|
+
export { h as ExecOptions, c as SandboxCapabilities, e as SandboxCreateResult, i as SandboxNotFoundError, j as SandboxNotSupportedError, g as SandboxOps } from './types-DxCpFNv_.cjs';
|
|
7
7
|
import { WorkflowClient } from '@temporalio/client';
|
|
8
|
-
import { a as ThreadManagerConfig, B as BaseThreadManager } from './types-
|
|
9
|
-
export { P as ProviderThreadManager } from './types-
|
|
8
|
+
import { a as ThreadManagerConfig, B as BaseThreadManager } from './types-Mc_4BCfT.cjs';
|
|
9
|
+
export { P as ProviderThreadManager } from './types-Mc_4BCfT.cjs';
|
|
10
10
|
import 'zod';
|
|
11
11
|
import '@temporalio/workflow';
|
|
12
12
|
import '@temporalio/common';
|
|
@@ -297,6 +297,7 @@ declare class SandboxManager<TOptions extends SandboxCreateOptions = SandboxCrea
|
|
|
297
297
|
getSandbox(id: string): Promise<TSandbox>;
|
|
298
298
|
destroy(id: string): Promise<void>;
|
|
299
299
|
pause(id: string, ttlSeconds?: number): Promise<void>;
|
|
300
|
+
resume(id: string): Promise<void>;
|
|
300
301
|
snapshot(id: string): Promise<SandboxSnapshot>;
|
|
301
302
|
restore(snapshot: SandboxSnapshot): Promise<string>;
|
|
302
303
|
fork(sandboxId: string): Promise<string>;
|
|
@@ -416,7 +417,7 @@ declare function withVirtualFs<TArgs, TResult, TCtx, TMeta = FileEntryMetadata,
|
|
|
416
417
|
* const activities = {
|
|
417
418
|
* ...createVirtualFsActivities(resolver, "CodingAgent"),
|
|
418
419
|
* };
|
|
419
|
-
* // registers:
|
|
420
|
+
* // registers: virtualFsCodingAgentResolveFileTree
|
|
420
421
|
* ```
|
|
421
422
|
*/
|
|
422
423
|
declare function createVirtualFsActivities<S extends string, TCtx = unknown, TMeta = FileEntryMetadata>(resolver: FileResolver<TCtx, TMeta>, scope: S): PrefixedVirtualFsOps<S, TCtx, TMeta>;
|
package/dist/index.d.ts
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { B as BashArgs, F as FileEditArgs, G as GlobArgs, a as FileReadArgs, b as FileWriteArgs } from './workflow-
|
|
2
|
-
export { A as AskUserQuestionArgs, c as FileTreeAccessor, d as GrepArgs, O as ObservabilityHooks, R as ReadSkillArgs, S as SessionEndedEvent, e as SessionStartedEvent, f as SubagentArgs, T as TaskCreateArgs, g as TaskGetArgs, h as TaskListArgs, i as TaskUpdateArgs, j as ToolExecutedEvent, k as TurnCompletedEvent, W as WorkflowConfig, l as WorkflowInput, m as WorkflowSessionInput, Z as ZeitlichObservabilitySinks, n as applyVirtualTreeMutations, o as askUserQuestionTool, p as bashTool, q as composeHooks, r as createAgentStateManager, s as createAskUserQuestionHandler, t as createBashToolDescription, u as createObservabilityHooks, v as createReadSkillHandler, w as createReadSkillTool, x as createSession, y as createTaskCreateHandler, z as createTaskGetHandler, C as createTaskListHandler, D as createTaskUpdateHandler, E as createToolRouter, H as defineSubagent, I as defineSubagentWorkflow, J as defineTool, K as defineWorkflow, L as editTool, M as filesWithMimeType, N as formatVirtualFileTree, P as getShortId, Q as globTool, U as grepTool, V as hasDirectory, X as hasFileWithMimeType, Y as hasNoOtherToolCalls, _ as parseSkillFile, $ as proxyRunAgent, a0 as proxyVirtualFsOps, a1 as readFileTool, a2 as taskCreateTool, a3 as taskGetTool, a4 as taskListTool, a5 as taskUpdateTool, a6 as writeFileTool } from './workflow-
|
|
3
|
-
import { R as RouterContext, d as ToolResultConfig, c as ActivityToolHandler, J as JsonValue, b as ToolHandlerResponse, B as BaseAgentState, e as RunAgentConfig, f as SkillProvider, g as SkillMetadata, h as Skill, F as FileEntryMetadata, i as FileResolver, V as VirtualFsContext, j as TreeMutation, k as PrefixedVirtualFsOps } from './types-
|
|
4
|
-
export { l as AgentConfig, m as AgentFile, A as AgentResponse, n as AgentState, o as AgentStateManager, p as AgentStatus, q as AppendToolResultFn, r as FileEntry, H as Hooks, I as InferToolResults, s as JsonPrimitive, t as JsonSerializable, a as ModelInvoker, M as ModelInvokerConfig, u as ParsedToolCall, v as ParsedToolCallUnion, w as PostHumanMessageAppendHook, x as PostHumanMessageAppendHookContext, y as PostToolUseFailureHook, z as PostToolUseFailureHookContext, C as PostToolUseFailureHookResult, D as PostToolUseHook, E as PostToolUseHookContext, G as PreHumanMessageAppendHook, K as PreHumanMessageAppendHookContext, L as PreToolUseHook, N as PreToolUseHookContext, O as PreToolUseHookResult, P as PrefixedThreadOps, Q as ProcessToolCallsContext, U as RawToolCall, W as RunAgentActivity, X as SandboxInit, Y as SandboxShutdown, S as ScopedPrefix, Z as SerializableToolDefinition, _ as SessionConfig, $ as SessionEndHook, a0 as SessionEndHookContext, a1 as SessionExitReason, a2 as SessionResult, a3 as SessionStartHook, a4 as SessionStartHookContext, a5 as SubagentConfig, a6 as SubagentDefinition, a7 as SubagentFnResult, a8 as SubagentHandlerResponse, a9 as SubagentHooks, aa as SubagentSandboxConfig, ab as SubagentSandboxShutdown, ac as SubagentSessionInput, ad as SubagentWorkflow, ae as SubagentWorkflowInput, af as TaskStatus, ag as ThreadInit, T as ThreadOps, ah as TokenUsage, ai as ToolArgs, aj as ToolCallResult, ak as ToolCallResultUnion, al as ToolDefinition, am as ToolHandler, an as ToolHooks, ao as ToolMap, ap as ToolNames, aq as ToolResult, ar as ToolRouter, as as ToolRouterHooks, at as ToolWithHandler, au as VirtualFileSystem, av as VirtualFileTree, aw as VirtualFsOps, ax as VirtualFsState, ay as WorkflowTask, az as ZeitlichSession, aA as isTerminalStatus } from './types-
|
|
5
|
-
import { S as Sandbox, a as SandboxFileSystem, d as SandboxCreateOptions, b as SandboxProvider, f as SandboxSnapshot, P as PrefixedSandboxOps, F as FileStat, D as DirentEntry, E as ExecResult } from './types-
|
|
6
|
-
export { h as ExecOptions, c as SandboxCapabilities, e as SandboxCreateResult, i as SandboxNotFoundError, j as SandboxNotSupportedError, g as SandboxOps } from './types-
|
|
1
|
+
import { B as BashArgs, F as FileEditArgs, G as GlobArgs, a as FileReadArgs, b as FileWriteArgs } from './workflow-P2pTSfKu.js';
|
|
2
|
+
export { A as AskUserQuestionArgs, c as FileTreeAccessor, d as GrepArgs, O as ObservabilityHooks, R as ReadSkillArgs, S as SessionEndedEvent, e as SessionStartedEvent, f as SubagentArgs, T as TaskCreateArgs, g as TaskGetArgs, h as TaskListArgs, i as TaskUpdateArgs, j as ToolExecutedEvent, k as TurnCompletedEvent, W as WorkflowConfig, l as WorkflowInput, m as WorkflowSessionInput, Z as ZeitlichObservabilitySinks, n as applyVirtualTreeMutations, o as askUserQuestionTool, p as bashTool, q as composeHooks, r as createAgentStateManager, s as createAskUserQuestionHandler, t as createBashToolDescription, u as createObservabilityHooks, v as createReadSkillHandler, w as createReadSkillTool, x as createSession, y as createTaskCreateHandler, z as createTaskGetHandler, C as createTaskListHandler, D as createTaskUpdateHandler, E as createToolRouter, H as defineSubagent, I as defineSubagentWorkflow, J as defineTool, K as defineWorkflow, L as editTool, M as filesWithMimeType, N as formatVirtualFileTree, P as getShortId, Q as globTool, U as grepTool, V as hasDirectory, X as hasFileWithMimeType, Y as hasNoOtherToolCalls, _ as parseSkillFile, $ as proxyRunAgent, a0 as proxyVirtualFsOps, a1 as readFileTool, a2 as taskCreateTool, a3 as taskGetTool, a4 as taskListTool, a5 as taskUpdateTool, a6 as writeFileTool } from './workflow-P2pTSfKu.js';
|
|
3
|
+
import { R as RouterContext, d as ToolResultConfig, c as ActivityToolHandler, J as JsonValue, b as ToolHandlerResponse, B as BaseAgentState, e as RunAgentConfig, f as SkillProvider, g as SkillMetadata, h as Skill, F as FileEntryMetadata, i as FileResolver, V as VirtualFsContext, j as TreeMutation, k as PrefixedVirtualFsOps } from './types-CADc5V_P.js';
|
|
4
|
+
export { l as AgentConfig, m as AgentFile, A as AgentResponse, n as AgentState, o as AgentStateManager, p as AgentStatus, q as AppendToolResultFn, r as FileEntry, H as Hooks, I as InferToolResults, s as JsonPrimitive, t as JsonSerializable, a as ModelInvoker, M as ModelInvokerConfig, u as ParsedToolCall, v as ParsedToolCallUnion, w as PostHumanMessageAppendHook, x as PostHumanMessageAppendHookContext, y as PostToolUseFailureHook, z as PostToolUseFailureHookContext, C as PostToolUseFailureHookResult, D as PostToolUseHook, E as PostToolUseHookContext, G as PreHumanMessageAppendHook, K as PreHumanMessageAppendHookContext, L as PreToolUseHook, N as PreToolUseHookContext, O as PreToolUseHookResult, P as PrefixedThreadOps, Q as ProcessToolCallsContext, U as RawToolCall, W as RunAgentActivity, X as SandboxInit, Y as SandboxShutdown, S as ScopedPrefix, Z as SerializableToolDefinition, _ as SessionConfig, $ as SessionEndHook, a0 as SessionEndHookContext, a1 as SessionExitReason, a2 as SessionResult, a3 as SessionStartHook, a4 as SessionStartHookContext, a5 as SubagentConfig, a6 as SubagentDefinition, a7 as SubagentFnResult, a8 as SubagentHandlerResponse, a9 as SubagentHooks, aa as SubagentSandboxConfig, ab as SubagentSandboxShutdown, ac as SubagentSessionInput, ad as SubagentWorkflow, ae as SubagentWorkflowInput, af as TaskStatus, ag as ThreadInit, T as ThreadOps, ah as TokenUsage, ai as ToolArgs, aj as ToolCallResult, ak as ToolCallResultUnion, al as ToolDefinition, am as ToolHandler, an as ToolHooks, ao as ToolMap, ap as ToolNames, aq as ToolResult, ar as ToolRouter, as as ToolRouterHooks, at as ToolWithHandler, au as VirtualFileSystem, av as VirtualFileTree, aw as VirtualFsOps, ax as VirtualFsState, ay as WorkflowTask, az as ZeitlichSession, aA as isTerminalStatus } from './types-CADc5V_P.js';
|
|
5
|
+
import { S as Sandbox, a as SandboxFileSystem, d as SandboxCreateOptions, b as SandboxProvider, f as SandboxSnapshot, P as PrefixedSandboxOps, F as FileStat, D as DirentEntry, E as ExecResult } from './types-DxCpFNv_.js';
|
|
6
|
+
export { h as ExecOptions, c as SandboxCapabilities, e as SandboxCreateResult, i as SandboxNotFoundError, j as SandboxNotSupportedError, g as SandboxOps } from './types-DxCpFNv_.js';
|
|
7
7
|
import { WorkflowClient } from '@temporalio/client';
|
|
8
|
-
import { a as ThreadManagerConfig, B as BaseThreadManager } from './types-
|
|
9
|
-
export { P as ProviderThreadManager } from './types-
|
|
8
|
+
import { a as ThreadManagerConfig, B as BaseThreadManager } from './types-yiXmqedU.js';
|
|
9
|
+
export { P as ProviderThreadManager } from './types-yiXmqedU.js';
|
|
10
10
|
import 'zod';
|
|
11
11
|
import '@temporalio/workflow';
|
|
12
12
|
import '@temporalio/common';
|
|
@@ -297,6 +297,7 @@ declare class SandboxManager<TOptions extends SandboxCreateOptions = SandboxCrea
|
|
|
297
297
|
getSandbox(id: string): Promise<TSandbox>;
|
|
298
298
|
destroy(id: string): Promise<void>;
|
|
299
299
|
pause(id: string, ttlSeconds?: number): Promise<void>;
|
|
300
|
+
resume(id: string): Promise<void>;
|
|
300
301
|
snapshot(id: string): Promise<SandboxSnapshot>;
|
|
301
302
|
restore(snapshot: SandboxSnapshot): Promise<string>;
|
|
302
303
|
fork(sandboxId: string): Promise<string>;
|
|
@@ -416,7 +417,7 @@ declare function withVirtualFs<TArgs, TResult, TCtx, TMeta = FileEntryMetadata,
|
|
|
416
417
|
* const activities = {
|
|
417
418
|
* ...createVirtualFsActivities(resolver, "CodingAgent"),
|
|
418
419
|
* };
|
|
419
|
-
* // registers:
|
|
420
|
+
* // registers: virtualFsCodingAgentResolveFileTree
|
|
420
421
|
* ```
|
|
421
422
|
*/
|
|
422
423
|
declare function createVirtualFsActivities<S extends string, TCtx = unknown, TMeta = FileEntryMetadata>(resolver: FileResolver<TCtx, TMeta>, scope: S): PrefixedVirtualFsOps<S, TCtx, TMeta>;
|
package/dist/index.js
CHANGED
|
@@ -390,23 +390,50 @@ function createSubagentTool(subagents) {
|
|
|
390
390
|
};
|
|
391
391
|
}
|
|
392
392
|
var childResultSignal = defineSignal("childResult");
|
|
393
|
+
var childSandboxReadySignal = defineSignal("childSandboxReady");
|
|
393
394
|
var destroySandboxSignal = defineSignal("destroySandbox");
|
|
394
395
|
|
|
395
396
|
// src/lib/subagent/handler.ts
|
|
396
397
|
function resolveSandboxConfig(config) {
|
|
397
|
-
if (!config || config === "none")
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
398
|
+
if (!config || config === "none") {
|
|
399
|
+
return { source: "none", init: "per-call", continuation: "fork" };
|
|
400
|
+
}
|
|
401
|
+
if (config.source === "inherit") {
|
|
402
|
+
return {
|
|
403
|
+
source: "inherit",
|
|
404
|
+
init: "per-call",
|
|
405
|
+
continuation: config.continuation,
|
|
406
|
+
shutdown: config.shutdown
|
|
407
|
+
};
|
|
408
|
+
}
|
|
409
|
+
return {
|
|
410
|
+
source: "own",
|
|
411
|
+
init: config.init ?? "per-call",
|
|
412
|
+
continuation: config.continuation,
|
|
413
|
+
shutdown: config.shutdown
|
|
414
|
+
};
|
|
401
415
|
}
|
|
402
416
|
function createSubagentHandler(subagents) {
|
|
403
417
|
const { taskQueue: parentTaskQueue } = workflowInfo();
|
|
404
418
|
const childResults = /* @__PURE__ */ new Map();
|
|
405
419
|
const pendingDestroys = /* @__PURE__ */ new Map();
|
|
406
420
|
const threadSandboxes = /* @__PURE__ */ new Map();
|
|
421
|
+
const persistentSandboxes = /* @__PURE__ */ new Map();
|
|
422
|
+
const persistentSandboxCreating = /* @__PURE__ */ new Set();
|
|
423
|
+
const lazyCreatorAgent = /* @__PURE__ */ new Map();
|
|
407
424
|
setHandler(childResultSignal, ({ childWorkflowId, result }) => {
|
|
408
425
|
childResults.set(childWorkflowId, result);
|
|
409
426
|
});
|
|
427
|
+
setHandler(
|
|
428
|
+
childSandboxReadySignal,
|
|
429
|
+
({ childWorkflowId, sandboxId }) => {
|
|
430
|
+
const agentName = lazyCreatorAgent.get(childWorkflowId);
|
|
431
|
+
if (agentName && !persistentSandboxes.has(agentName)) {
|
|
432
|
+
persistentSandboxes.set(agentName, sandboxId);
|
|
433
|
+
lazyCreatorAgent.delete(childWorkflowId);
|
|
434
|
+
}
|
|
435
|
+
}
|
|
436
|
+
);
|
|
410
437
|
const handler = async (args, context) => {
|
|
411
438
|
const config = subagents.find((s) => s.agentName === args.subagent);
|
|
412
439
|
if (!config) {
|
|
@@ -433,21 +460,48 @@ function createSubagentHandler(subagents) {
|
|
|
433
460
|
};
|
|
434
461
|
}
|
|
435
462
|
let sandbox;
|
|
463
|
+
let sandboxShutdownOverride;
|
|
464
|
+
let isLazyCreator = false;
|
|
436
465
|
if (sandboxCfg.source === "inherit" && parentSandboxId) {
|
|
437
|
-
|
|
438
|
-
mode: "
|
|
439
|
-
|
|
440
|
-
|
|
466
|
+
if (sandboxCfg.continuation === "fork") {
|
|
467
|
+
sandbox = { mode: "fork", sandboxId: parentSandboxId };
|
|
468
|
+
} else {
|
|
469
|
+
sandbox = { mode: "inherit", sandboxId: parentSandboxId };
|
|
470
|
+
}
|
|
441
471
|
} else if (sandboxCfg.source === "own") {
|
|
442
|
-
const
|
|
443
|
-
|
|
444
|
-
|
|
472
|
+
const isLazy = sandboxCfg.init === "once";
|
|
473
|
+
let baseSandboxId;
|
|
474
|
+
if (isLazy) {
|
|
475
|
+
baseSandboxId = persistentSandboxes.get(config.agentName);
|
|
476
|
+
if (!baseSandboxId) {
|
|
477
|
+
if (persistentSandboxCreating.has(config.agentName)) {
|
|
478
|
+
await condition(() => persistentSandboxes.has(config.agentName));
|
|
479
|
+
baseSandboxId = persistentSandboxes.get(config.agentName);
|
|
480
|
+
} else {
|
|
481
|
+
persistentSandboxCreating.add(config.agentName);
|
|
482
|
+
isLazyCreator = true;
|
|
483
|
+
}
|
|
484
|
+
}
|
|
485
|
+
} else if (continuationThreadId) {
|
|
486
|
+
baseSandboxId = threadSandboxes.get(continuationThreadId);
|
|
487
|
+
}
|
|
488
|
+
if (baseSandboxId) {
|
|
489
|
+
sandbox = {
|
|
490
|
+
mode: sandboxCfg.continuation === "continue" ? "continue" : "fork",
|
|
491
|
+
sandboxId: baseSandboxId
|
|
492
|
+
};
|
|
493
|
+
}
|
|
494
|
+
const userShutdown = sandboxCfg.shutdown;
|
|
495
|
+
const alreadySurvives = userShutdown === "pause-until-parent-close" || userShutdown === "keep-until-parent-close" || userShutdown === "pause" || userShutdown === "keep";
|
|
496
|
+
const mustSurvive = isLazyCreator || sandboxCfg.continuation === "continue" || isLazy && sandboxCfg.continuation === "fork";
|
|
497
|
+
if (mustSurvive && !alreadySurvives) {
|
|
498
|
+
sandboxShutdownOverride = isLazyCreator ? "pause-until-parent-close" : "pause";
|
|
445
499
|
}
|
|
446
500
|
}
|
|
447
501
|
const workflowInput = {
|
|
448
502
|
...thread && { thread },
|
|
449
503
|
...sandbox && { sandbox },
|
|
450
|
-
|
|
504
|
+
sandboxShutdown: sandboxShutdownOverride ?? sandboxCfg.shutdown ?? void 0
|
|
451
505
|
};
|
|
452
506
|
const resolvedContext = config.context === void 0 ? void 0 : typeof config.context === "function" ? config.context() : config.context;
|
|
453
507
|
const childOpts = {
|
|
@@ -455,6 +509,9 @@ function createSubagentHandler(subagents) {
|
|
|
455
509
|
args: resolvedContext === void 0 ? [args.prompt, workflowInput] : [args.prompt, workflowInput, resolvedContext],
|
|
456
510
|
taskQueue: config.taskQueue ?? parentTaskQueue
|
|
457
511
|
};
|
|
512
|
+
if (isLazyCreator) {
|
|
513
|
+
lazyCreatorAgent.set(childWorkflowId, config.agentName);
|
|
514
|
+
}
|
|
458
515
|
log.info("subagent spawned", {
|
|
459
516
|
subagent: config.agentName,
|
|
460
517
|
childWorkflowId,
|
|
@@ -462,10 +519,10 @@ function createSubagentHandler(subagents) {
|
|
|
462
519
|
sandboxSource: sandboxCfg.source
|
|
463
520
|
});
|
|
464
521
|
const childHandle = await startChild(config.workflow, childOpts);
|
|
465
|
-
const effectiveShutdown = sandboxCfg.shutdown ?? "destroy";
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
pendingDestroys.set(
|
|
522
|
+
const effectiveShutdown = sandboxShutdownOverride ?? sandboxCfg.shutdown ?? "destroy";
|
|
523
|
+
if (effectiveShutdown === "pause-until-parent-close" || effectiveShutdown === "keep-until-parent-close") {
|
|
524
|
+
const key = isLazyCreator ? `persistent:${config.agentName}` : childWorkflowId;
|
|
525
|
+
pendingDestroys.set(key, childHandle);
|
|
469
526
|
}
|
|
470
527
|
await Promise.race([
|
|
471
528
|
condition(() => childResults.has(childWorkflowId)),
|
|
@@ -499,8 +556,16 @@ function createSubagentHandler(subagents) {
|
|
|
499
556
|
sandboxId: childSandboxId,
|
|
500
557
|
metadata
|
|
501
558
|
} = childResult;
|
|
502
|
-
if (
|
|
503
|
-
|
|
559
|
+
if (childSandboxId) {
|
|
560
|
+
if (sandboxCfg.source === "own" && sandboxCfg.init === "once" && !persistentSandboxes.has(config.agentName)) {
|
|
561
|
+
persistentSandboxes.set(config.agentName, childSandboxId);
|
|
562
|
+
} else if (allowsContinuation && childThreadId) {
|
|
563
|
+
threadSandboxes.set(childThreadId, childSandboxId);
|
|
564
|
+
}
|
|
565
|
+
}
|
|
566
|
+
if (isLazyCreator) {
|
|
567
|
+
persistentSandboxCreating.delete(config.agentName);
|
|
568
|
+
lazyCreatorAgent.delete(childWorkflowId);
|
|
504
569
|
}
|
|
505
570
|
if (!toolResponse) {
|
|
506
571
|
return {
|
|
@@ -706,6 +771,7 @@ async function createSession({
|
|
|
706
771
|
thread: threadInit,
|
|
707
772
|
sandbox: sandboxInit,
|
|
708
773
|
sandboxShutdown = "destroy",
|
|
774
|
+
onSandboxReady,
|
|
709
775
|
virtualFs: virtualFsConfig,
|
|
710
776
|
virtualFsOps
|
|
711
777
|
}) {
|
|
@@ -808,6 +874,9 @@ async function createSession({
|
|
|
808
874
|
});
|
|
809
875
|
}
|
|
810
876
|
sandboxId = sandboxInit.sandboxId;
|
|
877
|
+
if (sandboxShutdown === "pause-until-parent-close") {
|
|
878
|
+
await sandboxOps.resumeSandbox(sandboxId);
|
|
879
|
+
}
|
|
811
880
|
sandboxOwned = true;
|
|
812
881
|
} else if (sandboxMode === "fork") {
|
|
813
882
|
if (!sandboxOps) {
|
|
@@ -830,6 +899,9 @@ async function createSession({
|
|
|
830
899
|
sandboxOwned = true;
|
|
831
900
|
}
|
|
832
901
|
}
|
|
902
|
+
if (sandboxId && onSandboxReady) {
|
|
903
|
+
onSandboxReady(sandboxId);
|
|
904
|
+
}
|
|
833
905
|
if (virtualFsConfig) {
|
|
834
906
|
if (!virtualFsOps) {
|
|
835
907
|
throw ApplicationFailure.create({
|
|
@@ -875,7 +947,7 @@ async function createSession({
|
|
|
875
947
|
await forkThread(sourceThreadId, threadId, threadKey);
|
|
876
948
|
} else if (threadMode === "continue") ; else {
|
|
877
949
|
if (appendSystemPrompt) {
|
|
878
|
-
if (
|
|
950
|
+
if (systemPrompt == null || typeof systemPrompt === "string" && systemPrompt.trim() === "") {
|
|
879
951
|
throw ApplicationFailure.create({
|
|
880
952
|
message: "No system prompt in state",
|
|
881
953
|
nonRetryable: true
|
|
@@ -1299,39 +1371,45 @@ function defineSubagent(definition, overrides) {
|
|
|
1299
1371
|
function defineSubagentWorkflow(config, fn) {
|
|
1300
1372
|
const workflow = async (prompt, workflowInput, context) => {
|
|
1301
1373
|
const effectiveShutdown = workflowInput.sandboxShutdown ?? config.sandboxShutdown ?? "destroy";
|
|
1374
|
+
const { parent } = workflowInfo();
|
|
1375
|
+
if (!parent) {
|
|
1376
|
+
throw ApplicationFailure.create({
|
|
1377
|
+
message: "Subagent workflow called without a parent workflow",
|
|
1378
|
+
nonRetryable: true
|
|
1379
|
+
});
|
|
1380
|
+
}
|
|
1381
|
+
const parentHandle = getExternalWorkflowHandle(parent.workflowId);
|
|
1302
1382
|
const sessionInput = {
|
|
1303
1383
|
agentName: config.name,
|
|
1304
1384
|
sandboxShutdown: effectiveShutdown,
|
|
1305
1385
|
...workflowInput.thread && { thread: workflowInput.thread },
|
|
1306
|
-
...workflowInput.sandbox && { sandbox: workflowInput.sandbox }
|
|
1386
|
+
...workflowInput.sandbox && { sandbox: workflowInput.sandbox },
|
|
1387
|
+
onSandboxReady: (sandboxId) => {
|
|
1388
|
+
void parentHandle.signal(childSandboxReadySignal, {
|
|
1389
|
+
childWorkflowId: workflowInfo().workflowId,
|
|
1390
|
+
sandboxId
|
|
1391
|
+
});
|
|
1392
|
+
}
|
|
1307
1393
|
};
|
|
1308
1394
|
const { destroySandbox, ...result } = await fn(
|
|
1309
1395
|
prompt,
|
|
1310
1396
|
sessionInput,
|
|
1311
1397
|
context ?? {}
|
|
1312
1398
|
);
|
|
1313
|
-
if (effectiveShutdown === "pause-until-parent-close") {
|
|
1399
|
+
if (effectiveShutdown === "pause-until-parent-close" || effectiveShutdown === "keep-until-parent-close") {
|
|
1314
1400
|
if (!destroySandbox) {
|
|
1315
1401
|
throw ApplicationFailure.create({
|
|
1316
|
-
message: `Subagent "${config.name}" has sandboxShutdown="
|
|
1402
|
+
message: `Subagent "${config.name}" has sandboxShutdown="${effectiveShutdown}" but fn did not return a destroySandbox callback`,
|
|
1317
1403
|
nonRetryable: true
|
|
1318
1404
|
});
|
|
1319
1405
|
}
|
|
1320
1406
|
if (!result.sandboxId) {
|
|
1321
1407
|
throw ApplicationFailure.create({
|
|
1322
|
-
message: `Subagent "${config.name}" has sandboxShutdown="
|
|
1408
|
+
message: `Subagent "${config.name}" has sandboxShutdown="${effectiveShutdown}" but fn did not return a sandboxId`,
|
|
1323
1409
|
nonRetryable: true
|
|
1324
1410
|
});
|
|
1325
1411
|
}
|
|
1326
1412
|
}
|
|
1327
|
-
const { parent } = workflowInfo();
|
|
1328
|
-
if (!parent) {
|
|
1329
|
-
throw ApplicationFailure.create({
|
|
1330
|
-
message: "Subagent workflow called without a parent workflow",
|
|
1331
|
-
nonRetryable: true
|
|
1332
|
-
});
|
|
1333
|
-
}
|
|
1334
|
-
const parentHandle = getExternalWorkflowHandle(parent.workflowId);
|
|
1335
1413
|
await parentHandle.signal(childResultSignal, {
|
|
1336
1414
|
childWorkflowId: workflowInfo().workflowId,
|
|
1337
1415
|
result
|
|
@@ -2262,6 +2340,9 @@ var SandboxManager = class {
|
|
|
2262
2340
|
async pause(id, ttlSeconds) {
|
|
2263
2341
|
await this.provider.pause(id, ttlSeconds);
|
|
2264
2342
|
}
|
|
2343
|
+
async resume(id) {
|
|
2344
|
+
await this.provider.resume(id);
|
|
2345
|
+
}
|
|
2265
2346
|
async snapshot(id) {
|
|
2266
2347
|
return this.provider.snapshot(id);
|
|
2267
2348
|
}
|
|
@@ -2305,6 +2386,9 @@ var SandboxManager = class {
|
|
|
2305
2386
|
pauseSandbox: async (sandboxId, ttlSeconds) => {
|
|
2306
2387
|
await this.pause(sandboxId, ttlSeconds);
|
|
2307
2388
|
},
|
|
2389
|
+
resumeSandbox: async (sandboxId) => {
|
|
2390
|
+
await this.resume(sandboxId);
|
|
2391
|
+
},
|
|
2308
2392
|
snapshotSandbox: async (sandboxId) => {
|
|
2309
2393
|
return this.snapshot(sandboxId);
|
|
2310
2394
|
},
|