@multiplayer-app/sandbox 0.0.37 → 2.0.0-wip-yjs-state-changes.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (736) hide show
  1. package/README.md +121 -0
  2. package/dist/cli.d.ts +3 -0
  3. package/dist/cli.d.ts.map +1 -0
  4. package/dist/cli.js +105 -0
  5. package/dist/cli.js.map +1 -0
  6. package/dist/config.d.ts +87 -2
  7. package/dist/config.d.ts.map +1 -1
  8. package/dist/config.js +141 -3
  9. package/dist/config.js.map +1 -1
  10. package/dist/console-relays.d.ts +10 -0
  11. package/dist/console-relays.d.ts.map +1 -0
  12. package/dist/console-relays.js +46 -0
  13. package/dist/console-relays.js.map +1 -0
  14. package/dist/executor/detect.d.ts +15 -0
  15. package/dist/executor/detect.d.ts.map +1 -0
  16. package/dist/executor/detect.js +184 -0
  17. package/dist/executor/detect.js.map +1 -0
  18. package/dist/executor/docker-executor.d.ts +49 -0
  19. package/dist/executor/docker-executor.d.ts.map +1 -0
  20. package/dist/executor/docker-executor.js +331 -0
  21. package/dist/executor/docker-executor.js.map +1 -0
  22. package/dist/executor/docker-sandbox-executor.d.ts +67 -0
  23. package/dist/executor/docker-sandbox-executor.d.ts.map +1 -0
  24. package/dist/executor/docker-sandbox-executor.js +343 -0
  25. package/dist/executor/docker-sandbox-executor.js.map +1 -0
  26. package/dist/executor/fargate-executor.d.ts +62 -0
  27. package/dist/executor/fargate-executor.d.ts.map +1 -0
  28. package/dist/executor/fargate-executor.js +293 -0
  29. package/dist/executor/fargate-executor.js.map +1 -0
  30. package/dist/executor/firecracker-executor.d.ts +45 -0
  31. package/dist/executor/firecracker-executor.d.ts.map +1 -0
  32. package/dist/executor/firecracker-executor.js +352 -0
  33. package/dist/executor/firecracker-executor.js.map +1 -0
  34. package/dist/executor/index.d.ts +50 -0
  35. package/dist/executor/index.d.ts.map +1 -0
  36. package/dist/executor/index.js +166 -0
  37. package/dist/executor/index.js.map +1 -0
  38. package/dist/executor/lambda-microvm-executor.d.ts +52 -0
  39. package/dist/executor/lambda-microvm-executor.d.ts.map +1 -0
  40. package/dist/executor/lambda-microvm-executor.js +211 -0
  41. package/dist/executor/lambda-microvm-executor.js.map +1 -0
  42. package/dist/executor/mock-executor.d.ts +19 -0
  43. package/dist/executor/mock-executor.d.ts.map +1 -0
  44. package/dist/executor/mock-executor.js +198 -0
  45. package/dist/executor/mock-executor.js.map +1 -0
  46. package/dist/executor/mock-executor.test.d.ts +2 -0
  47. package/dist/executor/mock-executor.test.d.ts.map +1 -0
  48. package/dist/executor/mock-executor.test.js +81 -0
  49. package/dist/executor/mock-executor.test.js.map +1 -0
  50. package/dist/executor/qemu-executor.d.ts +60 -0
  51. package/dist/executor/qemu-executor.d.ts.map +1 -0
  52. package/dist/executor/qemu-executor.js +383 -0
  53. package/dist/executor/qemu-executor.js.map +1 -0
  54. package/dist/executor/reattach-utils.d.ts +3 -0
  55. package/dist/executor/reattach-utils.d.ts.map +1 -0
  56. package/dist/executor/reattach-utils.js +11 -0
  57. package/dist/executor/reattach-utils.js.map +1 -0
  58. package/dist/executor/remote-executor.d.ts +30 -0
  59. package/dist/executor/remote-executor.d.ts.map +1 -0
  60. package/dist/executor/remote-executor.js +125 -0
  61. package/dist/executor/remote-executor.js.map +1 -0
  62. package/dist/executor/types.d.ts +71 -0
  63. package/dist/executor/types.d.ts.map +1 -0
  64. package/dist/{agents/skills → executor}/types.js.map +1 -1
  65. package/dist/images.d.ts +28 -0
  66. package/dist/images.d.ts.map +1 -0
  67. package/dist/images.js +163 -0
  68. package/dist/images.js.map +1 -0
  69. package/dist/index.d.ts +12 -26
  70. package/dist/index.d.ts.map +1 -1
  71. package/dist/index.js +27 -59
  72. package/dist/index.js.map +1 -1
  73. package/dist/services/serial-relay.d.ts +16 -0
  74. package/dist/services/serial-relay.d.ts.map +1 -0
  75. package/dist/services/serial-relay.js +74 -0
  76. package/dist/services/serial-relay.js.map +1 -0
  77. package/dist/services/vnc-relay.d.ts +16 -0
  78. package/dist/services/vnc-relay.d.ts.map +1 -0
  79. package/dist/services/vnc-relay.js +101 -0
  80. package/dist/services/vnc-relay.js.map +1 -0
  81. package/dist/socket-client.d.ts +5 -0
  82. package/dist/socket-client.d.ts.map +1 -0
  83. package/dist/socket-client.js +119 -0
  84. package/dist/socket-client.js.map +1 -0
  85. package/package.json +26 -17
  86. package/dist/agents/blocknote.agent.d.ts +0 -6
  87. package/dist/agents/blocknote.agent.d.ts.map +0 -1
  88. package/dist/agents/blocknote.agent.js +0 -18
  89. package/dist/agents/blocknote.agent.js.map +0 -1
  90. package/dist/agents/content-generator.agent.d.ts +0 -12
  91. package/dist/agents/content-generator.agent.d.ts.map +0 -1
  92. package/dist/agents/content-generator.agent.js +0 -96
  93. package/dist/agents/content-generator.agent.js.map +0 -1
  94. package/dist/agents/filingramp-fetch.agent.d.ts +0 -4
  95. package/dist/agents/filingramp-fetch.agent.d.ts.map +0 -1
  96. package/dist/agents/filingramp-fetch.agent.js +0 -195
  97. package/dist/agents/filingramp-fetch.agent.js.map +0 -1
  98. package/dist/agents/html-generator.agent.d.ts +0 -4
  99. package/dist/agents/html-generator.agent.d.ts.map +0 -1
  100. package/dist/agents/html-generator.agent.js +0 -93
  101. package/dist/agents/html-generator.agent.js.map +0 -1
  102. package/dist/agents/knowledge/filingramp-endpoints.d.ts +0 -23
  103. package/dist/agents/knowledge/filingramp-endpoints.d.ts.map +0 -1
  104. package/dist/agents/knowledge/filingramp-endpoints.js +0 -116
  105. package/dist/agents/knowledge/filingramp-endpoints.js.map +0 -1
  106. package/dist/agents/markdown-generator.agent.d.ts +0 -4
  107. package/dist/agents/markdown-generator.agent.d.ts.map +0 -1
  108. package/dist/agents/markdown-generator.agent.js +0 -101
  109. package/dist/agents/markdown-generator.agent.js.map +0 -1
  110. package/dist/agents/notebook.agent.d.ts +0 -4
  111. package/dist/agents/notebook.agent.d.ts.map +0 -1
  112. package/dist/agents/notebook.agent.js +0 -49
  113. package/dist/agents/notebook.agent.js.map +0 -1
  114. package/dist/agents/shared/agent-context.d.ts +0 -3
  115. package/dist/agents/shared/agent-context.d.ts.map +0 -1
  116. package/dist/agents/shared/agent-context.js +0 -17
  117. package/dist/agents/shared/agent-context.js.map +0 -1
  118. package/dist/agents/shared/app-vm.tools.d.ts +0 -4
  119. package/dist/agents/shared/app-vm.tools.d.ts.map +0 -1
  120. package/dist/agents/shared/app-vm.tools.js +0 -105
  121. package/dist/agents/shared/app-vm.tools.js.map +0 -1
  122. package/dist/agents/shared/blocknote-system-prompt.d.ts +0 -2
  123. package/dist/agents/shared/blocknote-system-prompt.d.ts.map +0 -1
  124. package/dist/agents/shared/blocknote-system-prompt.js +0 -40
  125. package/dist/agents/shared/blocknote-system-prompt.js.map +0 -1
  126. package/dist/agents/shared/build-plan.tools.d.ts +0 -5
  127. package/dist/agents/shared/build-plan.tools.d.ts.map +0 -1
  128. package/dist/agents/shared/build-plan.tools.js +0 -176
  129. package/dist/agents/shared/build-plan.tools.js.map +0 -1
  130. package/dist/agents/shared/content-generator-system-prompt.d.ts +0 -4
  131. package/dist/agents/shared/content-generator-system-prompt.d.ts.map +0 -1
  132. package/dist/agents/shared/content-generator-system-prompt.js +0 -51
  133. package/dist/agents/shared/content-generator-system-prompt.js.map +0 -1
  134. package/dist/agents/shared/get-latest-session-artifact.tool.d.ts +0 -7
  135. package/dist/agents/shared/get-latest-session-artifact.tool.d.ts.map +0 -1
  136. package/dist/agents/shared/get-latest-session-artifact.tool.js +0 -43
  137. package/dist/agents/shared/get-latest-session-artifact.tool.js.map +0 -1
  138. package/dist/agents/shared/get-session-artifact-content.tool.d.ts +0 -7
  139. package/dist/agents/shared/get-session-artifact-content.tool.d.ts.map +0 -1
  140. package/dist/agents/shared/get-session-artifact-content.tool.js +0 -44
  141. package/dist/agents/shared/get-session-artifact-content.tool.js.map +0 -1
  142. package/dist/agents/shared/list-session-artifact-paths.tool.d.ts +0 -5
  143. package/dist/agents/shared/list-session-artifact-paths.tool.d.ts.map +0 -1
  144. package/dist/agents/shared/list-session-artifact-paths.tool.js +0 -37
  145. package/dist/agents/shared/list-session-artifact-paths.tool.js.map +0 -1
  146. package/dist/agents/shared/notebook-agent-system-prompt.d.ts +0 -2
  147. package/dist/agents/shared/notebook-agent-system-prompt.d.ts.map +0 -1
  148. package/dist/agents/shared/notebook-agent-system-prompt.js +0 -68
  149. package/dist/agents/shared/notebook-agent-system-prompt.js.map +0 -1
  150. package/dist/agents/shared/notebook-tools.d.ts +0 -24
  151. package/dist/agents/shared/notebook-tools.d.ts.map +0 -1
  152. package/dist/agents/shared/notebook-tools.js +0 -410
  153. package/dist/agents/shared/notebook-tools.js.map +0 -1
  154. package/dist/agents/shared/publish-session-artifacts.tool.d.ts +0 -19
  155. package/dist/agents/shared/publish-session-artifacts.tool.d.ts.map +0 -1
  156. package/dist/agents/shared/publish-session-artifacts.tool.js +0 -276
  157. package/dist/agents/shared/publish-session-artifacts.tool.js.map +0 -1
  158. package/dist/agents/shared/session-quality-report.tool.d.ts +0 -7
  159. package/dist/agents/shared/session-quality-report.tool.d.ts.map +0 -1
  160. package/dist/agents/shared/session-quality-report.tool.js +0 -97
  161. package/dist/agents/shared/session-quality-report.tool.js.map +0 -1
  162. package/dist/agents/shared/session-vm-bridge.d.ts +0 -49
  163. package/dist/agents/shared/session-vm-bridge.d.ts.map +0 -1
  164. package/dist/agents/shared/session-vm-bridge.js +0 -9
  165. package/dist/agents/shared/session-vm-bridge.js.map +0 -1
  166. package/dist/agents/shared/update-session-artifacts.tool.d.ts +0 -23
  167. package/dist/agents/shared/update-session-artifacts.tool.d.ts.map +0 -1
  168. package/dist/agents/shared/update-session-artifacts.tool.js +0 -269
  169. package/dist/agents/shared/update-session-artifacts.tool.js.map +0 -1
  170. package/dist/agents/shared/validate-artifact-content.tools.d.ts +0 -16
  171. package/dist/agents/shared/validate-artifact-content.tools.d.ts.map +0 -1
  172. package/dist/agents/shared/validate-artifact-content.tools.js +0 -154
  173. package/dist/agents/shared/validate-artifact-content.tools.js.map +0 -1
  174. package/dist/agents/skills/a11y.skill.d.ts +0 -3
  175. package/dist/agents/skills/a11y.skill.d.ts.map +0 -1
  176. package/dist/agents/skills/a11y.skill.js +0 -23
  177. package/dist/agents/skills/a11y.skill.js.map +0 -1
  178. package/dist/agents/skills/account-skill-loader.d.ts +0 -13
  179. package/dist/agents/skills/account-skill-loader.d.ts.map +0 -1
  180. package/dist/agents/skills/account-skill-loader.js +0 -42
  181. package/dist/agents/skills/account-skill-loader.js.map +0 -1
  182. package/dist/agents/skills/app-scaffold.skill.d.ts +0 -3
  183. package/dist/agents/skills/app-scaffold.skill.d.ts.map +0 -1
  184. package/dist/agents/skills/app-scaffold.skill.js +0 -30
  185. package/dist/agents/skills/app-scaffold.skill.js.map +0 -1
  186. package/dist/agents/skills/copywriting.skill.d.ts +0 -3
  187. package/dist/agents/skills/copywriting.skill.d.ts.map +0 -1
  188. package/dist/agents/skills/copywriting.skill.js +0 -35
  189. package/dist/agents/skills/copywriting.skill.js.map +0 -1
  190. package/dist/agents/skills/custom-skill-repository.d.ts +0 -40
  191. package/dist/agents/skills/custom-skill-repository.d.ts.map +0 -1
  192. package/dist/agents/skills/custom-skill-repository.js +0 -3
  193. package/dist/agents/skills/custom-skill-repository.js.map +0 -1
  194. package/dist/agents/skills/data-viz.skill.d.ts +0 -3
  195. package/dist/agents/skills/data-viz.skill.d.ts.map +0 -1
  196. package/dist/agents/skills/data-viz.skill.js +0 -42
  197. package/dist/agents/skills/data-viz.skill.js.map +0 -1
  198. package/dist/agents/skills/designer.skill.d.ts +0 -3
  199. package/dist/agents/skills/designer.skill.d.ts.map +0 -1
  200. package/dist/agents/skills/designer.skill.js +0 -101
  201. package/dist/agents/skills/designer.skill.js.map +0 -1
  202. package/dist/agents/skills/forms.skill.d.ts +0 -3
  203. package/dist/agents/skills/forms.skill.d.ts.map +0 -1
  204. package/dist/agents/skills/forms.skill.js +0 -37
  205. package/dist/agents/skills/forms.skill.js.map +0 -1
  206. package/dist/agents/skills/index.d.ts +0 -6
  207. package/dist/agents/skills/index.d.ts.map +0 -1
  208. package/dist/agents/skills/index.js +0 -18
  209. package/dist/agents/skills/index.js.map +0 -1
  210. package/dist/agents/skills/interactions.skill.d.ts +0 -3
  211. package/dist/agents/skills/interactions.skill.d.ts.map +0 -1
  212. package/dist/agents/skills/interactions.skill.js +0 -31
  213. package/dist/agents/skills/interactions.skill.js.map +0 -1
  214. package/dist/agents/skills/registry.d.ts +0 -23
  215. package/dist/agents/skills/registry.d.ts.map +0 -1
  216. package/dist/agents/skills/registry.js +0 -75
  217. package/dist/agents/skills/registry.js.map +0 -1
  218. package/dist/agents/skills/skill-injection.d.ts +0 -52
  219. package/dist/agents/skills/skill-injection.d.ts.map +0 -1
  220. package/dist/agents/skills/skill-injection.js +0 -216
  221. package/dist/agents/skills/skill-injection.js.map +0 -1
  222. package/dist/agents/skills/types.d.ts +0 -12
  223. package/dist/agents/skills/types.d.ts.map +0 -1
  224. package/dist/agents.d.ts +0 -5
  225. package/dist/agents.d.ts.map +0 -1
  226. package/dist/agents.js +0 -18
  227. package/dist/agents.js.map +0 -1
  228. package/dist/ai-agent.service.d.ts +0 -10
  229. package/dist/ai-agent.service.d.ts.map +0 -1
  230. package/dist/ai-agent.service.js +0 -27
  231. package/dist/ai-agent.service.js.map +0 -1
  232. package/dist/builder-api-config.d.ts +0 -41
  233. package/dist/builder-api-config.d.ts.map +0 -1
  234. package/dist/builder-api-config.js +0 -12
  235. package/dist/builder-api-config.js.map +0 -1
  236. package/dist/context.d.ts +0 -36
  237. package/dist/context.d.ts.map +0 -1
  238. package/dist/context.js +0 -42
  239. package/dist/context.js.map +0 -1
  240. package/dist/create-builder-api.d.ts +0 -47
  241. package/dist/create-builder-api.d.ts.map +0 -1
  242. package/dist/create-builder-api.js +0 -79
  243. package/dist/create-builder-api.js.map +0 -1
  244. package/dist/lib/account-dbs/account-db-repository.d.ts +0 -13
  245. package/dist/lib/account-dbs/account-db-repository.d.ts.map +0 -1
  246. package/dist/lib/account-dbs/account-db-repository.js +0 -3
  247. package/dist/lib/account-dbs/account-db-repository.js.map +0 -1
  248. package/dist/lib/account-dbs/account-db.d.ts +0 -59
  249. package/dist/lib/account-dbs/account-db.d.ts.map +0 -1
  250. package/dist/lib/account-dbs/account-db.js +0 -7
  251. package/dist/lib/account-dbs/account-db.js.map +0 -1
  252. package/dist/lib/ai/agent-ai-service.d.ts +0 -3
  253. package/dist/lib/ai/agent-ai-service.d.ts.map +0 -1
  254. package/dist/lib/ai/agent-ai-service.js +0 -15
  255. package/dist/lib/ai/agent-ai-service.js.map +0 -1
  256. package/dist/lib/ai/ai-error-details.d.ts +0 -13
  257. package/dist/lib/ai/ai-error-details.d.ts.map +0 -1
  258. package/dist/lib/ai/ai-error-details.js +0 -84
  259. package/dist/lib/ai/ai-error-details.js.map +0 -1
  260. package/dist/lib/ai/generate-ai-text.d.ts +0 -12
  261. package/dist/lib/ai/generate-ai-text.d.ts.map +0 -1
  262. package/dist/lib/ai/generate-ai-text.js +0 -105
  263. package/dist/lib/ai/generate-ai-text.js.map +0 -1
  264. package/dist/lib/ai/run-explicit-agent.d.ts +0 -15
  265. package/dist/lib/ai/run-explicit-agent.d.ts.map +0 -1
  266. package/dist/lib/ai/run-explicit-agent.js +0 -30
  267. package/dist/lib/ai/run-explicit-agent.js.map +0 -1
  268. package/dist/lib/chat-access.d.ts +0 -19
  269. package/dist/lib/chat-access.d.ts.map +0 -1
  270. package/dist/lib/chat-access.js +0 -75
  271. package/dist/lib/chat-access.js.map +0 -1
  272. package/dist/lib/library/list-library-items.d.ts +0 -21
  273. package/dist/lib/library/list-library-items.d.ts.map +0 -1
  274. package/dist/lib/library/list-library-items.js +0 -94
  275. package/dist/lib/library/list-library-items.js.map +0 -1
  276. package/dist/lib/list-user-chats.d.ts +0 -22
  277. package/dist/lib/list-user-chats.d.ts.map +0 -1
  278. package/dist/lib/list-user-chats.js +0 -48
  279. package/dist/lib/list-user-chats.js.map +0 -1
  280. package/dist/lib/notebooks/notebook-assistant-prompts.d.ts +0 -6
  281. package/dist/lib/notebooks/notebook-assistant-prompts.d.ts.map +0 -1
  282. package/dist/lib/notebooks/notebook-assistant-prompts.js +0 -60
  283. package/dist/lib/notebooks/notebook-assistant-prompts.js.map +0 -1
  284. package/dist/lib/notebooks/notebook-assistant.d.ts +0 -56
  285. package/dist/lib/notebooks/notebook-assistant.d.ts.map +0 -1
  286. package/dist/lib/notebooks/notebook-assistant.js +0 -245
  287. package/dist/lib/notebooks/notebook-assistant.js.map +0 -1
  288. package/dist/lib/notebooks/notebook-content.d.ts +0 -16
  289. package/dist/lib/notebooks/notebook-content.d.ts.map +0 -1
  290. package/dist/lib/notebooks/notebook-content.js +0 -104
  291. package/dist/lib/notebooks/notebook-content.js.map +0 -1
  292. package/dist/lib/notebooks/notebook-merged-state.d.ts +0 -3
  293. package/dist/lib/notebooks/notebook-merged-state.d.ts.map +0 -1
  294. package/dist/lib/notebooks/notebook-merged-state.js +0 -19
  295. package/dist/lib/notebooks/notebook-merged-state.js.map +0 -1
  296. package/dist/lib/notebooks/notebook-repository.d.ts +0 -47
  297. package/dist/lib/notebooks/notebook-repository.d.ts.map +0 -1
  298. package/dist/lib/notebooks/notebook-repository.js +0 -3
  299. package/dist/lib/notebooks/notebook-repository.js.map +0 -1
  300. package/dist/lib/notebooks/notebook-sql-client.d.ts +0 -5
  301. package/dist/lib/notebooks/notebook-sql-client.d.ts.map +0 -1
  302. package/dist/lib/notebooks/notebook-sql-client.js +0 -37
  303. package/dist/lib/notebooks/notebook-sql-client.js.map +0 -1
  304. package/dist/lib/notebooks/notebook-sql-schema.d.ts +0 -16
  305. package/dist/lib/notebooks/notebook-sql-schema.d.ts.map +0 -1
  306. package/dist/lib/notebooks/notebook-sql-schema.js +0 -117
  307. package/dist/lib/notebooks/notebook-sql-schema.js.map +0 -1
  308. package/dist/lib/notebooks/notebook-sql.d.ts +0 -9
  309. package/dist/lib/notebooks/notebook-sql.d.ts.map +0 -1
  310. package/dist/lib/notebooks/notebook-sql.js +0 -36
  311. package/dist/lib/notebooks/notebook-sql.js.map +0 -1
  312. package/dist/lib/notebooks/notebook-storage-paths.d.ts +0 -8
  313. package/dist/lib/notebooks/notebook-storage-paths.d.ts.map +0 -1
  314. package/dist/lib/notebooks/notebook-storage-paths.js +0 -22
  315. package/dist/lib/notebooks/notebook-storage-paths.js.map +0 -1
  316. package/dist/lib/notebooks/notebook-yjs-blocks.d.ts +0 -46
  317. package/dist/lib/notebooks/notebook-yjs-blocks.d.ts.map +0 -1
  318. package/dist/lib/notebooks/notebook-yjs-blocks.js +0 -223
  319. package/dist/lib/notebooks/notebook-yjs-blocks.js.map +0 -1
  320. package/dist/lib/notebooks/notebook-yjs-content.d.ts +0 -6
  321. package/dist/lib/notebooks/notebook-yjs-content.d.ts.map +0 -1
  322. package/dist/lib/notebooks/notebook-yjs-content.js +0 -42
  323. package/dist/lib/notebooks/notebook-yjs-content.js.map +0 -1
  324. package/dist/lib/notebooks/sql-block-attrs.d.ts +0 -5
  325. package/dist/lib/notebooks/sql-block-attrs.d.ts.map +0 -1
  326. package/dist/lib/notebooks/sql-block-attrs.js +0 -68
  327. package/dist/lib/notebooks/sql-block-attrs.js.map +0 -1
  328. package/dist/lib/object-storage/index.d.ts +0 -3
  329. package/dist/lib/object-storage/index.d.ts.map +0 -1
  330. package/dist/lib/object-storage/index.js +0 -19
  331. package/dist/lib/object-storage/index.js.map +0 -1
  332. package/dist/lib/object-storage/keys.d.ts +0 -11
  333. package/dist/lib/object-storage/keys.d.ts.map +0 -1
  334. package/dist/lib/object-storage/keys.js +0 -56
  335. package/dist/lib/object-storage/keys.js.map +0 -1
  336. package/dist/lib/object-storage/named-snapshot-paths.d.ts +0 -9
  337. package/dist/lib/object-storage/named-snapshot-paths.d.ts.map +0 -1
  338. package/dist/lib/object-storage/named-snapshot-paths.js +0 -39
  339. package/dist/lib/object-storage/named-snapshot-paths.js.map +0 -1
  340. package/dist/lib/object-storage/s3-object-store.d.ts +0 -14
  341. package/dist/lib/object-storage/s3-object-store.d.ts.map +0 -1
  342. package/dist/lib/object-storage/s3-object-store.js +0 -64
  343. package/dist/lib/object-storage/s3-object-store.js.map +0 -1
  344. package/dist/lib/session-artifacts/apply-hashline-edits.d.ts +0 -3
  345. package/dist/lib/session-artifacts/apply-hashline-edits.d.ts.map +0 -1
  346. package/dist/lib/session-artifacts/apply-hashline-edits.js +0 -25
  347. package/dist/lib/session-artifacts/apply-hashline-edits.js.map +0 -1
  348. package/dist/lib/session-artifacts/artifact-text-edit.d.ts +0 -8
  349. package/dist/lib/session-artifacts/artifact-text-edit.d.ts.map +0 -1
  350. package/dist/lib/session-artifacts/artifact-text-edit.js +0 -23
  351. package/dist/lib/session-artifacts/artifact-text-edit.js.map +0 -1
  352. package/dist/lib/session-artifacts/hashline-diff-guide.d.ts +0 -3
  353. package/dist/lib/session-artifacts/hashline-diff-guide.d.ts.map +0 -1
  354. package/dist/lib/session-artifacts/hashline-diff-guide.js +0 -23
  355. package/dist/lib/session-artifacts/hashline-diff-guide.js.map +0 -1
  356. package/dist/lib/session-artifacts/hashline-tag.d.ts +0 -33
  357. package/dist/lib/session-artifacts/hashline-tag.d.ts.map +0 -1
  358. package/dist/lib/session-artifacts/hashline-tag.js +0 -80
  359. package/dist/lib/session-artifacts/hashline-tag.js.map +0 -1
  360. package/dist/lib/session-artifacts/hashline-tags.d.ts +0 -17
  361. package/dist/lib/session-artifacts/hashline-tags.d.ts.map +0 -1
  362. package/dist/lib/session-artifacts/hashline-tags.js +0 -69
  363. package/dist/lib/session-artifacts/hashline-tags.js.map +0 -1
  364. package/dist/lib/session-artifacts/parse-hashline-diff.d.ts +0 -24
  365. package/dist/lib/session-artifacts/parse-hashline-diff.d.ts.map +0 -1
  366. package/dist/lib/session-artifacts/parse-hashline-diff.js +0 -126
  367. package/dist/lib/session-artifacts/parse-hashline-diff.js.map +0 -1
  368. package/dist/lib/session-pages/artifact-quality-audit.d.ts +0 -16
  369. package/dist/lib/session-pages/artifact-quality-audit.d.ts.map +0 -1
  370. package/dist/lib/session-pages/artifact-quality-audit.js +0 -298
  371. package/dist/lib/session-pages/artifact-quality-audit.js.map +0 -1
  372. package/dist/lib/session-pages/artifact-storage-paths.d.ts +0 -14
  373. package/dist/lib/session-pages/artifact-storage-paths.d.ts.map +0 -1
  374. package/dist/lib/session-pages/artifact-storage-paths.js +0 -50
  375. package/dist/lib/session-pages/artifact-storage-paths.js.map +0 -1
  376. package/dist/lib/session-pages/artifact-storage.d.ts +0 -11
  377. package/dist/lib/session-pages/artifact-storage.d.ts.map +0 -1
  378. package/dist/lib/session-pages/artifact-storage.js +0 -132
  379. package/dist/lib/session-pages/artifact-storage.js.map +0 -1
  380. package/dist/lib/session-pages/audit-session-html.d.ts +0 -23
  381. package/dist/lib/session-pages/audit-session-html.d.ts.map +0 -1
  382. package/dist/lib/session-pages/audit-session-html.js +0 -82
  383. package/dist/lib/session-pages/audit-session-html.js.map +0 -1
  384. package/dist/lib/session-pages/contrast-check.d.ts +0 -25
  385. package/dist/lib/session-pages/contrast-check.d.ts.map +0 -1
  386. package/dist/lib/session-pages/contrast-check.js +0 -290
  387. package/dist/lib/session-pages/contrast-check.js.map +0 -1
  388. package/dist/lib/session-pages/default-session-styles.d.ts +0 -6
  389. package/dist/lib/session-pages/default-session-styles.d.ts.map +0 -1
  390. package/dist/lib/session-pages/default-session-styles.js +0 -503
  391. package/dist/lib/session-pages/default-session-styles.js.map +0 -1
  392. package/dist/lib/session-pages/deferred-quality-rules.d.ts +0 -7
  393. package/dist/lib/session-pages/deferred-quality-rules.d.ts.map +0 -1
  394. package/dist/lib/session-pages/deferred-quality-rules.js +0 -25
  395. package/dist/lib/session-pages/deferred-quality-rules.js.map +0 -1
  396. package/dist/lib/session-pages/delete-session-artifact.d.ts +0 -5
  397. package/dist/lib/session-pages/delete-session-artifact.d.ts.map +0 -1
  398. package/dist/lib/session-pages/delete-session-artifact.js +0 -25
  399. package/dist/lib/session-pages/delete-session-artifact.js.map +0 -1
  400. package/dist/lib/session-pages/delete-session-artifacts.d.ts +0 -5
  401. package/dist/lib/session-pages/delete-session-artifacts.d.ts.map +0 -1
  402. package/dist/lib/session-pages/delete-session-artifacts.js +0 -66
  403. package/dist/lib/session-pages/delete-session-artifacts.js.map +0 -1
  404. package/dist/lib/session-pages/html-artifact-template.d.ts +0 -28
  405. package/dist/lib/session-pages/html-artifact-template.d.ts.map +0 -1
  406. package/dist/lib/session-pages/html-artifact-template.js +0 -202
  407. package/dist/lib/session-pages/html-artifact-template.js.map +0 -1
  408. package/dist/lib/session-pages/index.d.ts +0 -12
  409. package/dist/lib/session-pages/index.d.ts.map +0 -1
  410. package/dist/lib/session-pages/index.js +0 -32
  411. package/dist/lib/session-pages/index.js.map +0 -1
  412. package/dist/lib/session-pages/inject-preview-error-reporter.d.ts +0 -3
  413. package/dist/lib/session-pages/inject-preview-error-reporter.d.ts.map +0 -1
  414. package/dist/lib/session-pages/inject-preview-error-reporter.js +0 -30
  415. package/dist/lib/session-pages/inject-preview-error-reporter.js.map +0 -1
  416. package/dist/lib/session-pages/list-session-artifacts.d.ts +0 -6
  417. package/dist/lib/session-pages/list-session-artifacts.d.ts.map +0 -1
  418. package/dist/lib/session-pages/list-session-artifacts.js +0 -56
  419. package/dist/lib/session-pages/list-session-artifacts.js.map +0 -1
  420. package/dist/lib/session-pages/paths.d.ts +0 -6
  421. package/dist/lib/session-pages/paths.d.ts.map +0 -1
  422. package/dist/lib/session-pages/paths.js +0 -41
  423. package/dist/lib/session-pages/paths.js.map +0 -1
  424. package/dist/lib/session-pages/read-session-artifact.d.ts +0 -7
  425. package/dist/lib/session-pages/read-session-artifact.d.ts.map +0 -1
  426. package/dist/lib/session-pages/read-session-artifact.js +0 -60
  427. package/dist/lib/session-pages/read-session-artifact.js.map +0 -1
  428. package/dist/lib/session-pages/read-session-artifacts.d.ts +0 -9
  429. package/dist/lib/session-pages/read-session-artifacts.d.ts.map +0 -1
  430. package/dist/lib/session-pages/read-session-artifacts.js +0 -34
  431. package/dist/lib/session-pages/read-session-artifacts.js.map +0 -1
  432. package/dist/lib/session-pages/resolve-artifact-notify-user-ids.d.ts +0 -3
  433. package/dist/lib/session-pages/resolve-artifact-notify-user-ids.d.ts.map +0 -1
  434. package/dist/lib/session-pages/resolve-artifact-notify-user-ids.js +0 -28
  435. package/dist/lib/session-pages/resolve-artifact-notify-user-ids.js.map +0 -1
  436. package/dist/lib/session-pages/resolve-chat-id.d.ts +0 -21
  437. package/dist/lib/session-pages/resolve-chat-id.d.ts.map +0 -1
  438. package/dist/lib/session-pages/resolve-chat-id.js +0 -64
  439. package/dist/lib/session-pages/resolve-chat-id.js.map +0 -1
  440. package/dist/lib/session-pages/resolve-session-account-id.d.ts +0 -3
  441. package/dist/lib/session-pages/resolve-session-account-id.d.ts.map +0 -1
  442. package/dist/lib/session-pages/resolve-session-account-id.js +0 -31
  443. package/dist/lib/session-pages/resolve-session-account-id.js.map +0 -1
  444. package/dist/lib/session-pages/session-pico-css.d.ts +0 -5
  445. package/dist/lib/session-pages/session-pico-css.d.ts.map +0 -1
  446. package/dist/lib/session-pages/session-pico-css.js +0 -11
  447. package/dist/lib/session-pages/session-pico-css.js.map +0 -1
  448. package/dist/lib/session-pages/write-session-artifacts.d.ts +0 -20
  449. package/dist/lib/session-pages/write-session-artifacts.d.ts.map +0 -1
  450. package/dist/lib/session-pages/write-session-artifacts.js +0 -42
  451. package/dist/lib/session-pages/write-session-artifacts.js.map +0 -1
  452. package/dist/lib/session-plans/build-plan.d.ts +0 -74
  453. package/dist/lib/session-plans/build-plan.d.ts.map +0 -1
  454. package/dist/lib/session-plans/build-plan.js +0 -165
  455. package/dist/lib/session-plans/build-plan.js.map +0 -1
  456. package/dist/lib/socket/artifact-events.d.ts +0 -14
  457. package/dist/lib/socket/artifact-events.d.ts.map +0 -1
  458. package/dist/lib/socket/artifact-events.js +0 -38
  459. package/dist/lib/socket/artifact-events.js.map +0 -1
  460. package/dist/lib/socketIdFromRequest.d.ts +0 -4
  461. package/dist/lib/socketIdFromRequest.d.ts.map +0 -1
  462. package/dist/lib/socketIdFromRequest.js +0 -13
  463. package/dist/lib/socketIdFromRequest.js.map +0 -1
  464. package/dist/lib/sql-schema.d.ts +0 -31
  465. package/dist/lib/sql-schema.d.ts.map +0 -1
  466. package/dist/lib/sql-schema.js +0 -3
  467. package/dist/lib/sql-schema.js.map +0 -1
  468. package/dist/lib/yjs-pending/flush-lock.d.ts +0 -6
  469. package/dist/lib/yjs-pending/flush-lock.d.ts.map +0 -1
  470. package/dist/lib/yjs-pending/flush-lock.js +0 -43
  471. package/dist/lib/yjs-pending/flush-lock.js.map +0 -1
  472. package/dist/lib/yjs-pending/flush-worker.d.ts +0 -5
  473. package/dist/lib/yjs-pending/flush-worker.d.ts.map +0 -1
  474. package/dist/lib/yjs-pending/flush-worker.js +0 -45
  475. package/dist/lib/yjs-pending/flush-worker.js.map +0 -1
  476. package/dist/lib/yjs-pending/snapshot-retention.d.ts +0 -6
  477. package/dist/lib/yjs-pending/snapshot-retention.d.ts.map +0 -1
  478. package/dist/lib/yjs-pending/snapshot-retention.js +0 -33
  479. package/dist/lib/yjs-pending/snapshot-retention.js.map +0 -1
  480. package/dist/lib/yjs-pending/yjs-pending-updates-repository.d.ts +0 -22
  481. package/dist/lib/yjs-pending/yjs-pending-updates-repository.d.ts.map +0 -1
  482. package/dist/lib/yjs-pending/yjs-pending-updates-repository.js +0 -3
  483. package/dist/lib/yjs-pending/yjs-pending-updates-repository.js.map +0 -1
  484. package/dist/lib/yjs-pending/yjs-persistence.d.ts +0 -24
  485. package/dist/lib/yjs-pending/yjs-persistence.d.ts.map +0 -1
  486. package/dist/lib/yjs-pending/yjs-persistence.js +0 -258
  487. package/dist/lib/yjs-pending/yjs-persistence.js.map +0 -1
  488. package/dist/logger.d.ts +0 -7
  489. package/dist/logger.d.ts.map +0 -1
  490. package/dist/logger.js +0 -16
  491. package/dist/logger.js.map +0 -1
  492. package/dist/middleware/attachDemoUser.d.ts +0 -11
  493. package/dist/middleware/attachDemoUser.d.ts.map +0 -1
  494. package/dist/middleware/attachDemoUser.js +0 -23
  495. package/dist/middleware/attachDemoUser.js.map +0 -1
  496. package/dist/middleware/index.d.ts +0 -2
  497. package/dist/middleware/index.d.ts.map +0 -1
  498. package/dist/middleware/index.js +0 -38
  499. package/dist/middleware/index.js.map +0 -1
  500. package/dist/middleware/validation/activity.validation.d.ts +0 -5
  501. package/dist/middleware/validation/activity.validation.d.ts.map +0 -1
  502. package/dist/middleware/validation/activity.validation.js +0 -19
  503. package/dist/middleware/validation/activity.validation.js.map +0 -1
  504. package/dist/middleware/validation/agent.validation.d.ts +0 -4
  505. package/dist/middleware/validation/agent.validation.d.ts.map +0 -1
  506. package/dist/middleware/validation/agent.validation.js +0 -25
  507. package/dist/middleware/validation/agent.validation.js.map +0 -1
  508. package/dist/middleware/validation/chat.validation.d.ts +0 -12
  509. package/dist/middleware/validation/chat.validation.d.ts.map +0 -1
  510. package/dist/middleware/validation/chat.validation.js +0 -94
  511. package/dist/middleware/validation/chat.validation.js.map +0 -1
  512. package/dist/middleware/validation/index.d.ts +0 -4
  513. package/dist/middleware/validation/index.d.ts.map +0 -1
  514. package/dist/middleware/validation/index.js +0 -40
  515. package/dist/middleware/validation/index.js.map +0 -1
  516. package/dist/middleware/validation/zod-validate.d.ts +0 -5
  517. package/dist/middleware/validation/zod-validate.d.ts.map +0 -1
  518. package/dist/middleware/validation/zod-validate.js +0 -25
  519. package/dist/middleware/validation/zod-validate.js.map +0 -1
  520. package/dist/realtime/init-realtime.d.ts +0 -11
  521. package/dist/realtime/init-realtime.d.ts.map +0 -1
  522. package/dist/realtime/init-realtime.js +0 -69
  523. package/dist/realtime/init-realtime.js.map +0 -1
  524. package/dist/realtime/notebook-document-id.d.ts +0 -6
  525. package/dist/realtime/notebook-document-id.d.ts.map +0 -1
  526. package/dist/realtime/notebook-document-id.js +0 -30
  527. package/dist/realtime/notebook-document-id.js.map +0 -1
  528. package/dist/realtime/realtime-auth.d.ts +0 -12
  529. package/dist/realtime/realtime-auth.d.ts.map +0 -1
  530. package/dist/realtime/realtime-auth.js +0 -25
  531. package/dist/realtime/realtime-auth.js.map +0 -1
  532. package/dist/realtime/reset-session-artifact-y-docs.d.ts +0 -2
  533. package/dist/realtime/reset-session-artifact-y-docs.d.ts.map +0 -1
  534. package/dist/realtime/reset-session-artifact-y-docs.js +0 -9
  535. package/dist/realtime/reset-session-artifact-y-docs.js.map +0 -1
  536. package/dist/realtime/session-artifact-document-id.d.ts +0 -6
  537. package/dist/realtime/session-artifact-document-id.d.ts.map +0 -1
  538. package/dist/realtime/session-artifact-document-id.js +0 -32
  539. package/dist/realtime/session-artifact-document-id.js.map +0 -1
  540. package/dist/realtime/session-artifact-y-socket-io.d.ts +0 -7
  541. package/dist/realtime/session-artifact-y-socket-io.d.ts.map +0 -1
  542. package/dist/realtime/session-artifact-y-socket-io.js +0 -48
  543. package/dist/realtime/session-artifact-y-socket-io.js.map +0 -1
  544. package/dist/realtime/session-artifact-yjs-store.d.ts +0 -54
  545. package/dist/realtime/session-artifact-yjs-store.d.ts.map +0 -1
  546. package/dist/realtime/session-artifact-yjs-store.js +0 -337
  547. package/dist/realtime/session-artifact-yjs-store.js.map +0 -1
  548. package/dist/realtime/yjs-account-namespace.d.ts +0 -5
  549. package/dist/realtime/yjs-account-namespace.d.ts.map +0 -1
  550. package/dist/realtime/yjs-account-namespace.js +0 -21
  551. package/dist/realtime/yjs-account-namespace.js.map +0 -1
  552. package/dist/routes/account-dbs/errors.d.ts +0 -3
  553. package/dist/routes/account-dbs/errors.d.ts.map +0 -1
  554. package/dist/routes/account-dbs/errors.js +0 -24
  555. package/dist/routes/account-dbs/errors.js.map +0 -1
  556. package/dist/routes/account-dbs.d.ts +0 -2
  557. package/dist/routes/account-dbs.d.ts.map +0 -1
  558. package/dist/routes/account-dbs.js +0 -138
  559. package/dist/routes/account-dbs.js.map +0 -1
  560. package/dist/routes/activities/get.d.ts +0 -3
  561. package/dist/routes/activities/get.d.ts.map +0 -1
  562. package/dist/routes/activities/get.js +0 -28
  563. package/dist/routes/activities/get.js.map +0 -1
  564. package/dist/routes/activities/index.d.ts +0 -2
  565. package/dist/routes/activities/index.d.ts.map +0 -1
  566. package/dist/routes/activities/index.js +0 -16
  567. package/dist/routes/activities/index.js.map +0 -1
  568. package/dist/routes/activities/list.d.ts +0 -3
  569. package/dist/routes/activities/list.d.ts.map +0 -1
  570. package/dist/routes/activities/list.js +0 -41
  571. package/dist/routes/activities/list.js.map +0 -1
  572. package/dist/routes/activities/source-types.d.ts +0 -3
  573. package/dist/routes/activities/source-types.d.ts.map +0 -1
  574. package/dist/routes/activities/source-types.js +0 -33
  575. package/dist/routes/activities/source-types.js.map +0 -1
  576. package/dist/routes/activities/summary.d.ts +0 -3
  577. package/dist/routes/activities/summary.d.ts.map +0 -1
  578. package/dist/routes/activities/summary.js +0 -38
  579. package/dist/routes/activities/summary.js.map +0 -1
  580. package/dist/routes/agents/getConfig.d.ts +0 -3
  581. package/dist/routes/agents/getConfig.d.ts.map +0 -1
  582. package/dist/routes/agents/getConfig.js +0 -16
  583. package/dist/routes/agents/getConfig.js.map +0 -1
  584. package/dist/routes/agents/index.d.ts +0 -2
  585. package/dist/routes/agents/index.d.ts.map +0 -1
  586. package/dist/routes/agents/index.js +0 -13
  587. package/dist/routes/agents/index.js.map +0 -1
  588. package/dist/routes/agents/upsertPreferences.d.ts +0 -4
  589. package/dist/routes/agents/upsertPreferences.d.ts.map +0 -1
  590. package/dist/routes/agents/upsertPreferences.js +0 -42
  591. package/dist/routes/agents/upsertPreferences.js.map +0 -1
  592. package/dist/routes/chats/abort.d.ts +0 -3
  593. package/dist/routes/chats/abort.d.ts.map +0 -1
  594. package/dist/routes/chats/abort.js +0 -23
  595. package/dist/routes/chats/abort.js.map +0 -1
  596. package/dist/routes/chats/actions.d.ts +0 -3
  597. package/dist/routes/chats/actions.d.ts.map +0 -1
  598. package/dist/routes/chats/actions.js +0 -36
  599. package/dist/routes/chats/actions.js.map +0 -1
  600. package/dist/routes/chats/artifacts.d.ts +0 -3
  601. package/dist/routes/chats/artifacts.d.ts.map +0 -1
  602. package/dist/routes/chats/artifacts.js +0 -23
  603. package/dist/routes/chats/artifacts.js.map +0 -1
  604. package/dist/routes/chats/chat-route-errors.d.ts +0 -3
  605. package/dist/routes/chats/chat-route-errors.d.ts.map +0 -1
  606. package/dist/routes/chats/chat-route-errors.js +0 -23
  607. package/dist/routes/chats/chat-route-errors.js.map +0 -1
  608. package/dist/routes/chats/delete.d.ts +0 -3
  609. package/dist/routes/chats/delete.d.ts.map +0 -1
  610. package/dist/routes/chats/delete.js +0 -35
  611. package/dist/routes/chats/delete.js.map +0 -1
  612. package/dist/routes/chats/get.d.ts +0 -3
  613. package/dist/routes/chats/get.d.ts.map +0 -1
  614. package/dist/routes/chats/get.js +0 -21
  615. package/dist/routes/chats/get.js.map +0 -1
  616. package/dist/routes/chats/getStream.d.ts +0 -3
  617. package/dist/routes/chats/getStream.d.ts.map +0 -1
  618. package/dist/routes/chats/getStream.js +0 -65
  619. package/dist/routes/chats/getStream.js.map +0 -1
  620. package/dist/routes/chats/index.d.ts +0 -2
  621. package/dist/routes/chats/index.d.ts.map +0 -1
  622. package/dist/routes/chats/index.js +0 -37
  623. package/dist/routes/chats/index.js.map +0 -1
  624. package/dist/routes/chats/invite-participants.d.ts +0 -3
  625. package/dist/routes/chats/invite-participants.d.ts.map +0 -1
  626. package/dist/routes/chats/invite-participants.js +0 -56
  627. package/dist/routes/chats/invite-participants.js.map +0 -1
  628. package/dist/routes/chats/list.d.ts +0 -3
  629. package/dist/routes/chats/list.d.ts.map +0 -1
  630. package/dist/routes/chats/list.js +0 -37
  631. package/dist/routes/chats/list.js.map +0 -1
  632. package/dist/routes/chats/messages.d.ts +0 -3
  633. package/dist/routes/chats/messages.d.ts.map +0 -1
  634. package/dist/routes/chats/messages.js +0 -34
  635. package/dist/routes/chats/messages.js.map +0 -1
  636. package/dist/routes/chats/multiUserMessages.d.ts +0 -3
  637. package/dist/routes/chats/multiUserMessages.d.ts.map +0 -1
  638. package/dist/routes/chats/multiUserMessages.js +0 -46
  639. package/dist/routes/chats/multiUserMessages.js.map +0 -1
  640. package/dist/routes/chats/remove-participants.d.ts +0 -3
  641. package/dist/routes/chats/remove-participants.d.ts.map +0 -1
  642. package/dist/routes/chats/remove-participants.js +0 -46
  643. package/dist/routes/chats/remove-participants.js.map +0 -1
  644. package/dist/routes/chats/stream.d.ts +0 -3
  645. package/dist/routes/chats/stream.d.ts.map +0 -1
  646. package/dist/routes/chats/stream.js +0 -98
  647. package/dist/routes/chats/stream.js.map +0 -1
  648. package/dist/routes/chats/title.d.ts +0 -3
  649. package/dist/routes/chats/title.d.ts.map +0 -1
  650. package/dist/routes/chats/title.js +0 -28
  651. package/dist/routes/chats/title.js.map +0 -1
  652. package/dist/routes/chats/updateToolCall.d.ts +0 -3
  653. package/dist/routes/chats/updateToolCall.d.ts.map +0 -1
  654. package/dist/routes/chats/updateToolCall.js +0 -45
  655. package/dist/routes/chats/updateToolCall.js.map +0 -1
  656. package/dist/routes/files/download.d.ts +0 -8
  657. package/dist/routes/files/download.d.ts.map +0 -1
  658. package/dist/routes/files/download.js +0 -44
  659. package/dist/routes/files/download.js.map +0 -1
  660. package/dist/routes/files/index.d.ts +0 -2
  661. package/dist/routes/files/index.d.ts.map +0 -1
  662. package/dist/routes/files/index.js +0 -10
  663. package/dist/routes/files/index.js.map +0 -1
  664. package/dist/routes/files/upload.d.ts +0 -3
  665. package/dist/routes/files/upload.d.ts.map +0 -1
  666. package/dist/routes/files/upload.js +0 -69
  667. package/dist/routes/files/upload.js.map +0 -1
  668. package/dist/routes/health/get.d.ts +0 -3
  669. package/dist/routes/health/get.d.ts.map +0 -1
  670. package/dist/routes/health/get.js +0 -13
  671. package/dist/routes/health/get.js.map +0 -1
  672. package/dist/routes/health/index.d.ts +0 -2
  673. package/dist/routes/health/index.d.ts.map +0 -1
  674. package/dist/routes/health/index.js +0 -8
  675. package/dist/routes/health/index.js.map +0 -1
  676. package/dist/routes/library.d.ts +0 -2
  677. package/dist/routes/library.d.ts.map +0 -1
  678. package/dist/routes/library.js +0 -34
  679. package/dist/routes/library.js.map +0 -1
  680. package/dist/routes/models/get.d.ts +0 -3
  681. package/dist/routes/models/get.d.ts.map +0 -1
  682. package/dist/routes/models/get.js +0 -11
  683. package/dist/routes/models/get.js.map +0 -1
  684. package/dist/routes/models/index.d.ts +0 -2
  685. package/dist/routes/models/index.d.ts.map +0 -1
  686. package/dist/routes/models/index.js +0 -8
  687. package/dist/routes/models/index.js.map +0 -1
  688. package/dist/routes/notebooks/assistant-generate.d.ts +0 -3
  689. package/dist/routes/notebooks/assistant-generate.d.ts.map +0 -1
  690. package/dist/routes/notebooks/assistant-generate.js +0 -71
  691. package/dist/routes/notebooks/assistant-generate.js.map +0 -1
  692. package/dist/routes/notebooks/errors.d.ts +0 -3
  693. package/dist/routes/notebooks/errors.d.ts.map +0 -1
  694. package/dist/routes/notebooks/errors.js +0 -28
  695. package/dist/routes/notebooks/errors.js.map +0 -1
  696. package/dist/routes/notebooks/sql-execute.d.ts +0 -3
  697. package/dist/routes/notebooks/sql-execute.d.ts.map +0 -1
  698. package/dist/routes/notebooks/sql-execute.js +0 -45
  699. package/dist/routes/notebooks/sql-execute.js.map +0 -1
  700. package/dist/routes/notebooks.d.ts +0 -2
  701. package/dist/routes/notebooks.d.ts.map +0 -1
  702. package/dist/routes/notebooks.js +0 -136
  703. package/dist/routes/notebooks.js.map +0 -1
  704. package/dist/routes/route-errors.d.ts +0 -3
  705. package/dist/routes/route-errors.d.ts.map +0 -1
  706. package/dist/routes/route-errors.js +0 -13
  707. package/dist/routes/route-errors.js.map +0 -1
  708. package/dist/routes/schemas.d.ts +0 -805
  709. package/dist/routes/schemas.d.ts.map +0 -1
  710. package/dist/routes/schemas.js +0 -186
  711. package/dist/routes/schemas.js.map +0 -1
  712. package/dist/routes/sessions.d.ts +0 -2
  713. package/dist/routes/sessions.d.ts.map +0 -1
  714. package/dist/routes/sessions.js +0 -128
  715. package/dist/routes/sessions.js.map +0 -1
  716. package/dist/routes/skills.d.ts +0 -2
  717. package/dist/routes/skills.d.ts.map +0 -1
  718. package/dist/routes/skills.js +0 -140
  719. package/dist/routes/skills.js.map +0 -1
  720. package/dist/routes/sql.d.ts +0 -2
  721. package/dist/routes/sql.d.ts.map +0 -1
  722. package/dist/routes/sql.js +0 -50
  723. package/dist/routes/sql.js.map +0 -1
  724. package/dist/routes/tenants/credentials.d.ts +0 -5
  725. package/dist/routes/tenants/credentials.d.ts.map +0 -1
  726. package/dist/routes/tenants/credentials.js +0 -50
  727. package/dist/routes/tenants/credentials.js.map +0 -1
  728. package/dist/routes/tenants/index.d.ts +0 -2
  729. package/dist/routes/tenants/index.d.ts.map +0 -1
  730. package/dist/routes/tenants/index.js +0 -10
  731. package/dist/routes/tenants/index.js.map +0 -1
  732. package/dist/server.d.ts +0 -3
  733. package/dist/server.d.ts.map +0 -1
  734. package/dist/server.js +0 -34
  735. package/dist/server.js.map +0 -1
  736. /package/dist/{agents/skills → executor}/types.js +0 -0
package/README.md ADDED
@@ -0,0 +1,121 @@
1
+ # @multiplayer-app/sandbox
2
+
3
+ Micro-VM worker library: runs micro-VMs and connects to the Multiplayer sandbox control
4
+ plane. It auto-detects which micro-VM engines the host can run and advertises them to
5
+ sandbox; sandbox schedules VMs onto it and proxies traffic through a single outbound
6
+ WebSocket, so the worker needs **no inbound ports**.
7
+
8
+ Supported engines (auto-detected): `qemu`, `firecracker`, `docker`, `docker-sandbox`,
9
+ `lambda-microvm`, `fargate`, `remote`, and `mock`.
10
+
11
+ `vm-gateway` can import this package directly and run the worker in-process (see
12
+ `services/vm-gateway/src/index.ts`). The published package also installs a standalone
13
+ `sandbox` executable. Engine configuration is env-driven and auto-detected —
14
+ `WORKER_ID`, `WORKER_TOKEN`, `SANDBOX_URL`, `MAX_VMS`, `WORKER_REGION`, plus per-engine
15
+ vars like `QEMU_IMAGES_DIR`, `DOCKER_STACK_IMAGES`, `MICROVM_IMAGE_ARN`,
16
+ `FARGATE_CLUSTER`, `AGENT_URL` — see `src/config.ts` for the full list.
17
+ `WORKER_TOKEN` is required. `WORKER_ID` is optional and defaults to the machine
18
+ hostname; set it explicitly when multiple workers could report the same hostname.
19
+ `SANDBOX_URL` is optional and defaults to
20
+ `https://api.sandbox.filingramp.com`; set it explicitly for local or self-hosted
21
+ control planes.
22
+
23
+ ## Start a worker
24
+
25
+ Install the package globally and start the worker with its authentication token:
26
+
27
+ ```sh
28
+ npm install --global @multiplayer-app/sandbox
29
+ WORKER_TOKEN=<token> sandbox start
30
+ ```
31
+
32
+ The worker ID defaults to the hostname and the control-plane URL defaults to
33
+ `https://api.sandbox.filingramp.com`. Both can be overridden with environment
34
+ variables or flags:
35
+
36
+ ```sh
37
+ sandbox start --token <token> --worker-id worker-eu-01 \
38
+ --sandbox-url http://localhost:3011 --max-vms 5
39
+ ```
40
+
41
+ For the `qemu` engine, the host needs QEMU (`qemu-system-*`) installed; for
42
+ `firecracker`, a Linux host with `/dev/kvm`; for `docker`, just a running Docker
43
+ daemon (Docker Desktop/OrbStack) plus local images from
44
+ `scripts/setup-docker-images.sh` — no kernel images or virtualization support
45
+ needed, making it the lowest-friction engine for local dev. One VM = one
46
+ container; unlike the other local engines it also supports `exec`/`writeFiles`
47
+ directly (`docker exec` / `docker cp`), and `pause`/`resume`/`stop`/`restore` map
48
+ onto real `docker pause`/`unpause`/`stop`/`start`.
49
+
50
+ `docker-sandbox` runs the same per-stack images through
51
+ [Docker Sandboxes](https://www.docker.com/products/docker-sandboxes/) (the `sbx`
52
+ CLI) instead of plain `docker run` — one VM = one `sbx` sandbox, each in its own
53
+ microVM (stronger isolation than the `docker` engine, no HVF/KVM setup needed
54
+ like QEMU/Firecracker). Requires `sbx` installed and signed in (`sbx login`) and
55
+ a global network policy initialized once (`sbx policy init balanced`); sandboxes
56
+ have a 1 GiB memory floor and there's no `pause`/`unpause` primitive (aliased to
57
+ `stop`/`restore`). Images are bridged on demand from the same `docker` images
58
+ above via `docker save` + `sbx template load` — no separate build step.
59
+
60
+ `sbx`'s egress firewall applies here (it doesn't for the plain `docker` engine):
61
+ a release's `APP_URL` host needs an explicit `sbx policy allow network <host>`
62
+ rule or it 403s, even under the `balanced` policy. Note that `sbx` categorizes
63
+ `host.docker.internal`/`gateway.docker.internal` requests under the `localhost`
64
+ domain in its policy log (`sbx policy log`) — allow-rule the *resolved* host
65
+ shown there, not the hostname you requested, if a rule doesn't seem to take.
66
+
67
+ ## Ops CLI
68
+
69
+ Not published — for local/ops use only (image management, engine probing):
70
+
71
+ ```sh
72
+ # See which engines this host can run (and why others can't)
73
+ pnpm --filter @multiplayer-app/sandbox run cli -- detect
74
+
75
+ # Download the per-stack base images (kernel + initramfs) the local engines need
76
+ pnpm --filter @multiplayer-app/sandbox run cli -- images pull --from s3://<bucket>
77
+ ```
78
+
79
+ Base images can also be built from scratch with `scripts/setup-vm-images.sh`
80
+ (QEMU/Firecracker kernel + initramfs) or `scripts/setup-docker-images.sh`
81
+ (Docker engine images).
82
+
83
+ To build a complete, portable catalog for all runners, use:
84
+
85
+ ```sh
86
+ pnpm run build:base-images
87
+
88
+ # Build only selected runners/architecture/stacks
89
+ RUNNERS="qemu docker" ARCH=x86_64 STACKS="node python" \
90
+ pnpm run build:base-images
91
+ ```
92
+
93
+ The underlying script lives at `libs/sandbox/scripts/build-base-images.sh`.
94
+
95
+ The default output is `libs/sandbox/dist-base-images/<runner>/<arch>/<stack>/` with a
96
+ root `SHA256SUMS` file. QEMU and Firecracker entries contain `vmlinuz` and
97
+ `initramfs.img`, while Lambda MicroVM entries contain `app.zip`. Docker, Docker
98
+ Sandboxes, and Fargate images are built and tagged for an OCI registry instead
99
+ of being duplicated as tar archives. Their prepared references are written to
100
+ `container-images.tsv`. The default repository prefix is
101
+ `multiplayerapp/sandbox`; override it with `CONTAINER_IMAGE_REPOSITORY`, and set
102
+ `IMAGE_TAG` to the release version:
103
+
104
+ ```sh
105
+ CONTAINER_IMAGE_REPOSITORY=my-dockerhub-user/sandbox IMAGE_TAG=v1.2.3 \
106
+ pnpm run build:base-images
107
+ ```
108
+
109
+ Architecture-specific tags use `<version>-<arch>` so a separate publishing
110
+ workflow can push them and optionally create a multi-architecture `<version>`
111
+ manifest. The build script never uploads files or pushes images.
112
+
113
+ Tags matching `sandbox-v*` run three release jobs: npm package publication and
114
+ the two architecture-specific base-image publishers start after lint in
115
+ parallel; once both architectures are available, a final job creates the
116
+ multi-architecture Docker tags. The publisher expects the repository variable
117
+ `SANDBOX_BASE_IMAGES_S3_BUCKET`, the existing `DOCKERHUB_ORGANIZATION` variable,
118
+ and the existing `AWS_ROLE_ARN` and `DOCKERHUB_OIDC_ID` secrets.
119
+
120
+ The runner-specific paths intentionally duplicate shared artifacts. That keeps
121
+ each S3 prefix self-contained and allows runner formats to evolve independently.
package/dist/cli.d.ts ADDED
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ import 'dotenv/config';
3
+ //# sourceMappingURL=cli.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAIA,OAAO,eAAe,CAAA"}
package/dist/cli.js ADDED
@@ -0,0 +1,105 @@
1
+ #!/usr/bin/env node
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ /* eslint-disable no-console -- console output is the CLI's user interface */
5
+ // Worker CLI. Published as the global `sandbox` executable and also available locally via
6
+ // `pnpm --filter @multiplayer-app/sandbox run cli -- <args>`.
7
+ require("dotenv/config");
8
+ const commander_1 = require("commander");
9
+ const package_json_1 = require("../package.json");
10
+ const config_1 = require("./config");
11
+ const executor_1 = require("./executor");
12
+ const detect_1 = require("./executor/detect");
13
+ const images_1 = require("./images");
14
+ const socket_client_1 = require("./socket-client");
15
+ const console_relays_1 = require("./console-relays");
16
+ const program = new commander_1.Command();
17
+ program
18
+ .name('sandbox')
19
+ .description('Run and manage a Multiplayer sandbox worker')
20
+ .version(package_json_1.version);
21
+ program
22
+ .command('start')
23
+ .description('start a worker and connect it to the sandbox control plane')
24
+ .option('--token <token>', 'worker authentication token (env: WORKER_TOKEN)')
25
+ .option('--worker-id <id>', 'stable worker ID (env: WORKER_ID; default: hostname)')
26
+ .option('--sandbox-url <url>', 'control-plane URL (env: SANDBOX_URL; default: https://api.sandbox.filingramp.com)')
27
+ .option('--max-vms <count>', 'maximum concurrent VMs (env: MAX_VMS)')
28
+ .action(async (opts) => {
29
+ const config = (0, config_1.loadWorkerConfigFromEnv)({
30
+ ...process.env,
31
+ ...(opts.token ? { WORKER_TOKEN: opts.token } : {}),
32
+ ...(opts.workerId ? { WORKER_ID: opts.workerId } : {}),
33
+ ...(opts.sandboxUrl ? { SANDBOX_URL: opts.sandboxUrl } : {}),
34
+ ...(opts.maxVms ? { MAX_VMS: opts.maxVms } : {}),
35
+ });
36
+ const executor = (0, executor_1.createExecutor)(config);
37
+ const socket = (0, socket_client_1.connectToSandbox)(config, executor);
38
+ (0, console_relays_1.attachConsoleRelays)(executor, socket);
39
+ let stopping = false;
40
+ const stop = async (signal) => {
41
+ if (stopping)
42
+ return;
43
+ stopping = true;
44
+ console.log(`\n${signal} received; shutting down sandbox worker...`);
45
+ socket.disconnect();
46
+ const results = await Promise.allSettled(executor.list().map((vm) => executor.destroy(vm.vmId)));
47
+ const failed = results.filter((result) => result.status === 'rejected');
48
+ if (failed.length)
49
+ console.error(`Failed to destroy ${failed.length} VM(s) during shutdown`);
50
+ process.exit(failed.length ? 1 : 0);
51
+ };
52
+ process.once('SIGINT', () => { void stop('SIGINT'); });
53
+ process.once('SIGTERM', () => { void stop('SIGTERM'); });
54
+ console.log(`Starting sandbox worker ${config.workerId} → ${config.sandboxUrl}`);
55
+ // Socket.IO's reconnect timers keep the process alive until a termination signal arrives.
56
+ });
57
+ program
58
+ .command('detect')
59
+ .description('probe this host and report which micro-VM engines it can run')
60
+ .action(() => {
61
+ const probes = (0, detect_1.probeEngines)((0, config_1.loadWorkerConfigFromEnv)({ ...process.env, WORKER_ID: '-', WORKER_TOKEN: '-' }));
62
+ for (const probe of probes) {
63
+ const status = probe.available ? 'available' : `unavailable — ${probe.reason}`;
64
+ console.log(`${probe.engine.padEnd(15)} ${status}`);
65
+ }
66
+ });
67
+ const images = program
68
+ .command('images')
69
+ .description('manage engine base images (kernel + initramfs for QEMU/Firecracker)');
70
+ images
71
+ .command('pull')
72
+ .description('download per-stack base images from S3 or an HTTPS mirror into the standard location')
73
+ .requiredOption('--from <location>', 's3://bucket[/prefix] or https:// base URL (env: VM_IMAGES_URL)', process.env.VM_IMAGES_URL)
74
+ .option('--arch <arch>', 'image architecture', (0, images_1.hostArch)())
75
+ .option('--stack <stack...>', 'stacks to pull (default: all)')
76
+ .option('--dest <dir>', 'destination directory (default: ~/.multiplayer/vm-images/<arch>)')
77
+ .option('--endpoint <url>', 'custom S3 endpoint, e.g. a MinIO URL (env: VM_IMAGES_ENDPOINT)', process.env.VM_IMAGES_ENDPOINT)
78
+ .action(async (opts) => {
79
+ var _a;
80
+ const dest = (_a = opts.dest) !== null && _a !== void 0 ? _a : (0, images_1.defaultImagesDir)(opts.arch);
81
+ const files = await (0, images_1.pullImages)({ location: opts.from, arch: opts.arch, stacks: opts.stack, endpoint: opts.endpoint }, dest);
82
+ for (const file of files)
83
+ console.log(`pulled ${file}`);
84
+ console.log('\nbase images ready — "sandbox detect" shows which engines they enable');
85
+ });
86
+ images
87
+ .command('push')
88
+ .description('upload locally built per-stack base images (scripts/setup-vm-images.sh) to S3')
89
+ .requiredOption('--to <location>', 's3://bucket[/prefix] (env: VM_IMAGES_URL)', process.env.VM_IMAGES_URL)
90
+ .option('--arch <arch>', 'image architecture', (0, images_1.hostArch)())
91
+ .option('--stack <stack...>', 'stacks to push (default: all found locally)')
92
+ .option('--src <dir>', 'source directory (default: ~/.multiplayer/vm-images/<arch>)')
93
+ .option('--endpoint <url>', 'custom S3 endpoint, e.g. a MinIO URL (env: VM_IMAGES_ENDPOINT)', process.env.VM_IMAGES_ENDPOINT)
94
+ .action(async (opts) => {
95
+ var _a;
96
+ const src = (_a = opts.src) !== null && _a !== void 0 ? _a : (0, images_1.defaultImagesDir)(opts.arch);
97
+ const uploaded = await (0, images_1.pushImages)({ location: opts.to, arch: opts.arch, stacks: opts.stack, endpoint: opts.endpoint }, src);
98
+ for (const uri of uploaded)
99
+ console.log(`pushed ${uri}`);
100
+ });
101
+ program.parseAsync().catch((error) => {
102
+ console.error(`Error: ${error.message}`);
103
+ process.exit(1);
104
+ });
105
+ //# sourceMappingURL=cli.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;AACA,6EAA6E;AAC7E,0FAA0F;AAC1F,8DAA8D;AAC9D,yBAAsB;AACtB,yCAAmC;AACnC,kDAA2D;AAC3D,qCAAkD;AAClD,yCAA2C;AAC3C,8CAAgD;AAChD,qCAA6E;AAC7E,mDAAkD;AAClD,qDAAsD;AAEtD,MAAM,OAAO,GAAG,IAAI,mBAAO,EAAE,CAAA;AAE7B,OAAO;KACJ,IAAI,CAAC,SAAS,CAAC;KACf,WAAW,CAAC,6CAA6C,CAAC;KAC1D,OAAO,CAAC,sBAAc,CAAC,CAAA;AAE1B,OAAO;KACJ,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,4DAA4D,CAAC;KACzE,MAAM,CAAC,iBAAiB,EAAE,iDAAiD,CAAC;KAC5E,MAAM,CAAC,kBAAkB,EAAE,sDAAsD,CAAC;KAClF,MAAM,CAAC,qBAAqB,EAAE,mFAAmF,CAAC;KAClH,MAAM,CAAC,mBAAmB,EAAE,uCAAuC,CAAC;KACpE,MAAM,CAAC,KAAK,EAAE,IAAiF,EAAE,EAAE;IAClG,MAAM,MAAM,GAAG,IAAA,gCAAuB,EAAC;QACrC,GAAG,OAAO,CAAC,GAAG;QACd,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnD,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtD,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5D,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACjD,CAAC,CAAA;IACF,MAAM,QAAQ,GAAG,IAAA,yBAAc,EAAC,MAAM,CAAC,CAAA;IACvC,MAAM,MAAM,GAAG,IAAA,gCAAgB,EAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IACjD,IAAA,oCAAmB,EAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;IAErC,IAAI,QAAQ,GAAG,KAAK,CAAA;IACpB,MAAM,IAAI,GAAG,KAAK,EAAE,MAAc,EAAiB,EAAE;QACnD,IAAI,QAAQ;YAAE,OAAM;QACpB,QAAQ,GAAG,IAAI,CAAA;QACf,OAAO,CAAC,GAAG,CAAC,KAAK,MAAM,4CAA4C,CAAC,CAAA;QACpE,MAAM,CAAC,UAAU,EAAE,CAAA;QACnB,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QAChG,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,UAAU,CAAC,CAAA;QACvE,IAAI,MAAM,CAAC,MAAM;YAAE,OAAO,CAAC,KAAK,CAAC,qBAAqB,MAAM,CAAC,MAAM,wBAAwB,CAAC,CAAA;QAC5F,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IACrC,CAAC,CAAA;IAED,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE,GAAG,KAAK,IAAI,CAAC,QAAQ,CAAC,CAAA,CAAC,CAAC,CAAC,CAAA;IACrD,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,EAAE,GAAG,KAAK,IAAI,CAAC,SAAS,CAAC,CAAA,CAAC,CAAC,CAAC,CAAA;IAEvD,OAAO,CAAC,GAAG,CAAC,2BAA2B,MAAM,CAAC,QAAQ,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC,CAAA;IAChF,0FAA0F;AAC5F,CAAC,CAAC,CAAA;AAEJ,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,8DAA8D,CAAC;KAC3E,MAAM,CAAC,GAAG,EAAE;IACX,MAAM,MAAM,GAAG,IAAA,qBAAY,EAAC,IAAA,gCAAuB,EAAC,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,YAAY,EAAE,GAAG,EAAE,CAAC,CAAC,CAAA;IAC3G,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,iBAAiB,KAAK,CAAC,MAAM,EAAE,CAAA;QAC9E,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,MAAM,EAAE,CAAC,CAAA;IACrD,CAAC;AACH,CAAC,CAAC,CAAA;AAEJ,MAAM,MAAM,GAAG,OAAO;KACnB,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,qEAAqE,CAAC,CAAA;AAErF,MAAM;KACH,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,sFAAsF,CAAC;KACnG,cAAc,CAAC,mBAAmB,EAAE,gEAAgE,EAAE,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;KAChI,MAAM,CAAC,eAAe,EAAE,oBAAoB,EAAE,IAAA,iBAAQ,GAAE,CAAC;KACzD,MAAM,CAAC,oBAAoB,EAAE,+BAA+B,CAAC;KAC7D,MAAM,CAAC,cAAc,EAAE,kEAAkE,CAAC;KAC1F,MAAM,CAAC,kBAAkB,EAAE,gEAAgE,EAAE,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;KAC5H,MAAM,CAAC,KAAK,EAAE,IAAwF,EAAE,EAAE;;IACzG,MAAM,IAAI,GAAG,MAAA,IAAI,CAAC,IAAI,mCAAI,IAAA,yBAAgB,EAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACrD,MAAM,KAAK,GAAG,MAAM,IAAA,mBAAU,EAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC,CAAA;IAC3H,KAAK,MAAM,IAAI,IAAI,KAAK;QAAE,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,EAAE,CAAC,CAAA;IACvD,OAAO,CAAC,GAAG,CAAC,wEAAwE,CAAC,CAAA;AACvF,CAAC,CAAC,CAAA;AAEJ,MAAM;KACH,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,+EAA+E,CAAC;KAC5F,cAAc,CAAC,iBAAiB,EAAE,2CAA2C,EAAE,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;KACzG,MAAM,CAAC,eAAe,EAAE,oBAAoB,EAAE,IAAA,iBAAQ,GAAE,CAAC;KACzD,MAAM,CAAC,oBAAoB,EAAE,6CAA6C,CAAC;KAC3E,MAAM,CAAC,aAAa,EAAE,6DAA6D,CAAC;KACpF,MAAM,CAAC,kBAAkB,EAAE,gEAAgE,EAAE,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;KAC5H,MAAM,CAAC,KAAK,EAAE,IAAqF,EAAE,EAAE;;IACtG,MAAM,GAAG,GAAG,MAAA,IAAI,CAAC,GAAG,mCAAI,IAAA,yBAAgB,EAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACnD,MAAM,QAAQ,GAAG,MAAM,IAAA,mBAAU,EAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,GAAG,CAAC,CAAA;IAC3H,KAAK,MAAM,GAAG,IAAI,QAAQ;QAAE,OAAO,CAAC,GAAG,CAAC,UAAU,GAAG,EAAE,CAAC,CAAA;AAC1D,CAAC,CAAC,CAAA;AAEJ,OAAO,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,KAAY,EAAE,EAAE;IAC1C,OAAO,CAAC,KAAK,CAAC,UAAU,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;IACxC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACjB,CAAC,CAAC,CAAA"}
package/dist/config.d.ts CHANGED
@@ -1,3 +1,88 @@
1
- export type { BuilderApiConfig, BuilderApiAgentDeps } from './builder-api-config';
2
- export { agentDepsFromConfig } from './builder-api-config';
1
+ import { version as WORKER_VERSION } from '../package.json';
2
+ export { WORKER_VERSION };
3
+ export interface RemoteWorkerConfig {
4
+ agentUrl: string;
5
+ authToken?: string;
6
+ }
7
+ export interface FirecrackerWorkerConfig {
8
+ bin: string;
9
+ imagesDir: string;
10
+ kernelPath?: string;
11
+ initrdPath?: string;
12
+ vmDataPath: string;
13
+ }
14
+ export interface QemuWorkerConfig {
15
+ bin: string;
16
+ imagesDir: string;
17
+ kernelPath?: string;
18
+ initrdPath?: string;
19
+ vmDataPath: string;
20
+ portRangeStart: number;
21
+ portRangeEnd: number;
22
+ accel: string;
23
+ cpu: string;
24
+ machine: string;
25
+ }
26
+ export interface LambdaMicrovmWorkerConfig {
27
+ region?: string;
28
+ imageArn: string;
29
+ stackImageArns: Record<string, string>;
30
+ ingressConnectorArns?: string[];
31
+ egressConnectorArns?: string[];
32
+ executionRoleArn?: string;
33
+ maxIdleSeconds: number;
34
+ suspendedDurationSeconds: number;
35
+ maximumDurationInSeconds: number;
36
+ }
37
+ export interface DockerWorkerConfig {
38
+ bin: string;
39
+ imagePrefix: string;
40
+ imageTag: string;
41
+ stackImages: Record<string, string>;
42
+ network?: string;
43
+ portRangeStart: number;
44
+ portRangeEnd: number;
45
+ guestPort: number;
46
+ }
47
+ export interface DockerSandboxWorkerConfig {
48
+ bin: string;
49
+ imagePrefix: string;
50
+ imageTag: string;
51
+ /** Fully-qualified `sbx template load`ed ref overrides, keyed by stack. */
52
+ stackTemplates: Record<string, string>;
53
+ /** In-sandbox start command per stack — `sbx create shell` doesn't run the image's own CMD. */
54
+ stackAgentCommands: Record<string, string>;
55
+ workspaceRoot: string;
56
+ portRangeStart: number;
57
+ portRangeEnd: number;
58
+ guestPort: number;
59
+ minMemoryMib: number;
60
+ }
61
+ export interface FargateWorkerConfig {
62
+ region?: string;
63
+ cluster: string;
64
+ taskDefinition?: string;
65
+ stackTaskDefinitions: Record<string, string>;
66
+ subnets: string[];
67
+ securityGroups?: string[];
68
+ assignPublicIp: boolean;
69
+ guestPort: number;
70
+ startTimeoutMs: number;
71
+ }
72
+ export interface WorkerConfig {
73
+ workerId: string;
74
+ token: string;
75
+ sandboxUrl: string;
76
+ workerSocketPath: string;
77
+ maxVms: number;
78
+ region?: string;
79
+ remote: RemoteWorkerConfig;
80
+ firecracker: FirecrackerWorkerConfig;
81
+ qemu: QemuWorkerConfig;
82
+ docker: DockerWorkerConfig;
83
+ dockerSandbox: DockerSandboxWorkerConfig;
84
+ lambdaMicrovm: LambdaMicrovmWorkerConfig;
85
+ fargate: FargateWorkerConfig;
86
+ }
87
+ export declare function loadWorkerConfigFromEnv(env?: NodeJS.ProcessEnv): WorkerConfig;
3
88
  //# sourceMappingURL=config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA;AACjF,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
package/dist/config.js CHANGED
@@ -1,6 +1,144 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.agentDepsFromConfig = void 0;
4
- var builder_api_config_1 = require("./builder-api-config");
5
- Object.defineProperty(exports, "agentDepsFromConfig", { enumerable: true, get: function () { return builder_api_config_1.agentDepsFromConfig; } });
6
+ exports.WORKER_VERSION = void 0;
7
+ exports.loadWorkerConfigFromEnv = loadWorkerConfigFromEnv;
8
+ const os_1 = __importDefault(require("os"));
9
+ const path_1 = __importDefault(require("path"));
10
+ const package_json_1 = require("../package.json");
11
+ Object.defineProperty(exports, "WORKER_VERSION", { enumerable: true, get: function () { return package_json_1.version; } });
12
+ const images_1 = require("./images");
13
+ /** Format: "node:<value>,python:<value>" — per-stack overrides (MicroVM image ARNs, Fargate task defs). */
14
+ function parseStackMap(raw) {
15
+ const map = {};
16
+ if (!raw)
17
+ return map;
18
+ for (const pair of raw.split(',')) {
19
+ const idx = pair.indexOf(':');
20
+ if (idx === -1)
21
+ continue;
22
+ const stack = pair.slice(0, idx).trim();
23
+ const arn = pair.slice(idx + 1).trim();
24
+ if (stack && arn)
25
+ map[stack] = arn;
26
+ }
27
+ return map;
28
+ }
29
+ function parseArnList(raw) {
30
+ if (!raw)
31
+ return undefined;
32
+ const arns = raw.split(',').map((s) => s.trim()).filter(Boolean);
33
+ return arns.length ? arns : undefined;
34
+ }
35
+ function loadWorkerConfigFromEnv(env = process.env) {
36
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7;
37
+ const workerId = ((_a = env.WORKER_ID) === null || _a === void 0 ? void 0 : _a.trim()) || os_1.default.hostname();
38
+ const token = env.WORKER_TOKEN;
39
+ if (!token) {
40
+ throw new Error('WORKER_TOKEN is required');
41
+ }
42
+ return {
43
+ workerId,
44
+ token,
45
+ sandboxUrl: (_b = env.SANDBOX_URL) !== null && _b !== void 0 ? _b : 'https://api.sandbox.filingramp.com',
46
+ workerSocketPath: (_c = env.WORKER_SOCKET_PATH) !== null && _c !== void 0 ? _c : '/v0/sapi/workers/ws',
47
+ maxVms: Number(env.MAX_VMS) || 10,
48
+ region: env.WORKER_REGION,
49
+ remote: {
50
+ // No default: an unset AGENT_URL means the remote engine is not configured on this worker
51
+ agentUrl: (_d = env.AGENT_URL) !== null && _d !== void 0 ? _d : '',
52
+ authToken: env.AGENT_TOKEN,
53
+ },
54
+ firecracker: {
55
+ bin: (_e = env.FIRECRACKER_BIN) !== null && _e !== void 0 ? _e : 'firecracker',
56
+ // Per-stack base images (<imagesDir>/<stack>/vmlinuz + initramfs.img) from
57
+ // `worker-cli images pull` / setup-vm-images.sh; engine detection checks
58
+ // existence, so missing images just disable the engine.
59
+ imagesDir: (_g = (_f = env.FIRECRACKER_IMAGES_DIR) !== null && _f !== void 0 ? _f : env.VM_IMAGES_DIR) !== null && _g !== void 0 ? _g : (0, images_1.defaultImagesDir)(),
60
+ // Explicit single-image override, applied to every stack when both are set
61
+ kernelPath: env.FIRECRACKER_KERNEL,
62
+ initrdPath: env.FIRECRACKER_INITRD,
63
+ vmDataPath: (_h = env.FIRECRACKER_VM_DATA) !== null && _h !== void 0 ? _h : path_1.default.join(os_1.default.tmpdir(), 'firecracker-vms'),
64
+ },
65
+ lambdaMicrovm: {
66
+ region: (_j = env.MICROVM_AWS_REGION) !== null && _j !== void 0 ? _j : env.AWS_REGION,
67
+ imageArn: (_k = env.MICROVM_IMAGE_ARN) !== null && _k !== void 0 ? _k : '',
68
+ stackImageArns: parseStackMap(env.MICROVM_STACK_IMAGE_ARNS),
69
+ ingressConnectorArns: parseArnList(env.MICROVM_INGRESS_CONNECTORS),
70
+ egressConnectorArns: parseArnList(env.MICROVM_EGRESS_CONNECTORS),
71
+ executionRoleArn: env.MICROVM_EXECUTION_ROLE_ARN,
72
+ // 0 disables auto-suspend; the sandbox drives pause/resume explicitly by default
73
+ maxIdleSeconds: Number((_l = env.MICROVM_MAX_IDLE_SECONDS) !== null && _l !== void 0 ? _l : 900),
74
+ suspendedDurationSeconds: Number((_m = env.MICROVM_SUSPENDED_DURATION_SECONDS) !== null && _m !== void 0 ? _m : 28800),
75
+ maximumDurationInSeconds: Number((_o = env.MICROVM_MAX_DURATION_SECONDS) !== null && _o !== void 0 ? _o : 28800),
76
+ },
77
+ fargate: {
78
+ region: (_p = env.FARGATE_AWS_REGION) !== null && _p !== void 0 ? _p : env.AWS_REGION,
79
+ cluster: (_q = env.FARGATE_CLUSTER) !== null && _q !== void 0 ? _q : '',
80
+ taskDefinition: env.FARGATE_TASK_DEFINITION,
81
+ // Per-stack task definitions: "node:builder-node:3,python:builder-python:1"
82
+ stackTaskDefinitions: parseStackMap(env.FARGATE_STACK_TASK_DEFS),
83
+ subnets: (_s = (_r = env.FARGATE_SUBNETS) === null || _r === void 0 ? void 0 : _r.split(',').map((s) => s.trim()).filter(Boolean)) !== null && _s !== void 0 ? _s : [],
84
+ securityGroups: (_t = env.FARGATE_SECURITY_GROUPS) === null || _t === void 0 ? void 0 : _t.split(',').map((s) => s.trim()).filter(Boolean),
85
+ // ENABLED when the worker runs outside the task VPC (proxies to the task's public IP)
86
+ assignPublicIp: env.FARGATE_ASSIGN_PUBLIC_IP === 'true',
87
+ guestPort: Number(env.FARGATE_GUEST_PORT) || 8080,
88
+ startTimeoutMs: Number(env.FARGATE_START_TIMEOUT_MS) || 180000,
89
+ },
90
+ docker: {
91
+ bin: (_u = env.DOCKER_BIN) !== null && _u !== void 0 ? _u : 'docker',
92
+ // Local images from `scripts/setup-docker-images.sh`: <imagePrefix>-<stack>:<imageTag>
93
+ imagePrefix: (_v = env.DOCKER_IMAGE_PREFIX) !== null && _v !== void 0 ? _v : 'multiplayer-builder-vm',
94
+ imageTag: (_w = env.DOCKER_IMAGE_TAG) !== null && _w !== void 0 ? _w : 'local',
95
+ stackImages: parseStackMap(env.DOCKER_STACK_IMAGES),
96
+ network: env.DOCKER_NETWORK,
97
+ portRangeStart: Number(env.DOCKER_PORT_MIN) || 9100,
98
+ portRangeEnd: Number(env.DOCKER_PORT_MAX) || 9199,
99
+ guestPort: Number(env.DOCKER_GUEST_PORT) || 8080,
100
+ },
101
+ dockerSandbox: {
102
+ bin: (_x = env.SBX_BIN) !== null && _x !== void 0 ? _x : 'sbx',
103
+ // Bridged from the same local images `docker` (imagePrefix-imageTag) already uses —
104
+ // `docker save` + `sbx template load`, see docker-sandbox-executor.ts.
105
+ imagePrefix: (_y = env.SBX_IMAGE_PREFIX) !== null && _y !== void 0 ? _y : 'multiplayer-builder-vm',
106
+ imageTag: (_z = env.SBX_IMAGE_TAG) !== null && _z !== void 0 ? _z : 'local',
107
+ stackTemplates: parseStackMap(env.SBX_STACK_TEMPLATES),
108
+ // `sbx create shell` doesn't run the image's own CMD, so the engine launches
109
+ // it explicitly — defaults match each Dockerfile's own WORKDIR /app + CMD.
110
+ stackAgentCommands: {
111
+ node: 'node app.js',
112
+ python: 'python app.py',
113
+ static: 'node app.js',
114
+ ...parseStackMap(env.SBX_STACK_AGENT_COMMANDS),
115
+ },
116
+ workspaceRoot: (_0 = env.SBX_WORKSPACE_DIR) !== null && _0 !== void 0 ? _0 : path_1.default.join(os_1.default.tmpdir(), 'sbx-vms'),
117
+ portRangeStart: Number(env.SBX_PORT_MIN) || 9200,
118
+ portRangeEnd: Number(env.SBX_PORT_MAX) || 9299,
119
+ guestPort: Number(env.SBX_GUEST_PORT) || 8080,
120
+ // sbx rejects sandboxes below 1 GiB memory.
121
+ minMemoryMib: Number(env.SBX_MIN_MEMORY_MIB) || 1024,
122
+ },
123
+ qemu: {
124
+ bin: (_1 = env.QEMU_BIN) !== null && _1 !== void 0 ? _1 : 'qemu-system-aarch64',
125
+ // Per-stack base images (<imagesDir>/<stack>/vmlinuz + initramfs.img) from
126
+ // `worker-cli images pull` / setup-vm-images.sh; engine detection checks
127
+ // existence, so missing images just disable the engine.
128
+ imagesDir: (_3 = (_2 = env.QEMU_IMAGES_DIR) !== null && _2 !== void 0 ? _2 : env.VM_IMAGES_DIR) !== null && _3 !== void 0 ? _3 : (0, images_1.defaultImagesDir)(),
129
+ // Explicit single-image override, applied to every stack when both are set
130
+ kernelPath: env.QEMU_KERNEL,
131
+ initrdPath: env.QEMU_INITRD,
132
+ vmDataPath: (_4 = env.QEMU_VM_DATA) !== null && _4 !== void 0 ? _4 : path_1.default.join(os_1.default.tmpdir(), 'qemu-vms'),
133
+ portRangeStart: Number(env.QEMU_PORT_MIN) || 9000,
134
+ portRangeEnd: Number(env.QEMU_PORT_MAX) || 9999,
135
+ // Accelerator: hvf (macOS host), kvm (Linux + /dev/kvm), tcg (software, any host — slow)
136
+ accel: (_5 = env.QEMU_ACCEL) !== null && _5 !== void 0 ? _5 : (process.platform === 'darwin' ? 'hvf' : 'kvm'),
137
+ // CPU model: host requires hvf/kvm; max is best for tcg on aarch64; qemu64 for tcg x86_64
138
+ cpu: (_6 = env.QEMU_CPU) !== null && _6 !== void 0 ? _6 : 'host',
139
+ // Machine type: virt (aarch64), q35 (x86_64)
140
+ machine: (_7 = env.QEMU_MACHINE) !== null && _7 !== void 0 ? _7 : 'virt',
141
+ },
142
+ };
143
+ }
6
144
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":";;;AACA,2DAA0D;AAAjD,yHAAA,mBAAmB,OAAA"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import type { Socket } from 'socket.io-client';
2
+ import type { MultiEngineExecutor } from './executor';
3
+ /**
4
+ * Wires up VNC and serial relays for any executor that exposes console endpoints (QEMU: VNC +
5
+ * serial TCP ports; Firecracker: serial via process stdio pipe). All media (frames, terminal
6
+ * data) flows through the sandbox socket to browsers — the worker never accepts inbound
7
+ * connections from the internet. Wraps `executor.create`/`destroy` in place.
8
+ */
9
+ export declare function attachConsoleRelays(executor: MultiEngineExecutor, sandboxSocket: Socket): void;
10
+ //# sourceMappingURL=console-relays.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"console-relays.d.ts","sourceRoot":"","sources":["../src/console-relays.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAIrD;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,GAAG,IAAI,CAmC9F"}
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.attachConsoleRelays = attachConsoleRelays;
4
+ const vnc_relay_1 = require("./services/vnc-relay");
5
+ const serial_relay_1 = require("./services/serial-relay");
6
+ /**
7
+ * Wires up VNC and serial relays for any executor that exposes console endpoints (QEMU: VNC +
8
+ * serial TCP ports; Firecracker: serial via process stdio pipe). All media (frames, terminal
9
+ * data) flows through the sandbox socket to browsers — the worker never accepts inbound
10
+ * connections from the internet. Wraps `executor.create`/`destroy` in place.
11
+ */
12
+ function attachConsoleRelays(executor, sandboxSocket) {
13
+ const relays = new Map();
14
+ const originalCreate = executor.create.bind(executor);
15
+ executor.create = async (spec) => {
16
+ var _a;
17
+ const handle = await originalCreate(spec);
18
+ const entry = {};
19
+ if (handle.vncPort) {
20
+ const vnc = new vnc_relay_1.VncRelay(handle.vmId, '127.0.0.1', handle.vncPort, sandboxSocket);
21
+ vnc.start();
22
+ entry.vnc = vnc;
23
+ }
24
+ const serialSource = handle.serialPort
25
+ ? { type: 'tcp', host: '127.0.0.1', port: handle.serialPort }
26
+ : (_a = executor.getSerialSource) === null || _a === void 0 ? void 0 : _a.call(executor, handle.vmId);
27
+ if (serialSource) {
28
+ const serial = new serial_relay_1.SerialRelay(handle.vmId, serialSource, sandboxSocket);
29
+ serial.connect();
30
+ entry.serial = serial;
31
+ }
32
+ if (entry.vnc || entry.serial)
33
+ relays.set(handle.vmId, entry);
34
+ return handle;
35
+ };
36
+ const originalDestroy = executor.destroy.bind(executor);
37
+ executor.destroy = async (vmId) => {
38
+ var _a, _b;
39
+ const entry = relays.get(vmId);
40
+ (_a = entry === null || entry === void 0 ? void 0 : entry.vnc) === null || _a === void 0 ? void 0 : _a.destroy();
41
+ (_b = entry === null || entry === void 0 ? void 0 : entry.serial) === null || _b === void 0 ? void 0 : _b.destroy();
42
+ relays.delete(vmId);
43
+ return originalDestroy(vmId);
44
+ };
45
+ }
46
+ //# sourceMappingURL=console-relays.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"console-relays.js","sourceRoot":"","sources":["../src/console-relays.ts"],"names":[],"mappings":";;AAWA,kDAmCC;AA5CD,oDAA+C;AAC/C,0DAAqD;AAErD;;;;;GAKG;AACH,SAAgB,mBAAmB,CAAC,QAA6B,EAAE,aAAqB;IACtF,MAAM,MAAM,GAAG,IAAI,GAAG,EAAoD,CAAA;IAE1E,MAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IACrD,QAAQ,CAAC,MAAM,GAAG,KAAK,EAAE,IAAI,EAAE,EAAE;;QAC/B,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,CAAA;QACzC,MAAM,KAAK,GAA6C,EAAE,CAAA;QAE1D,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,MAAM,GAAG,GAAG,IAAI,oBAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,CAAC,OAAO,EAAE,aAAa,CAAC,CAAA;YACjF,GAAG,CAAC,KAAK,EAAE,CAAA;YACX,KAAK,CAAC,GAAG,GAAG,GAAG,CAAA;QACjB,CAAC;QAED,MAAM,YAAY,GAAG,MAAM,CAAC,UAAU;YACpC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAc,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,CAAC,UAAU,EAAE;YACtE,CAAC,CAAC,MAAA,QAAQ,CAAC,eAAe,yDAAG,MAAM,CAAC,IAAI,CAAC,CAAA;QAC3C,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,MAAM,GAAG,IAAI,0BAAW,CAAC,MAAM,CAAC,IAAI,EAAE,YAAY,EAAE,aAAa,CAAC,CAAA;YACxE,MAAM,CAAC,OAAO,EAAE,CAAA;YAChB,KAAK,CAAC,MAAM,GAAG,MAAM,CAAA;QACvB,CAAC;QAED,IAAI,KAAK,CAAC,GAAG,IAAI,KAAK,CAAC,MAAM;YAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;QAC7D,OAAO,MAAM,CAAA;IACf,CAAC,CAAA;IAED,MAAM,eAAe,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IACvD,QAAQ,CAAC,OAAO,GAAG,KAAK,EAAE,IAAI,EAAE,EAAE;;QAChC,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QAC9B,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,GAAG,0CAAE,OAAO,EAAE,CAAA;QACrB,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,0CAAE,OAAO,EAAE,CAAA;QACxB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QACnB,OAAO,eAAe,CAAC,IAAI,CAAC,CAAA;IAC9B,CAAC,CAAA;AACH,CAAC"}
@@ -0,0 +1,15 @@
1
+ import { type VmEngine } from '@multiplayer-app/builder-types';
2
+ import type { WorkerConfig } from '../config';
3
+ export interface EngineProbe {
4
+ engine: VmEngine;
5
+ available: boolean;
6
+ /** Why the engine is unavailable (for startup logs). */
7
+ reason?: string;
8
+ }
9
+ /** Probe every engine against this host + config. Mock is always runnable. */
10
+ export declare function probeEngines(config: WorkerConfig): EngineProbe[];
11
+ export declare function detectEngines(config: WorkerConfig): {
12
+ engines: VmEngine[];
13
+ defaultEngine: VmEngine;
14
+ };
15
+ //# sourceMappingURL=detect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"detect.d.ts","sourceRoot":"","sources":["../../src/executor/detect.ts"],"names":[],"mappings":"AAGA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,gCAAgC,CAAA;AAEzE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AAK7C,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,QAAQ,CAAA;IAChB,SAAS,EAAE,OAAO,CAAA;IAClB,wDAAwD;IACxD,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAyID,8EAA8E;AAC9E,wBAAgB,YAAY,CAAC,MAAM,EAAE,YAAY,GAAG,WAAW,EAAE,CAWhE;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,YAAY,GAAG;IAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;IAAC,aAAa,EAAE,QAAQ,CAAA;CAAE,CAcpG"}