managed-deepagents 0.9.1-dev.2 → 0.9.1-dev.20

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.
Files changed (135) hide show
  1. package/README.md +43 -16
  2. package/dist/channels/assistant-text.d.ts.map +1 -1
  3. package/dist/channels/assistant-text.js.map +1 -1
  4. package/dist/channels/binding.d.ts +3 -0
  5. package/dist/channels/binding.d.ts.map +1 -1
  6. package/dist/channels/binding.js.map +1 -1
  7. package/dist/channels/http/http.d.ts.map +1 -1
  8. package/dist/channels/http/http.js +6 -1
  9. package/dist/channels/http/http.js.map +1 -1
  10. package/dist/channels/http/ingress.d.ts +1 -1
  11. package/dist/channels/http/ingress.d.ts.map +1 -1
  12. package/dist/channels/http/ingress.js +3 -2
  13. package/dist/channels/http/ingress.js.map +1 -1
  14. package/dist/channels/http/types.d.ts +2 -1
  15. package/dist/channels/http/types.d.ts.map +1 -1
  16. package/dist/channels/message-schema.d.ts +2 -1
  17. package/dist/channels/message-schema.d.ts.map +1 -1
  18. package/dist/channels/message-schema.js.map +1 -1
  19. package/dist/channels/response-format.d.ts +2 -2
  20. package/dist/channels/response-format.d.ts.map +1 -1
  21. package/dist/channels/response-format.js +2 -2
  22. package/dist/channels/response-format.js.map +1 -1
  23. package/dist/channels/schedule-delivery.d.ts +3 -2
  24. package/dist/channels/schedule-delivery.d.ts.map +1 -1
  25. package/dist/channels/schedule-delivery.js +12 -22
  26. package/dist/channels/schedule-delivery.js.map +1 -1
  27. package/dist/channels/trigger/http.d.ts.map +1 -1
  28. package/dist/channels/trigger/http.js +2 -1
  29. package/dist/channels/trigger/http.js.map +1 -1
  30. package/dist/channels/trigger/ingress.d.ts +9 -6
  31. package/dist/channels/trigger/ingress.d.ts.map +1 -1
  32. package/dist/channels/trigger/ingress.js.map +1 -1
  33. package/dist/channels/trigger/types.d.ts +2 -4
  34. package/dist/channels/trigger/types.d.ts.map +1 -1
  35. package/dist/channels/trigger/types.js.map +1 -1
  36. package/dist/channels/types.d.ts +0 -4
  37. package/dist/channels/types.d.ts.map +1 -1
  38. package/dist/channels/types.js.map +1 -1
  39. package/dist/connectors/mcp/index.d.ts +2 -1
  40. package/dist/connectors/mcp/index.d.ts.map +1 -1
  41. package/dist/connectors/mcp/index.js +2 -8
  42. package/dist/connectors/mcp/index.js.map +1 -1
  43. package/dist/connectors/tool-selection.d.ts +6 -2
  44. package/dist/connectors/tool-selection.d.ts.map +1 -1
  45. package/dist/connectors/tool-selection.js +1 -4
  46. package/dist/connectors/tool-selection.js.map +1 -1
  47. package/dist/credential-gate.d.ts +2 -1
  48. package/dist/credential-gate.d.ts.map +1 -1
  49. package/dist/credential-gate.js +3 -1
  50. package/dist/credential-gate.js.map +1 -1
  51. package/dist/index.d.ts +3 -2
  52. package/dist/index.d.ts.map +1 -1
  53. package/dist/index.js.map +1 -1
  54. package/dist/ingress/index.d.ts +3 -5
  55. package/dist/ingress/index.d.ts.map +1 -1
  56. package/dist/ingress/index.js.map +1 -1
  57. package/dist/ingress/runs.d.ts +2 -2
  58. package/dist/ingress/runs.d.ts.map +1 -1
  59. package/dist/memory/instructions-middleware.d.ts +2 -5
  60. package/dist/memory/instructions-middleware.d.ts.map +1 -1
  61. package/dist/run-context.d.ts +2 -0
  62. package/dist/run-context.d.ts.map +1 -1
  63. package/dist/run-context.js +4 -0
  64. package/dist/run-context.js.map +1 -1
  65. package/dist/runtime/auth.d.ts +11 -1
  66. package/dist/runtime/auth.d.ts.map +1 -1
  67. package/dist/runtime/auth.js +3 -3
  68. package/dist/runtime/auth.js.map +1 -1
  69. package/dist/runtime/backend.d.ts +5 -2
  70. package/dist/runtime/backend.d.ts.map +1 -1
  71. package/dist/runtime/backend.js +5 -3
  72. package/dist/runtime/backend.js.map +1 -1
  73. package/dist/runtime/connector.d.ts +7 -3
  74. package/dist/runtime/connector.d.ts.map +1 -1
  75. package/dist/runtime/connector.js.map +1 -1
  76. package/dist/runtime/identity-runtime.d.ts +16 -15
  77. package/dist/runtime/identity-runtime.d.ts.map +1 -1
  78. package/dist/runtime/identity-runtime.js +4 -4
  79. package/dist/runtime/identity-runtime.js.map +1 -1
  80. package/dist/runtime/index.d.ts.map +1 -1
  81. package/dist/runtime/index.js +27 -15
  82. package/dist/runtime/index.js.map +1 -1
  83. package/dist/runtime/managed-middleware.d.ts +4 -6
  84. package/dist/runtime/managed-middleware.d.ts.map +1 -1
  85. package/dist/runtime/managed-middleware.js +4 -1
  86. package/dist/runtime/managed-middleware.js.map +1 -1
  87. package/dist/runtime/managed-tools.d.ts +20 -12
  88. package/dist/runtime/managed-tools.d.ts.map +1 -1
  89. package/dist/runtime/managed-tools.js +23 -9
  90. package/dist/runtime/managed-tools.js.map +1 -1
  91. package/dist/runtime/memory/context-io.d.ts +2 -2
  92. package/dist/runtime/memory/context-io.d.ts.map +1 -1
  93. package/dist/runtime/memory/context-io.js.map +1 -1
  94. package/dist/runtime/memory/mounts.d.ts +9 -7
  95. package/dist/runtime/memory/mounts.d.ts.map +1 -1
  96. package/dist/runtime/memory/mounts.js +10 -6
  97. package/dist/runtime/memory/mounts.js.map +1 -1
  98. package/dist/runtime/memory/user-memory.d.ts +5 -3
  99. package/dist/runtime/memory/user-memory.d.ts.map +1 -1
  100. package/dist/runtime/memory/user-memory.js +5 -2
  101. package/dist/runtime/memory/user-memory.js.map +1 -1
  102. package/dist/runtime/run-input.d.ts +12 -2
  103. package/dist/runtime/run-input.d.ts.map +1 -1
  104. package/dist/runtime/run-input.js +42 -13
  105. package/dist/runtime/run-input.js.map +1 -1
  106. package/dist/runtime/sandbox-manager.d.ts +25 -8
  107. package/dist/runtime/sandbox-manager.d.ts.map +1 -1
  108. package/dist/runtime/sandbox-manager.js +74 -41
  109. package/dist/runtime/sandbox-manager.js.map +1 -1
  110. package/dist/runtime/schedule-auth.d.ts +11 -1
  111. package/dist/runtime/schedule-auth.d.ts.map +1 -1
  112. package/dist/runtime/schedule-auth.js +42 -8
  113. package/dist/runtime/schedule-auth.js.map +1 -1
  114. package/dist/runtime/selected-skills.d.ts.map +1 -1
  115. package/dist/runtime/selected-skills.js.map +1 -1
  116. package/dist/runtime/types.d.ts +4 -16
  117. package/dist/runtime/types.d.ts.map +1 -1
  118. package/dist/runtime-schedules.d.ts +17 -2
  119. package/dist/runtime-schedules.d.ts.map +1 -1
  120. package/dist/runtime-schedules.js +247 -197
  121. package/dist/runtime-schedules.js.map +1 -1
  122. package/dist/sandbox-proxy.d.ts +2 -2
  123. package/dist/sandbox-proxy.d.ts.map +1 -1
  124. package/dist/sandbox-proxy.js.map +1 -1
  125. package/dist/sandbox.d.ts +2 -10
  126. package/dist/sandbox.d.ts.map +1 -1
  127. package/dist/sandbox.js.map +1 -1
  128. package/dist/schedules.d.ts +2 -0
  129. package/dist/schedules.d.ts.map +1 -1
  130. package/dist/schedules.js +6 -0
  131. package/dist/schedules.js.map +1 -1
  132. package/dist/types.d.ts +21 -25
  133. package/dist/types.d.ts.map +1 -1
  134. package/dist/types.js.map +1 -1
  135. package/package.json +7 -7
@@ -1,5 +1,6 @@
1
1
  import { CompiledStateGraph, getConfig } from "@langchain/langgraph";
2
2
  import { currentChannelBinding, resolveChannelBinding, } from "../channels/binding.js";
3
+ import { isManagedKey } from "../run-context.js";
3
4
  export function isRunExecution(config) {
4
5
  return !!config && Object.hasOwn(config, "context");
5
6
  }
@@ -14,11 +15,39 @@ export function isChannelExecution(config) {
14
15
  typeof user.mda_source_thread_id === "string" &&
15
16
  !!user.mda_source_thread_id.trim());
16
17
  }
18
+ export function isScheduledExecution(config) {
19
+ const user = config?.configurable?.langgraph_auth_user;
20
+ return (!!user &&
21
+ typeof user === "object" &&
22
+ user.mda_scheduled_run === true);
23
+ }
24
+ /** Split cron routing out of a managed run's context; direct runs keep theirs whole. */
17
25
  export function executionContext(config) {
18
- if (!isChannelExecution(config))
19
- return { binding: undefined, context: config?.context };
20
- const binding = resolveChannelBinding(config?.context, config?.configurable);
21
- return { binding, context: undefined };
26
+ const channelRun = isChannelExecution(config);
27
+ if (!channelRun && !isScheduledExecution(config))
28
+ return {
29
+ binding: undefined,
30
+ context: config?.context,
31
+ channelRun,
32
+ };
33
+ const raw = config?.context;
34
+ const entries = Object.entries(raw && typeof raw === "object" && !Array.isArray(raw)
35
+ ? raw
36
+ : {});
37
+ const routing = Object.fromEntries(entries.filter(([key]) => isManagedKey(key)));
38
+ const rest = Object.fromEntries(entries.filter(([key]) => !isManagedKey(key)));
39
+ return {
40
+ binding: channelRun
41
+ ? resolveChannelBinding({ channel: routing.mda_channel ?? routing.channel }, config?.configurable)
42
+ : undefined,
43
+ routing,
44
+ // A cron saved without a context fires with its configurable mirrored
45
+ // into the context; the principal there is never authored context.
46
+ context: "langgraph_auth_user" in rest || !Object.keys(rest).length
47
+ ? undefined
48
+ : rest,
49
+ channelRun,
50
+ };
22
51
  }
23
52
  /** Keep the adapter on native graph copies without binding an old instance. */
24
53
  class ManagedCompiledGraph extends CompiledStateGraph {
@@ -34,15 +63,14 @@ class ManagedCompiledGraph extends CompiledStateGraph {
34
63
  ...options?.configurable,
35
64
  },
36
65
  };
37
- const { binding } = executionContext(config);
38
- const channelRun = isChannelExecution(config);
39
- const scope = { binding, channelRun };
40
- const execution = channelRun && this.config?.context !== undefined
66
+ const scope = executionContext(config);
67
+ const managed = scope.routing !== undefined;
68
+ const execution = managed && this.config?.context !== undefined
41
69
  ? this.withConfig({})
42
70
  : this;
43
71
  if (execution !== this)
44
- execution.config = { ...execution.config, context: undefined };
45
- const iterator = super._streamIterator.call(execution, input, channelRun ? { ...options, context: undefined } : options);
72
+ execution.config = { ...execution.config, context: scope.context };
73
+ const iterator = super._streamIterator.call(execution, input, managed ? { ...options, context: scope.context } : options);
46
74
  try {
47
75
  while (true) {
48
76
  const item = await currentChannelBinding.run(scope, () => iterator.next());
@@ -56,9 +84,10 @@ class ManagedCompiledGraph extends CompiledStateGraph {
56
84
  }
57
85
  }
58
86
  async _validateContext(context) {
59
- // Native JS validates configurable when context is absent. Channel runs
60
- // have no application context to validate against the authored schema.
61
- return currentChannelBinding.getStore()?.channelRun
87
+ // Native JS validates configurable when context is absent. Managed runs
88
+ // without an authored context have nothing to validate against the schema.
89
+ const store = currentChannelBinding.getStore();
90
+ return store?.routing && store.context === undefined
62
91
  ? context
63
92
  : super._validateContext(context);
64
93
  }
@@ -1 +1 @@
1
- {"version":3,"file":"run-input.js","sourceRoot":"","sources":["../../src/runtime/run-input.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EACL,qBAAqB,EACrB,qBAAqB,GACtB,MAAM,wBAAwB,CAAC;AAIhC,MAAM,UAAU,cAAc,CAC5B,MAAyB;IAEzB,OAAO,CAAC,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;AACtD,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,MAAyB;IAC1D,MAAM,IAAI,GAAG,MAAM,EAAE,YAAY,EAAE,mBAAmB,CAAC;IACvD,OAAO,CACL,CAAC,CAAC,IAAI;QACN,OAAO,IAAI,KAAK,QAAQ;QACxB,qBAAqB,IAAI,IAAI;QAC7B,OAAO,IAAI,CAAC,mBAAmB,KAAK,QAAQ;QAC5C,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE;QACjC,sBAAsB,IAAI,IAAI;QAC9B,OAAO,IAAI,CAAC,oBAAoB,KAAK,QAAQ;QAC7C,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,EAAE,CACnC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,MAAyB;IACxD,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC;QAC7B,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;IAC1D,MAAM,OAAO,GAAG,qBAAqB,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;IAC7E,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;AACzC,CAAC;AAID,+EAA+E;AAC/E,MAAM,oBAAqB,SAAQ,kBAAoC;IACrE,KAAK,CAAC,CAAC,eAAe,CACpB,KAAc,EACd,OAEI;QAEJ,MAAM,OAAO,GAAG,SAAS,EAAE,CAAC;QAC5B,MAAM,MAAM,GAAG;YACb,GAAG,OAAO;YACV,GAAG,IAAI,CAAC,MAAM;YACd,GAAG,OAAO;YACV,YAAY,EAAE;gBACZ,GAAG,OAAO,EAAE,YAAY;gBACxB,GAAG,IAAI,CAAC,MAAM,EAAE,YAAY;gBAC5B,GAAG,OAAO,EAAE,YAAY;aACzB;SACF,CAAC;QACF,MAAM,EAAE,OAAO,EAAE,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,UAAU,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;QAC9C,MAAM,KAAK,GAAG,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC;QACtC,MAAM,SAAS,GACb,UAAU,IAAI,IAAI,CAAC,MAAM,EAAE,OAAO,KAAK,SAAS;YAC9C,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YACrB,CAAC,CAAC,IAAI,CAAC;QACX,IAAI,SAAS,KAAK,IAAI;YACpB,SAAS,CAAC,MAAM,GAAG,EAAE,GAAG,SAAS,CAAC,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;QACjE,MAAM,QAAQ,GAAG,KAAK,CAAC,eAAe,CAAC,IAAI,CACzC,SAAS,EACT,KAAK,EACL,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,OAAO,CAC1D,CAAC;QACF,IAAI,CAAC;YACH,OAAO,IAAI,EAAE,CAAC;gBACZ,MAAM,IAAI,GAAG,MAAM,qBAAqB,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,CACvD,QAAQ,CAAC,IAAI,EAAE,CAChB,CAAC;gBACF,IAAI,IAAI,CAAC,IAAI;oBAAE,OAAO;gBACtB,MAAM,IAAI,CAAC,KAAK,CAAC;YACnB,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,MAAM,qBAAqB,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC;IAES,KAAK,CAAC,gBAAgB,CAAC,OAAgC;QAC/D,wEAAwE;QACxE,uEAAuE;QACvE,OAAO,qBAAqB,CAAC,QAAQ,EAAE,EAAE,UAAU;YACjD,CAAC,CAAC,OAAO;YACT,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;CACF;AAED,MAAM,UAAU,qBAAqB,CAAC,KAAY;IAChD,IAAI,CAAC,CAAC,KAAK,CAAC,KAAK,YAAY,kBAAkB,CAAC;QAAE,OAAO,KAAK,CAAC;IAC/D,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,EAAE,oBAAoB,CAAC,SAAS,CAAC,CAAC;IACnE,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,CAAC;IACnC,KAAK,CAAC,UAAU,GAAG,UAAU,MAAuC;QAClE,OAAO,qBAAqB,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;IAC7D,CAAC,CAAC;IACF,OAAO,KAAK,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"run-input.js","sourceRoot":"","sources":["../../src/runtime/run-input.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { type SandboxBackendProtocolV2 } from "deepagents";
2
+ import type { CreateSandboxOptions, SandboxClientConfig } from "langsmith/sandbox";
2
3
  import type { IdentityDefinition } from "../identity/index.js";
3
4
  import type { SandboxDefinition } from "../sandbox.js";
4
5
  import { type Connector } from "./connector.js";
@@ -38,11 +39,20 @@ export declare function sandboxScopeKey(config: ManagedRunConfig | undefined, se
38
39
  /**
39
40
  * Stable, non-plaintext identity for an explicit dynamic sandbox selection.
40
41
  *
41
- * The digest keeps credentials and proxy header values out of cache keys,
42
- * logs, and Host sandbox names. Unsupported runtime values are rejected so
43
- * incompatible definitions cannot silently collapse onto one sandbox.
42
+ * Hashes only the identity options (snapshot, image, registry url, vCPUs,
43
+ * memory, filesystem capacity, mounts), so definitions that differ only in
44
+ * other options share a sandbox. Unsupported values in those identity options
45
+ * are rejected.
44
46
  */
45
47
  export declare function sandboxSelectionFingerprint(sandbox: SandboxDefinition): string;
48
+ /**
49
+ * Reconstruct the 0.9.0 selection fingerprint, which hashed every option.
50
+ *
51
+ * Used only to reconnect a live 0.9.0 box — new boxes are created under
52
+ * {@link sandboxSelectionFingerprint}. Remove in 0.10 once 0.9.0 sandboxes have
53
+ * idled out.
54
+ */
55
+ export declare function legacySandboxSelectionFingerprint(sandbox: SandboxDefinition): string;
46
56
  /** Clear the process-level sandbox cache. @internal Test-only. */
47
57
  export declare function clearManagedSandboxCacheForTests(): void;
48
58
  /** Options that pin invalidation to the sandbox that actually failed. */
@@ -98,18 +108,25 @@ export declare function managedSandboxName(deployment: string, scopeKey: string)
98
108
  * created under {@link managedSandboxName}.
99
109
  */
100
110
  export declare function legacyManagedSandboxName(deployment: string, scopeKey: string, createOptions?: Record<string, unknown>): string;
111
+ /**
112
+ * Arguments for `SandboxClient.createSandbox`.
113
+ *
114
+ * The client reads a snapshot id only from its positional first argument, so
115
+ * the id travels separately from the create options.
116
+ */
117
+ export interface SandboxCreateRequest {
118
+ snapshotId?: string;
119
+ options: CreateSandboxOptions;
120
+ }
101
121
  /** Options for `createSandbox`. */
102
- export declare function sandboxCreateOptions(sandbox: SandboxDefinition, selectionFingerprint?: string): Record<string, unknown>;
122
+ export declare function sandboxCreateOptions(sandbox: SandboxDefinition, selectionFingerprint?: string): SandboxCreateRequest;
103
123
  /**
104
124
  * Constructor options for the LangSmith sandbox client.
105
125
  *
106
126
  * Both the API key and the workspace scope come from the environment `mda`
107
127
  * wrote, so every sandbox call lands in the workspace holding the baked recipe.
108
128
  */
109
- export declare function sandboxClientOptions(sandbox: SandboxDefinition): {
110
- apiKey?: string;
111
- headers?: Record<string, string>;
112
- } | undefined;
129
+ export declare function sandboxClientOptions(sandbox: SandboxDefinition): SandboxClientConfig | undefined;
113
130
  /** Update proxy rules through the Host API until the SDK supports this field. */
114
131
  export declare function updateManagedSandboxProxyConfig(sandbox: SandboxDefinition, name: string, proxyConfig: import("langsmith/sandbox").SandboxProxyConfig): Promise<void>;
115
132
  //# sourceMappingURL=sandbox-manager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sandbox-manager.d.ts","sourceRoot":"","sources":["../../src/runtime/sandbox-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sandbox-manager.d.ts","sourceRoot":"","sources":["../../src/runtime/sandbox-manager.ts"],"names":[],"mappings":"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"}
@@ -192,11 +192,35 @@ export function sandboxScopeKey(config, selectionFingerprint) {
192
192
  /**
193
193
  * Stable, non-plaintext identity for an explicit dynamic sandbox selection.
194
194
  *
195
- * The digest keeps credentials and proxy header values out of cache keys,
196
- * logs, and Host sandbox names. Unsupported runtime values are rejected so
197
- * incompatible definitions cannot silently collapse onto one sandbox.
195
+ * Hashes only the identity options (snapshot, image, registry url, vCPUs,
196
+ * memory, filesystem capacity, mounts), so definitions that differ only in
197
+ * other options share a sandbox. Unsupported values in those identity options
198
+ * are rejected.
198
199
  */
199
200
  export function sandboxSelectionFingerprint(sandbox) {
201
+ const options = sandbox.options ?? {};
202
+ const identity = Object.fromEntries(Object.entries({
203
+ snapshotId: options.snapshotId,
204
+ snapshotName: options.snapshotName,
205
+ dockerImage: options.dockerImage,
206
+ registryUrl: options.registry?.url,
207
+ vCpus: options.vCpus,
208
+ memBytes: options.memBytes,
209
+ fsCapacityBytes: options.fsCapacityBytes,
210
+ mounts: options.mountConfig?.mounts,
211
+ }).filter(([, value]) => value !== undefined));
212
+ return createHash("sha256")
213
+ .update(JSON.stringify(canonicalSandboxValue(identity, new Set())))
214
+ .digest("hex");
215
+ }
216
+ /**
217
+ * Reconstruct the 0.9.0 selection fingerprint, which hashed every option.
218
+ *
219
+ * Used only to reconnect a live 0.9.0 box — new boxes are created under
220
+ * {@link sandboxSelectionFingerprint}. Remove in 0.10 once 0.9.0 sandboxes have
221
+ * idled out.
222
+ */
223
+ export function legacySandboxSelectionFingerprint(sandbox) {
200
224
  return createHash("sha256")
201
225
  .update(JSON.stringify(canonicalSandboxValue(sandbox.options, new Set())))
202
226
  .digest("hex");
@@ -468,14 +492,24 @@ function legacySandboxCreateOptions(sandbox) {
468
492
  }
469
493
  return createSandboxOptions;
470
494
  }
471
- /** 0.6 create name, then the 0.5.x name used only to reconnect a live box. */
472
- function managedSandboxLookupNames(deployment, scopeKey, sandbox) {
473
- const primary = managedSandboxName(deployment, scopeKey);
474
- const legacy = legacyManagedSandboxName(deployment, scopeKey, legacySandboxCreateOptions(sandbox));
475
- return primary === legacy ? [primary] : [primary, legacy];
495
+ /** Create name, then 0.9.0 and 0.5.x names that only reconnect a live box. */
496
+ function managedSandboxLookupNames(deployment, sandbox, config, selectionFingerprint) {
497
+ const scopeKey = sandboxScopeKey(config, selectionFingerprint);
498
+ const names = [managedSandboxName(deployment, scopeKey)];
499
+ if (selectionFingerprint) {
500
+ try {
501
+ names.push(managedSandboxName(deployment, sandboxScopeKey(config, legacySandboxSelectionFingerprint(sandbox))));
502
+ }
503
+ catch (error) {
504
+ if (!(error instanceof TypeError))
505
+ throw error;
506
+ }
507
+ }
508
+ names.push(legacyManagedSandboxName(deployment, scopeKey, legacySandboxCreateOptions(sandbox)));
509
+ return [...new Set(names)];
476
510
  }
477
511
  async function createLangSmithSandbox(sandbox, config, options, mode, scopeKey, recoveryName, existingSandbox) {
478
- const { backend, adopted, hostName, sandboxId } = await createLangSmithSandboxBackend(sandbox, scopeKey, options?.selectionFingerprint, recoveryName, existingSandbox);
512
+ const { backend, adopted, hostName, sandboxId } = await createLangSmithSandboxBackend(sandbox, config, scopeKey, options?.selectionFingerprint, recoveryName, existingSandbox);
479
513
  await runConnectorSandboxHooks(options?.connectors, {
480
514
  backend,
481
515
  // An adopted sandbox already ran create-time provisioning in an earlier
@@ -488,33 +522,38 @@ async function createLangSmithSandbox(sandbox, config, options, mode, scopeKey,
488
522
  }
489
523
  /** Options for `createSandbox`. */
490
524
  export function sandboxCreateOptions(sandbox, selectionFingerprint) {
491
- const { apiKey: _apiKey, defaultTimeout: _defaultTimeout, snapshotName, snapshotId, dockerImage: _dockerImage, registry: _registry, ...resolvedCreateOptions } = sandbox.options ?? {};
492
- const createSandboxOptions = {
493
- ...resolvedCreateOptions,
494
- };
525
+ const { apiKey: _apiKey, defaultTimeout: _defaultTimeout, snapshotName, snapshotId, dockerImage: _dockerImage, registry: _registry, proxyConfig, ...resolvedCreateOptions } = sandbox.options ?? {};
526
+ const options = { ...resolvedCreateOptions };
527
+ const request = { options };
495
528
  const recipe = stringOption(process.env[RECIPE_SNAPSHOT_ENV]);
496
529
  if (selectionFingerprint && snapshotId) {
497
- createSandboxOptions.snapshotId = snapshotId;
530
+ request.snapshotId = snapshotId;
498
531
  }
499
532
  else if (selectionFingerprint && snapshotName) {
500
- createSandboxOptions.snapshotName = snapshotName;
533
+ options.snapshotName = snapshotName;
501
534
  }
502
535
  else if (recipe) {
503
- createSandboxOptions.snapshotName = recipe;
536
+ options.snapshotName = recipe;
504
537
  }
505
- if (sandbox.options?.proxyConfig &&
506
- validateAndCollectSandboxProxyConfigReferences(sandbox.options.proxyConfig)
507
- .length > 0) {
508
- createSandboxOptions.proxyConfig = staticSandboxProxyConfig(sandbox.options.proxyConfig);
538
+ if (proxyConfig !== undefined) {
539
+ // Strips connection-backed headers; a config without them is returned as is.
540
+ options.proxyConfig = staticSandboxProxyConfig(proxyConfig);
509
541
  }
510
- return createSandboxOptions;
542
+ return request;
543
+ }
544
+ /** Create a host sandbox, passing any snapshot id positionally. */
545
+ function createHostSandbox(client, request, name) {
546
+ const options = name === undefined ? request.options : { ...request.options, name };
547
+ return request.snapshotId
548
+ ? client.createSandbox(request.snapshotId, options)
549
+ : client.createSandbox(options);
511
550
  }
512
551
  function hostSandboxNamesFor(sandbox, config, selectionFingerprint) {
513
552
  const deployment = managedDeploymentName();
514
553
  if (!deployment) {
515
554
  return [];
516
555
  }
517
- return managedSandboxLookupNames(deployment, sandboxScopeKey(config, selectionFingerprint), sandbox);
556
+ return managedSandboxLookupNames(deployment, sandbox, config, selectionFingerprint);
518
557
  }
519
558
  /**
520
559
  * Constructor options for the LangSmith sandbox client.
@@ -551,13 +590,13 @@ async function deleteHostSandbox(sandbox, name) {
551
590
  console.warn(`[mda] sandbox invalidate: delete failed name=${JSON.stringify(name)} err=${label}`);
552
591
  }
553
592
  }
554
- async function createLangSmithSandboxBackend(sandbox, scopeKey, selectionFingerprint, recoveryName, existingSandbox) {
593
+ async function createLangSmithSandboxBackend(sandbox, config, scopeKey, selectionFingerprint, recoveryName, existingSandbox) {
555
594
  const { defaultTimeout } = sandbox.options ?? {};
556
- const createSandboxOptions = sandboxCreateOptions(sandbox, selectionFingerprint);
595
+ const createRequest = sandboxCreateOptions(sandbox, selectionFingerprint);
557
596
  const client = new SandboxClient(sandboxClientOptions(sandbox));
558
597
  const deployment = managedDeploymentName();
559
598
  const lookupNames = deployment
560
- ? managedSandboxLookupNames(deployment, scopeKey, sandbox)
599
+ ? managedSandboxLookupNames(deployment, sandbox, config, selectionFingerprint)
561
600
  : [];
562
601
  const sandboxName = recoveryName ?? lookupNames[0];
563
602
  const fallbackName = deployment
@@ -566,8 +605,8 @@ async function createLangSmithSandboxBackend(sandbox, scopeKey, selectionFingerp
566
605
  const { sandbox: langSmithSandbox, adopted } = existingSandbox
567
606
  ? { sandbox: existingSandbox, adopted: true }
568
607
  : recoveryName
569
- ? await createReplacementSandbox(client, createSandboxOptions, recoveryName)
570
- : await resolveSandboxInstance(client, createSandboxOptions, sandboxName, fallbackName, lookupNames.slice(1));
608
+ ? await createReplacementSandbox(client, createRequest, recoveryName)
609
+ : await resolveSandboxInstance(client, createRequest, sandboxName, fallbackName, lookupNames.slice(1));
571
610
  const hostName = stringOption(langSmithSandbox.name) ?? sandboxName;
572
611
  console.info(`[mda] sandbox resolve: ${adopted ? "adopted" : "created"} ` +
573
612
  `name=${JSON.stringify(hostName ?? null)} ` +
@@ -583,10 +622,10 @@ async function createLangSmithSandboxBackend(sandbox, scopeKey, selectionFingerp
583
622
  sandboxId: langSmithSandbox.id,
584
623
  };
585
624
  }
586
- async function createReplacementSandbox(client, options, name) {
625
+ async function createReplacementSandbox(client, request, name) {
587
626
  try {
588
627
  return {
589
- sandbox: await client.createSandbox({ ...options, name }),
628
+ sandbox: await createHostSandbox(client, request, name),
590
629
  adopted: false,
591
630
  };
592
631
  }
@@ -604,17 +643,17 @@ async function createReplacementSandbox(client, options, name) {
604
643
  * finds the sandbox its predecessor created instead of stranding it until the
605
644
  * idle TTL fires. When `name` is undefined (local dev) this is a plain create.
606
645
  */
607
- async function resolveSandboxInstance(client, createSandboxOptions, name, fallbackName, adoptAliases = []) {
646
+ async function resolveSandboxInstance(client, createRequest, name, fallbackName, adoptAliases = []) {
608
647
  if (!name) {
609
648
  return {
610
- sandbox: await client.createSandbox(createSandboxOptions),
649
+ sandbox: await createHostSandbox(client, createRequest),
611
650
  adopted: false,
612
651
  };
613
652
  }
614
653
  // After invalidate, refuse to adopt the same Host name even if delete lags —
615
654
  // otherwise recreate loops on the broken box that just failed provision.
616
- // Aliases are 0.5.x names for this thread: reconnect a box that already
617
- // exists, never create under the old formula.
655
+ // Aliases are 0.9.0 and 0.5.x names for this thread: reconnect a box that
656
+ // already exists, never create under the old formula.
618
657
  const candidates = [name, ...adoptAliases.filter((alias) => alias !== name)];
619
658
  for (const candidate of candidates) {
620
659
  const existing = await adoptSandbox(client, candidate);
@@ -623,10 +662,7 @@ async function resolveSandboxInstance(client, createSandboxOptions, name, fallba
623
662
  }
624
663
  }
625
664
  try {
626
- const created = await client.createSandbox({
627
- ...createSandboxOptions,
628
- name,
629
- });
665
+ const created = await createHostSandbox(client, createRequest, name);
630
666
  invalidatedSandboxNames.delete(name);
631
667
  return { sandbox: created, adopted: false };
632
668
  }
@@ -644,10 +680,7 @@ async function resolveSandboxInstance(client, createSandboxOptions, name, fallba
644
680
  }
645
681
  }
646
682
  // Keep the deployment prefix so teardown still finds this sandbox.
647
- const created = await client.createSandbox({
648
- ...createSandboxOptions,
649
- name: fallbackName?.() ?? `${name}-${sandboxNameSuffix()}`,
650
- });
683
+ const created = await createHostSandbox(client, createRequest, fallbackName?.() ?? `${name}-${sandboxNameSuffix()}`);
651
684
  invalidatedSandboxNames.delete(name);
652
685
  return { sandbox: created, adopted: false };
653
686
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sandbox-manager.js","sourceRoot":"","sources":["../../src/runtime/sandbox-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sandbox-manager.js","sourceRoot":"","sources":["../../src/runtime/sandbox-manager.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import type { AuthEventValueMap, AuthFilters } from "@langchain/langgraph-sdk/auth";
1
2
  import { z } from "zod";
2
3
  import type { ManagedUser } from "./auth.js";
3
4
  export declare const SCHEDULE_HANDOFF_HEADER = "x-mda-schedule-handoff";
@@ -46,6 +47,15 @@ export declare function scheduleRequestConfig(access: ScheduleAccess): {
46
47
  };
47
48
  export declare function scheduleHandoffUser(request: Request): ManagedUser | undefined;
48
49
  export declare function scheduleAccess(user: unknown): ScheduleAccess | undefined;
49
- export declare function authorizeSchedule(user: ManagedUser, action: string, value: unknown): Promise<Record<string, string>>;
50
+ /**
51
+ * The value of any cron authorization event.
52
+ *
53
+ * The Agent Server also sends the cron `metadata`, which the upstream event
54
+ * types do not declare yet.
55
+ */
56
+ export type CronEventValue = AuthEventValueMap["crons:create" | "crons:read" | "crons:update" | "crons:delete" | "crons:search"] & {
57
+ metadata?: Record<string, unknown>;
58
+ };
59
+ export declare function authorizeSchedule(user: ManagedUser, action: string, value: CronEventValue): Promise<AuthFilters<string>>;
50
60
  export {};
51
61
  //# sourceMappingURL=schedule-auth.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schedule-auth.d.ts","sourceRoot":"","sources":["../../src/runtime/schedule-auth.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAI7C,eAAO,MAAM,uBAAuB,2BAA2B,CAAC;AAChE,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;kBAalC,CAAC;AACH,QAAA,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;kBAKhB,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAE1D,qEAAqE;AACrE,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,cAAc,GAAG;IAC7D,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC,CAiBA;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,WAAW,GAAG,SAAS,CAyC7E;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,OAAO,GAAG,cAAc,GAAG,SAAS,CAKxE;AAED,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,WAAW,EACjB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CA6FjC"}
1
+ {"version":3,"file":"schedule-auth.d.ts","sourceRoot":"","sources":["../../src/runtime/schedule-auth.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,iBAAiB,EACjB,WAAW,EACZ,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAM7C,eAAO,MAAM,uBAAuB,2BAA2B,CAAC;AAChE,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;kBAalC,CAAC;AAQH,QAAA,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;kBAKhB,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAE1D,qEAAqE;AACrE,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,cAAc,GAAG;IAC7D,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC,CAiBA;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,WAAW,GAAG,SAAS,CAyC7E;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,OAAO,GAAG,cAAc,GAAG,SAAS,CAKxE;AAED;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG,iBAAiB,CAC1C,cAAc,GACd,YAAY,GACZ,cAAc,GACd,cAAc,GACd,cAAc,CAAC,GAAG;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,CAAC;AAE7D,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,WAAW,EACjB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,cAAc,GACpB,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAwF9B"}
@@ -4,6 +4,8 @@ import { z } from "zod";
4
4
  import { validate as isUuid, v5 as uuid5 } from "uuid";
5
5
  import { isStudioAuthUser } from "./identity-runtime.js";
6
6
  import { isLoopbackUrl, resolveLoopbackApiUrl } from "../identity/loopback.js";
7
+ import { readScheduleDeliverTo } from "../channels/schedule-delivery.js";
8
+ import { channelContextSchema, isManagedKey } from "../run-context.js";
7
9
  export const SCHEDULE_HANDOFF_HEADER = "x-mda-schedule-handoff";
8
10
  export const scheduleExecutionSchema = z.strictObject({
9
11
  identity: z.string().min(1),
@@ -19,6 +21,13 @@ export const scheduleExecutionSchema = z.strictObject({
19
21
  /** Marks cron runs; channel provider overrides leave it in place. */
20
22
  mda_scheduled_run: z.literal(true).optional(),
21
23
  });
24
+ const scheduleContextSchema = z.looseObject({
25
+ mda_schedule: z.object({
26
+ name: z.string().trim().min(1),
27
+ deliver_to: z.unknown().optional(),
28
+ }),
29
+ mda_channel: z.unknown().optional(),
30
+ });
22
31
  const accessSchema = z.strictObject({
23
32
  owner: z.string().min(1),
24
33
  assistant: z.string().uuid(),
@@ -91,6 +100,7 @@ export function scheduleAccess(user) {
91
100
  }
92
101
  export async function authorizeSchedule(user, action, value) {
93
102
  const access = scheduleAccess(user);
103
+ // Upstream types `payload` as an open record; this is the subset read here.
94
104
  const data = value;
95
105
  if (!access) {
96
106
  if (!isStudioAuthUser(user))
@@ -112,7 +122,6 @@ export async function authorizeSchedule(user, action, value) {
112
122
  mda_schedule_owner: "agent",
113
123
  mda_schedule_assistant: assistant,
114
124
  });
115
- const configurable = ((data.payload.config ??= {}).configurable ??= {});
116
125
  const execution = scheduleExecutionSchema.parse({
117
126
  identity: `mda:schedule:${assistant}`,
118
127
  permissions: [],
@@ -128,8 +137,9 @@ export async function authorizeSchedule(user, action, value) {
128
137
  execution,
129
138
  thread: data.thread_id,
130
139
  });
131
- configurable.langgraph_auth_user = execution;
132
- configurable.langgraph_auth_permissions = [];
140
+ if (data.payload.context !== undefined)
141
+ checkScheduleContext(data.payload.context, execution, "deploy");
142
+ stampExecution(data.payload, execution);
133
143
  }
134
144
  return {};
135
145
  }
@@ -147,15 +157,13 @@ export async function authorizeSchedule(user, action, value) {
147
157
  return deny();
148
158
  Object.assign(data.metadata, filters, { mda_managed: true });
149
159
  }
160
+ if (data.payload?.context !== undefined)
161
+ checkScheduleContext(data.payload.context, access.execution, "runtime");
150
162
  if (action === "create" ||
151
163
  (action === "update" && data.payload?.config !== undefined)) {
152
164
  if (!data.payload)
153
165
  return deny();
154
- const configurable = ((data.payload.config ??= {}).configurable ??= {});
155
- if (Object.keys(configurable).some((key) => key !== "mda_schedule" && key !== "cron_id" && key !== "channel"))
156
- return deny();
157
- configurable.langgraph_auth_user = { ...access.execution };
158
- configurable.langgraph_auth_permissions = [];
166
+ stampExecution(data.payload, access.execution);
159
167
  }
160
168
  if (action === "update" &&
161
169
  data.metadata &&
@@ -163,6 +171,32 @@ export async function authorizeSchedule(user, action, value) {
163
171
  return deny();
164
172
  return filters;
165
173
  }
174
+ /** Cron routing lives in the run context; the principal is the only configurable entry. */
175
+ function stampExecution(payload, execution) {
176
+ const configurable = ((payload.config ??= {}).configurable ??= {});
177
+ if (Object.keys(configurable).some((key) => key !== "cron_id"))
178
+ deny();
179
+ configurable.langgraph_auth_user = { ...execution };
180
+ }
181
+ function checkScheduleContext(context, execution, source) {
182
+ const parsed = scheduleContextSchema.safeParse(context);
183
+ if (!parsed.success)
184
+ deny();
185
+ const { mda_schedule, mda_channel, ...rest } = parsed.data;
186
+ if (Object.keys(rest).some(isManagedKey) ||
187
+ (mda_schedule.deliver_to !== undefined &&
188
+ !readScheduleDeliverTo(mda_schedule.deliver_to)))
189
+ deny();
190
+ if (mda_channel === undefined)
191
+ return;
192
+ if (source === "deploy")
193
+ deny();
194
+ const binding = channelContextSchema.safeParse(mda_channel);
195
+ if (!binding.success ||
196
+ binding.data.provider !== execution.mda_source_provider ||
197
+ binding.data.sourceThreadKey !== execution.mda_source_thread_id)
198
+ deny();
199
+ }
166
200
  async function checkPersistentThread(access) {
167
201
  const { base, headers } = scheduleRequestConfig(access);
168
202
  const response = await fetch(`${base}/threads/${access.thread}`, {