@skaile/workspaces 0.22.0-beta.0 → 0.22.0-beta.2

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 (306) hide show
  1. package/CHANGELOG.md +221 -0
  2. package/dist/{asset-feeds-PJDJ3QYI.js → asset-feeds-2M6UKEJ7.js} +13 -14
  3. package/dist/asset-feeds-2M6UKEJ7.js.map +1 -0
  4. package/dist/asset-manager/catalog-deployer.d.ts +2 -0
  5. package/dist/asset-manager/contrib.d.ts +2 -0
  6. package/dist/asset-manager/fragments.d.ts +2 -0
  7. package/dist/asset-manager/history.d.ts +2 -0
  8. package/dist/asset-manager/index.d.ts +2 -0
  9. package/dist/asset-manager/index.js +7 -7
  10. package/dist/asset-manager/installer.d.ts +2 -0
  11. package/dist/asset-manager/installer.js +6 -6
  12. package/dist/asset-manager/renderers.d.ts +2 -0
  13. package/dist/asset-manager/src/index.d.ts +18 -7
  14. package/dist/asset-manager/src/index.d.ts.map +1 -1
  15. package/dist/asset-manager/src/installer.d.ts +3 -3
  16. package/dist/asset-manager/src/installer.d.ts.map +1 -1
  17. package/dist/base-assets/connectors/deploy.d.ts +2 -0
  18. package/dist/base-assets/connectors/deploy.js +8 -8
  19. package/dist/base-assets/connectors/devserver.d.ts +2 -0
  20. package/dist/base-assets/connectors/devserver.js +8 -8
  21. package/dist/base-assets/connectors/flow/adapter.js +8 -8
  22. package/dist/base-assets/connectors/flow/engine.d.ts +2 -0
  23. package/dist/base-assets/connectors/flow/run-flow.js +9 -9
  24. package/dist/base-assets/connectors/flow.d.ts +2 -0
  25. package/dist/base-assets/connectors/flow.js +8 -8
  26. package/dist/base-assets/connectors/git/driver.d.ts.map +1 -1
  27. package/dist/base-assets/connectors/git.d.ts +2 -0
  28. package/dist/base-assets/connectors/git.js +8 -8
  29. package/dist/base-assets/connectors/gmail.d.ts +2 -0
  30. package/dist/base-assets/connectors/gmail.js +8 -8
  31. package/dist/base-assets/connectors/googledrive.d.ts +2 -0
  32. package/dist/base-assets/connectors/googledrive.js +8 -8
  33. package/dist/base-assets/connectors/local.d.ts +2 -0
  34. package/dist/base-assets/connectors/local.js +8 -8
  35. package/dist/base-assets/connectors/mattermost.d.ts +2 -0
  36. package/dist/base-assets/connectors/mattermost.js +8 -8
  37. package/dist/base-assets/connectors/memory.d.ts +2 -0
  38. package/dist/base-assets/connectors/memory.js +8 -8
  39. package/dist/base-assets/connectors/minio.d.ts +2 -0
  40. package/dist/base-assets/connectors/minio.js +8 -8
  41. package/dist/base-assets/connectors/postgres.d.ts +2 -0
  42. package/dist/base-assets/connectors/postgres.js +8 -8
  43. package/dist/base-assets/connectors/s3.d.ts +2 -0
  44. package/dist/base-assets/connectors/s3.js +8 -8
  45. package/dist/base-assets/connectors/sharepoint.d.ts +2 -0
  46. package/dist/base-assets/connectors/sharepoint.js +8 -8
  47. package/dist/base-assets/connectors/sqlite.d.ts +2 -0
  48. package/dist/base-assets/connectors/sqlite.js +8 -8
  49. package/dist/base-assets/connectors/static-server.d.ts +2 -0
  50. package/dist/base-assets/connectors/static-server.js +8 -8
  51. package/dist/base-assets/connectors/tunnel.d.ts +2 -0
  52. package/dist/base-assets/connectors/tunnel.js +8 -8
  53. package/dist/base-assets/connectors/webdav.d.ts +2 -0
  54. package/dist/base-assets/connectors/webdav.js +8 -8
  55. package/dist/base-assets/connectors/xstate-store.d.ts +2 -0
  56. package/dist/base-assets/connectors/xstate-store.js +8 -8
  57. package/dist/base-assets/connectors/xstate.d.ts +2 -0
  58. package/dist/base-assets/connectors/xstate.js +8 -8
  59. package/dist/bridge/drivers/claude-sdk.d.ts +2 -0
  60. package/dist/bridge/drivers/claude-sdk.js +2 -2
  61. package/dist/bridge/drivers/codex.d.ts +2 -0
  62. package/dist/bridge/drivers/codex.js +2 -2
  63. package/dist/bridge/drivers/echo.d.ts +2 -0
  64. package/dist/bridge/drivers/echo.js +2 -2
  65. package/dist/bridge/drivers/omp.d.ts +2 -0
  66. package/dist/bridge/drivers/omp.js +2 -2
  67. package/dist/bridge/index.d.ts +2 -0
  68. package/dist/bridge/index.js +3 -3
  69. package/dist/bridge/src/registry.d.ts +4 -2
  70. package/dist/bridge/src/registry.d.ts.map +1 -1
  71. package/dist/chunk-32NA4TVC.js +30 -0
  72. package/dist/chunk-32NA4TVC.js.map +1 -0
  73. package/dist/{chunk-CSDQBWE6.js → chunk-3KLWGHDE.js} +5 -5
  74. package/dist/{chunk-CSDQBWE6.js.map → chunk-3KLWGHDE.js.map} +1 -1
  75. package/dist/{chunk-UZRY5UI2.js → chunk-6E6PKKAD.js} +68 -3
  76. package/dist/chunk-6E6PKKAD.js.map +1 -0
  77. package/dist/{chunk-G6GKWGOW.js → chunk-6SA2SIOU.js} +26 -10
  78. package/dist/chunk-6SA2SIOU.js.map +1 -0
  79. package/dist/{chunk-IGQEXBBG.js → chunk-6VTG73UY.js} +13 -9
  80. package/dist/chunk-6VTG73UY.js.map +1 -0
  81. package/dist/{chunk-TTY56FQQ.js → chunk-74GTZ4TJ.js} +17 -5
  82. package/dist/chunk-74GTZ4TJ.js.map +1 -0
  83. package/dist/chunk-7QBNJTTQ.js +3 -0
  84. package/dist/{chunk-W2O5LWYU.js.map → chunk-7QBNJTTQ.js.map} +1 -1
  85. package/dist/{chunk-SL6JVGRD.js → chunk-CEUHU3C4.js} +3 -3
  86. package/dist/{chunk-SL6JVGRD.js.map → chunk-CEUHU3C4.js.map} +1 -1
  87. package/dist/{chunk-J2FCO6TM.js → chunk-FIHVQFXB.js} +2 -2
  88. package/dist/{chunk-J2FCO6TM.js.map → chunk-FIHVQFXB.js.map} +1 -1
  89. package/dist/{chunk-F3MGZ5E6.js → chunk-FVZLCBSX.js} +3 -3
  90. package/dist/{chunk-F3MGZ5E6.js.map → chunk-FVZLCBSX.js.map} +1 -1
  91. package/dist/{chunk-7PTP3SQJ.js → chunk-GTS2FODO.js} +32 -7
  92. package/dist/chunk-GTS2FODO.js.map +1 -0
  93. package/dist/{chunk-KA46DUM4.js → chunk-I5SGBFMM.js} +51 -3
  94. package/dist/chunk-I5SGBFMM.js.map +1 -0
  95. package/dist/{chunk-MO4JPTRD.js → chunk-LDLZFYLR.js} +5 -5
  96. package/dist/{chunk-MO4JPTRD.js.map → chunk-LDLZFYLR.js.map} +1 -1
  97. package/dist/{chunk-TKOLD2O7.js → chunk-LDYPQVRU.js} +516 -145
  98. package/dist/chunk-LDYPQVRU.js.map +1 -0
  99. package/dist/{chunk-GKM6MDUC.js → chunk-M5JDVO6D.js} +3 -3
  100. package/dist/{chunk-GKM6MDUC.js.map → chunk-M5JDVO6D.js.map} +1 -1
  101. package/dist/{chunk-XHFMUGDD.js → chunk-M5TE6YI5.js} +3 -3
  102. package/dist/{chunk-XHFMUGDD.js.map → chunk-M5TE6YI5.js.map} +1 -1
  103. package/dist/{chunk-NGC7ZQI4.js → chunk-NICAMYPV.js} +39 -45
  104. package/dist/chunk-NICAMYPV.js.map +1 -0
  105. package/dist/{chunk-WIR34WMU.js → chunk-NQL3T75I.js} +24 -59
  106. package/dist/chunk-NQL3T75I.js.map +1 -0
  107. package/dist/{chunk-RENHNO4J.js → chunk-P4FYHEHW.js} +206 -137
  108. package/dist/chunk-P4FYHEHW.js.map +1 -0
  109. package/dist/{chunk-2DNSSQ22.js → chunk-TWQPDBHB.js} +270 -173
  110. package/dist/chunk-TWQPDBHB.js.map +1 -0
  111. package/dist/{chunk-UZVHJ7LX.js → chunk-UBLTUFFI.js} +4 -4
  112. package/dist/{chunk-UZVHJ7LX.js.map → chunk-UBLTUFFI.js.map} +1 -1
  113. package/dist/{chunk-X5Y4EGZB.js → chunk-VUCPJBAG.js} +43 -10
  114. package/dist/chunk-VUCPJBAG.js.map +1 -0
  115. package/dist/{chunk-PBWMV5GM.js → chunk-WQ7DE5UC.js} +18 -4
  116. package/dist/chunk-WQ7DE5UC.js.map +1 -0
  117. package/dist/cli/index.d.ts +2 -0
  118. package/dist/cli/index.js +258 -262
  119. package/dist/cli/index.js.map +1 -1
  120. package/dist/cli/src/commands/deploy.d.ts.map +1 -1
  121. package/dist/cli/src/commands/manage.d.ts +22 -31
  122. package/dist/cli/src/commands/manage.d.ts.map +1 -1
  123. package/dist/cli/src/commands/npx.d.ts +5 -3
  124. package/dist/cli/src/commands/npx.d.ts.map +1 -1
  125. package/dist/cli/src/commands/project.d.ts.map +1 -1
  126. package/dist/cli/src/commands/source.d.ts +7 -0
  127. package/dist/cli/src/commands/source.d.ts.map +1 -1
  128. package/dist/cli/src/commands/update.d.ts.map +1 -1
  129. package/dist/cli/src/ensure-sources.d.ts.map +1 -1
  130. package/dist/client/index.d.ts +2 -0
  131. package/dist/connectors/config.d.ts +2 -0
  132. package/dist/connectors/config.js +6 -6
  133. package/dist/connectors/index.d.ts +2 -0
  134. package/dist/connectors/index.js +8 -8
  135. package/dist/connectors/rclone-config.d.ts +2 -0
  136. package/dist/connectors/rclone.d.ts +2 -0
  137. package/dist/connectors-shared/index.d.ts +2 -0
  138. package/dist/core/discovery.d.ts +2 -0
  139. package/dist/core/driver-targets.d.ts +2 -0
  140. package/dist/core/framework.d.ts +2 -0
  141. package/dist/core/index.d.ts +2 -0
  142. package/dist/core/index.js +5 -5
  143. package/dist/core/logging.d.ts +2 -0
  144. package/dist/core/manifest.d.ts +2 -0
  145. package/dist/core/manifest.js +2 -2
  146. package/dist/core/models.d.ts +2 -0
  147. package/dist/core/models.js +1 -1
  148. package/dist/core/runtime-assets.d.ts +2 -0
  149. package/dist/core/runtime-assets.js +4 -4
  150. package/dist/core/src/index.d.ts +7 -5
  151. package/dist/core/src/index.d.ts.map +1 -1
  152. package/dist/core/src/lock.d.ts +47 -26
  153. package/dist/core/src/lock.d.ts.map +1 -1
  154. package/dist/core/src/manifest.d.ts.map +1 -1
  155. package/dist/core/src/models.d.ts +61 -49
  156. package/dist/core/src/models.d.ts.map +1 -1
  157. package/dist/core/src/repo-manager.d.ts +79 -36
  158. package/dist/core/src/repo-manager.d.ts.map +1 -1
  159. package/dist/core/src/runtime-assets.d.ts.map +1 -1
  160. package/dist/core/src/walker.d.ts +52 -0
  161. package/dist/core/src/walker.d.ts.map +1 -0
  162. package/dist/core/src/workspace-config.d.ts +160 -45
  163. package/dist/core/src/workspace-config.d.ts.map +1 -1
  164. package/dist/core/src/workspace-yaml-editor.d.ts +33 -16
  165. package/dist/core/src/workspace-yaml-editor.d.ts.map +1 -1
  166. package/dist/core/store.d.ts +2 -0
  167. package/dist/core/workspace-config.d.ts +2 -0
  168. package/dist/core/workspace-config.js +3 -3
  169. package/dist/deploy/index.d.ts +2 -0
  170. package/dist/deploy/index.js +167 -52
  171. package/dist/deploy/index.js.map +1 -1
  172. package/dist/deploy/src/index.d.ts +4 -3
  173. package/dist/deploy/src/index.d.ts.map +1 -1
  174. package/dist/deploy/src/targets/container-runtime.d.ts +1 -0
  175. package/dist/deploy/src/targets/container-runtime.d.ts.map +1 -1
  176. package/dist/deploy/src/targets/docker.d.ts +1 -0
  177. package/dist/deploy/src/targets/docker.d.ts.map +1 -1
  178. package/dist/deploy/src/targets/local.d.ts.map +1 -1
  179. package/dist/deploy/src/targets/nix.d.ts +36 -0
  180. package/dist/deploy/src/targets/nix.d.ts.map +1 -0
  181. package/dist/deploy/src/targets/podman.d.ts +1 -0
  182. package/dist/deploy/src/targets/podman.d.ts.map +1 -1
  183. package/dist/deploy/src/targets/process-handle.d.ts +34 -0
  184. package/dist/deploy/src/targets/process-handle.d.ts.map +1 -0
  185. package/dist/discovery/index.d.ts +2 -0
  186. package/dist/discovery/index.js +3 -3
  187. package/dist/discovery/src/source-config.d.ts +2 -2
  188. package/dist/{ensure-sources-COGVKY44.js → ensure-sources-ALTI5PXR.js} +20 -16
  189. package/dist/ensure-sources-ALTI5PXR.js.map +1 -0
  190. package/dist/library/index.d.ts +2 -0
  191. package/dist/library/index.js +4 -4
  192. package/dist/library/src/remote/remote-catalog-source.d.ts +17 -0
  193. package/dist/library/src/remote/remote-catalog-source.d.ts.map +1 -1
  194. package/dist/open-library-EEGG6RDN.js +13 -0
  195. package/dist/{open-library-DWAQFUSQ.js.map → open-library-EEGG6RDN.js.map} +1 -1
  196. package/dist/plugin-registry/index.d.ts +2 -0
  197. package/dist/plugin-registry/index.js +1 -1
  198. package/dist/plugin-registry/src/context.d.ts +30 -1
  199. package/dist/plugin-registry/src/context.d.ts.map +1 -1
  200. package/dist/plugin-registry/src/deploy-handle.d.ts +17 -1
  201. package/dist/plugin-registry/src/deploy-handle.d.ts.map +1 -1
  202. package/dist/plugin-registry/src/deploy-helpers.d.ts +69 -0
  203. package/dist/plugin-registry/src/deploy-helpers.d.ts.map +1 -0
  204. package/dist/plugin-registry/src/index.d.ts +6 -4
  205. package/dist/plugin-registry/src/index.d.ts.map +1 -1
  206. package/dist/plugin-registry/src/internal.d.ts.map +1 -1
  207. package/dist/plugin-registry/src/registry.d.ts +1 -0
  208. package/dist/plugin-registry/src/registry.d.ts.map +1 -1
  209. package/dist/plugin-registry/src/targets.d.ts +4 -0
  210. package/dist/plugin-registry/src/targets.d.ts.map +1 -1
  211. package/dist/{plugin-store-6OENKNFW.js → plugin-store-G277ZX3B.js} +8 -8
  212. package/dist/{plugin-store-6OENKNFW.js.map → plugin-store-G277ZX3B.js.map} +1 -1
  213. package/dist/plugins/index.d.ts +2 -0
  214. package/dist/plugins/src/catalog-source.d.ts +5 -0
  215. package/dist/plugins/src/catalog-source.d.ts.map +1 -1
  216. package/dist/resolver/index.d.ts +2 -0
  217. package/dist/runner/index.d.ts +2 -0
  218. package/dist/runner/index.js +17 -16
  219. package/dist/runner/prompt-assembly.d.ts +2 -0
  220. package/dist/runner/src/resources.d.ts.map +1 -1
  221. package/dist/runner/src/serve.d.ts +7 -0
  222. package/dist/runner/src/serve.d.ts.map +1 -1
  223. package/dist/sdk/asset-manager.d.ts +2 -0
  224. package/dist/sdk/asset-manager.js +7 -7
  225. package/dist/sdk/bridge.d.ts +2 -0
  226. package/dist/sdk/bridge.js +3 -3
  227. package/dist/sdk/client.d.ts +2 -0
  228. package/dist/sdk/core.d.ts +2 -0
  229. package/dist/sdk/core.js +5 -5
  230. package/dist/sdk/flow.d.ts +2 -0
  231. package/dist/sdk/index.d.ts +2 -0
  232. package/dist/sdk/index.js +53 -19
  233. package/dist/sdk/index.js.map +1 -1
  234. package/dist/sdk/resolver.d.ts +2 -0
  235. package/dist/sdk/runner.d.ts +2 -0
  236. package/dist/sdk/runner.js +17 -16
  237. package/dist/sdk/session.d.ts +2 -0
  238. package/dist/sdk/src/local-runtime.d.ts +8 -0
  239. package/dist/sdk/src/local-runtime.d.ts.map +1 -1
  240. package/dist/sdk/src/transport.d.ts +7 -1
  241. package/dist/sdk/src/transport.d.ts.map +1 -1
  242. package/dist/sdk/store.d.ts +2 -0
  243. package/dist/sdk/telemetry.d.ts +2 -0
  244. package/dist/sdk/transport/ws/client.d.ts +2 -0
  245. package/dist/sdk/transport/ws/client.js +2 -1
  246. package/dist/sdk/transport/ws/server.d.ts +2 -0
  247. package/dist/sdk/transport/ws/server.js +2 -1
  248. package/dist/sdk/transport/ws.d.ts +2 -0
  249. package/dist/sdk/transport/ws.js +4 -3
  250. package/dist/sdk/transport.d.ts +2 -0
  251. package/dist/sdk/transport.js +4 -3
  252. package/dist/sdk/types.d.ts +2 -0
  253. package/dist/secrets/index.d.ts +2 -0
  254. package/dist/session/index.d.ts +2 -0
  255. package/dist/{setup-ACMP3QZC.js → setup-REX4I5NE.js} +10 -10
  256. package/dist/{setup-ACMP3QZC.js.map → setup-REX4I5NE.js.map} +1 -1
  257. package/dist/store/index.d.ts +2 -0
  258. package/dist/store/react.d.ts +2 -0
  259. package/dist/store/vue.d.ts +2 -0
  260. package/dist/store-client-IX3Y67NK.js +14 -0
  261. package/dist/{store-client-ZSLNOOQG.js.map → store-client-IX3Y67NK.js.map} +1 -1
  262. package/dist/telemetry/index.d.ts +2 -0
  263. package/dist/transport/index.d.ts +2 -0
  264. package/dist/transport/index.js +4 -3
  265. package/dist/transport/src/ws/auth.d.ts +34 -0
  266. package/dist/transport/src/ws/auth.d.ts.map +1 -0
  267. package/dist/transport/src/ws/client.d.ts +4 -0
  268. package/dist/transport/src/ws/client.d.ts.map +1 -1
  269. package/dist/transport/src/ws/index.d.ts +3 -2
  270. package/dist/transport/src/ws/index.d.ts.map +1 -1
  271. package/dist/transport/src/ws/server.d.ts +5 -0
  272. package/dist/transport/src/ws/server.d.ts.map +1 -1
  273. package/dist/transport/ws/client.d.ts +2 -0
  274. package/dist/transport/ws/client.js +2 -1
  275. package/dist/transport/ws/server.d.ts +2 -0
  276. package/dist/transport/ws/server.js +2 -1
  277. package/dist/transport/ws.d.ts +2 -0
  278. package/dist/transport/ws.js +4 -3
  279. package/dist/tui/index.d.ts +2 -0
  280. package/dist/tui/index.js +17 -16
  281. package/dist/tui/index.js.map +1 -1
  282. package/dist/types/index.d.ts +2 -0
  283. package/dist/types/manifests.d.ts +2 -0
  284. package/dist/workspace-plugin/adapters/mcp.d.ts +2 -0
  285. package/dist/workspace-plugin/adapters/omp.d.ts +2 -0
  286. package/dist/workspace-plugin/index.d.ts +2 -0
  287. package/dist/workspace-plugin/index.js +1 -1
  288. package/package.json +4 -2
  289. package/dist/asset-feeds-PJDJ3QYI.js.map +0 -1
  290. package/dist/chunk-2DNSSQ22.js.map +0 -1
  291. package/dist/chunk-7PTP3SQJ.js.map +0 -1
  292. package/dist/chunk-G6GKWGOW.js.map +0 -1
  293. package/dist/chunk-IGQEXBBG.js.map +0 -1
  294. package/dist/chunk-KA46DUM4.js.map +0 -1
  295. package/dist/chunk-NGC7ZQI4.js.map +0 -1
  296. package/dist/chunk-PBWMV5GM.js.map +0 -1
  297. package/dist/chunk-RENHNO4J.js.map +0 -1
  298. package/dist/chunk-TKOLD2O7.js.map +0 -1
  299. package/dist/chunk-TTY56FQQ.js.map +0 -1
  300. package/dist/chunk-UZRY5UI2.js.map +0 -1
  301. package/dist/chunk-W2O5LWYU.js +0 -3
  302. package/dist/chunk-WIR34WMU.js.map +0 -1
  303. package/dist/chunk-X5Y4EGZB.js.map +0 -1
  304. package/dist/ensure-sources-COGVKY44.js.map +0 -1
  305. package/dist/open-library-DWAQFUSQ.js +0 -13
  306. package/dist/store-client-ZSLNOOQG.js +0 -14
@@ -0,0 +1,36 @@
1
+ /**
2
+ * `nixDeployTarget` — stand a workspace up inside a `nix shell` and reach it over
3
+ * `ws://127.0.0.1:<port>`. `tlsTermination: "none"` (loopback only).
4
+ *
5
+ * Generic on purpose: it resolves a flake stack attr and runs `skaile serve`
6
+ * inside it, nothing more. Platform-specific deployment policy (store binds,
7
+ * apparmor, fleet) stays in the host's own custom target — this built-in only
8
+ * knows `flakeRef` + `stackAttr`. `nixBin` exists as a hermetic-test seam, the
9
+ * same role `command` plays for the local target.
10
+ */
11
+ import type { DeployTarget } from "@skaile/workspaces/plugin-registry";
12
+ import * as z from "zod";
13
+ declare const nixConfigSchema: z.ZodObject<{
14
+ flakeRef: z.ZodString;
15
+ stackAttr: z.ZodString;
16
+ port: z.ZodOptional<z.ZodNumber>;
17
+ env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
18
+ cwd: z.ZodOptional<z.ZodString>;
19
+ readyPattern: z.ZodOptional<z.ZodString>;
20
+ nixBin: z.ZodOptional<z.ZodString>;
21
+ }, z.core.$strict>;
22
+ type NixConfig = z.infer<typeof nixConfigSchema>;
23
+ declare const nixPayloadSchema: z.ZodObject<{
24
+ pid: z.ZodNumber;
25
+ port: z.ZodNumber;
26
+ }, z.core.$strip>;
27
+ type NixPayload = z.infer<typeof nixPayloadSchema>;
28
+ /**
29
+ * Build the `nix shell … --command skaile serve --port <port>` argv. Pure and
30
+ * exported so the arg contract can be unit-tested without spawning nix.
31
+ */
32
+ export declare function buildNixArgs(config: Pick<NixConfig, "flakeRef" | "stackAttr">, port: number): string[];
33
+ /** Built-in target that runs the workspace inside a `nix shell`. */
34
+ export declare const nixDeployTarget: DeployTarget<NixConfig, NixPayload>;
35
+ export {};
36
+ //# sourceMappingURL=nix.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nix.d.ts","sourceRoot":"","sources":["../../../../deploy/src/targets/nix.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AAKzB,QAAA,MAAM,eAAe;;;;;;;;kBAaV,CAAC;AAEZ,KAAK,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAEjD,QAAA,MAAM,gBAAgB;;;iBAGpB,CAAC;AAEH,KAAK,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAKnD;;;GAGG;AACH,wBAAgB,YAAY,CAC1B,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,UAAU,GAAG,WAAW,CAAC,EACjD,IAAI,EAAE,MAAM,GACX,MAAM,EAAE,CAWV;AAED,oEAAoE;AACpE,eAAO,MAAM,eAAe,EAAE,YAAY,CAAC,SAAS,EAAE,UAAU,CA4C/D,CAAC"}
@@ -14,5 +14,6 @@ export declare const podmanDeployTarget: import("../../../plugin-registry/src/ta
14
14
  containerId: string;
15
15
  hostPort: number;
16
16
  runtime: "docker" | "podman";
17
+ bind: string;
17
18
  }>;
18
19
  //# sourceMappingURL=podman.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"podman.d.ts","sourceRoot":"","sources":["../../../../deploy/src/targets/podman.ts"],"names":[],"mappings":"AAAA,qFAAqF;AAIrF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;EAAsC,CAAC"}
1
+ {"version":3,"file":"podman.d.ts","sourceRoot":"","sources":["../../../../deploy/src/targets/podman.ts"],"names":[],"mappings":"AAAA,qFAAqF;AAIrF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;EAAsC,CAAC"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Shared child-process `DeployHandle` plumbing for the loopback process targets
3
+ * (`local`, `nix`). Both stand a workspace up as a host child process reached
4
+ * over `ws://127.0.0.1:<port>`; the only differences are the command they spawn
5
+ * and the config they accept. The handle lifecycle (ready → health via pid
6
+ * liveness → buffered logs → SIGTERM stop) is identical, so it lives here once.
7
+ */
8
+ import { type PortableSubprocess } from "@skaile/workspaces/core";
9
+ import type { DeployContext, DeployHandle } from "@skaile/workspaces/plugin-registry";
10
+ import { LineBuffer } from "./stream-lines.js";
11
+ /** Minimum payload a process target persists to re-attach on restore. */
12
+ export interface ProcessPayload {
13
+ pid: number;
14
+ port: number;
15
+ }
16
+ /** A spawned child plus the buffer its stdout/stderr are pumped into. */
17
+ export interface SpawnedProcess {
18
+ proc: PortableSubprocess;
19
+ buffer: LineBuffer;
20
+ }
21
+ /** True when a pid is alive (signal 0 probes without delivering a signal). */
22
+ export declare function pidAlive(pid: number): boolean;
23
+ /** Spawn `command args` and pump both stdout and stderr into one LineBuffer. */
24
+ export declare function spawnProcess(command: string, args: string[], opts: {
25
+ cwd: string;
26
+ env: Record<string, string | undefined>;
27
+ }): SpawnedProcess;
28
+ /**
29
+ * Build the `DeployHandle` for a process target. `proc` is `null` for a restored
30
+ * handle (re-attached by pid — no live stream, so `logs()` yields nothing and
31
+ * `waitReady()` is a no-op).
32
+ */
33
+ export declare function buildProcessHandle<P extends ProcessPayload>(payload: P, ctx: DeployContext, ready: () => Promise<void>, proc: SpawnedProcess | null): DeployHandle<P>;
34
+ //# sourceMappingURL=process-handle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"process-handle.d.ts","sourceRoot":"","sources":["../../../../deploy/src/targets/process-handle.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,KAAK,kBAAkB,EAAiB,MAAM,yBAAyB,CAAC;AACjF,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AACtF,OAAO,EAAE,UAAU,EAAa,MAAM,mBAAmB,CAAC;AAE1D,yEAAyE;AACzE,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;CACd;AAED,yEAAyE;AACzE,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,kBAAkB,CAAC;IACzB,MAAM,EAAE,UAAU,CAAC;CACpB;AAED,8EAA8E;AAC9E,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAO7C;AAED,gFAAgF;AAChF,wBAAgB,YAAY,CAC1B,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EAAE,EACd,IAAI,EAAE;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAA;CAAE,GAC7D,cAAc,CAMhB;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,cAAc,EACzD,OAAO,EAAE,CAAC,EACV,GAAG,EAAE,aAAa,EAClB,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,EAC1B,IAAI,EAAE,cAAc,GAAG,IAAI,GAC1B,YAAY,CAAC,CAAC,CAAC,CA6DjB"}
@@ -0,0 +1,2 @@
1
+ // Auto-generated by _scripts/emit-dts-sidecars.ts — do not edit by hand.
2
+ export * from "./src/index.js";
@@ -1,7 +1,7 @@
1
- export { AssetKindRegistry, BUILTIN_PROVIDERS, SEMVER_RE, SourceConfigSchema, VERSION, agentProvider, buildRequiresGraph, computeDeterministicHash, computeDeterministicHashDetailed, connectorProvider, contractProvider, createDefaultRegistry, detectCycles, discoverAssetsInTree, discoverAssetsInTreeEntries, discoverFromManifest, extractRequires, isExcludedDevPath, isManifestMode, loadMergedSourceConfig, loadSourceConfig, mcpServerProvider, mergeSourceConfigs, parseSourceConfig, personaProvider, presetProvider, promptProvider, rulesetProvider, skillProvider, validateSourceConfig } from '../chunk-SL6JVGRD.js';
1
+ export { AssetKindRegistry, BUILTIN_PROVIDERS, SEMVER_RE, SourceConfigSchema, VERSION, agentProvider, buildRequiresGraph, computeDeterministicHash, computeDeterministicHashDetailed, connectorProvider, contractProvider, createDefaultRegistry, detectCycles, discoverAssetsInTree, discoverAssetsInTreeEntries, discoverFromManifest, extractRequires, isExcludedDevPath, isManifestMode, loadMergedSourceConfig, loadSourceConfig, mcpServerProvider, mergeSourceConfigs, parseSourceConfig, personaProvider, presetProvider, promptProvider, rulesetProvider, skillProvider, validateSourceConfig } from '../chunk-CEUHU3C4.js';
2
2
  import '../chunk-OKRUTSG7.js';
3
- import '../chunk-WIR34WMU.js';
4
- import '../chunk-X5Y4EGZB.js';
3
+ import '../chunk-NQL3T75I.js';
4
+ import '../chunk-VUCPJBAG.js';
5
5
  import '../chunk-NELZIQ2E.js';
6
6
  import '../chunk-NSBPE2FW.js';
7
7
  //# sourceMappingURL=index.js.map
@@ -13,8 +13,8 @@ declare const PublisherOverrideSchema: z.ZodObject<{
13
13
  }, z.core.$strip>;
14
14
  declare const SyncConfigSchema: z.ZodObject<{
15
15
  trigger: z.ZodDefault<z.ZodEnum<{
16
- poll: "poll";
17
16
  webhook: "webhook";
17
+ poll: "poll";
18
18
  }>>;
19
19
  poll_interval: z.ZodOptional<z.ZodNumber>;
20
20
  }, z.core.$strip>;
@@ -64,8 +64,8 @@ export declare const SourceConfigSchema: z.ZodObject<{
64
64
  dev_paths: z.ZodDefault<z.ZodArray<z.ZodString>>;
65
65
  sync: z.ZodOptional<z.ZodObject<{
66
66
  trigger: z.ZodDefault<z.ZodEnum<{
67
- poll: "poll";
68
67
  webhook: "webhook";
68
+ poll: "poll";
69
69
  }>>;
70
70
  poll_interval: z.ZodOptional<z.ZodNumber>;
71
71
  }, z.core.$strip>>;
@@ -1,15 +1,15 @@
1
1
  import { logErr, logOk, logInfo } from './chunk-4NDWKA64.js';
2
- import { skaileHomeDir } from './chunk-KA46DUM4.js';
2
+ import { skaileHomeDir } from './chunk-I5SGBFMM.js';
3
3
  import './chunk-R7FOF242.js';
4
- import './chunk-SL6JVGRD.js';
4
+ import './chunk-CEUHU3C4.js';
5
5
  import './chunk-OKRUTSG7.js';
6
- import { WorkspaceYamlEditor } from './chunk-RENHNO4J.js';
6
+ import { WorkspaceYamlEditor } from './chunk-P4FYHEHW.js';
7
7
  import './chunk-K5GBV4SA.js';
8
8
  import './chunk-KLNL7QHN.js';
9
- import './chunk-TTY56FQQ.js';
10
- import './chunk-TKOLD2O7.js';
11
- import './chunk-WIR34WMU.js';
12
- import './chunk-X5Y4EGZB.js';
9
+ import './chunk-74GTZ4TJ.js';
10
+ import './chunk-LDYPQVRU.js';
11
+ import './chunk-NQL3T75I.js';
12
+ import './chunk-VUCPJBAG.js';
13
13
  import './chunk-JKNWJ64A.js';
14
14
  import './chunk-O4JH3KUE.js';
15
15
  import './chunk-24UIWON4.js';
@@ -19,8 +19,11 @@ import { spawnSync } from 'child_process';
19
19
  import { existsSync } from 'fs';
20
20
  import * as path from 'path';
21
21
 
22
- function sourceClonePath(name) {
23
- return path.join(skaileHomeDir(), "sources", name);
22
+ function sourceClonePath(slug) {
23
+ return path.join(skaileHomeDir(), "sources", slug);
24
+ }
25
+ function deriveSlug(url) {
26
+ return url.replace(/\.git$/, "").split(/[/:]/).pop() ?? "source";
24
27
  }
25
28
  function ensureSourcesCloned(projectDir, opts = {}) {
26
29
  const result = { cloned: [], cached: [], failed: [] };
@@ -37,22 +40,23 @@ function ensureSourcesCloned(projectDir, opts = {}) {
37
40
  }
38
41
  if (sources.length === 0) return result;
39
42
  for (const entry of sources) {
40
- const dest = sourceClonePath(entry.name);
43
+ const slug = deriveSlug(entry.url);
44
+ const dest = sourceClonePath(slug);
41
45
  if (existsSync(dest)) {
42
- result.cached.push(entry.name);
46
+ result.cached.push(slug);
43
47
  continue;
44
48
  }
45
49
  const args = ["clone", entry.url, dest];
46
- if (entry.branch) args.splice(1, 0, "--branch", entry.branch);
50
+ if (entry.pin) args.splice(1, 0, "--branch", entry.pin);
47
51
  const clone = spawnSync("git", args, { stdio: opts.quiet ? "pipe" : "inherit" });
48
52
  if (clone.status !== 0) {
49
- result.failed.push(entry.name);
53
+ result.failed.push(slug);
50
54
  if (opts.quiet) {
51
55
  logErr(`git clone failed for ${entry.url}`);
52
56
  }
53
57
  continue;
54
58
  }
55
- result.cloned.push(entry.name);
59
+ result.cloned.push(slug);
56
60
  }
57
61
  if (!opts.quiet) {
58
62
  for (const n of result.cloned) logOk(`Cloned source "${n}".`);
@@ -64,5 +68,5 @@ function ensureSourcesCloned(projectDir, opts = {}) {
64
68
  }
65
69
 
66
70
  export { ensureSourcesCloned };
67
- //# sourceMappingURL=ensure-sources-COGVKY44.js.map
68
- //# sourceMappingURL=ensure-sources-COGVKY44.js.map
71
+ //# sourceMappingURL=ensure-sources-ALTI5PXR.js.map
72
+ //# sourceMappingURL=ensure-sources-ALTI5PXR.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../cli/src/ensure-sources.ts"],"names":[],"mappings":"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","file":"ensure-sources-ALTI5PXR.js","sourcesContent":["/**\n * ensure-sources.ts — hydrate the `~/.skaile/sources/` clone cache from a\n * project's `skaile.yaml` `sources:` entries.\n *\n * Called by `skaile init` (idempotent: no-op when no sources declared) and\n * `skaile install` so checking out a project pulls its source clones onto\n * the local machine.\n */\n\nimport { spawnSync } from \"node:child_process\";\nimport { existsSync } from \"node:fs\";\nimport * as path from \"node:path\";\nimport { type SourceEntry, WorkspaceYamlEditor } from \"@skaile/workspaces/core\";\nimport { skaileHomeDir } from \"@skaile/workspaces/library\";\nimport { logErr, logInfo, logOk } from \"./helpers.ts\";\n\nfunction sourceClonePath(slug: string): string {\n return path.join(skaileHomeDir(), \"sources\", slug);\n}\n\n/** Derive a cache slug from a source git URL. */\nfunction deriveSlug(url: string): string {\n return (\n url\n .replace(/\\.git$/, \"\")\n .split(/[/:]/)\n .pop() ?? \"source\"\n );\n}\n\nexport interface EnsureResult {\n cloned: string[];\n cached: string[];\n failed: string[];\n}\n\n/**\n * Walk `projectDir/skaile.yaml` `sources:` and clone any entries whose\n * clone directory does not yet exist under `~/.skaile/sources/`. Existing\n * clones are left untouched — this is hydration, not sync.\n *\n * Quiet by default: when `quiet: true` the helper only prints failures.\n * On full hydrate (`quiet: false`) it logs each cloned/cached entry.\n */\nexport function ensureSourcesCloned(\n projectDir: string,\n opts: { quiet?: boolean } = {},\n): EnsureResult {\n const result: EnsureResult = { cloned: [], cached: [], failed: [] };\n const yamlPath = path.join(projectDir, \"skaile.yaml\");\n if (!existsSync(yamlPath)) return result;\n\n let sources: SourceEntry[];\n try {\n sources = WorkspaceYamlEditor.load(yamlPath).getSources();\n } catch (err) {\n if (!opts.quiet) {\n logErr(`Could not read ${yamlPath}: ${err instanceof Error ? err.message : String(err)}`);\n }\n return result;\n }\n if (sources.length === 0) return result;\n\n for (const entry of sources) {\n const slug = deriveSlug(entry.url);\n const dest = sourceClonePath(slug);\n if (existsSync(dest)) {\n result.cached.push(slug);\n continue;\n }\n const args = [\"clone\", entry.url, dest];\n if (entry.pin) args.splice(1, 0, \"--branch\", entry.pin);\n const clone = spawnSync(\"git\", args, { stdio: opts.quiet ? \"pipe\" : \"inherit\" });\n if (clone.status !== 0) {\n result.failed.push(slug);\n if (opts.quiet) {\n logErr(`git clone failed for ${entry.url}`);\n }\n continue;\n }\n result.cloned.push(slug);\n }\n\n if (!opts.quiet) {\n for (const n of result.cloned) logOk(`Cloned source \"${n}\".`);\n if (result.cached.length > 0) {\n logInfo(`Reused cached clones: ${result.cached.join(\", \")}`);\n }\n }\n\n return result;\n}\n"]}
@@ -0,0 +1,2 @@
1
+ // Auto-generated by _scripts/emit-dts-sidecars.ts — do not edit by hand.
2
+ export * from "./src/index.js";
@@ -1,9 +1,9 @@
1
- export { CatalogCache, CatalogConfigSchema, CatalogHttpError, DuplicateLibraryNameError, DuplicateSubscriptionError, GitSyncDriver, InstanceHasConsumersError, InstanceNotFoundError, InterpolationError, KNOWN_ASSET_KINDS, KnowledgeManifestSchema, LIBRARY_BACKENDS, LIBRARY_OWNERSHIPS, LIBRARY_STRUCTURES, LOCAL_CATALOG_URL, LibraryConfigSchema, LibraryError, LibraryInstanceRefSchema, LibraryManager, LibrarySectionSchema, LibrarySyncError, LocalCatalogSource, LocalIndex, LocalSyncDriver, LockFileSchema, LockSubscriptionSchema, OfflineError, OperationNotPermittedError, PIN_POLICIES, PinPolicySchema, PresetAppliedSchema, PresetExpandedSchema, RemoteCatalogSource, RequiresEdgeSchema, RestCatalogSource, SidecarGit, SkaileConfigSchema, SourceNotFoundError, SubscriptionNotFoundError, TarballHashMismatchError, UserLibraryNotFoundError, WorkspaceConfigV2Schema, applyNonStructuralUpgrade, applyPreset, applyPresetFromData, classifyRef, createEmptyLockFile, deriveSlug, detectChanges, detectNestedPresetRefs, detectWorkspaceVersion, evaluateUpgrade, extractLibraryInstanceId, extractReferencedKeys, filterKey, getConfigDefaults, getDefaultValue, getSidecarRoot, getStoreManifestsDir, getStoreRoot, hasInterpolationTokens, installFromManifest, interpolate, isLocalCatalogUrl, isSecretPlaceholder, knowledgeKindProvider, listSidecarSlugsOnDisk, loadLockFile, loadWorkspaceV2, migrateSidecarsToStoreIfNeeded, migrateWorkspaceConfig, parsePreset, parsePresetYaml, parseWorkspaceV2, projectConfigPath, queryInstancePickerChoices, resolveAllItems, resolveConfig, resolveIndexPath, resolveItem, resolveLibraryDir, resolvePin, resolveSidecarPaths, saveConfig, saveLockFile, saveWorkspaceV2, sha256Hex, skaileHomeDir, storeSecrets, trpcGetUrl, userConfigPath, validateAllPlaceholders, validateKnowledge, validateNestingDepth, validatePlaceholder, writeManifestIfMissing } from '../chunk-KA46DUM4.js';
1
+ export { CatalogCache, CatalogConfigSchema, CatalogHttpError, DuplicateLibraryNameError, DuplicateSubscriptionError, GitSyncDriver, InstanceHasConsumersError, InstanceNotFoundError, InterpolationError, KNOWN_ASSET_KINDS, KnowledgeManifestSchema, LIBRARY_BACKENDS, LIBRARY_OWNERSHIPS, LIBRARY_STRUCTURES, LOCAL_CATALOG_URL, LibraryConfigSchema, LibraryError, LibraryInstanceRefSchema, LibraryManager, LibrarySectionSchema, LibrarySyncError, LocalCatalogSource, LocalIndex, LocalSyncDriver, LockFileSchema, LockSubscriptionSchema, OfflineError, OperationNotPermittedError, PIN_POLICIES, PinPolicySchema, PresetAppliedSchema, PresetExpandedSchema, RemoteCatalogSource, RequiresEdgeSchema, RestCatalogSource, SidecarGit, SkaileConfigSchema, SourceNotFoundError, SubscriptionNotFoundError, TarballHashMismatchError, UserLibraryNotFoundError, WorkspaceConfigV2Schema, applyNonStructuralUpgrade, applyPreset, applyPresetFromData, classifyRef, createEmptyLockFile, deriveSlug, detectChanges, detectNestedPresetRefs, detectWorkspaceVersion, evaluateUpgrade, extractLibraryInstanceId, extractReferencedKeys, filterKey, getConfigDefaults, getDefaultValue, getSidecarRoot, getStoreManifestsDir, getStoreRoot, hasInterpolationTokens, installFromManifest, interpolate, isLocalCatalogUrl, isSecretPlaceholder, knowledgeKindProvider, listSidecarSlugsOnDisk, loadLockFile, loadWorkspaceV2, migrateSidecarsToStoreIfNeeded, migrateWorkspaceConfig, parsePreset, parsePresetYaml, parseWorkspaceV2, projectConfigPath, queryInstancePickerChoices, resolveAllItems, resolveConfig, resolveIndexPath, resolveItem, resolveLibraryDir, resolvePin, resolveSidecarPaths, saveConfig, saveLockFile, saveWorkspaceV2, sha256Hex, skaileHomeDir, storeSecrets, trpcGetUrl, userConfigPath, validateAllPlaceholders, validateKnowledge, validateNestingDepth, validatePlaceholder, writeManifestIfMissing } from '../chunk-I5SGBFMM.js';
2
2
  export { GITHUB_PAT_ENV, fetchAssetFilesFromGitHub } from '../chunk-R7FOF242.js';
3
- import '../chunk-SL6JVGRD.js';
3
+ import '../chunk-CEUHU3C4.js';
4
4
  import '../chunk-OKRUTSG7.js';
5
- import '../chunk-WIR34WMU.js';
6
- import '../chunk-X5Y4EGZB.js';
5
+ import '../chunk-NQL3T75I.js';
6
+ import '../chunk-VUCPJBAG.js';
7
7
  import '../chunk-NELZIQ2E.js';
8
8
  import '../chunk-NSBPE2FW.js';
9
9
  //# sourceMappingURL=index.js.map
@@ -191,6 +191,23 @@ export declare class RemoteCatalogSource implements ICatalogSource {
191
191
  * @throws {@link CatalogHttpError} on a non-2xx response or malformed envelope.
192
192
  */
193
193
  getInstallManifest(ref: string): Promise<InstallManifest>;
194
+ /**
195
+ * Cheap probe used during cross-check when both a source-side and a store-side
196
+ * candidate at the same version need to be verified for sha256 equality.
197
+ * Returns only the composite sha256 — no source URL, no file list.
198
+ *
199
+ * Wire: `GET /trpc/catalog.getCanonicalDigest?input=<superjson({ ref })>`.
200
+ *
201
+ * Not cached: one-shot read during install resolution.
202
+ *
203
+ * @param ref - Canonical asset ref `<publisher>/<kind>:<name>@<version>`.
204
+ * @returns `{ sha256 }` on a 200, or `null` on a 404.
205
+ * @throws {@link CatalogHttpError} on a non-2xx/non-404 response or malformed payload.
206
+ * @docLink packages/library/api-reference#remote-catalog-source
207
+ */
208
+ getCanonicalDigest(ref: string): Promise<{
209
+ sha256: string;
210
+ } | null>;
194
211
  /**
195
212
  * Wait for any in-flight stale-while-revalidate background fetches to settle.
196
213
  * Test-only escape hatch.
@@ -1 +1 @@
1
- {"version":3,"file":"remote-catalog-source.d.ts","sourceRoot":"","sources":["../../../../library/src/remote/remote-catalog-source.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"remote-catalog-source.d.ts","sourceRoot":"","sources":["../../../../library/src/remote/remote-catalog-source.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ export { openCatalogSource, openLibrary, openLibraryManager, resolveCatalogSource } from './chunk-UBLTUFFI.js';
2
+ import './chunk-4NDWKA64.js';
3
+ import './chunk-I5SGBFMM.js';
4
+ import './chunk-R7FOF242.js';
5
+ import './chunk-CEUHU3C4.js';
6
+ import './chunk-OKRUTSG7.js';
7
+ import './chunk-ICS76R4T.js';
8
+ import './chunk-NQL3T75I.js';
9
+ import './chunk-VUCPJBAG.js';
10
+ import './chunk-NELZIQ2E.js';
11
+ import './chunk-NSBPE2FW.js';
12
+ //# sourceMappingURL=open-library-EEGG6RDN.js.map
13
+ //# sourceMappingURL=open-library-EEGG6RDN.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":[],"names":[],"mappings":"","file":"open-library-DWAQFUSQ.js"}
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"open-library-EEGG6RDN.js"}
@@ -0,0 +1,2 @@
1
+ // Auto-generated by _scripts/emit-dts-sidecars.ts — do not edit by hand.
2
+ export * from "./src/index.js";
@@ -1,4 +1,4 @@
1
- export { ApiVersionMismatchError, DeployTargetNotFoundError, MissingTargetError, RegistrationError, createPluginRegistry, pluginRegistry, resolveDeployTarget } from '../chunk-UZRY5UI2.js';
1
+ export { ApiVersionMismatchError, DeployTargetNotFoundError, MissingTargetError, RegistrationError, buildStrategySchema, createPluginRegistry, getDeployTarget, listDeployTargets, makeDeployHandle, pluginRegistry, pollUntil, resolveDeployTarget, sleep } from '../chunk-6E6PKKAD.js';
2
2
  import '../chunk-NSBPE2FW.js';
3
3
  //# sourceMappingURL=index.js.map
4
4
  //# sourceMappingURL=index.js.map
@@ -15,7 +15,30 @@ export interface DriverContext {
15
15
  export interface ConnectorContext {
16
16
  readonly log?: Logger;
17
17
  }
18
- /** Context passed to a `DeployTarget.create()` / `restore()`. */
18
+ /** A host→container bind a deploy target should apply when standing the workspace up. */
19
+ export interface DeployMount {
20
+ readonly host: string;
21
+ readonly container: string;
22
+ /** Mount read-only. Defaults to `false`. */
23
+ readonly ro?: boolean;
24
+ }
25
+ /** Generic per-deployment resource caps a target may enforce where supported. */
26
+ export interface DeployResources {
27
+ /** CPU quota in nanoCPUs (e.g. `1_500_000_000` = 1.5 cores). */
28
+ readonly cpuNanos?: number;
29
+ readonly memoryBytes?: number;
30
+ readonly pidsLimit?: number;
31
+ }
32
+ /**
33
+ * Context passed to a `DeployTarget.create()` / `restore()`.
34
+ *
35
+ * `mounts` / `labels` / `resources` are the *generic* per-session injection
36
+ * channel a host (e.g. skaile-platform) uses to drive any target uniformly.
37
+ * Built-ins honour what applies (container targets map them to `-v` / `--label`
38
+ * / cgroup flags; the process targets ignore mounts). Target-specific policy
39
+ * (apparmor, FUSE, fleet binds, …) stays in that target's own `configSchema` —
40
+ * it never leaks into this shared context.
41
+ */
19
42
  export interface DeployContext {
20
43
  readonly workspaceId: string;
21
44
  /** Caller-issued, opaque WS auth token. */
@@ -23,6 +46,12 @@ export interface DeployContext {
23
46
  /** Image reference resolved by the target's `buildStrategy`. */
24
47
  readonly imageRef?: string;
25
48
  readonly env: Readonly<Record<string, string>>;
49
+ /** Generic host→container binds; container targets apply them, process targets ignore them. */
50
+ readonly mounts?: ReadonlyArray<DeployMount>;
51
+ /** Generic labels stamped onto the deployment for reconciliation/ownership. */
52
+ readonly labels?: Readonly<Record<string, string>>;
53
+ /** Generic resource caps applied where the runtime supports them. */
54
+ readonly resources?: DeployResources;
26
55
  readonly log: Logger;
27
56
  readonly signal: AbortSignal;
28
57
  }
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../plugin-registry/src/context.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAEvD,mDAAmD;AACnD,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;CAC/B;AAED,sDAAsD;AACtD,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,iEAAiE;AACjE,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,2CAA2C;IAC3C,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,gEAAgE;IAChE,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC/C,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;CAC9B"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../plugin-registry/src/context.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAEvD,mDAAmD;AACnD,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;CAC/B;AAED,sDAAsD;AACtD,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,yFAAyF;AACzF,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,iFAAiF;AACjF,MAAM,WAAW,eAAe;IAC9B,gEAAgE;IAChE,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,2CAA2C;IAC3C,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,gEAAgE;IAChE,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC/C,+FAA+F;IAC/F,QAAQ,CAAC,MAAM,CAAC,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC;IAC7C,+EAA+E;IAC/E,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACnD,qEAAqE;IACrE,QAAQ,CAAC,SAAS,CAAC,EAAE,eAAe,CAAC;IACrC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;CAC9B"}
@@ -5,7 +5,7 @@
5
5
  * a deploy target. `resolveDeployTarget` picks which target+config to use with
6
6
  * an explicit override > yaml > default chain.
7
7
  */
8
- import type { PluginRegistry } from "./registry.js";
8
+ import type { PluginRegistry, TargetMeta } from "./registry.js";
9
9
  import type { DeployTarget } from "./targets.js";
10
10
  /**
11
11
  * Live handle to a deployed workspace. `payload` is the target's own opaque
@@ -32,6 +32,22 @@ export interface DeployHandle<S = unknown> {
32
32
  }>;
33
33
  stop(): Promise<void>;
34
34
  }
35
+ /**
36
+ * List the registered deploy targets as lightweight `{ id, displayName }` rows,
37
+ * the symmetric counterpart to `listDrivers()` / `listConnectors()`. Reads the
38
+ * process-wide `pluginRegistry` by default, so call
39
+ * `registerBuiltinDeployTargets()` (and load any plugins) first — unregistered
40
+ * targets do not appear. Enough to populate a target picker without resolving a
41
+ * config; use `getDeployTarget(id)` for the full target.
42
+ */
43
+ export declare function listDeployTargets(registry?: PluginRegistry): readonly TargetMeta[];
44
+ /**
45
+ * Look up a single registered deploy target by id, or `undefined` if none is
46
+ * registered under that id. Thin wrapper over `pluginRegistry.get`, mirroring
47
+ * `getConnector()`; unlike `resolveDeployTarget` it neither applies the
48
+ * override/yaml/default precedence nor parses a config.
49
+ */
50
+ export declare function getDeployTarget(id: string, registry?: PluginRegistry): DeployTarget | undefined;
35
51
  /** Outcome of `resolveDeployTarget`: the chosen target, its parsed config, and where it came from. */
36
52
  export interface DeployResolution {
37
53
  target: DeployTarget;
@@ -1 +1 @@
1
- {"version":3,"file":"deploy-handle.d.ts","sourceRoot":"","sources":["../../../plugin-registry/src/deploy-handle.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAEjD;;;;GAIG;AACH,MAAM,WAAW,YAAY,CAAC,CAAC,GAAG,OAAO;IACvC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,oDAAoD;IACpD,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,GAAG,UAAU,GAAG,SAAS,GAAG,SAAS,CAAC;IAC1E,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;IACpB,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,IAAI,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACzD,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,aAAa,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAClG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACvB;AAED,sGAAsG;AACtG,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE;QAAE,MAAM,EAAE,SAAS,GAAG,MAAM,GAAG,UAAU,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAC1E;AAED;;;;;GAKG;AACH,wBAAsB,mBAAmB,CACvC,IAAI,EAAE;IAAE,MAAM,CAAC,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,CAAA;CAAE,EACvD,QAAQ,CAAC,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,EAC/D,QAAQ,GAAE,cAA+B,GACxC,OAAO,CAAC,gBAAgB,CAAC,CA0B3B"}
1
+ {"version":3,"file":"deploy-handle.d.ts","sourceRoot":"","sources":["../../../plugin-registry/src/deploy-handle.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAChE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAEjD;;;;GAIG;AACH,MAAM,WAAW,YAAY,CAAC,CAAC,GAAG,OAAO;IACvC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,oDAAoD;IACpD,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,GAAG,UAAU,GAAG,SAAS,GAAG,SAAS,CAAC;IAC1E,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;IACpB,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,IAAI,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACzD,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,aAAa,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAClG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACvB;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,GAAE,cAA+B,GACxC,SAAS,UAAU,EAAE,CAEvB;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAC7B,EAAE,EAAE,MAAM,EACV,QAAQ,GAAE,cAA+B,GACxC,YAAY,GAAG,SAAS,CAE1B;AAED,sGAAsG;AACtG,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE;QAAE,MAAM,EAAE,SAAS,GAAG,MAAM,GAAG,UAAU,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAC1E;AAED;;;;;GAKG;AACH,wBAAsB,mBAAmB,CACvC,IAAI,EAAE;IAAE,MAAM,CAAC,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,CAAA;CAAE,EACvD,QAAQ,CAAC,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,EAC/D,QAAQ,GAAE,cAA+B,GACxC,OAAO,CAAC,gBAAgB,CAAC,CA0B3B"}
@@ -0,0 +1,69 @@
1
+ /**
2
+ * Shared building blocks for `DeployTarget` implementations.
3
+ *
4
+ * These lift the byte-for-byte duplication that had accumulated across the
5
+ * provider packages (the `buildStrategy` enum, an abort-aware `sleep`, the
6
+ * poll-until-ready loop, and the `DeployHandle` wrapper) into one authoritative
7
+ * place — the package that already owns the `DeployHandle` contract.
8
+ */
9
+ import * as z from "zod";
10
+ import type { DeployContext } from "./context.js";
11
+ import type { DeployHandle } from "./deploy-handle.js";
12
+ /**
13
+ * The authoritative build-strategy enum shared by every deploy target.
14
+ * `local`/`managed` need an operator-supplied image; `remote` builds one.
15
+ */
16
+ export declare const buildStrategySchema: z.ZodEnum<{
17
+ remote: "remote";
18
+ local: "local";
19
+ managed: "managed";
20
+ }>;
21
+ export type BuildStrategy = z.infer<typeof buildStrategySchema>;
22
+ /**
23
+ * Abort-aware sleep. Resolves after `ms`, or rejects immediately if `signal`
24
+ * aborts first (so a cancelled deploy stops polling promptly).
25
+ */
26
+ export declare function sleep(ms: number, signal: AbortSignal): Promise<void>;
27
+ /** Options for {@link pollUntil}. */
28
+ export interface PollUntilOptions {
29
+ /** Predicate polled until it returns true. */
30
+ check: () => Promise<boolean>;
31
+ /** Deadline relative to `Date.now()` at the first failing check. */
32
+ timeoutMs: number;
33
+ /** Delay between attempts, via the abort-aware {@link sleep}. */
34
+ intervalMs: number;
35
+ signal: AbortSignal;
36
+ /** Descriptive message for the timeout error; defaults to "timed out". */
37
+ timeoutMessage?: string;
38
+ }
39
+ /**
40
+ * Poll `check()` until it returns true. Sleeps `intervalMs` between attempts
41
+ * and throws once `Date.now()` passes the deadline. Generalizes the readiness
42
+ * loops the deploy providers each re-implemented.
43
+ */
44
+ export declare function pollUntil(opts: PollUntilOptions): Promise<void>;
45
+ /** Options for {@link makeDeployHandle}. */
46
+ export interface MakeDeployHandleOptions<S> {
47
+ wsUrl: string;
48
+ /** Source of `wsAuth` redaction and the abort `signal` for the ready routine. */
49
+ ctx: DeployContext;
50
+ payload: S;
51
+ initialState: DeployHandle["state"];
52
+ /** Timeout passed to `ready` when `waitReady` is called without one. */
53
+ defaultReadyTimeoutMs: number;
54
+ /** Readiness routine; receives the EFFECTIVE timeout (caller's or the default). */
55
+ ready: (timeoutMs: number, signal: AbortSignal) => Promise<void>;
56
+ health: () => Promise<{
57
+ healthy: boolean;
58
+ detail?: string;
59
+ }>;
60
+ stop: () => Promise<void>;
61
+ logs?: DeployHandle<S>["logs"];
62
+ }
63
+ /**
64
+ * Build a `DeployHandle` from per-target seams, replacing the wrapper each
65
+ * provider had copy-pasted. Unlike those wrappers, `waitReady(timeoutMs)`
66
+ * forwards the caller's timeout to `ready` instead of discarding it.
67
+ */
68
+ export declare function makeDeployHandle<S>(opts: MakeDeployHandleOptions<S>): DeployHandle<S>;
69
+ //# sourceMappingURL=deploy-helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deploy-helpers.d.ts","sourceRoot":"","sources":["../../../plugin-registry/src/deploy-helpers.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AACzB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD;;;GAGG;AACH,eAAO,MAAM,mBAAmB;;;;EAAyC,CAAC;AAE1E,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE;;;GAGG;AACH,wBAAsB,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAa1E;AAED,qCAAqC;AACrC,MAAM,WAAW,gBAAgB;IAC/B,8CAA8C;IAC9C,KAAK,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9B,oEAAoE;IACpE,SAAS,EAAE,MAAM,CAAC;IAClB,iEAAiE;IACjE,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,WAAW,CAAC;IACpB,0EAA0E;IAC1E,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;;GAIG;AACH,wBAAsB,SAAS,CAAC,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CASrE;AAED,4CAA4C;AAC5C,MAAM,WAAW,uBAAuB,CAAC,CAAC;IACxC,KAAK,EAAE,MAAM,CAAC;IACd,iFAAiF;IACjF,GAAG,EAAE,aAAa,CAAC;IACnB,OAAO,EAAE,CAAC,CAAC;IACX,YAAY,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IACpC,wEAAwE;IACxE,qBAAqB,EAAE,MAAM,CAAC;IAC9B,mFAAmF;IACnF,KAAK,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACjE,MAAM,EAAE,MAAM,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC7D,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1B,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;CAChC;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,IAAI,EAAE,uBAAuB,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CA4BrF"}
@@ -6,11 +6,13 @@
6
6
  * types. Stability contract — adding members is non-breaking; removing or
7
7
  * renaming is a major bump.
8
8
  */
9
+ export type { ConnectorContext, DeployContext, DeployMount, DeployResources, DriverContext, } from "./context.js";
10
+ export type { DeployHandle, DeployResolution } from "./deploy-handle.js";
11
+ export { getDeployTarget, listDeployTargets, resolveDeployTarget } from "./deploy-handle.js";
12
+ export type { BuildStrategy, MakeDeployHandleOptions, PollUntilOptions } from "./deploy-helpers.js";
13
+ export { buildStrategySchema, makeDeployHandle, pollUntil, sleep } from "./deploy-helpers.js";
14
+ export { ApiVersionMismatchError, DeployTargetNotFoundError, MissingTargetError, RegistrationError, } from "./errors.js";
9
15
  export { createPluginRegistry, pluginRegistry } from "./internal.js";
10
16
  export type { PluginRegistry, Target, TargetKind, TargetMeta, } from "./registry.js";
11
17
  export type { ConnectorTarget, DeployTarget, DriverTarget, } from "./targets.js";
12
- export type { ConnectorContext, DeployContext, DriverContext, } from "./context.js";
13
- export { resolveDeployTarget } from "./deploy-handle.js";
14
- export type { DeployHandle, DeployResolution } from "./deploy-handle.js";
15
- export { ApiVersionMismatchError, DeployTargetNotFoundError, MissingTargetError, RegistrationError, } from "./errors.js";
16
18
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../plugin-registry/src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACrE,YAAY,EACV,cAAc,EACd,MAAM,EACN,UAAU,EACV,UAAU,GACX,MAAM,eAAe,CAAC;AACvB,YAAY,EACV,eAAe,EACf,YAAY,EACZ,YAAY,GACb,MAAM,cAAc,CAAC;AACtB,YAAY,EACV,gBAAgB,EAChB,aAAa,EACb,aAAa,GACd,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACzE,OAAO,EACL,uBAAuB,EACvB,yBAAyB,EACzB,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../plugin-registry/src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,YAAY,EACV,gBAAgB,EAChB,aAAa,EACb,WAAW,EACX,eAAe,EACf,aAAa,GACd,MAAM,cAAc,CAAC;AACtB,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC7F,YAAY,EAAE,aAAa,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACpG,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAC9F,OAAO,EACL,uBAAuB,EACvB,yBAAyB,EACzB,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACrE,YAAY,EACV,cAAc,EACd,MAAM,EACN,UAAU,EACV,UAAU,GACX,MAAM,eAAe,CAAC;AACvB,YAAY,EACV,eAAe,EACf,YAAY,EACZ,YAAY,GACb,MAAM,cAAc,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../../../plugin-registry/src/internal.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAkC,MAAM,eAAe,CAAC;AAuCpF,oFAAoF;AACpF,wBAAgB,oBAAoB,IAAI,cAAc,CAErD;AAED,iFAAiF;AACjF,eAAO,MAAM,cAAc,EAAE,cAAuC,CAAC"}
1
+ {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../../../plugin-registry/src/internal.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAkC,MAAM,eAAe,CAAC;AA2CpF,oFAAoF;AACpF,wBAAgB,oBAAoB,IAAI,cAAc,CAErD;AAED,iFAAiF;AACjF,eAAO,MAAM,cAAc,EAAE,cAAuC,CAAC"}
@@ -19,6 +19,7 @@ export interface TargetMeta {
19
19
  export interface PluginRegistry {
20
20
  readonly apiVersion: 1;
21
21
  register<K extends TargetKind>(kind: K, target: Target<K>): void;
22
+ unregister<K extends TargetKind>(kind: K, id: string): boolean;
22
23
  get<K extends TargetKind>(kind: K, id: string): Target<K> | undefined;
23
24
  list<K extends TargetKind>(kind: K): readonly TargetMeta[];
24
25
  }
@@ -1 +1 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../plugin-registry/src/registry.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAEhF,kDAAkD;AAClD,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,WAAW,GAAG,cAAc,CAAC;AAEjE,4DAA4D;AAC5D,MAAM,MAAM,MAAM,CAAC,CAAC,SAAS,UAAU,IAAI,CAAC,SAAS,QAAQ,GACzD,YAAY,GACZ,CAAC,SAAS,WAAW,GACnB,eAAe,GACf,CAAC,SAAS,cAAc,GACtB,YAAY,GACZ,KAAK,CAAC;AAEd,4GAA4G;AAC5G,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,0FAA0F;AAC1F,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;IACvB,QAAQ,CAAC,CAAC,SAAS,UAAU,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IACjE,GAAG,CAAC,CAAC,SAAS,UAAU,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;IACtE,IAAI,CAAC,CAAC,SAAS,UAAU,EAAE,IAAI,EAAE,CAAC,GAAG,SAAS,UAAU,EAAE,CAAC;CAC5D"}
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../plugin-registry/src/registry.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAEhF,kDAAkD;AAClD,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,WAAW,GAAG,cAAc,CAAC;AAEjE,4DAA4D;AAC5D,MAAM,MAAM,MAAM,CAAC,CAAC,SAAS,UAAU,IAAI,CAAC,SAAS,QAAQ,GACzD,YAAY,GACZ,CAAC,SAAS,WAAW,GACnB,eAAe,GACf,CAAC,SAAS,cAAc,GACtB,YAAY,GACZ,KAAK,CAAC;AAEd,4GAA4G;AAC5G,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,0FAA0F;AAC1F,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;IACvB,QAAQ,CAAC,CAAC,SAAS,UAAU,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IAMjE,UAAU,CAAC,CAAC,SAAS,UAAU,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC;IAC/D,GAAG,CAAC,CAAC,SAAS,UAAU,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;IACtE,IAAI,CAAC,CAAC,SAAS,UAAU,EAAE,IAAI,EAAE,CAAC,GAAG,SAAS,UAAU,EAAE,CAAC;CAC5D"}
@@ -17,6 +17,10 @@ export interface DriverTarget<C = unknown> {
17
17
  readonly displayName: string;
18
18
  readonly apiVersion: 1;
19
19
  readonly configSchema: z.ZodType<C>;
20
+ /** Backend runs against any provider/model rather than a fixed one. Defaults to `false`. */
21
+ readonly modelAgnostic?: boolean;
22
+ /** Backend can abort an in-flight turn without tearing the process down. Defaults to `false`. */
23
+ readonly supportsInBandAbort?: boolean;
20
24
  create(config: C, ctx: DriverContext): Promise<AgentDriver>;
21
25
  listModels?(apiKeys: Record<string, string>): Promise<ModelEntry[]>;
22
26
  }
@@ -1 +1 @@
1
- {"version":3,"file":"targets.d.ts","sourceRoot":"","sources":["../../../plugin-registry/src/targets.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AACtE,OAAO,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AACnF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD,wCAAwC;AACxC,MAAM,WAAW,YAAY,CAAC,CAAC,GAAG,OAAO;IACvC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;IACvB,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IACpC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAC5D,UAAU,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;CACrE;AAED,uCAAuC;AACvC,MAAM,WAAW,eAAe,CAAC,CAAC,GAAG,OAAO;IAC1C,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;IACvB,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IACpC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,gBAAgB,GAAG,SAAS,CAAC;CACrD;AAED,uFAAuF;AACvF,MAAM,WAAW,YAAY,CAAC,CAAC,GAAG,OAAO,EAAE,CAAC,GAAG,OAAO;IACpD,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;IACvB,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IAClD,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IACpC,QAAQ,CAAC,aAAa,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IACrC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;IAChE,OAAO,CAAC,OAAO,EAAE,CAAC,EAAE,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;CACnE"}
1
+ {"version":3,"file":"targets.d.ts","sourceRoot":"","sources":["../../../plugin-registry/src/targets.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AACtE,OAAO,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AACnF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD,wCAAwC;AACxC,MAAM,WAAW,YAAY,CAAC,CAAC,GAAG,OAAO;IACvC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;IACvB,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IACpC,4FAA4F;IAC5F,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;IACjC,iGAAiG;IACjG,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IACvC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAC5D,UAAU,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;CACrE;AAED,uCAAuC;AACvC,MAAM,WAAW,eAAe,CAAC,CAAC,GAAG,OAAO;IAC1C,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;IACvB,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IACpC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,gBAAgB,GAAG,SAAS,CAAC;CACrD;AAED,uFAAuF;AACvF,MAAM,WAAW,YAAY,CAAC,CAAC,GAAG,OAAO,EAAE,CAAC,GAAG,OAAO;IACpD,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;IACvB,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IAClD,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IACpC,QAAQ,CAAC,aAAa,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IACrC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;IAChE,OAAO,CAAC,OAAO,EAAE,CAAC,EAAE,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;CACnE"}
@@ -1,11 +1,11 @@
1
- import { pluginRegistry } from './chunk-UZRY5UI2.js';
2
- import { readPluginsLockSlice } from './chunk-RENHNO4J.js';
1
+ import { pluginRegistry } from './chunk-6E6PKKAD.js';
2
+ import { readPluginsLockSlice } from './chunk-P4FYHEHW.js';
3
3
  import './chunk-K5GBV4SA.js';
4
4
  import './chunk-KLNL7QHN.js';
5
- import './chunk-TTY56FQQ.js';
6
- import './chunk-TKOLD2O7.js';
7
- import './chunk-WIR34WMU.js';
8
- import './chunk-X5Y4EGZB.js';
5
+ import './chunk-74GTZ4TJ.js';
6
+ import './chunk-LDYPQVRU.js';
7
+ import './chunk-NQL3T75I.js';
8
+ import './chunk-VUCPJBAG.js';
9
9
  import './chunk-JKNWJ64A.js';
10
10
  import './chunk-O4JH3KUE.js';
11
11
  import './chunk-24UIWON4.js';
@@ -140,5 +140,5 @@ async function ensurePluginsLoaded(projectDir, plugins, registry = pluginRegistr
140
140
  }
141
141
 
142
142
  export { defaultInstall, ensurePluginsLoaded, loadPlugins, lockPath, nodeModulesDir, parseSpec, pluginsDir, pluginsPkgJson, reconcileHashFile, reconcilePlugins, resolvePluginEntry, specName };
143
- //# sourceMappingURL=plugin-store-6OENKNFW.js.map
144
- //# sourceMappingURL=plugin-store-6OENKNFW.js.map
143
+ //# sourceMappingURL=plugin-store-G277ZX3B.js.map
144
+ //# sourceMappingURL=plugin-store-G277ZX3B.js.map