managed-deepagents 0.10.0-dev.9 → 0.10.1-dev.1

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 (397) hide show
  1. package/README.md +864 -143
  2. package/dist/browser.d.ts +37 -0
  3. package/dist/browser.d.ts.map +1 -0
  4. package/dist/browser.js +31 -0
  5. package/dist/browser.js.map +1 -0
  6. package/dist/channels/actor.d.ts +57 -0
  7. package/dist/channels/actor.d.ts.map +1 -0
  8. package/dist/channels/actor.js +24 -0
  9. package/dist/channels/actor.js.map +1 -0
  10. package/dist/channels/assistant-text.d.ts +29 -0
  11. package/dist/channels/assistant-text.d.ts.map +1 -1
  12. package/dist/channels/assistant-text.js +81 -4
  13. package/dist/channels/assistant-text.js.map +1 -1
  14. package/dist/channels/binding.d.ts +20 -1
  15. package/dist/channels/binding.d.ts.map +1 -1
  16. package/dist/channels/binding.js +44 -11
  17. package/dist/channels/binding.js.map +1 -1
  18. package/dist/channels/delivery.d.ts +51 -0
  19. package/dist/channels/delivery.d.ts.map +1 -0
  20. package/dist/channels/delivery.js +424 -0
  21. package/dist/channels/delivery.js.map +1 -0
  22. package/dist/channels/github/app-setup.d.ts +32 -0
  23. package/dist/channels/github/app-setup.d.ts.map +1 -0
  24. package/dist/channels/github/app-setup.js +146 -0
  25. package/dist/channels/github/app-setup.js.map +1 -0
  26. package/dist/channels/github/index.d.ts +5 -1
  27. package/dist/channels/github/index.d.ts.map +1 -1
  28. package/dist/channels/github/index.js +38 -46
  29. package/dist/channels/github/index.js.map +1 -1
  30. package/dist/channels/github/mentions.d.ts +12 -0
  31. package/dist/channels/github/mentions.d.ts.map +1 -0
  32. package/dist/channels/github/mentions.js +185 -0
  33. package/dist/channels/github/mentions.js.map +1 -0
  34. package/dist/channels/github/schema.d.ts +271 -0
  35. package/dist/channels/github/schema.d.ts.map +1 -1
  36. package/dist/channels/github/schema.js +33 -0
  37. package/dist/channels/github/schema.js.map +1 -1
  38. package/dist/channels/github/types.d.ts +50 -26
  39. package/dist/channels/github/types.d.ts.map +1 -1
  40. package/dist/channels/http/endpoint.d.ts +137 -0
  41. package/dist/channels/http/endpoint.d.ts.map +1 -0
  42. package/dist/channels/http/endpoint.js +286 -0
  43. package/dist/channels/http/endpoint.js.map +1 -0
  44. package/dist/channels/http/http.d.ts.map +1 -1
  45. package/dist/channels/http/http.js +209 -89
  46. package/dist/channels/http/http.js.map +1 -1
  47. package/dist/channels/http/index.d.ts +7 -1
  48. package/dist/channels/http/index.d.ts.map +1 -1
  49. package/dist/channels/http/index.js +32 -23
  50. package/dist/channels/http/index.js.map +1 -1
  51. package/dist/channels/http/ingress.d.ts +30 -24
  52. package/dist/channels/http/ingress.d.ts.map +1 -1
  53. package/dist/channels/http/ingress.js +61 -57
  54. package/dist/channels/http/ingress.js.map +1 -1
  55. package/dist/channels/http/provider.d.ts +38 -15
  56. package/dist/channels/http/provider.d.ts.map +1 -1
  57. package/dist/channels/http/provider.js +54 -24
  58. package/dist/channels/http/provider.js.map +1 -1
  59. package/dist/channels/http/studio.d.ts +8 -1
  60. package/dist/channels/http/studio.d.ts.map +1 -1
  61. package/dist/channels/http/studio.js +13 -0
  62. package/dist/channels/http/studio.js.map +1 -1
  63. package/dist/channels/http/types.d.ts +95 -69
  64. package/dist/channels/http/types.d.ts.map +1 -1
  65. package/dist/channels/linear/app-setup.d.ts +29 -0
  66. package/dist/channels/linear/app-setup.d.ts.map +1 -0
  67. package/dist/channels/linear/app-setup.js +102 -0
  68. package/dist/channels/linear/app-setup.js.map +1 -0
  69. package/dist/channels/linear/index.d.ts +5 -1
  70. package/dist/channels/linear/index.d.ts.map +1 -1
  71. package/dist/channels/linear/index.js +65 -94
  72. package/dist/channels/linear/index.js.map +1 -1
  73. package/dist/channels/linear/schema.d.ts +11 -25
  74. package/dist/channels/linear/schema.d.ts.map +1 -1
  75. package/dist/channels/linear/schema.js +6 -0
  76. package/dist/channels/linear/schema.js.map +1 -1
  77. package/dist/channels/linear/types.d.ts +37 -31
  78. package/dist/channels/linear/types.d.ts.map +1 -1
  79. package/dist/channels/messaging-registry.d.ts +16 -0
  80. package/dist/channels/messaging-registry.d.ts.map +1 -1
  81. package/dist/channels/messaging-registry.js +29 -0
  82. package/dist/channels/messaging-registry.js.map +1 -1
  83. package/dist/channels/reserved-connections.d.ts.map +1 -1
  84. package/dist/channels/reserved-connections.js +10 -0
  85. package/dist/channels/reserved-connections.js.map +1 -1
  86. package/dist/channels/resolve-user-endpoint.d.ts +34 -0
  87. package/dist/channels/resolve-user-endpoint.d.ts.map +1 -0
  88. package/dist/channels/resolve-user-endpoint.js +51 -0
  89. package/dist/channels/resolve-user-endpoint.js.map +1 -0
  90. package/dist/channels/resolve-user.d.ts +95 -0
  91. package/dist/channels/resolve-user.d.ts.map +1 -0
  92. package/dist/channels/resolve-user.js +143 -0
  93. package/dist/channels/resolve-user.js.map +1 -0
  94. package/dist/channels/run-input.d.ts +46 -4
  95. package/dist/channels/run-input.d.ts.map +1 -1
  96. package/dist/channels/run-input.js +94 -30
  97. package/dist/channels/run-input.js.map +1 -1
  98. package/dist/channels/runtime.d.ts +5 -2
  99. package/dist/channels/runtime.d.ts.map +1 -1
  100. package/dist/channels/runtime.js +19 -10
  101. package/dist/channels/runtime.js.map +1 -1
  102. package/dist/channels/schedule-delivery.d.ts +2 -13
  103. package/dist/channels/schedule-delivery.d.ts.map +1 -1
  104. package/dist/channels/schedule-delivery.js +9 -76
  105. package/dist/channels/schedule-delivery.js.map +1 -1
  106. package/dist/channels/slack/api.d.ts +2 -0
  107. package/dist/channels/slack/api.d.ts.map +1 -1
  108. package/dist/channels/slack/api.js +6 -0
  109. package/dist/channels/slack/api.js.map +1 -1
  110. package/dist/channels/slack/connections.d.ts +6 -0
  111. package/dist/channels/slack/connections.d.ts.map +1 -0
  112. package/dist/channels/slack/connections.js +6 -0
  113. package/dist/channels/slack/connections.js.map +1 -0
  114. package/dist/channels/slack/events.d.ts +278 -0
  115. package/dist/channels/slack/events.d.ts.map +1 -0
  116. package/dist/channels/slack/events.js +235 -0
  117. package/dist/channels/slack/events.js.map +1 -0
  118. package/dist/channels/slack/files.d.ts.map +1 -1
  119. package/dist/channels/slack/files.js +2 -3
  120. package/dist/channels/slack/files.js.map +1 -1
  121. package/dist/channels/slack/index.d.ts +90 -2
  122. package/dist/channels/slack/index.d.ts.map +1 -1
  123. package/dist/channels/slack/index.js +188 -6
  124. package/dist/channels/slack/index.js.map +1 -1
  125. package/dist/channels/slack/message-content.d.ts.map +1 -1
  126. package/dist/channels/slack/message-content.js +23 -28
  127. package/dist/channels/slack/message-content.js.map +1 -1
  128. package/dist/channels/slack/status.d.ts +76 -0
  129. package/dist/channels/slack/status.d.ts.map +1 -0
  130. package/dist/channels/slack/status.js +427 -0
  131. package/dist/channels/slack/status.js.map +1 -0
  132. package/dist/channels/trigger/client.d.ts.map +1 -1
  133. package/dist/channels/trigger/client.js +9 -11
  134. package/dist/channels/trigger/client.js.map +1 -1
  135. package/dist/channels/trigger/conversation.d.ts +11 -0
  136. package/dist/channels/trigger/conversation.d.ts.map +1 -0
  137. package/dist/channels/trigger/conversation.js +72 -0
  138. package/dist/channels/trigger/conversation.js.map +1 -0
  139. package/dist/channels/trigger/http.d.ts +130 -4
  140. package/dist/channels/trigger/http.d.ts.map +1 -1
  141. package/dist/channels/trigger/http.js +419 -82
  142. package/dist/channels/trigger/http.js.map +1 -1
  143. package/dist/channels/trigger/identity-context.d.ts +1 -1
  144. package/dist/channels/trigger/identity-context.d.ts.map +1 -1
  145. package/dist/channels/trigger/identity-context.js +3 -5
  146. package/dist/channels/trigger/identity-context.js.map +1 -1
  147. package/dist/channels/trigger/ingress.d.ts +70 -1
  148. package/dist/channels/trigger/ingress.d.ts.map +1 -1
  149. package/dist/channels/trigger/ingress.js +141 -9
  150. package/dist/channels/trigger/ingress.js.map +1 -1
  151. package/dist/channels/trigger/transport.d.ts +10 -0
  152. package/dist/channels/trigger/transport.d.ts.map +1 -1
  153. package/dist/channels/trigger/transport.js +25 -9
  154. package/dist/channels/trigger/transport.js.map +1 -1
  155. package/dist/channels/trigger/types.d.ts +92 -3
  156. package/dist/channels/trigger/types.d.ts.map +1 -1
  157. package/dist/channels/trigger/types.js +37 -0
  158. package/dist/channels/trigger/types.js.map +1 -1
  159. package/dist/channels/types.d.ts +53 -4
  160. package/dist/channels/types.d.ts.map +1 -1
  161. package/dist/channels/types.js +2 -0
  162. package/dist/channels/types.js.map +1 -1
  163. package/dist/concurrency/batch-processor.d.ts +51 -0
  164. package/dist/concurrency/batch-processor.d.ts.map +1 -0
  165. package/dist/concurrency/batch-processor.js +99 -0
  166. package/dist/concurrency/batch-processor.js.map +1 -0
  167. package/dist/connections.d.ts +5 -12
  168. package/dist/connections.d.ts.map +1 -1
  169. package/dist/connections.js +28 -30
  170. package/dist/connections.js.map +1 -1
  171. package/dist/connectors/mcp/langsmith-url.d.ts.map +1 -1
  172. package/dist/connectors/mcp/langsmith-url.js +0 -1
  173. package/dist/connectors/mcp/langsmith-url.js.map +1 -1
  174. package/dist/credential-gate.js +3 -3
  175. package/dist/credential-gate.js.map +1 -1
  176. package/dist/define-deep-agent.d.ts +2 -2
  177. package/dist/define-deep-agent.d.ts.map +1 -1
  178. package/dist/define-deep-agent.js +53 -2
  179. package/dist/define-deep-agent.js.map +1 -1
  180. package/dist/identity/index.d.ts.map +1 -1
  181. package/dist/identity/index.js +3 -1
  182. package/dist/identity/index.js.map +1 -1
  183. package/dist/identity/loopback.d.ts +7 -2
  184. package/dist/identity/loopback.d.ts.map +1 -1
  185. package/dist/identity/loopback.js +15 -4
  186. package/dist/identity/loopback.js.map +1 -1
  187. package/dist/identity/options.d.ts +9 -0
  188. package/dist/identity/options.d.ts.map +1 -1
  189. package/dist/identity/options.js +1 -1
  190. package/dist/identity/options.js.map +1 -1
  191. package/dist/identity/slack/links.js +3 -2
  192. package/dist/identity/slack/links.js.map +1 -1
  193. package/dist/identity/types.d.ts +3 -0
  194. package/dist/identity/types.d.ts.map +1 -1
  195. package/dist/index.d.ts +15 -5
  196. package/dist/index.d.ts.map +1 -1
  197. package/dist/index.js +2 -1
  198. package/dist/index.js.map +1 -1
  199. package/dist/ingress/index.d.ts +8 -0
  200. package/dist/ingress/index.d.ts.map +1 -1
  201. package/dist/ingress/index.js +32 -2
  202. package/dist/ingress/index.js.map +1 -1
  203. package/dist/ingress/loopback.d.ts +1 -0
  204. package/dist/ingress/loopback.d.ts.map +1 -1
  205. package/dist/ingress/loopback.js +7 -3
  206. package/dist/ingress/loopback.js.map +1 -1
  207. package/dist/ingress/runs.d.ts +27 -1
  208. package/dist/ingress/runs.d.ts.map +1 -1
  209. package/dist/ingress/runs.js +69 -6
  210. package/dist/ingress/runs.js.map +1 -1
  211. package/dist/managed-composition.d.ts +3 -0
  212. package/dist/managed-composition.d.ts.map +1 -1
  213. package/dist/managed-composition.js +29 -13
  214. package/dist/managed-composition.js.map +1 -1
  215. package/dist/memory/instructions-middleware.d.ts.map +1 -1
  216. package/dist/memory/instructions-middleware.js +6 -5
  217. package/dist/memory/instructions-middleware.js.map +1 -1
  218. package/dist/namespaces.d.ts +4 -21
  219. package/dist/namespaces.d.ts.map +1 -1
  220. package/dist/namespaces.js +0 -29
  221. package/dist/namespaces.js.map +1 -1
  222. package/dist/resilience/retry.d.ts +21 -0
  223. package/dist/resilience/retry.d.ts.map +1 -0
  224. package/dist/resilience/retry.js +40 -0
  225. package/dist/resilience/retry.js.map +1 -0
  226. package/dist/runtime/async-subagents.d.ts +27 -0
  227. package/dist/runtime/async-subagents.d.ts.map +1 -0
  228. package/dist/runtime/async-subagents.js +139 -0
  229. package/dist/runtime/async-subagents.js.map +1 -0
  230. package/dist/runtime/auth.d.ts +1 -2
  231. package/dist/runtime/auth.d.ts.map +1 -1
  232. package/dist/runtime/auth.js +138 -72
  233. package/dist/runtime/auth.js.map +1 -1
  234. package/dist/runtime/backend.d.ts +9 -1
  235. package/dist/runtime/backend.d.ts.map +1 -1
  236. package/dist/runtime/backend.js +36 -11
  237. package/dist/runtime/backend.js.map +1 -1
  238. package/dist/runtime/browser-facade.d.ts +10 -0
  239. package/dist/runtime/browser-facade.d.ts.map +1 -0
  240. package/dist/runtime/browser-facade.js +23 -0
  241. package/dist/runtime/browser-facade.js.map +1 -0
  242. package/dist/runtime/browser-langsmith.d.ts +143 -0
  243. package/dist/runtime/browser-langsmith.d.ts.map +1 -0
  244. package/dist/runtime/browser-langsmith.js +507 -0
  245. package/dist/runtime/browser-langsmith.js.map +1 -0
  246. package/dist/runtime/browser-recorder.py +831 -0
  247. package/dist/runtime/browser-selection.d.ts +10 -0
  248. package/dist/runtime/browser-selection.d.ts.map +1 -0
  249. package/dist/runtime/browser-selection.js +21 -0
  250. package/dist/runtime/browser-selection.js.map +1 -0
  251. package/dist/runtime/browser.d.ts +138 -0
  252. package/dist/runtime/browser.d.ts.map +1 -0
  253. package/dist/runtime/browser.js +802 -0
  254. package/dist/runtime/browser.js.map +1 -0
  255. package/dist/runtime/channel-icon.d.ts.map +1 -1
  256. package/dist/runtime/channel-icon.js +18 -7
  257. package/dist/runtime/channel-icon.js.map +1 -1
  258. package/dist/runtime/channel.d.ts +5 -0
  259. package/dist/runtime/channel.d.ts.map +1 -1
  260. package/dist/runtime/channel.js.map +1 -1
  261. package/dist/runtime/graph-build-timing.d.ts +30 -0
  262. package/dist/runtime/graph-build-timing.d.ts.map +1 -0
  263. package/dist/runtime/graph-build-timing.js +50 -0
  264. package/dist/runtime/graph-build-timing.js.map +1 -0
  265. package/dist/runtime/http.d.ts +15 -0
  266. package/dist/runtime/http.d.ts.map +1 -1
  267. package/dist/runtime/http.js +37 -0
  268. package/dist/runtime/http.js.map +1 -1
  269. package/dist/runtime/identity-http.d.ts.map +1 -1
  270. package/dist/runtime/identity-http.js +19 -7
  271. package/dist/runtime/identity-http.js.map +1 -1
  272. package/dist/runtime/identity-runtime.d.ts +4 -9
  273. package/dist/runtime/identity-runtime.d.ts.map +1 -1
  274. package/dist/runtime/identity-runtime.js +12 -25
  275. package/dist/runtime/identity-runtime.js.map +1 -1
  276. package/dist/runtime/index.d.ts +38 -1
  277. package/dist/runtime/index.d.ts.map +1 -1
  278. package/dist/runtime/index.js +104 -52
  279. package/dist/runtime/index.js.map +1 -1
  280. package/dist/runtime/langsmith-env.d.ts +19 -0
  281. package/dist/runtime/langsmith-env.d.ts.map +1 -0
  282. package/dist/runtime/langsmith-env.js +38 -0
  283. package/dist/runtime/langsmith-env.js.map +1 -0
  284. package/dist/runtime/log.d.ts +8 -14
  285. package/dist/runtime/log.d.ts.map +1 -1
  286. package/dist/runtime/log.js +16 -7
  287. package/dist/runtime/log.js.map +1 -1
  288. package/dist/runtime/managed-middleware.d.ts.map +1 -1
  289. package/dist/runtime/managed-middleware.js +1 -14
  290. package/dist/runtime/managed-middleware.js.map +1 -1
  291. package/dist/runtime/managed-thread.d.ts +61 -0
  292. package/dist/runtime/managed-thread.d.ts.map +1 -0
  293. package/dist/runtime/managed-thread.js +76 -0
  294. package/dist/runtime/managed-thread.js.map +1 -0
  295. package/dist/runtime/managed-tools.d.ts +18 -2
  296. package/dist/runtime/managed-tools.d.ts.map +1 -1
  297. package/dist/runtime/managed-tools.js +26 -22
  298. package/dist/runtime/managed-tools.js.map +1 -1
  299. package/dist/runtime/memory/mounts.d.ts +82 -11
  300. package/dist/runtime/memory/mounts.d.ts.map +1 -1
  301. package/dist/runtime/memory/mounts.js +173 -34
  302. package/dist/runtime/memory/mounts.js.map +1 -1
  303. package/dist/runtime/memory/policy.d.ts.map +1 -1
  304. package/dist/runtime/memory/policy.js +1 -3
  305. package/dist/runtime/memory/policy.js.map +1 -1
  306. package/dist/runtime/parent-run.d.ts +33 -0
  307. package/dist/runtime/parent-run.d.ts.map +1 -0
  308. package/dist/runtime/parent-run.js +114 -0
  309. package/dist/runtime/parent-run.js.map +1 -0
  310. package/dist/runtime/run-input.d.ts +14 -1
  311. package/dist/runtime/run-input.d.ts.map +1 -1
  312. package/dist/runtime/run-input.js +118 -7
  313. package/dist/runtime/run-input.js.map +1 -1
  314. package/dist/runtime/sandbox-manager.d.ts +31 -17
  315. package/dist/runtime/sandbox-manager.d.ts.map +1 -1
  316. package/dist/runtime/sandbox-manager.js +112 -70
  317. package/dist/runtime/sandbox-manager.js.map +1 -1
  318. package/dist/runtime/schedule-auth.d.ts +79 -0
  319. package/dist/runtime/schedule-auth.d.ts.map +1 -1
  320. package/dist/runtime/schedule-auth.js +165 -7
  321. package/dist/runtime/schedule-auth.js.map +1 -1
  322. package/dist/runtime/selected-skills-backend.d.ts +3 -3
  323. package/dist/runtime/selected-skills-backend.d.ts.map +1 -1
  324. package/dist/runtime/selected-skills-backend.js +5 -5
  325. package/dist/runtime/selected-skills-backend.js.map +1 -1
  326. package/dist/runtime/static-entry.d.ts.map +1 -1
  327. package/dist/runtime/static-entry.js +1 -0
  328. package/dist/runtime/static-entry.js.map +1 -1
  329. package/dist/runtime/thread-record.d.ts +88 -0
  330. package/dist/runtime/thread-record.d.ts.map +1 -0
  331. package/dist/runtime/thread-record.js +213 -0
  332. package/dist/runtime/thread-record.js.map +1 -0
  333. package/dist/runtime/types.d.ts +12 -1
  334. package/dist/runtime/types.d.ts.map +1 -1
  335. package/dist/runtime-schedules.d.ts +15 -0
  336. package/dist/runtime-schedules.d.ts.map +1 -1
  337. package/dist/runtime-schedules.js +85 -23
  338. package/dist/runtime-schedules.js.map +1 -1
  339. package/dist/sandbox.d.ts +0 -6
  340. package/dist/sandbox.d.ts.map +1 -1
  341. package/dist/sandbox.js +3 -7
  342. package/dist/sandbox.js.map +1 -1
  343. package/dist/schedule-channel.d.ts +5 -2
  344. package/dist/schedule-channel.d.ts.map +1 -1
  345. package/dist/schedule-channel.js +13 -12
  346. package/dist/schedule-channel.js.map +1 -1
  347. package/dist/telemetry/lifecycle.d.ts +26 -0
  348. package/dist/telemetry/lifecycle.d.ts.map +1 -0
  349. package/dist/telemetry/lifecycle.js +49 -0
  350. package/dist/telemetry/lifecycle.js.map +1 -0
  351. package/dist/telemetry/metadata.d.ts.map +1 -1
  352. package/dist/telemetry/metadata.js +4 -4
  353. package/dist/telemetry/metadata.js.map +1 -1
  354. package/dist/telemetry/otel/context.d.ts +57 -0
  355. package/dist/telemetry/otel/context.d.ts.map +1 -0
  356. package/dist/telemetry/otel/context.js +122 -0
  357. package/dist/telemetry/otel/context.js.map +1 -0
  358. package/dist/telemetry/otel/exporter.d.ts +53 -0
  359. package/dist/telemetry/otel/exporter.d.ts.map +1 -0
  360. package/dist/telemetry/otel/exporter.js +190 -0
  361. package/dist/telemetry/otel/exporter.js.map +1 -0
  362. package/dist/telemetry/otel/index.d.ts +6 -0
  363. package/dist/telemetry/otel/index.d.ts.map +1 -0
  364. package/dist/telemetry/otel/index.js +3 -0
  365. package/dist/telemetry/otel/index.js.map +1 -0
  366. package/dist/telemetry/otel/otlp.d.ts +44 -0
  367. package/dist/telemetry/otel/otlp.d.ts.map +1 -0
  368. package/dist/telemetry/otel/otlp.js +7 -0
  369. package/dist/telemetry/otel/otlp.js.map +1 -0
  370. package/dist/telemetry/otel/truncate.d.ts +10 -0
  371. package/dist/telemetry/otel/truncate.d.ts.map +1 -0
  372. package/dist/telemetry/otel/truncate.js +39 -0
  373. package/dist/telemetry/otel/truncate.js.map +1 -0
  374. package/dist/telemetry/run-listener.d.ts +1 -1
  375. package/dist/telemetry/run-listener.d.ts.map +1 -1
  376. package/dist/telemetry/run-listener.js +32 -2
  377. package/dist/telemetry/run-listener.js.map +1 -1
  378. package/dist/telemetry/transport/posthog.d.ts +13 -1
  379. package/dist/telemetry/transport/posthog.d.ts.map +1 -1
  380. package/dist/telemetry/transport/posthog.js +68 -30
  381. package/dist/telemetry/transport/posthog.js.map +1 -1
  382. package/dist/types.d.ts +19 -2
  383. package/dist/types.d.ts.map +1 -1
  384. package/dist/types.js.map +1 -1
  385. package/dist/values.d.ts +15 -0
  386. package/dist/values.d.ts.map +1 -0
  387. package/dist/values.js +31 -0
  388. package/dist/values.js.map +1 -0
  389. package/package.json +26 -12
  390. package/dist/channels/http/forward.d.ts +0 -13
  391. package/dist/channels/http/forward.d.ts.map +0 -1
  392. package/dist/channels/http/forward.js +0 -128
  393. package/dist/channels/http/forward.js.map +0 -1
  394. package/dist/channels/http/reply.d.ts +0 -20
  395. package/dist/channels/http/reply.d.ts.map +0 -1
  396. package/dist/channels/http/reply.js +0 -116
  397. package/dist/channels/http/reply.js.map +0 -1
@@ -2,10 +2,12 @@ import { setTimeout as sleep } from "node:timers/promises";
2
2
  import { Auth, HTTPException, isStudioUser, } from "@langchain/langgraph-sdk/auth";
3
3
  import { isTrustedSourceProvider } from "../channels/source-providers.js";
4
4
  import {} from "../identity/index.js";
5
- import { buildRuntimeIdentity, CHANNEL_THREAD_METADATA, runtimeUserId, } from "./identity-runtime.js";
5
+ import { buildRuntimeIdentity, runtimeUserId } from "./identity-runtime.js";
6
6
  import { logger } from "./log.js";
7
+ import { THREAD_CONVERSATION_METADATA, hasThreadRecordKeys, parseThreadRecord, stripThreadRecordKeys, } from "./thread-record.js";
7
8
  import { resolveValidatedTokenUser } from "./validated-token.js";
8
- import { authorizeSchedule, scheduleAccess, scheduleHandoffUser, } from "./schedule-auth.js";
9
+ import { authorizeSchedule, isScheduleThreadRecord, scheduleAccess, scheduleHandoffUser, threadHandoffGrant, threadHandoffUser, } from "./schedule-auth.js";
10
+ import { isRecord } from "../values.js";
9
11
  /**
10
12
  * Reserved transport for the trusted-backend ingress mode. User identity
11
13
  * travels as reserved headers (mapped into `config.configurable` by the generated
@@ -62,7 +64,6 @@ const CHANNEL_EVENTS_PATH = /^\/(?:v1\/)?channels\/[^/]+\/events\/?$/;
62
64
  const CONNECTOR_EVENTS_PATH = /^\/connectors\/[^/]+\/events\/?$/;
63
65
  /** Synthetic user so middleware_first allows adapter-authenticated Events ingress. */
64
66
  const CHANNEL_EVENTS_USER = "mda:channel-events";
65
- export { CHANNEL_THREAD_METADATA };
66
67
  /** Owner-key namespace for threads owned by a channel source conversation. */
67
68
  export const CHANNEL_THREAD_OWNER_PREFIX = "mda:source-thread:";
68
69
  /**
@@ -79,6 +80,9 @@ export function buildManagedAuth(identity) {
79
80
  const scheduleUser = scheduleHandoffUser(request);
80
81
  if (scheduleUser)
81
82
  return scheduleUser;
83
+ const handoffUser = threadHandoffUser(request);
84
+ if (handoffUser)
85
+ return handoffUser;
82
86
  // Provider-signed channel Events must reach the public HTTP handler before
83
87
  // MDA ingress can succeed (Slack cannot present x-mda-ingress-secret).
84
88
  if (isChannelEventsRequest(request)) {
@@ -100,27 +104,38 @@ export function buildManagedAuth(identity) {
100
104
  return resolveValidatedTokenUser(cfg, http, request);
101
105
  });
102
106
  // Let Studio inspect every deployment thread so channel-triggered runs and
103
- // their interrupts are visible there, and answer those interrupts on
104
- // channel threads, which channels link to. Keep other mutations
105
- // owner-scoped: Studio identity is reachable by any holder of a workspace
106
- // LangSmith API key, so exempting all thread actions would also let that key
107
- // alter caller threads or speak in a channel's conversation.
107
+ // their interrupts are visible there, and answer interrupts on any thread,
108
+ // which channels link to. Keep other mutations owner-scoped: Studio
109
+ // identity is reachable by any holder of a workspace LangSmith API key, so
110
+ // exempting all thread actions would also let that key alter caller threads
111
+ // or speak in a channel's conversation.
108
112
  auth.on("threads", ({ user, action, value }) => {
113
+ const handoff = threadHandoffGrant(user);
114
+ if (handoff)
115
+ return authorizeThreadHandoff(user, handoff, action, value);
109
116
  if (action === "search" && scheduleAccess(user))
110
117
  return true;
118
+ // Read before the record keys are stripped: naming one is not a resume.
119
+ const resumeOnly = isStudioUser(user) && action === "create_run" && isResumeOnly(value);
120
+ guardThreadRecord(user, action, value);
111
121
  if (isLocalDevUnscopedUser(user)) {
112
122
  return true;
113
123
  }
114
124
  if (isStudioUser(user) && (action === "read" || action === "search")) {
115
125
  return true;
116
126
  }
127
+ // Studio may stop a run on any thread, as it may resume one there, so a
128
+ // runaway channel run can be cancelled from the deployment UI. Only
129
+ // `interrupt` on one thread: `rollback` deletes checkpoints, and a bulk
130
+ // cancel without a thread would stop every run in the deployment.
131
+ if (isStudioUser(user) &&
132
+ action === "update" &&
133
+ isSingleThreadInterrupt(value)) {
134
+ return true;
135
+ }
117
136
  if (isStudioUser(user) && action === "create_run") {
118
- if (isResumeOnly(value)) {
119
- const channelThreads = {
120
- [CHANNEL_THREAD_METADATA]: "true",
121
- };
122
- return channelThreads;
123
- }
137
+ if (resumeOnly)
138
+ return true;
124
139
  // Owner-scoped below, so Studio sees "not found"; say why, by shape only.
125
140
  logger.info(`studio run is not a resume, so it is owner-scoped ${JSON.stringify(runShape(value))}`);
126
141
  }
@@ -128,20 +143,7 @@ export function buildManagedAuth(identity) {
128
143
  const key = threadOwnerKey(managed);
129
144
  if (value && typeof value === "object") {
130
145
  const container = value;
131
- // Only managed ingress marks a thread as a channel's; no client can.
132
- const { [CHANNEL_THREAD_METADATA]: _claimed, ...metadata } = container.metadata ?? {};
133
- container.metadata = {
134
- ...metadata,
135
- owner: key,
136
- // Searches keep finding threads made before the marker existed.
137
- ...(action !== "search" &&
138
- channelConversationOwnerKey(managed) && {
139
- [CHANNEL_THREAD_METADATA]: "true",
140
- }),
141
- };
142
- // A run's config metadata merges into what the run sees as well, so a
143
- // run can't claim the marker there either.
144
- dropChannelThreadMarker(value.config);
146
+ container.metadata = { ...container.metadata, owner: key };
145
147
  }
146
148
  return { owner: key };
147
149
  });
@@ -166,10 +168,13 @@ export function buildManagedAuth(identity) {
166
168
  // their own scoping.
167
169
  auth.on("*", ({ user, resource, action, value }) => {
168
170
  // An assistant's metadata merges into its runs' too, so no caller, Studio
169
- // included, may mark an assistant as a channel's.
171
+ // included, may give an assistant a thread record.
170
172
  if (resource === "assistants") {
171
- dropChannelThreadMarker(value);
172
- dropChannelThreadMarker(value?.config);
173
+ if (isRecord(value)) {
174
+ stripThreadRecordKeys(value.metadata);
175
+ if (isRecord(value.config))
176
+ stripThreadRecordKeys(value.config.metadata);
177
+ }
173
178
  }
174
179
  if (isStudioUser(user) || isLocalDevUnscopedUser(user)) {
175
180
  return true;
@@ -274,15 +279,13 @@ export function assertStoreAccess(user, value) {
274
279
  const namespace = value && typeof value === "object" && Array.isArray(value.namespace)
275
280
  ? value.namespace.map(String)
276
281
  : [];
277
- // Managed account-link / legacy GitHub-credential tables are deployment-wide.
278
- // Only the trusted identity-links service principal (ingress secret +
279
- // SERVICE_ACTOR) may read/write them — not ordinary authenticated users via
280
- // the Store API.
281
- if (namespace[0] === IDENTITY_LINKS_STORE_PREFIX ||
282
+ if (user.mda_user_id === IDENTITY_LINKS_SERVICE_USER) {
283
+ return;
284
+ }
285
+ if (!namespace[0] ||
286
+ namespace[0] === "*" ||
287
+ namespace[0] === IDENTITY_LINKS_STORE_PREFIX ||
282
288
  namespace[0] === GITHUB_CREDENTIALS_STORE_PREFIX) {
283
- if (user.mda_user_id === IDENTITY_LINKS_SERVICE_USER) {
284
- return;
285
- }
286
289
  throw new HTTPException(403, {
287
290
  message: "store namespace is outside the caller's identity boundary",
288
291
  });
@@ -479,7 +482,7 @@ async function verifyLangSmithApiKey(endpoint, headers) {
479
482
  message: "LangSmith API-key verification returned an invalid response",
480
483
  });
481
484
  }
482
- if (!isJsonObject(verified)) {
485
+ if (!isRecord(verified)) {
483
486
  throw new HTTPException(503, {
484
487
  message: "LangSmith API-key verification returned an invalid response",
485
488
  });
@@ -566,8 +569,14 @@ async function fetchLangSmithVerification(url, headers) {
566
569
  await sleep(Math.random() * Math.min(100 * 2 ** attempt, 200));
567
570
  }
568
571
  }
569
- function isJsonObject(value) {
570
- return typeof value === "object" && value !== null && !Array.isArray(value);
572
+ /**
573
+ * True for a run-cancel `threads:update` that interrupts runs on one thread.
574
+ *
575
+ * Run cancellation is the only thread update that carries `action`; metadata
576
+ * patches and state updates never set it.
577
+ */
578
+ function isSingleThreadInterrupt(value) {
579
+ return (isRecord(value) && value.action === "interrupt" && value.thread_id != null);
571
580
  }
572
581
  function isLangSmithApiKeyAuth(http) {
573
582
  return typeof http === "object" && http.mode === "langsmith_api_key";
@@ -630,48 +639,112 @@ function localDevServiceUser(request) {
630
639
  * checkpoint and the user's breakpoints, so none of those can be refused.
631
640
  */
632
641
  function isResumeOnly(value) {
633
- if (!isPlainRecord(value))
642
+ if (!isRecord(value))
634
643
  return false;
635
644
  const { thread_id: threadId, kwargs } = value;
636
645
  if (typeof threadId !== "string" || !threadId.trim())
637
646
  return false;
638
- if (!isPlainRecord(kwargs) || kwargs.input != null)
647
+ if (!isRecord(kwargs) || kwargs.input != null)
639
648
  return false;
640
649
  if (kwargs.webhook != null)
641
650
  return false;
642
- // The run's metadata merges over the thread's; it may not unmark the thread.
643
- if (claimsChannelThread(value.metadata))
651
+ // The run's metadata merges over the thread's; it may not touch its record.
652
+ if (claimsThreadRecord(value.metadata))
644
653
  return false;
645
654
  const { config } = kwargs;
646
- if (config != null && !isPlainRecord(config))
655
+ if (config != null && !isRecord(config))
647
656
  return false;
648
- if (isPlainRecord(config) && claimsChannelThread(config.metadata)) {
657
+ if (isRecord(config) && claimsThreadRecord(config.metadata)) {
649
658
  return false;
650
659
  }
651
660
  const { command } = kwargs;
652
- return (isPlainRecord(command) &&
661
+ return (isRecord(command) &&
653
662
  Object.keys(command).every((key) => key === "resume") &&
654
663
  command.resume != null);
655
664
  }
656
- /** Whether run metadata names the channel-thread marker at all. */
657
- function claimsChannelThread(metadata) {
665
+ /** Whether run metadata names a thread-record key at all. */
666
+ function claimsThreadRecord(metadata) {
658
667
  if (metadata == null)
659
668
  return false;
660
- return (!isPlainRecord(metadata) || Object.hasOwn(metadata, CHANNEL_THREAD_METADATA));
669
+ return !isRecord(metadata) || hasThreadRecordKeys(metadata);
670
+ }
671
+ /**
672
+ * Strip the thread record from a payload unless managed ingress writes it.
673
+ *
674
+ * The Agent Server protects no metadata key, and a run's metadata merges over
675
+ * its thread's, so only a thread create or update by the conversation's own
676
+ * channel caller keeps a record, and only one for that conversation. Runs
677
+ * carry none, except a cron fire whose new-thread record names its
678
+ * execution. Searches only filter, so they keep theirs.
679
+ */
680
+ function guardThreadRecord(user, action, value) {
681
+ if (action === "search" || !isRecord(value))
682
+ return;
683
+ const { metadata, config, kwargs } = value;
684
+ // A cron fire's run metadata is its cron's, which becomes a new thread's
685
+ // metadata; cron auth already checked that record against the execution.
686
+ const keepRecord = action === "create" || action === "update"
687
+ ? isIngressThreadRecord(user, metadata)
688
+ : action === "create_run" &&
689
+ user.mda_scheduled_run === true &&
690
+ isScheduleThreadRecord(metadata, user);
691
+ stripThreadRecordKeys(metadata, { keepRecord });
692
+ stripThreadRecordKeys(isRecord(config) ? config.metadata : undefined);
693
+ const runConfig = isRecord(kwargs) ? kwargs.config : undefined;
694
+ stripThreadRecordKeys(isRecord(runConfig) ? runConfig.metadata : undefined);
695
+ }
696
+ /**
697
+ * Let a scheduled run move its own thread to the conversation its post
698
+ * started: one update, found under the run's owner key, that writes the
699
+ * conversation's record and key and makes the conversation the owner. A read
700
+ * finds the thread only once the conversation owns it.
701
+ */
702
+ function authorizeThreadHandoff(user, handoff, action, value) {
703
+ if (action === "read" &&
704
+ isRecord(value) &&
705
+ value.thread_id === handoff.thread)
706
+ return { owner: threadOwnerKey(user) };
707
+ if (action !== "update" ||
708
+ !isRecord(value) ||
709
+ value.thread_id !== handoff.thread ||
710
+ value.action != null ||
711
+ !isRecord(value.metadata) ||
712
+ value.metadata[THREAD_CONVERSATION_METADATA] !==
713
+ user.mda_source_thread_id ||
714
+ !isIngressThreadRecord(user, value.metadata))
715
+ throw new HTTPException(403, {
716
+ message: "Thread handoff is not permitted",
717
+ });
718
+ stripThreadRecordKeys(value.metadata, {
719
+ keepRecord: true,
720
+ keepConversation: true,
721
+ });
722
+ value.metadata.owner = threadOwnerKey(user);
723
+ return { owner: threadOwnerKey(handoff.execution) };
724
+ }
725
+ /** Whether metadata holds a well-formed record of the caller's own conversation. */
726
+ function isIngressThreadRecord(user, metadata) {
727
+ if (!channelConversationOwnerKey(user))
728
+ return false;
729
+ const origin = parseThreadRecord(metadata, { exact: true })?.origin;
730
+ return (!!origin &&
731
+ origin.channel.provider === user.mda_source_provider &&
732
+ origin.channel.source_thread_key === user.mda_source_thread_id &&
733
+ (origin.sender === null || origin.sender === user.mda_user_id));
661
734
  }
662
735
  /** What a run payload holds, without its values, to explain a refusal. */
663
736
  function runShape(value) {
664
- if (!isPlainRecord(value))
737
+ if (!isRecord(value))
665
738
  return { value: typeof value };
666
739
  const { thread_id: threadId, kwargs } = value;
667
- const input = isPlainRecord(kwargs) ? kwargs.input : undefined;
668
- const command = isPlainRecord(kwargs) ? kwargs.command : undefined;
740
+ const input = isRecord(kwargs) ? kwargs.input : undefined;
741
+ const command = isRecord(kwargs) ? kwargs.command : undefined;
669
742
  return {
670
743
  threadId: typeof threadId,
671
- webhook: isPlainRecord(kwargs) && kwargs.webhook != null,
672
- kwargs: isPlainRecord(kwargs) ? "object" : typeof kwargs,
744
+ webhook: isRecord(kwargs) && kwargs.webhook != null,
745
+ kwargs: isRecord(kwargs) ? "object" : typeof kwargs,
673
746
  input: input === null ? "null" : Array.isArray(input) ? "array" : typeof input,
674
- command: isPlainRecord(command)
747
+ command: isRecord(command)
675
748
  ? Object.keys(command)
676
749
  .slice(0, 8)
677
750
  .map((key) => logger.logIdentifier(key))
@@ -680,19 +753,6 @@ function runShape(value) {
680
753
  : typeof command,
681
754
  };
682
755
  }
683
- function isPlainRecord(value) {
684
- return typeof value === "object" && value !== null && !Array.isArray(value);
685
- }
686
- /**
687
- * Remove the channel-thread marker from a payload's `metadata`. A run's
688
- * metadata is its assistant's, thread's, config's and own metadata merged, and
689
- * only managed ingress may mark a channel's thread.
690
- */
691
- function dropChannelThreadMarker(holder) {
692
- if (isPlainRecord(holder) && isPlainRecord(holder.metadata)) {
693
- delete holder.metadata[CHANNEL_THREAD_METADATA];
694
- }
695
- }
696
756
  /**
697
757
  * Derive the owner value `@auth.on.threads` filters on.
698
758
  *
@@ -752,7 +812,13 @@ export function isChannelEventsRequest(request) {
752
812
  return false;
753
813
  }
754
814
  const { pathname } = new URL(request.url);
755
- return (CHANNEL_EVENTS_PATH.test(pathname) || CONNECTOR_EVENTS_PATH.test(pathname));
815
+ // Host keeps the deployment mount prefix in auth requests. Only strip the
816
+ // server-configured prefix, never an arbitrary prefix from the caller.
817
+ const mountPrefix = process.env.MOUNT_PREFIX?.replace(/\/+$/, "");
818
+ const path = mountPrefix?.startsWith("/") && pathname.startsWith(`${mountPrefix}/`)
819
+ ? pathname.slice(mountPrefix.length)
820
+ : pathname;
821
+ return CHANNEL_EVENTS_PATH.test(path) || CONNECTOR_EVENTS_PATH.test(path);
756
822
  }
757
823
  /** Placeholder identity so middleware allows provider-signed channel Events. */
758
824
  export function channelEventsBypassUser() {
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/runtime/auth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/runtime/auth.ts"],"names":[],"mappings":"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"}
@@ -9,15 +9,18 @@ import type { SandboxBackendProtocolV2 } from "deepagents";
9
9
  import type { IdentityDefinition } from "../identity/index.js";
10
10
  import type { SandboxDefinition } from "../sandbox.js";
11
11
  import type { Connector } from "./connector.js";
12
+ import { type SandboxSelection } from "./sandbox-manager.js";
12
13
  import type { ManagedRunConfig } from "./types.js";
13
14
  /** The `[path, content]` pairs `uploadFiles` accepts. */
14
15
  type UploadFileEntries = Parameters<NonNullable<SandboxBackendProtocolV2["uploadFiles"]>>[0];
15
16
  type SandboxBackendDeps = {
16
17
  sandbox: SandboxDefinition;
17
- sandboxSelectionFingerprint?: string;
18
+ sandboxSelection?: SandboxSelection;
18
19
  runConfig: ManagedRunConfig | undefined;
19
20
  connectors: readonly Connector[] | undefined;
20
21
  identity: IdentityDefinition | undefined;
22
+ /** The lead thread an async subagent run shares the sandbox of, once verified. */
23
+ leadThread?: string;
21
24
  };
22
25
  /**
23
26
  * Lazy sandbox backend. Identity is frozen at construction — use
@@ -38,6 +41,11 @@ export declare class LazyManagedSandboxBackend implements SandboxBackendProtocol
38
41
  /** Capture the run without resolving its sandbox until an operation needs it. */
39
42
  bindRuntime(runtime: unknown): LazyManagedSandboxBackend;
40
43
  get id(): string;
44
+ /**
45
+ * This thread's sandbox if this process opened it, through any handle.
46
+ * Never opens one, and is `undefined` when the run has no thread id.
47
+ */
48
+ opened(): SandboxBackendProtocolV2 | undefined;
41
49
  ls(path?: string): Promise<import("deepagents").LsResult>;
42
50
  read(filePath: string, offset?: number, limit?: number): Promise<import("deepagents").ReadResult>;
43
51
  readRaw(filePath: string): Promise<import("deepagents").ReadRawResult>;
@@ -1 +1 @@
1
- {"version":3,"file":"backend.d.ts","sourceRoot":"","sources":["../../src/runtime/backend.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAI3D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAUhD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD,yDAAyD;AACzD,KAAK,iBAAiB,GAAG,UAAU,CACjC,WAAW,CAAC,wBAAwB,CAAC,aAAa,CAAC,CAAC,CACrD,CAAC,CAAC,CAAC,CAAC;AAkCL,KAAK,kBAAkB,GAAG;IACxB,OAAO,EAAE,iBAAiB,CAAC;IAC3B,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,SAAS,EAAE,gBAAgB,GAAG,SAAS,CAAC;IACxC,UAAU,EAAE,SAAS,SAAS,EAAE,GAAG,SAAS,CAAC;IAC7C,QAAQ,EAAE,kBAAkB,GAAG,SAAS,CAAC;CAC1C,CAAC;AA0FF;;;GAGG;AACH,qBAAa,yBAA0B,YAAW,wBAAwB;IAEtE,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAHpC,OAAO,eAIH;IAEJ,gEAAgE;IAChE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,kBAAkB,GAAG,yBAAyB,CAMjE;IAED;;;OAGG;IACH,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,yBAAyB,CAItD;IAED,iFAAiF;IACjF,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,yBAAyB,CAKvD;IAED,IAAI,EAAE,IAAI,MAAM,CAsBf;IAEK,EAAE,CAAC,IAAI,SAAM,0CAElB;IAEK,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,4CAE3D;IAEK,OAAO,CAAC,QAAQ,EAAE,MAAM,+CAE7B;IAEK,IAAI,CACR,OAAO,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,EACpB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,EACpB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,4CAOzB;IAEK,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,4CAMxC;IAEK,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,6CAE5C;IAEK,IAAI,CACR,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,UAAU,UAAQ,4CAKnB;IAEK,MAAM,CAAC,QAAQ,EAAE,MAAM,8CAO5B;IAEK,WAAW,CAAC,KAAK,EAAE,iBAAiB,sDAOzC;IAEK,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,wDAOlC;IAEK,OAAO,CAAC,OAAO,EAAE,MAAM,iDAO5B;YAEa,sBAAsB;IAqBpC,OAAO,CAAC,QAAQ;IAIhB,OAAO,CAAC,WAAW;IAMnB,OAAO,CAAC,SAAS;CAoBlB"}
1
+ {"version":3,"file":"backend.d.ts","sourceRoot":"","sources":["../../src/runtime/backend.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAI3D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEhD,OAAO,EAQL,KAAK,gBAAgB,EAEtB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD,yDAAyD;AACzD,KAAK,iBAAiB,GAAG,UAAU,CACjC,WAAW,CAAC,wBAAwB,CAAC,aAAa,CAAC,CAAC,CACrD,CAAC,CAAC,CAAC,CAAC;AAkCL,KAAK,kBAAkB,GAAG;IACxB,OAAO,EAAE,iBAAiB,CAAC;IAC3B,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,SAAS,EAAE,gBAAgB,GAAG,SAAS,CAAC;IACxC,UAAU,EAAE,SAAS,SAAS,EAAE,GAAG,SAAS,CAAC;IAC7C,QAAQ,EAAE,kBAAkB,GAAG,SAAS,CAAC;IACzC,kFAAkF;IAClF,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAkHF;;;GAGG;AACH,qBAAa,yBAA0B,YAAW,wBAAwB;IAEtE,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAHpC,OAAO,eAIH;IAEJ,gEAAgE;IAChE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,kBAAkB,GAAG,yBAAyB,CAMjE;IAED;;;OAGG;IACH,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,yBAAyB,CAItD;IAED,iFAAiF;IACjF,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,yBAAyB,CAKvD;IAED,IAAI,EAAE,IAAI,MAAM,CAgBf;IAED;;;OAGG;IACH,MAAM,IAAI,wBAAwB,GAAG,SAAS,CAa7C;IAEK,EAAE,CAAC,IAAI,SAAM,0CAElB;IAEK,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,4CAE3D;IAEK,OAAO,CAAC,QAAQ,EAAE,MAAM,+CAE7B;IAEK,IAAI,CACR,OAAO,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,EACpB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,EACpB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,4CAOzB;IAEK,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,4CAMxC;IAEK,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,6CAE5C;IAEK,IAAI,CACR,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,UAAU,UAAQ,4CAKnB;IAEK,MAAM,CAAC,QAAQ,EAAE,MAAM,8CAO5B;IAEK,WAAW,CAAC,KAAK,EAAE,iBAAiB,sDAOzC;IAEK,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,wDAOlC;IAEK,OAAO,CAAC,OAAO,EAAE,MAAM,iDAO5B;YAEa,sBAAsB;IAqBpC,OAAO,CAAC,QAAQ;IAIhB,OAAO,CAAC,WAAW;IAMnB,OAAO,CAAC,SAAS;CAoBlB"}
@@ -9,7 +9,7 @@ import { createHash } from "node:crypto";
9
9
  import { posix as posixPath } from "node:path";
10
10
  import { resolveSandboxProxyConfig } from "../sandbox-proxy.js";
11
11
  import { resolveRuntimeConfigurable } from "./identity-runtime.js";
12
- import { managedSandboxHostName, recoverManagedSandbox, isSandboxNotFoundError, resolveManagedSandbox, sandboxScopeKey, updateManagedSandboxProxyConfig, } from "./sandbox-manager.js";
12
+ import { managedSandboxHostName, recoverManagedSandbox, withLeadSandbox, isSandboxNotFoundError, openedManagedSandbox, resolveManagedSandbox, sandboxScopeKey, updateManagedSandboxProxyConfig, } from "./sandbox-manager.js";
13
13
  /**
14
14
  * Refusal returned instead of globbing the sandbox root.
15
15
  *
@@ -37,6 +37,10 @@ function isFilesystemRoot(path) {
37
37
  }
38
38
  return posixPath.normalize(raw) === "/";
39
39
  }
40
+ /** The run's sandbox scope: its lead's, for an async subagent sharing it. */
41
+ function scopeKey(deps, config) {
42
+ return withLeadSandbox(deps.leadThread, () => sandboxScopeKey(config, deps.sandboxSelection));
43
+ }
40
44
  /**
41
45
  * Process-scoped resolve cache shared by all {@link LazyManagedSandboxBackend}
42
46
  * instances created from the same factory (unbound + per-run siblings).
@@ -45,12 +49,17 @@ class SandboxResolveCache {
45
49
  pendingByScope = new Map();
46
50
  resolvedByScope = new Map();
47
51
  sandboxProxyConfigHashes = new WeakMap();
48
- idFor(config, selectionFingerprint) {
49
- return (this.resolvedByScope.get(sandboxScopeKey(config, selectionFingerprint))
50
- ?.id ?? "");
52
+ idFor(deps, config) {
53
+ return this.resolvedFor(deps, config)?.id ?? "";
54
+ }
55
+ resolvedFor(deps, config) {
56
+ return this.resolvedByScope.get(scopeKey(deps, config));
51
57
  }
52
58
  resolve(deps, config) {
53
- const key = sandboxScopeKey(config, deps.sandboxSelectionFingerprint);
59
+ return withLeadSandbox(deps.leadThread, () => this.resolveInScope(deps, config));
60
+ }
61
+ resolveInScope(deps, config) {
62
+ const key = sandboxScopeKey(config, deps.sandboxSelection);
54
63
  const existing = this.pendingByScope.get(key);
55
64
  if (existing) {
56
65
  return existing;
@@ -58,7 +67,7 @@ class SandboxResolveCache {
58
67
  const pending = resolveManagedSandbox(deps.sandbox, config, {
59
68
  connectors: deps.connectors === undefined ? undefined : [...deps.connectors],
60
69
  identity: deps.identity,
61
- selectionFingerprint: deps.sandboxSelectionFingerprint,
70
+ selection: deps.sandboxSelection,
62
71
  }).then((backend) => {
63
72
  const managed = backend;
64
73
  this.resolvedByScope.set(key, managed);
@@ -79,12 +88,13 @@ class SandboxResolveCache {
79
88
  return await operation(backend);
80
89
  }
81
90
  catch (error) {
82
- if (isSandboxNotFoundError(error)) {
83
- const key = sandboxScopeKey(config, deps.sandboxSelectionFingerprint);
91
+ // Only the lead recovers its sandbox.
92
+ if (isSandboxNotFoundError(error) && !deps.leadThread) {
93
+ const key = sandboxScopeKey(config, deps.sandboxSelection);
84
94
  await recoverManagedSandbox(deps.sandbox, config, backend, {
85
95
  connectors: deps.connectors === undefined ? undefined : [...deps.connectors],
86
96
  identity: deps.identity,
87
- selectionFingerprint: deps.sandboxSelectionFingerprint,
97
+ selection: deps.sandboxSelection,
88
98
  })
89
99
  .then((recovered) => {
90
100
  if (this.resolvedByScope.get(key) === backend) {
@@ -137,16 +147,31 @@ export class LazyManagedSandboxBackend {
137
147
  // must not crash CompositeBackend construction.
138
148
  try {
139
149
  const config = this.runConfig();
140
- const resolved = this.cache.idFor(config, this.deps.sandboxSelectionFingerprint);
150
+ const resolved = this.cache.idFor(this.deps, config);
141
151
  if (resolved) {
142
152
  return resolved;
143
153
  }
144
- return `pending:${sandboxScopeKey(config, this.deps.sandboxSelectionFingerprint)}`;
154
+ return `pending:${scopeKey(this.deps, config)}`;
145
155
  }
146
156
  catch {
147
157
  return "pending:sandbox";
148
158
  }
149
159
  }
160
+ /**
161
+ * This thread's sandbox if this process opened it, through any handle.
162
+ * Never opens one, and is `undefined` when the run has no thread id.
163
+ */
164
+ opened() {
165
+ try {
166
+ const config = this.runConfig();
167
+ const selection = this.deps.sandboxSelection;
168
+ return (this.cache.resolvedFor(this.deps, config) ??
169
+ withLeadSandbox(this.deps.leadThread, () => openedManagedSandbox(config, selection)));
170
+ }
171
+ catch {
172
+ return undefined;
173
+ }
174
+ }
150
175
  async ls(path = "/") {
151
176
  return this.withBackend((backend) => backend.ls(path));
152
177
  }
@@ -1 +1 @@
1
- {"version":3,"file":"backend.js","sourceRoot":"","sources":["../../src/runtime/backend.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"backend.js","sourceRoot":"","sources":["../../src/runtime/backend.ts"],"names":[],"mappings":"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"}