@agent-vm/agent-vm 0.0.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (366) hide show
  1. package/LICENSE +21 -0
  2. package/dist/backup/backup-archive-layout.d.ts +15 -0
  3. package/dist/backup/backup-archive-layout.d.ts.map +1 -0
  4. package/dist/backup/backup-archive-layout.js +34 -0
  5. package/dist/backup/backup-archive-layout.js.map +1 -0
  6. package/dist/backup/backup-create-operation.d.ts +9 -0
  7. package/dist/backup/backup-create-operation.d.ts.map +1 -0
  8. package/dist/backup/backup-create-operation.js +50 -0
  9. package/dist/backup/backup-create-operation.js.map +1 -0
  10. package/dist/backup/backup-encryption.d.ts +20 -0
  11. package/dist/backup/backup-encryption.d.ts.map +1 -0
  12. package/dist/backup/backup-encryption.js +93 -0
  13. package/dist/backup/backup-encryption.js.map +1 -0
  14. package/dist/backup/backup-manager.d.ts +42 -0
  15. package/dist/backup/backup-manager.d.ts.map +1 -0
  16. package/dist/backup/backup-manager.js +37 -0
  17. package/dist/backup/backup-manager.js.map +1 -0
  18. package/dist/backup/backup-restore-operation.d.ts +8 -0
  19. package/dist/backup/backup-restore-operation.d.ts.map +1 -0
  20. package/dist/backup/backup-restore-operation.js +53 -0
  21. package/dist/backup/backup-restore-operation.js.map +1 -0
  22. package/dist/build/docker-image-builder.d.ts +11 -0
  23. package/dist/build/docker-image-builder.d.ts.map +1 -0
  24. package/dist/build/docker-image-builder.js +24 -0
  25. package/dist/build/docker-image-builder.js.map +1 -0
  26. package/dist/build/gondolin-image-builder.d.ts +16 -0
  27. package/dist/build/gondolin-image-builder.d.ts.map +1 -0
  28. package/dist/build/gondolin-image-builder.js +52 -0
  29. package/dist/build/gondolin-image-builder.js.map +1 -0
  30. package/dist/build/runtime-versions.d.ts +13 -0
  31. package/dist/build/runtime-versions.d.ts.map +1 -0
  32. package/dist/build/runtime-versions.js +100 -0
  33. package/dist/build/runtime-versions.js.map +1 -0
  34. package/dist/build/stale-image-cleaner.d.ts +17 -0
  35. package/dist/build/stale-image-cleaner.d.ts.map +1 -0
  36. package/dist/build/stale-image-cleaner.js +70 -0
  37. package/dist/build/stale-image-cleaner.js.map +1 -0
  38. package/dist/cli/agent-vm-cli-support.d.ts +78 -0
  39. package/dist/cli/agent-vm-cli-support.d.ts.map +1 -0
  40. package/dist/cli/agent-vm-cli-support.js +77 -0
  41. package/dist/cli/agent-vm-cli-support.js.map +1 -0
  42. package/dist/cli/agent-vm-entrypoint.d.ts +9 -0
  43. package/dist/cli/agent-vm-entrypoint.d.ts.map +1 -0
  44. package/dist/cli/agent-vm-entrypoint.js +59 -0
  45. package/dist/cli/agent-vm-entrypoint.js.map +1 -0
  46. package/dist/cli/auth-interactive-command.d.ts +27 -0
  47. package/dist/cli/auth-interactive-command.d.ts.map +1 -0
  48. package/dist/cli/auth-interactive-command.js +83 -0
  49. package/dist/cli/auth-interactive-command.js.map +1 -0
  50. package/dist/cli/backup-commands.d.ts +11 -0
  51. package/dist/cli/backup-commands.d.ts.map +1 -0
  52. package/dist/cli/backup-commands.js +46 -0
  53. package/dist/cli/backup-commands.js.map +1 -0
  54. package/dist/cli/build-command.d.ts +24 -0
  55. package/dist/cli/build-command.d.ts.map +1 -0
  56. package/dist/cli/build-command.js +132 -0
  57. package/dist/cli/build-command.js.map +1 -0
  58. package/dist/cli/cache-commands.d.ts +32 -0
  59. package/dist/cli/cache-commands.d.ts.map +1 -0
  60. package/dist/cli/cache-commands.js +106 -0
  61. package/dist/cli/cache-commands.js.map +1 -0
  62. package/dist/cli/commands/auth-interactive-definition.d.ts +15 -0
  63. package/dist/cli/commands/auth-interactive-definition.d.ts.map +1 -0
  64. package/dist/cli/commands/auth-interactive-definition.js +36 -0
  65. package/dist/cli/commands/auth-interactive-definition.js.map +1 -0
  66. package/dist/cli/commands/backup-definition.d.ts +63 -0
  67. package/dist/cli/commands/backup-definition.d.ts.map +1 -0
  68. package/dist/cli/commands/backup-definition.js +73 -0
  69. package/dist/cli/commands/backup-definition.js.map +1 -0
  70. package/dist/cli/commands/build-definition.d.ts +13 -0
  71. package/dist/cli/commands/build-definition.d.ts.map +1 -0
  72. package/dist/cli/commands/build-definition.js +27 -0
  73. package/dist/cli/commands/build-definition.js.map +1 -0
  74. package/dist/cli/commands/cache-definition.d.ts +41 -0
  75. package/dist/cli/commands/cache-definition.d.ts.map +1 -0
  76. package/dist/cli/commands/cache-definition.js +41 -0
  77. package/dist/cli/commands/cache-definition.js.map +1 -0
  78. package/dist/cli/commands/command-definition-support.d.ts +26 -0
  79. package/dist/cli/commands/command-definition-support.d.ts.map +1 -0
  80. package/dist/cli/commands/command-definition-support.js +85 -0
  81. package/dist/cli/commands/command-definition-support.js.map +1 -0
  82. package/dist/cli/commands/config-definition.d.ts +27 -0
  83. package/dist/cli/commands/config-definition.d.ts.map +1 -0
  84. package/dist/cli/commands/config-definition.js +60 -0
  85. package/dist/cli/commands/config-definition.js.map +1 -0
  86. package/dist/cli/commands/controller-definition.d.ts +225 -0
  87. package/dist/cli/commands/controller-definition.d.ts.map +1 -0
  88. package/dist/cli/commands/controller-definition.js +211 -0
  89. package/dist/cli/commands/controller-definition.js.map +1 -0
  90. package/dist/cli/commands/create-app.d.ts +541 -0
  91. package/dist/cli/commands/create-app.d.ts.map +1 -0
  92. package/dist/cli/commands/create-app.js +32 -0
  93. package/dist/cli/commands/create-app.js.map +1 -0
  94. package/dist/cli/commands/doctor-definition.d.ts +11 -0
  95. package/dist/cli/commands/doctor-definition.d.ts.map +1 -0
  96. package/dist/cli/commands/doctor-definition.js +23 -0
  97. package/dist/cli/commands/doctor-definition.js.map +1 -0
  98. package/dist/cli/commands/init-definition.d.ts +34 -0
  99. package/dist/cli/commands/init-definition.d.ts.map +1 -0
  100. package/dist/cli/commands/init-definition.js +134 -0
  101. package/dist/cli/commands/init-definition.js.map +1 -0
  102. package/dist/cli/commands/resources-definition.d.ts +55 -0
  103. package/dist/cli/commands/resources-definition.d.ts.map +1 -0
  104. package/dist/cli/commands/resources-definition.js +93 -0
  105. package/dist/cli/commands/resources-definition.js.map +1 -0
  106. package/dist/cli/commands/validate-definition.d.ts +11 -0
  107. package/dist/cli/commands/validate-definition.d.ts.map +1 -0
  108. package/dist/cli/commands/validate-definition.js +20 -0
  109. package/dist/cli/commands/validate-definition.js.map +1 -0
  110. package/dist/cli/config-commands.d.ts +10 -0
  111. package/dist/cli/config-commands.d.ts.map +1 -0
  112. package/dist/cli/config-commands.js +103 -0
  113. package/dist/cli/config-commands.js.map +1 -0
  114. package/dist/cli/controller-operation-commands.d.ts +12 -0
  115. package/dist/cli/controller-operation-commands.d.ts.map +1 -0
  116. package/dist/cli/controller-operation-commands.js +133 -0
  117. package/dist/cli/controller-operation-commands.js.map +1 -0
  118. package/dist/cli/format-zod-error.d.ts +3 -0
  119. package/dist/cli/format-zod-error.d.ts.map +1 -0
  120. package/dist/cli/format-zod-error.js +18 -0
  121. package/dist/cli/format-zod-error.js.map +1 -0
  122. package/dist/cli/init-command.d.ts +52 -0
  123. package/dist/cli/init-command.d.ts.map +1 -0
  124. package/dist/cli/init-command.js +645 -0
  125. package/dist/cli/init-command.js.map +1 -0
  126. package/dist/cli/keychain-credential.d.ts +19 -0
  127. package/dist/cli/keychain-credential.d.ts.map +1 -0
  128. package/dist/cli/keychain-credential.js +52 -0
  129. package/dist/cli/keychain-credential.js.map +1 -0
  130. package/dist/cli/lease-commands.d.ts +11 -0
  131. package/dist/cli/lease-commands.d.ts.map +1 -0
  132. package/dist/cli/lease-commands.js +22 -0
  133. package/dist/cli/lease-commands.js.map +1 -0
  134. package/dist/cli/openclaw-plugin-bundle.d.ts +10 -0
  135. package/dist/cli/openclaw-plugin-bundle.d.ts.map +1 -0
  136. package/dist/cli/openclaw-plugin-bundle.js +37 -0
  137. package/dist/cli/openclaw-plugin-bundle.js.map +1 -0
  138. package/dist/cli/resource-contract-templates.d.ts +8 -0
  139. package/dist/cli/resource-contract-templates.d.ts.map +1 -0
  140. package/dist/cli/resource-contract-templates.js +157 -0
  141. package/dist/cli/resource-contract-templates.js.map +1 -0
  142. package/dist/cli/resources-commands.d.ts +19 -0
  143. package/dist/cli/resources-commands.d.ts.map +1 -0
  144. package/dist/cli/resources-commands.js +158 -0
  145. package/dist/cli/resources-commands.js.map +1 -0
  146. package/dist/cli/run-task.d.ts +4 -0
  147. package/dist/cli/run-task.d.ts.map +1 -0
  148. package/dist/cli/run-task.js +17 -0
  149. package/dist/cli/run-task.js.map +1 -0
  150. package/dist/cli/ssh-commands.d.ts +20 -0
  151. package/dist/cli/ssh-commands.d.ts.map +1 -0
  152. package/dist/cli/ssh-commands.js +72 -0
  153. package/dist/cli/ssh-commands.js.map +1 -0
  154. package/dist/cli/vm-host-system-templates.d.ts +12 -0
  155. package/dist/cli/vm-host-system-templates.d.ts.map +1 -0
  156. package/dist/cli/vm-host-system-templates.js +186 -0
  157. package/dist/cli/vm-host-system-templates.js.map +1 -0
  158. package/dist/config/resource-contracts/index.d.ts +3 -0
  159. package/dist/config/resource-contracts/index.d.ts.map +1 -0
  160. package/dist/config/resource-contracts/index.js +2 -0
  161. package/dist/config/resource-contracts/index.js.map +1 -0
  162. package/dist/config/resource-contracts/repo-resource-contract-types.d.ts +110 -0
  163. package/dist/config/resource-contracts/repo-resource-contract-types.d.ts.map +1 -0
  164. package/dist/config/resource-contracts/repo-resource-contract-types.js +2 -0
  165. package/dist/config/resource-contracts/repo-resource-contract-types.js.map +1 -0
  166. package/dist/config/resource-contracts/resource-contract-schemas.d.ts +198 -0
  167. package/dist/config/resource-contracts/resource-contract-schemas.d.ts.map +1 -0
  168. package/dist/config/resource-contracts/resource-contract-schemas.js +163 -0
  169. package/dist/config/resource-contracts/resource-contract-schemas.js.map +1 -0
  170. package/dist/config/system-cache-identifier.d.ts +22 -0
  171. package/dist/config/system-cache-identifier.d.ts.map +1 -0
  172. package/dist/config/system-cache-identifier.js +49 -0
  173. package/dist/config/system-cache-identifier.js.map +1 -0
  174. package/dist/config/system-config.d.ts +111 -0
  175. package/dist/config/system-config.d.ts.map +1 -0
  176. package/dist/config/system-config.js +267 -0
  177. package/dist/config/system-config.js.map +1 -0
  178. package/dist/controller/active-task-registry.d.ts +32 -0
  179. package/dist/controller/active-task-registry.d.ts.map +1 -0
  180. package/dist/controller/active-task-registry.js +83 -0
  181. package/dist/controller/active-task-registry.js.map +1 -0
  182. package/dist/controller/composite-secret-resolver.d.ts +3 -0
  183. package/dist/controller/composite-secret-resolver.d.ts.map +1 -0
  184. package/dist/controller/composite-secret-resolver.js +38 -0
  185. package/dist/controller/composite-secret-resolver.js.map +1 -0
  186. package/dist/controller/controller-runtime-operations.d.ts +62 -0
  187. package/dist/controller/controller-runtime-operations.d.ts.map +1 -0
  188. package/dist/controller/controller-runtime-operations.js +99 -0
  189. package/dist/controller/controller-runtime-operations.js.map +1 -0
  190. package/dist/controller/controller-runtime-support.d.ts +10 -0
  191. package/dist/controller/controller-runtime-support.d.ts.map +1 -0
  192. package/dist/controller/controller-runtime-support.js +36 -0
  193. package/dist/controller/controller-runtime-support.js.map +1 -0
  194. package/dist/controller/controller-runtime-types.d.ts +58 -0
  195. package/dist/controller/controller-runtime-types.d.ts.map +1 -0
  196. package/dist/controller/controller-runtime-types.js +2 -0
  197. package/dist/controller/controller-runtime-types.js.map +1 -0
  198. package/dist/controller/controller-runtime.d.ts +3 -0
  199. package/dist/controller/controller-runtime.d.ts.map +1 -0
  200. package/dist/controller/controller-runtime.js +326 -0
  201. package/dist/controller/controller-runtime.js.map +1 -0
  202. package/dist/controller/git-auth-support.d.ts +3 -0
  203. package/dist/controller/git-auth-support.d.ts.map +1 -0
  204. package/dist/controller/git-auth-support.js +11 -0
  205. package/dist/controller/git-auth-support.js.map +1 -0
  206. package/dist/controller/git-pull-default-operations.d.ts +34 -0
  207. package/dist/controller/git-pull-default-operations.d.ts.map +1 -0
  208. package/dist/controller/git-pull-default-operations.js +175 -0
  209. package/dist/controller/git-pull-default-operations.js.map +1 -0
  210. package/dist/controller/git-push-operations.d.ts +38 -0
  211. package/dist/controller/git-push-operations.d.ts.map +1 -0
  212. package/dist/controller/git-push-operations.js +247 -0
  213. package/dist/controller/git-push-operations.js.map +1 -0
  214. package/dist/controller/heartbeat-sender.d.ts +13 -0
  215. package/dist/controller/heartbeat-sender.d.ts.map +1 -0
  216. package/dist/controller/heartbeat-sender.js +94 -0
  217. package/dist/controller/heartbeat-sender.js.map +1 -0
  218. package/dist/controller/http/controller-client.d.ts +17 -0
  219. package/dist/controller/http/controller-client.d.ts.map +1 -0
  220. package/dist/controller/http/controller-client.js +76 -0
  221. package/dist/controller/http/controller-client.js.map +1 -0
  222. package/dist/controller/http/controller-http-route-support.d.ts +46 -0
  223. package/dist/controller/http/controller-http-route-support.d.ts.map +1 -0
  224. package/dist/controller/http/controller-http-route-support.js +25 -0
  225. package/dist/controller/http/controller-http-route-support.js.map +1 -0
  226. package/dist/controller/http/controller-http-routes.d.ts +22 -0
  227. package/dist/controller/http/controller-http-routes.d.ts.map +1 -0
  228. package/dist/controller/http/controller-http-routes.js +107 -0
  229. package/dist/controller/http/controller-http-routes.js.map +1 -0
  230. package/dist/controller/http/controller-http-server.d.ts +8 -0
  231. package/dist/controller/http/controller-http-server.d.ts.map +1 -0
  232. package/dist/controller/http/controller-http-server.js +21 -0
  233. package/dist/controller/http/controller-http-server.js.map +1 -0
  234. package/dist/controller/http/controller-request-schemas.d.ts +102 -0
  235. package/dist/controller/http/controller-request-schemas.d.ts.map +1 -0
  236. package/dist/controller/http/controller-request-schemas.js +66 -0
  237. package/dist/controller/http/controller-request-schemas.js.map +1 -0
  238. package/dist/controller/http/controller-zone-operation-routes.d.ts +4 -0
  239. package/dist/controller/http/controller-zone-operation-routes.d.ts.map +1 -0
  240. package/dist/controller/http/controller-zone-operation-routes.js +223 -0
  241. package/dist/controller/http/controller-zone-operation-routes.js.map +1 -0
  242. package/dist/controller/leases/idle-reaper.d.ts +12 -0
  243. package/dist/controller/leases/idle-reaper.d.ts.map +1 -0
  244. package/dist/controller/leases/idle-reaper.js +15 -0
  245. package/dist/controller/leases/idle-reaper.js.map +1 -0
  246. package/dist/controller/leases/lease-manager.d.ts +58 -0
  247. package/dist/controller/leases/lease-manager.d.ts.map +1 -0
  248. package/dist/controller/leases/lease-manager.js +81 -0
  249. package/dist/controller/leases/lease-manager.js.map +1 -0
  250. package/dist/controller/leases/tcp-pool.d.ts +11 -0
  251. package/dist/controller/leases/tcp-pool.d.ts.map +1 -0
  252. package/dist/controller/leases/tcp-pool.js +26 -0
  253. package/dist/controller/leases/tcp-pool.js.map +1 -0
  254. package/dist/controller/request-heartbeat-registry.d.ts +15 -0
  255. package/dist/controller/request-heartbeat-registry.d.ts.map +1 -0
  256. package/dist/controller/request-heartbeat-registry.js +54 -0
  257. package/dist/controller/request-heartbeat-registry.js.map +1 -0
  258. package/dist/controller/task-config-builder.d.ts +14 -0
  259. package/dist/controller/task-config-builder.d.ts.map +1 -0
  260. package/dist/controller/task-config-builder.js +14 -0
  261. package/dist/controller/task-config-builder.js.map +1 -0
  262. package/dist/controller/task-state-reader.d.ts +17 -0
  263. package/dist/controller/task-state-reader.d.ts.map +1 -0
  264. package/dist/controller/task-state-reader.js +87 -0
  265. package/dist/controller/task-state-reader.js.map +1 -0
  266. package/dist/controller/worker-task-runner.d.ts +67 -0
  267. package/dist/controller/worker-task-runner.d.ts.map +1 -0
  268. package/dist/controller/worker-task-runner.js +497 -0
  269. package/dist/controller/worker-task-runner.js.map +1 -0
  270. package/dist/gateway/credential-manager.d.ts +8 -0
  271. package/dist/gateway/credential-manager.d.ts.map +1 -0
  272. package/dist/gateway/credential-manager.js +65 -0
  273. package/dist/gateway/credential-manager.js.map +1 -0
  274. package/dist/gateway/gateway-image-builder.d.ts +14 -0
  275. package/dist/gateway/gateway-image-builder.d.ts.map +1 -0
  276. package/dist/gateway/gateway-image-builder.js +33 -0
  277. package/dist/gateway/gateway-image-builder.js.map +1 -0
  278. package/dist/gateway/gateway-lifecycle-loader.d.ts +3 -0
  279. package/dist/gateway/gateway-lifecycle-loader.d.ts.map +1 -0
  280. package/dist/gateway/gateway-lifecycle-loader.js +10 -0
  281. package/dist/gateway/gateway-lifecycle-loader.js.map +1 -0
  282. package/dist/gateway/gateway-recovery.d.ts +19 -0
  283. package/dist/gateway/gateway-recovery.d.ts.map +1 -0
  284. package/dist/gateway/gateway-recovery.js +147 -0
  285. package/dist/gateway/gateway-recovery.js.map +1 -0
  286. package/dist/gateway/gateway-runtime-record.d.ts +33 -0
  287. package/dist/gateway/gateway-runtime-record.d.ts.map +1 -0
  288. package/dist/gateway/gateway-runtime-record.js +114 -0
  289. package/dist/gateway/gateway-runtime-record.js.map +1 -0
  290. package/dist/gateway/gateway-zone-orchestrator.d.ts +14 -0
  291. package/dist/gateway/gateway-zone-orchestrator.d.ts.map +1 -0
  292. package/dist/gateway/gateway-zone-orchestrator.js +161 -0
  293. package/dist/gateway/gateway-zone-orchestrator.js.map +1 -0
  294. package/dist/gateway/gateway-zone-support.d.ts +55 -0
  295. package/dist/gateway/gateway-zone-support.d.ts.map +1 -0
  296. package/dist/gateway/gateway-zone-support.js +42 -0
  297. package/dist/gateway/gateway-zone-support.js.map +1 -0
  298. package/dist/gateway-api-client/gateway-api-client.d.ts +34 -0
  299. package/dist/gateway-api-client/gateway-api-client.d.ts.map +1 -0
  300. package/dist/gateway-api-client/gateway-api-client.js +29 -0
  301. package/dist/gateway-api-client/gateway-api-client.js.map +1 -0
  302. package/dist/gateway-api-client/gateway-websocket-client.d.ts +45 -0
  303. package/dist/gateway-api-client/gateway-websocket-client.d.ts.map +1 -0
  304. package/dist/gateway-api-client/gateway-websocket-client.js +140 -0
  305. package/dist/gateway-api-client/gateway-websocket-client.js.map +1 -0
  306. package/dist/index.d.ts +17 -0
  307. package/dist/index.d.ts.map +1 -0
  308. package/dist/index.js +17 -0
  309. package/dist/index.js.map +1 -0
  310. package/dist/operations/config-validation.d.ts +15 -0
  311. package/dist/operations/config-validation.d.ts.map +1 -0
  312. package/dist/operations/config-validation.js +126 -0
  313. package/dist/operations/config-validation.js.map +1 -0
  314. package/dist/operations/controller-status.d.ts +13 -0
  315. package/dist/operations/controller-status.d.ts.map +1 -0
  316. package/dist/operations/controller-status.js +13 -0
  317. package/dist/operations/controller-status.js.map +1 -0
  318. package/dist/operations/credentials-refresh.d.ts +10 -0
  319. package/dist/operations/credentials-refresh.d.ts.map +1 -0
  320. package/dist/operations/credentials-refresh.js +9 -0
  321. package/dist/operations/credentials-refresh.js.map +1 -0
  322. package/dist/operations/destroy-zone.d.ts +14 -0
  323. package/dist/operations/destroy-zone.d.ts.map +1 -0
  324. package/dist/operations/destroy-zone.js +19 -0
  325. package/dist/operations/destroy-zone.js.map +1 -0
  326. package/dist/operations/doctor.d.ts +23 -0
  327. package/dist/operations/doctor.d.ts.map +1 -0
  328. package/dist/operations/doctor.js +148 -0
  329. package/dist/operations/doctor.js.map +1 -0
  330. package/dist/operations/upgrade-zone.d.ts +12 -0
  331. package/dist/operations/upgrade-zone.d.ts.map +1 -0
  332. package/dist/operations/upgrade-zone.js +10 -0
  333. package/dist/operations/upgrade-zone.js.map +1 -0
  334. package/dist/operations/zone-logs.d.ts +9 -0
  335. package/dist/operations/zone-logs.d.ts.map +1 -0
  336. package/dist/operations/zone-logs.js +7 -0
  337. package/dist/operations/zone-logs.js.map +1 -0
  338. package/dist/resources/repo-resource-contract-loader.d.ts +12 -0
  339. package/dist/resources/repo-resource-contract-loader.d.ts.map +1 -0
  340. package/dist/resources/repo-resource-contract-loader.js +100 -0
  341. package/dist/resources/repo-resource-contract-loader.js.map +1 -0
  342. package/dist/resources/repo-resource-provider-runner.d.ts +32 -0
  343. package/dist/resources/repo-resource-provider-runner.d.ts.map +1 -0
  344. package/dist/resources/repo-resource-provider-runner.js +415 -0
  345. package/dist/resources/repo-resource-provider-runner.js.map +1 -0
  346. package/dist/resources/resource-compiler.d.ts +18 -0
  347. package/dist/resources/resource-compiler.d.ts.map +1 -0
  348. package/dist/resources/resource-compiler.js +51 -0
  349. package/dist/resources/resource-compiler.js.map +1 -0
  350. package/dist/resources/resource-resolver.d.ts +25 -0
  351. package/dist/resources/resource-resolver.d.ts.map +1 -0
  352. package/dist/resources/resource-resolver.js +90 -0
  353. package/dist/resources/resource-resolver.js.map +1 -0
  354. package/dist/runtime/project-namespace.d.ts +5 -0
  355. package/dist/runtime/project-namespace.d.ts.map +1 -0
  356. package/dist/runtime/project-namespace.js +22 -0
  357. package/dist/runtime/project-namespace.js.map +1 -0
  358. package/dist/shared/run-task.d.ts +3 -0
  359. package/dist/shared/run-task.d.ts.map +1 -0
  360. package/dist/shared/run-task.js +12 -0
  361. package/dist/shared/run-task.js.map +1 -0
  362. package/dist/tool-vm/tool-vm-lifecycle.d.ts +28 -0
  363. package/dist/tool-vm/tool-vm-lifecycle.d.ts.map +1 -0
  364. package/dist/tool-vm/tool-vm-lifecycle.js +60 -0
  365. package/dist/tool-vm/tool-vm-lifecycle.js.map +1 -0
  366. package/package.json +52 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"credentials-refresh.d.ts","sourceRoot":"","sources":["../../src/operations/credentials-refresh.ts"],"names":[],"mappings":"AAAA,wBAAsB,+BAA+B,CACpD,OAAO,EAAE;IACR,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACxB,EACD,YAAY,EAAE;IACb,QAAQ,CAAC,kBAAkB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/D,QAAQ,CAAC,kBAAkB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/D,GACC,OAAO,CAAC;IACV,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAClB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACxB,CAAC,CAQD"}
@@ -0,0 +1,9 @@
1
+ export async function runControllerCredentialsRefresh(options, dependencies) {
2
+ await dependencies.refreshZoneSecrets(options.zoneId);
3
+ await dependencies.restartGatewayZone(options.zoneId);
4
+ return {
5
+ ok: true,
6
+ zoneId: options.zoneId,
7
+ };
8
+ }
9
+ //# sourceMappingURL=credentials-refresh.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"credentials-refresh.js","sourceRoot":"","sources":["../../src/operations/credentials-refresh.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,KAAK,UAAU,+BAA+B,CACpD,OAEC,EACD,YAGC;IAKD,MAAM,YAAY,CAAC,kBAAkB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACtD,MAAM,YAAY,CAAC,kBAAkB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAEtD,OAAO;QACN,EAAE,EAAE,IAAI;QACR,MAAM,EAAE,OAAO,CAAC,MAAM;KACtB,CAAC;AACH,CAAC"}
@@ -0,0 +1,14 @@
1
+ import type { SystemConfig } from '../config/system-config.js';
2
+ export declare function runControllerDestroy(options: {
3
+ readonly purge: boolean;
4
+ readonly systemConfig: SystemConfig;
5
+ readonly zoneId: string;
6
+ }, dependencies: {
7
+ readonly releaseZoneLeases: (zoneId: string) => Promise<void>;
8
+ readonly stopGatewayZone: (zoneId: string) => Promise<void>;
9
+ }): Promise<{
10
+ readonly ok: true;
11
+ readonly purged: boolean;
12
+ readonly zoneId: string;
13
+ }>;
14
+ //# sourceMappingURL=destroy-zone.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"destroy-zone.d.ts","sourceRoot":"","sources":["../../src/operations/destroy-zone.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE/D,wBAAsB,oBAAoB,CACzC,OAAO,EAAE;IACR,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IACpC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACxB,EACD,YAAY,EAAE;IACb,QAAQ,CAAC,iBAAiB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9D,QAAQ,CAAC,eAAe,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5D,GACC,OAAO,CAAC;IACV,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAClB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACxB,CAAC,CAqBD"}
@@ -0,0 +1,19 @@
1
+ import fs from 'node:fs/promises';
2
+ export async function runControllerDestroy(options, dependencies) {
3
+ const zone = options.systemConfig.zones.find((candidateZone) => candidateZone.id === options.zoneId);
4
+ if (!zone) {
5
+ throw new Error(`Unknown zone '${options.zoneId}'.`);
6
+ }
7
+ await dependencies.stopGatewayZone(options.zoneId);
8
+ await dependencies.releaseZoneLeases(options.zoneId);
9
+ if (options.purge) {
10
+ await fs.rm(zone.gateway.stateDir, { force: true, recursive: true });
11
+ await fs.rm(zone.gateway.workspaceDir, { force: true, recursive: true });
12
+ }
13
+ return {
14
+ ok: true,
15
+ purged: options.purge,
16
+ zoneId: options.zoneId,
17
+ };
18
+ }
19
+ //# sourceMappingURL=destroy-zone.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"destroy-zone.js","sourceRoot":"","sources":["../../src/operations/destroy-zone.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAIlC,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACzC,OAIC,EACD,YAGC;IAMD,MAAM,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAC3C,CAAC,aAAa,EAAE,EAAE,CAAC,aAAa,CAAC,EAAE,KAAK,OAAO,CAAC,MAAM,CACtD,CAAC;IACF,IAAI,CAAC,IAAI,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,iBAAiB,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC;IACtD,CAAC;IAED,MAAM,YAAY,CAAC,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACnD,MAAM,YAAY,CAAC,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAErD,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QACnB,MAAM,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACrE,MAAM,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC1E,CAAC;IAED,OAAO;QACN,EAAE,EAAE,IAAI;QACR,MAAM,EAAE,OAAO,CAAC,KAAK;QACrB,MAAM,EAAE,OAAO,CAAC,MAAM;KACtB,CAAC;AACH,CAAC"}
@@ -0,0 +1,23 @@
1
+ import type { LoadedSystemConfig, SystemConfig } from '../config/system-config.js';
2
+ export interface DoctorCheck {
3
+ readonly name: string;
4
+ readonly ok: boolean;
5
+ readonly hint?: string;
6
+ readonly value?: number;
7
+ }
8
+ export interface RunControllerDoctorOptions {
9
+ readonly availableBinaries?: ReadonlySet<string>;
10
+ readonly diskFreeBytes?: number;
11
+ readonly env: NodeJS.ProcessEnv;
12
+ readonly occupiedPorts?: ReadonlySet<number>;
13
+ readonly nodeVersion: string;
14
+ readonly systemConfig: SystemConfig;
15
+ readonly totalMemoryBytes?: number;
16
+ }
17
+ export interface ControllerDoctorResult {
18
+ readonly ok: boolean;
19
+ readonly checks: DoctorCheck[];
20
+ }
21
+ export declare function collectVmHostSystemDoctorCheck(systemConfig: LoadedSystemConfig): Promise<DoctorCheck | null>;
22
+ export declare function runControllerDoctor(options: RunControllerDoctorOptions): ControllerDoctorResult;
23
+ //# sourceMappingURL=doctor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/operations/doctor.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAEnF,MAAM,WAAW,WAAW;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,0BAA0B;IAC1C,QAAQ,CAAC,iBAAiB,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACjD,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC;IAChC,QAAQ,CAAC,aAAa,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC7C,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IACpC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;CACnC;AAED,MAAM,WAAW,sBAAsB;IACtC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC;CAC/B;AAoBD,wBAAsB,8BAA8B,CACnD,YAAY,EAAE,kBAAkB,GAC9B,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CAsC7B;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,0BAA0B,GAAG,sBAAsB,CAyH/F"}
@@ -0,0 +1,148 @@
1
+ import fs from 'node:fs/promises';
2
+ import path from 'node:path';
3
+ import { loadSystemCacheIdentifier } from '../config/system-cache-identifier.js';
4
+ function checkAnyBinary(name, binaryNames, installHint, availableBinaries) {
5
+ const foundBinary = binaryNames.find((binaryName) => availableBinaries.has(binaryName));
6
+ return {
7
+ name,
8
+ ok: foundBinary !== undefined,
9
+ ...(foundBinary ? { hint: foundBinary } : { hint: installHint }),
10
+ };
11
+ }
12
+ function isObjectRecord(value) {
13
+ return typeof value === 'object' && value !== null && !Array.isArray(value);
14
+ }
15
+ export async function collectVmHostSystemDoctorCheck(systemConfig) {
16
+ let identifier;
17
+ try {
18
+ identifier = await loadSystemCacheIdentifier({
19
+ filePath: systemConfig.systemCacheIdentifierPath,
20
+ });
21
+ }
22
+ catch {
23
+ return null;
24
+ }
25
+ if (!isObjectRecord(identifier) || identifier.hostSystemType !== 'container') {
26
+ return null;
27
+ }
28
+ const vmHostSystemPath = path.resolve(path.dirname(systemConfig.systemConfigPath), '..', 'vm-host-system');
29
+ const requiredFiles = ['Dockerfile', 'start.sh', 'agent-vm-controller.service'];
30
+ for (const requiredFile of requiredFiles) {
31
+ const requiredFilePath = path.join(vmHostSystemPath, requiredFile);
32
+ try {
33
+ // oxlint-disable-next-line no-await-in-loop -- report the first missing file in stable order
34
+ await fs.access(requiredFilePath);
35
+ }
36
+ catch {
37
+ return {
38
+ name: 'vm-host-system',
39
+ ok: false,
40
+ hint: `Missing ${requiredFilePath}`,
41
+ };
42
+ }
43
+ }
44
+ return {
45
+ name: 'vm-host-system',
46
+ ok: true,
47
+ hint: vmHostSystemPath,
48
+ };
49
+ }
50
+ export function runControllerDoctor(options) {
51
+ const nodeMajorVersion = Number.parseInt(options.nodeVersion.replace(/^v/u, '').split('.')[0] ?? '0', 10);
52
+ const occupiedPorts = options.occupiedPorts ?? new Set();
53
+ const diskFreeBytes = options.diskFreeBytes ?? Number.POSITIVE_INFINITY;
54
+ const totalMemoryBytes = options.totalMemoryBytes ?? Number.POSITIVE_INFINITY;
55
+ const availableBinaries = options.availableBinaries ?? new Set();
56
+ const configuredGatewayBytes = options.systemConfig.zones.reduce((totalBytes, zone) => {
57
+ const memoryMatch = /^(\d+)([GgMm])$/u.exec(zone.gateway.memory);
58
+ if (!memoryMatch) {
59
+ return totalBytes;
60
+ }
61
+ const numericValue = Number.parseInt(memoryMatch[1] ?? '0', 10);
62
+ const multiplier = (memoryMatch[2] ?? '').toLowerCase() === 'g' ? 1024 * 1024 * 1024 : 1024 * 1024;
63
+ return totalBytes + numericValue * multiplier;
64
+ }, 0);
65
+ const tokenSource = options.systemConfig.host.secretsProvider?.tokenSource;
66
+ const tokenSourceReady = (() => {
67
+ if (!tokenSource) {
68
+ return true;
69
+ }
70
+ switch (tokenSource.type) {
71
+ case 'env': {
72
+ const envVar = tokenSource.envVar ?? 'OP_SERVICE_ACCOUNT_TOKEN';
73
+ return typeof options.env[envVar] === 'string' && options.env[envVar].length > 0;
74
+ }
75
+ case 'op-cli':
76
+ return availableBinaries.has('op');
77
+ case 'keychain':
78
+ return availableBinaries.has('security');
79
+ default:
80
+ return false;
81
+ }
82
+ })();
83
+ const checks = [
84
+ {
85
+ name: 'node-version',
86
+ ok: nodeMajorVersion >= 24,
87
+ ...(nodeMajorVersion < 24 ? { hint: 'Requires Node.js >= 24. Install via nvm or fnm.' } : {}),
88
+ },
89
+ ...(tokenSource
90
+ ? [
91
+ {
92
+ name: '1password-token-source',
93
+ ok: tokenSourceReady,
94
+ ...(!tokenSourceReady && tokenSource.type === 'env'
95
+ ? {
96
+ hint: `Set ${tokenSource.envVar ?? 'OP_SERVICE_ACCOUNT_TOKEN'} environment variable`,
97
+ }
98
+ : {}),
99
+ ...(!tokenSourceReady && tokenSource.type === 'op-cli'
100
+ ? { hint: 'Install 1Password CLI: brew install 1password-cli' }
101
+ : {}),
102
+ },
103
+ ]
104
+ : []),
105
+ checkAnyBinary('qemu', ['qemu-system-aarch64', 'qemu-system-x86_64'], 'Install QEMU (for example: brew install qemu).', availableBinaries),
106
+ {
107
+ name: 'controller-port',
108
+ ok: options.systemConfig.host.controllerPort > 0 &&
109
+ !occupiedPorts.has(options.systemConfig.host.controllerPort),
110
+ value: options.systemConfig.host.controllerPort,
111
+ },
112
+ ...options.systemConfig.zones.map((zone) => ({
113
+ name: `gateway-port-${zone.id}`,
114
+ ok: zone.gateway.port > 0 && !occupiedPorts.has(zone.gateway.port),
115
+ value: zone.gateway.port,
116
+ })),
117
+ ...Object.entries(options.systemConfig.imageProfiles.gateways).map(([profileName, profile]) => ({
118
+ name: `gateway-image-profile-${profileName}`,
119
+ ok: true,
120
+ hint: `type=${profile.type}`,
121
+ })),
122
+ ...Object.entries(options.systemConfig.imageProfiles.toolVms).map(([profileName]) => ({
123
+ name: `tool-vm-image-profile-${profileName}`,
124
+ ok: true,
125
+ })),
126
+ ...options.systemConfig.zones.map((zone) => ({
127
+ name: `gateway-image-profile-selected-${zone.id}`,
128
+ ok: true,
129
+ hint: zone.gateway.imageProfile,
130
+ })),
131
+ {
132
+ name: 'disk-space',
133
+ ok: diskFreeBytes >= 10 * 1024 * 1024 * 1024,
134
+ ...(diskFreeBytes < 10 * 1024 * 1024 * 1024
135
+ ? { hint: 'Need at least 10GB free disk space' }
136
+ : {}),
137
+ },
138
+ {
139
+ name: 'memory-budget',
140
+ ok: totalMemoryBytes >= configuredGatewayBytes,
141
+ },
142
+ ];
143
+ return {
144
+ ok: checks.every((check) => check.ok),
145
+ checks,
146
+ };
147
+ }
148
+ //# sourceMappingURL=doctor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/operations/doctor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import type { SystemConfig } from '../config/system-config.js';
2
+ export declare function runControllerUpgrade(options: {
3
+ readonly systemConfig: SystemConfig;
4
+ readonly zoneId: string;
5
+ }, dependencies: {
6
+ readonly rebuildGatewayImage: (zoneId: string) => Promise<void>;
7
+ readonly restartGatewayZone: (zoneId: string) => Promise<void>;
8
+ }): Promise<{
9
+ readonly ok: true;
10
+ readonly zoneId: string;
11
+ }>;
12
+ //# sourceMappingURL=upgrade-zone.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upgrade-zone.d.ts","sourceRoot":"","sources":["../../src/operations/upgrade-zone.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE/D,wBAAsB,oBAAoB,CACzC,OAAO,EAAE;IACR,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IACpC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACxB,EACD,YAAY,EAAE;IACb,QAAQ,CAAC,mBAAmB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAChE,QAAQ,CAAC,kBAAkB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/D,GACC,OAAO,CAAC;IACV,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAClB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACxB,CAAC,CASD"}
@@ -0,0 +1,10 @@
1
+ export async function runControllerUpgrade(options, dependencies) {
2
+ void options.systemConfig;
3
+ await dependencies.rebuildGatewayImage(options.zoneId);
4
+ await dependencies.restartGatewayZone(options.zoneId);
5
+ return {
6
+ ok: true,
7
+ zoneId: options.zoneId,
8
+ };
9
+ }
10
+ //# sourceMappingURL=upgrade-zone.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upgrade-zone.js","sourceRoot":"","sources":["../../src/operations/upgrade-zone.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACzC,OAGC,EACD,YAGC;IAKD,KAAK,OAAO,CAAC,YAAY,CAAC;IAC1B,MAAM,YAAY,CAAC,mBAAmB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACvD,MAAM,YAAY,CAAC,kBAAkB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAEtD,OAAO;QACN,EAAE,EAAE,IAAI;QACR,MAAM,EAAE,OAAO,CAAC,MAAM;KACtB,CAAC;AACH,CAAC"}
@@ -0,0 +1,9 @@
1
+ export declare function runControllerLogs(options: {
2
+ readonly zoneId: string;
3
+ }, dependencies: {
4
+ readonly readGatewayLogs: (zoneId: string) => Promise<string>;
5
+ }): Promise<{
6
+ readonly output: string;
7
+ readonly zoneId: string;
8
+ }>;
9
+ //# sourceMappingURL=zone-logs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zone-logs.d.ts","sourceRoot":"","sources":["../../src/operations/zone-logs.ts"],"names":[],"mappings":"AAAA,wBAAsB,iBAAiB,CACtC,OAAO,EAAE;IACR,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACxB,EACD,YAAY,EAAE;IACb,QAAQ,CAAC,eAAe,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CAC9D,GACC,OAAO,CAAC;IACV,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACxB,CAAC,CAKD"}
@@ -0,0 +1,7 @@
1
+ export async function runControllerLogs(options, dependencies) {
2
+ return {
3
+ output: await dependencies.readGatewayLogs(options.zoneId),
4
+ zoneId: options.zoneId,
5
+ };
6
+ }
7
+ //# sourceMappingURL=zone-logs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zone-logs.js","sourceRoot":"","sources":["../../src/operations/zone-logs.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACtC,OAEC,EACD,YAEC;IAKD,OAAO;QACN,MAAM,EAAE,MAAM,YAAY,CAAC,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC;QAC1D,MAAM,EAAE,OAAO,CAAC,MAAM;KACtB,CAAC;AACH,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { type FinalizeRepoResourceSetupInput, type ResolvedRepoResourcesDescription, type ResolvedRepoResourcesFinal } from '../config/resource-contracts/index.js';
2
+ export declare function hasRepoResourceDescriptionContract(repoDir: string): Promise<boolean>;
3
+ export declare function loadRepoResourceDescriptionContract(options: {
4
+ readonly repoDir: string;
5
+ readonly repoId: string;
6
+ readonly repoUrl: string;
7
+ }): Promise<ResolvedRepoResourcesDescription>;
8
+ export declare function finalizeRepoResourceSetupInSubprocess(options: {
9
+ readonly input: FinalizeRepoResourceSetupInput;
10
+ readonly repoDir: string;
11
+ }): Promise<ResolvedRepoResourcesFinal>;
12
+ //# sourceMappingURL=repo-resource-contract-loader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"repo-resource-contract-loader.d.ts","sourceRoot":"","sources":["../../src/resources/repo-resource-contract-loader.ts"],"names":[],"mappings":"AAMA,OAAO,EAIN,KAAK,8BAA8B,EACnC,KAAK,gCAAgC,EACrC,KAAK,0BAA0B,EAC/B,MAAM,uCAAuC,CAAC;AAkC/C,wBAAsB,kCAAkC,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAE1F;AAsDD,wBAAsB,mCAAmC,CAAC,OAAO,EAAE;IAClE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CACzB,GAAG,OAAO,CAAC,gCAAgC,CAAC,CAoB5C;AAED,wBAAsB,qCAAqC,CAAC,OAAO,EAAE;IACpE,QAAQ,CAAC,KAAK,EAAE,8BAA8B,CAAC;IAC/C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CACzB,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAUtC"}
@@ -0,0 +1,100 @@
1
+ import fs from 'node:fs/promises';
2
+ import path from 'node:path';
3
+ import { pathToFileURL } from 'node:url';
4
+ import { execa } from 'execa';
5
+ import { finalizeRepoResourceSetupInputSchema, repoResourcesFinalSchema, repoResourcesDescriptionSchema, } from '../config/resource-contracts/index.js';
6
+ const REPO_RESOURCES_PATH = path.join('.agent-vm', 'repo-resources.ts');
7
+ const REPO_CONTRACT_TIMEOUT_MS = 30_000;
8
+ function writeRepoContractLoaderLog(message) {
9
+ process.stderr.write(`[repo-resource-contract-loader] ${message}\n`);
10
+ }
11
+ function getErrorStderr(error) {
12
+ if (typeof error === 'object' &&
13
+ error !== null &&
14
+ 'stderr' in error &&
15
+ typeof error.stderr === 'string') {
16
+ const stderr = error.stderr.trim();
17
+ return stderr.length > 0 ? stderr : null;
18
+ }
19
+ return null;
20
+ }
21
+ async function fileExists(filePath) {
22
+ try {
23
+ await fs.access(filePath);
24
+ return true;
25
+ }
26
+ catch (error) {
27
+ if (error && typeof error === 'object' && 'code' in error && error.code === 'ENOENT') {
28
+ return false;
29
+ }
30
+ throw error;
31
+ }
32
+ }
33
+ export async function hasRepoResourceDescriptionContract(repoDir) {
34
+ return await fileExists(path.join(repoDir, REPO_RESOURCES_PATH));
35
+ }
36
+ async function runRepoResourcesFunction(options) {
37
+ const contractPath = path.join(options.repoDir, REPO_RESOURCES_PATH);
38
+ const contractUrl = pathToFileURL(contractPath).href;
39
+ const source = `
40
+ const module = await import(${JSON.stringify(contractUrl)});
41
+ const fn = module[${JSON.stringify(options.functionName)}];
42
+ if (typeof fn !== 'function') {
43
+ \tthrow new Error('repo-resources.ts must export ${options.functionName}()');
44
+ }
45
+ const argument = ${JSON.stringify(options.argument ?? null)};
46
+ const result = ${options.argument === undefined ? 'await fn()' : 'await fn(argument)'};
47
+ process.stdout.write(JSON.stringify(result));
48
+ `;
49
+ try {
50
+ const result = await execa('node', ['--experimental-strip-types', '--input-type=module', '--eval', source], {
51
+ cwd: options.repoDir,
52
+ // Repo contracts are untrusted task input. Keep only PATH so Node and
53
+ // repo-local shell lookups work without inheriting controller secrets.
54
+ env: { PATH: process.env.PATH ?? '' },
55
+ extendEnv: false,
56
+ reject: true,
57
+ timeout: REPO_CONTRACT_TIMEOUT_MS,
58
+ });
59
+ const stdout = result.stdout.trim();
60
+ if (stdout.length === 0) {
61
+ throw new Error(`repo-resources.ts ${options.functionName}() produced no stdout for repo '${options.repoId}'.`);
62
+ }
63
+ return JSON.parse(stdout);
64
+ }
65
+ catch (error) {
66
+ const stderr = getErrorStderr(error);
67
+ const message = `${error instanceof Error ? error.message : String(error)}${stderr ? `\nstderr:\n${stderr}` : ''}`;
68
+ throw new Error(`Failed to run repo-resources.ts ${options.functionName}() for repo '${options.repoId}' (${options.repoUrl}): ${message}`, { cause: error });
69
+ }
70
+ }
71
+ export async function loadRepoResourceDescriptionContract(options) {
72
+ const contractPath = path.join(options.repoDir, REPO_RESOURCES_PATH);
73
+ if (!(await fileExists(contractPath))) {
74
+ writeRepoContractLoaderLog(`${options.repoId}: no ${REPO_RESOURCES_PATH}; treating repo resources as empty.`);
75
+ return {
76
+ setupCommand: '.agent-vm/run-setup.sh',
77
+ requires: {},
78
+ provides: {},
79
+ };
80
+ }
81
+ const result = await runRepoResourcesFunction({
82
+ functionName: 'describeRepoResources',
83
+ repoDir: options.repoDir,
84
+ repoId: options.repoId,
85
+ repoUrl: options.repoUrl,
86
+ });
87
+ return repoResourcesDescriptionSchema.parse(result);
88
+ }
89
+ export async function finalizeRepoResourceSetupInSubprocess(options) {
90
+ const parsedInput = finalizeRepoResourceSetupInputSchema.parse(options.input);
91
+ const result = await runRepoResourcesFunction({
92
+ argument: parsedInput,
93
+ functionName: 'finalizeRepoResourceSetup',
94
+ repoDir: options.repoDir,
95
+ repoId: parsedInput.repoId,
96
+ repoUrl: parsedInput.repoUrl,
97
+ });
98
+ return repoResourcesFinalSchema.parse(result);
99
+ }
100
+ //# sourceMappingURL=repo-resource-contract-loader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"repo-resource-contract-loader.js","sourceRoot":"","sources":["../../src/resources/repo-resource-contract-loader.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ import type { ResourceBinding } from '../config/resource-contracts/index.js';
2
+ import type { RepoResourceFinalization } from './resource-compiler.js';
3
+ import type { SelectedRepoResourceProvider } from './resource-resolver.js';
4
+ export interface RepoResourceSetupInput {
5
+ readonly outputDir: string;
6
+ readonly repoDir: string;
7
+ readonly repoId: string;
8
+ readonly repoUrl: string;
9
+ readonly setupCommand: string;
10
+ }
11
+ export interface RepoResourceProviderStartInput extends SelectedRepoResourceProvider {
12
+ readonly binding: ResourceBinding;
13
+ readonly outputDir: string;
14
+ readonly repoDir: string;
15
+ }
16
+ export interface StartedRepoResourceProvider {
17
+ readonly composeFilePath: string;
18
+ readonly composeProjectName: string;
19
+ readonly repoDir: string;
20
+ readonly repoId: string;
21
+ }
22
+ export interface StartRepoResourceProvidersResult {
23
+ readonly finalizations: readonly RepoResourceFinalization[];
24
+ readonly startedProviders: readonly StartedRepoResourceProvider[];
25
+ }
26
+ export declare function startRepoResourceProviders(options: {
27
+ readonly providers: readonly RepoResourceProviderStartInput[];
28
+ readonly repos: readonly RepoResourceSetupInput[];
29
+ readonly taskId: string;
30
+ }): Promise<StartRepoResourceProvidersResult>;
31
+ export declare function stopRepoResourceProviders(providers: readonly StartedRepoResourceProvider[]): Promise<void>;
32
+ //# sourceMappingURL=repo-resource-provider-runner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"repo-resource-provider-runner.d.ts","sourceRoot":"","sources":["../../src/resources/repo-resource-provider-runner.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAEX,eAAe,EACf,MAAM,uCAAuC,CAAC;AAE/C,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,wBAAwB,CAAC;AAuD3E,MAAM,WAAW,sBAAsB;IACtC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,8BAA+B,SAAQ,4BAA4B;IACnF,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC;IAClC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,2BAA2B;IAC3C,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,gCAAgC;IAChD,QAAQ,CAAC,aAAa,EAAE,SAAS,wBAAwB,EAAE,CAAC;IAC5D,QAAQ,CAAC,gBAAgB,EAAE,SAAS,2BAA2B,EAAE,CAAC;CAClE;AAiZD,wBAAsB,0BAA0B,CAAC,OAAO,EAAE;IACzD,QAAQ,CAAC,SAAS,EAAE,SAAS,8BAA8B,EAAE,CAAC;IAC9D,QAAQ,CAAC,KAAK,EAAE,SAAS,sBAAsB,EAAE,CAAC;IAClD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACxB,GAAG,OAAO,CAAC,gCAAgC,CAAC,CA2C5C;AAED,wBAAsB,yBAAyB,CAC9C,SAAS,EAAE,SAAS,2BAA2B,EAAE,GAC/C,OAAO,CAAC,IAAI,CAAC,CAqCf"}