@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,326 @@
1
+ import { createOpCliSecretResolver } from '@agent-vm/gondolin-adapter';
2
+ import { deleteGatewayRuntimeRecord as deleteGatewayRuntimeRecordDefault } from '../gateway/gateway-runtime-record.js';
3
+ import { startGatewayZone } from '../gateway/gateway-zone-orchestrator.js';
4
+ import { runTaskWithResult } from '../shared/run-task.js';
5
+ import { cleanToolVmWorkspace, createToolVm, resolveToolVmWorkspaceDirectory, } from '../tool-vm/tool-vm-lifecycle.js';
6
+ import { ActiveTaskRegistry } from './active-task-registry.js';
7
+ import { createControllerRuntimeOperations, createStopControllerOperation, } from './controller-runtime-operations.js';
8
+ import { createSecretResolver, findConfiguredZone, resolveControllerGithubToken, } from './controller-runtime-support.js';
9
+ import { pullDefaultForTask, PullDefaultValidationError, } from './git-pull-default-operations.js';
10
+ import { pushBranchesForTask, PushBranchesValidationError, } from './git-push-operations.js';
11
+ import { ControllerRuntimeAtCapacityError, ControllerTaskNotReadyError, } from './http/controller-http-route-support.js';
12
+ import { createControllerService } from './http/controller-http-routes.js';
13
+ import { startControllerHttpServer } from './http/controller-http-server.js';
14
+ import { createIdleReaper } from './leases/idle-reaper.js';
15
+ import { createLeaseManager } from './leases/lease-manager.js';
16
+ import { createTcpPool } from './leases/tcp-pool.js';
17
+ import { RequestHeartbeatRegistry } from './request-heartbeat-registry.js';
18
+ import { createTaskStateReader } from './task-state-reader.js';
19
+ import { executeWorkerTask as executeWorkerTaskDefault, prepareWorkerTask as prepareWorkerTaskDefault, } from './worker-task-runner.js';
20
+ const MAX_ACTIVE_TASKS_PER_RUNTIME = 1;
21
+ function writeControllerRuntimeLog(message) {
22
+ process.stderr.write(`[agent-vm] ${message}\n`);
23
+ }
24
+ function formatUnknownError(error) {
25
+ if (error instanceof Error) {
26
+ return error.message;
27
+ }
28
+ return typeof error === 'string' ? error : JSON.stringify(error);
29
+ }
30
+ export async function startControllerRuntime(options, dependencies) {
31
+ const now = dependencies.now ?? Date.now;
32
+ const runTaskStep = dependencies.runTask ?? (async (_title, fn) => await fn());
33
+ const secretResolver = await runTaskWithResult(runTaskStep, 'Resolving 1Password secrets', async () => await createSecretResolver(options.systemConfig, dependencies.createSecretResolver ?? createOpCliSecretResolver));
34
+ const controllerGithubToken = await resolveControllerGithubToken(options.systemConfig, secretResolver);
35
+ const callerUrl = process.env.CALLER_URL;
36
+ const createManagedToolVm = dependencies.createManagedToolVm ??
37
+ (async (toolVmOptions) => await createToolVm({
38
+ cacheDir: options.systemConfig.cacheDir,
39
+ profile: toolVmOptions.profile,
40
+ systemConfig: options.systemConfig,
41
+ tcpSlot: toolVmOptions.tcpSlot,
42
+ workspaceDir: toolVmOptions.workspaceDir,
43
+ zoneId: toolVmOptions.zoneId,
44
+ }));
45
+ const tcpPool = createTcpPool(options.systemConfig.tcpPool);
46
+ const activeTaskRegistry = new ActiveTaskRegistry();
47
+ const requestHeartbeatRegistry = new RequestHeartbeatRegistry();
48
+ const activeZone = findConfiguredZone(options.systemConfig, options.zoneId);
49
+ const leaseManager = createLeaseManager({
50
+ cleanWorkspace: async ({ profile, tcpSlot, zoneId }) => {
51
+ await cleanToolVmWorkspace(resolveToolVmWorkspaceDirectory({
52
+ profile,
53
+ tcpSlot,
54
+ zoneId,
55
+ }));
56
+ },
57
+ createManagedVm: async (leaseOptions) => await createManagedToolVm({
58
+ profile: leaseOptions.profile,
59
+ tcpSlot: leaseOptions.tcpSlot,
60
+ workspaceDir: leaseOptions.workspaceDir,
61
+ zoneId: leaseOptions.zoneId,
62
+ }),
63
+ now,
64
+ tcpPool,
65
+ });
66
+ const idleReaper = createIdleReaper({
67
+ getLeases: () => leaseManager.listLeases(),
68
+ now,
69
+ releaseLease: async (leaseId) => {
70
+ await leaseManager.releaseLease(leaseId);
71
+ },
72
+ ttlMs: 30 * 60 * 1000,
73
+ });
74
+ const reaperTimer = (dependencies.setIntervalImpl ?? setInterval)(() => void idleReaper.reapExpiredLeases(), 60_000);
75
+ const clearReaperTimer = () => (dependencies.clearIntervalImpl ?? clearInterval)(reaperTimer);
76
+ const releaseAllLeases = async () => {
77
+ let releaseError;
78
+ for (const lease of leaseManager.listLeases()) {
79
+ try {
80
+ // oxlint-disable-next-line eslint/no-await-in-loop -- sequential release avoids TCP slot races
81
+ await leaseManager.releaseLease(lease.id);
82
+ }
83
+ catch (error) {
84
+ releaseError ??= error instanceof Error ? error : new Error(formatUnknownError(error));
85
+ writeControllerRuntimeLog(`Failed to release lease '${lease.id}' during controller shutdown: ${formatUnknownError(error)}`);
86
+ }
87
+ }
88
+ return releaseError;
89
+ };
90
+ const startGateway = async () => await (dependencies.startGatewayZone ?? startGatewayZone)({
91
+ runTask: runTaskStep,
92
+ secretResolver,
93
+ systemConfig: options.systemConfig,
94
+ zoneId: options.zoneId,
95
+ });
96
+ const zone = findConfiguredZone(options.systemConfig, options.zoneId);
97
+ let gateway;
98
+ const requireGateway = () => {
99
+ if (!gateway) {
100
+ throw new Error('Gateway runtime is unavailable because the last restart did not complete.');
101
+ }
102
+ return gateway;
103
+ };
104
+ if (activeZone.gateway.type !== 'worker') {
105
+ await runTaskStep('Starting gateway zone', async () => {
106
+ gateway = await startGateway();
107
+ });
108
+ }
109
+ const stopGatewayZone = async () => {
110
+ if (!gateway) {
111
+ return;
112
+ }
113
+ const activeGateway = gateway;
114
+ gateway = undefined;
115
+ let closeError;
116
+ try {
117
+ await activeGateway.vm.close();
118
+ }
119
+ catch (error) {
120
+ closeError = error;
121
+ }
122
+ let deleteRecordError;
123
+ try {
124
+ await (dependencies.deleteGatewayRuntimeRecord ?? deleteGatewayRuntimeRecordDefault)(zone.gateway.stateDir);
125
+ }
126
+ catch (error) {
127
+ deleteRecordError = error;
128
+ }
129
+ if (closeError) {
130
+ throw closeError;
131
+ }
132
+ if (deleteRecordError) {
133
+ throw deleteRecordError;
134
+ }
135
+ };
136
+ const restartGatewayZone = async () => {
137
+ await stopGatewayZone();
138
+ gateway = await startGateway();
139
+ };
140
+ const serverRef = {};
141
+ const stopController = createStopControllerOperation({
142
+ clearReaperTimer,
143
+ closeControllerServer: () => setTimeout(() => void serverRef.current?.close(), 100),
144
+ getLeases: () => leaseManager.listLeases(),
145
+ releaseLease: async (leaseId) => await leaseManager.releaseLease(leaseId),
146
+ stopGatewayZone,
147
+ });
148
+ const controllerOperations = activeZone.gateway.type !== 'worker'
149
+ ? {
150
+ ...createControllerRuntimeOperations({
151
+ activeZoneId: options.zoneId,
152
+ getGateway: () => requireGateway(),
153
+ getZone: (zoneId) => findConfiguredZone(options.systemConfig, zoneId),
154
+ leaseManager,
155
+ restartGatewayZone,
156
+ secretResolver,
157
+ stopGatewayZone,
158
+ systemConfig: options.systemConfig,
159
+ }),
160
+ stopController,
161
+ }
162
+ : { stopController };
163
+ const prepareWorkerTaskForZone = activeZone.gateway.type === 'worker'
164
+ ? async (zoneId, input) => {
165
+ const reservationId = activeTaskRegistry.tryReserve(zoneId, MAX_ACTIVE_TASKS_PER_RUNTIME);
166
+ if (!reservationId) {
167
+ throw new ControllerRuntimeAtCapacityError(`Worker pod for zone '${zoneId}' is at capacity.`);
168
+ }
169
+ try {
170
+ return await (dependencies.prepareWorkerTask ?? prepareWorkerTaskDefault)({
171
+ input,
172
+ systemConfig: options.systemConfig,
173
+ zoneId,
174
+ ...(controllerGithubToken ? { githubToken: controllerGithubToken } : {}),
175
+ onTaskPrepared: async (task) => {
176
+ activeTaskRegistry.activateReservation(zoneId, reservationId, task);
177
+ try {
178
+ await dependencies.onWorkerTaskPrepared?.(task);
179
+ }
180
+ catch (error) {
181
+ activeTaskRegistry.clear(task.zoneId, task.taskId);
182
+ throw error;
183
+ }
184
+ },
185
+ });
186
+ }
187
+ catch (error) {
188
+ activeTaskRegistry.releaseReservation(zoneId, reservationId);
189
+ throw error;
190
+ }
191
+ }
192
+ : undefined;
193
+ const executePreparedWorkerTask = activeZone.gateway.type === 'worker'
194
+ ? async (prepared) => {
195
+ let heartbeatAcquired = false;
196
+ try {
197
+ if (callerUrl) {
198
+ requestHeartbeatRegistry.acquire(prepared.input.requestTaskId, callerUrl);
199
+ heartbeatAcquired = true;
200
+ }
201
+ return await (dependencies.executeWorkerTask ?? executeWorkerTaskDefault)(prepared, {
202
+ secretResolver,
203
+ systemConfig: options.systemConfig,
204
+ onWorkerTaskIngress: async (zoneId, taskId, workerIngress) => {
205
+ activeTaskRegistry.setWorkerIngress(zoneId, taskId, workerIngress);
206
+ await dependencies.onWorkerTaskIngress?.(zoneId, taskId, workerIngress);
207
+ },
208
+ onTaskFinished: async (finishedZoneId, taskId) => {
209
+ activeTaskRegistry.clear(finishedZoneId, taskId);
210
+ await dependencies.onWorkerTaskFinished?.(finishedZoneId, taskId);
211
+ },
212
+ });
213
+ }
214
+ catch (error) {
215
+ if (activeTaskRegistry.get(prepared.zoneId, prepared.taskId)) {
216
+ activeTaskRegistry.clear(prepared.zoneId, prepared.taskId);
217
+ }
218
+ throw error;
219
+ }
220
+ finally {
221
+ if (heartbeatAcquired) {
222
+ requestHeartbeatRegistry.release(prepared.input.requestTaskId);
223
+ }
224
+ }
225
+ }
226
+ : undefined;
227
+ const getTaskState = activeZone.gateway.type === 'worker'
228
+ ? createTaskStateReader({ systemConfig: options.systemConfig }).read
229
+ : undefined;
230
+ const closeTaskForZone = activeZone.gateway.type === 'worker'
231
+ ? async (zoneId, taskId) => {
232
+ const activeTask = activeTaskRegistry.get(zoneId, taskId);
233
+ if (!activeTask) {
234
+ throw new Error(`Task '${taskId}' is not active for zone '${zoneId}'.`);
235
+ }
236
+ if (!activeTask.workerIngress) {
237
+ throw new ControllerTaskNotReadyError(`Task '${taskId}' in zone '${zoneId}' does not have a worker ingress yet.`);
238
+ }
239
+ const response = await fetch(`http://${activeTask.workerIngress.host}:${String(activeTask.workerIngress.port)}/tasks/${taskId}/close`, { method: 'POST' });
240
+ if (!response.ok) {
241
+ throw new Error(`worker close returned HTTP ${String(response.status)}`);
242
+ }
243
+ return { status: 'closed' };
244
+ }
245
+ : undefined;
246
+ const pushTaskBranches = activeZone.gateway.type === 'worker'
247
+ ? async (zoneId, taskId, input) => {
248
+ const activeTask = activeTaskRegistry.get(zoneId, taskId);
249
+ if (!activeTask) {
250
+ throw new PushBranchesValidationError(`Task '${taskId}' is not active for zone '${zoneId}'.`);
251
+ }
252
+ if (!controllerGithubToken) {
253
+ throw new Error('Controller GitHub token is not configured. Set host.githubToken or process.env.GITHUB_TOKEN.');
254
+ }
255
+ return await pushBranchesForTask({
256
+ activeTask,
257
+ branches: input.branches,
258
+ githubToken: controllerGithubToken,
259
+ });
260
+ }
261
+ : undefined;
262
+ const pullDefaultForActiveTask = activeZone.gateway.type === 'worker'
263
+ ? async (zoneId, taskId, input) => {
264
+ const activeTask = activeTaskRegistry.get(zoneId, taskId);
265
+ if (!activeTask) {
266
+ throw new PullDefaultValidationError(`Task '${taskId}' is not active for zone '${zoneId}'.`);
267
+ }
268
+ if (!controllerGithubToken) {
269
+ throw new Error('Controller GitHub token is not configured. Set host.githubToken or process.env.GITHUB_TOKEN.');
270
+ }
271
+ return await pullDefaultForTask({
272
+ activeTask,
273
+ repoUrl: input.repoUrl,
274
+ githubToken: controllerGithubToken,
275
+ });
276
+ }
277
+ : undefined;
278
+ const operations = {
279
+ ...controllerOperations,
280
+ ...(prepareWorkerTaskForZone ? { prepareWorkerTask: prepareWorkerTaskForZone } : {}),
281
+ ...(executePreparedWorkerTask ? { executeWorkerTask: executePreparedWorkerTask } : {}),
282
+ ...(getTaskState ? { getTaskState } : {}),
283
+ ...(closeTaskForZone ? { closeTaskForZone } : {}),
284
+ ...(pushTaskBranches ? { pushTaskBranches } : {}),
285
+ ...(pullDefaultForActiveTask ? { pullDefaultForTask: pullDefaultForActiveTask } : {}),
286
+ };
287
+ const controllerApp = createControllerService({
288
+ leaseManager,
289
+ operations,
290
+ systemConfig: options.systemConfig,
291
+ });
292
+ await runTaskStep(`Controller API on :${options.systemConfig.host.controllerPort}`, async () => {
293
+ serverRef.current = await (dependencies.startHttpServer ?? startControllerHttpServer)({
294
+ app: controllerApp,
295
+ port: options.systemConfig.host.controllerPort,
296
+ });
297
+ });
298
+ await idleReaper.reapExpiredLeases();
299
+ return {
300
+ async close() {
301
+ clearReaperTimer();
302
+ requestHeartbeatRegistry.stopAll();
303
+ const releaseError = await releaseAllLeases();
304
+ try {
305
+ await stopGatewayZone();
306
+ }
307
+ finally {
308
+ await serverRef.current?.close();
309
+ }
310
+ if (releaseError) {
311
+ throw releaseError;
312
+ }
313
+ },
314
+ controllerPort: options.systemConfig.host.controllerPort,
315
+ ...(gateway
316
+ ? {
317
+ gateway: {
318
+ ingress: requireGateway().ingress,
319
+ processSpec: requireGateway().processSpec,
320
+ vm: requireGateway().vm,
321
+ },
322
+ }
323
+ : {}),
324
+ };
325
+ }
326
+ //# sourceMappingURL=controller-runtime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"controller-runtime.js","sourceRoot":"","sources":["../../src/controller/controller-runtime.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export declare function buildGithubAuthConfigArgs(githubToken: string): readonly string[];
2
+ export declare function scrubGithubTokenFromOutput(text: string): string;
3
+ //# sourceMappingURL=git-auth-support.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"git-auth-support.d.ts","sourceRoot":"","sources":["../../src/controller/git-auth-support.ts"],"names":[],"mappings":"AAEA,wBAAgB,yBAAyB,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAGhF;AAED,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAI/D"}
@@ -0,0 +1,11 @@
1
+ import { Buffer } from 'node:buffer';
2
+ export function buildGithubAuthConfigArgs(githubToken) {
3
+ const header = `Authorization: Basic ${Buffer.from(`x-access-token:${githubToken}`).toString('base64')}`;
4
+ return ['-c', `http.https://github.com/.extraheader=${header}`];
5
+ }
6
+ export function scrubGithubTokenFromOutput(text) {
7
+ return text
8
+ .replace(/https:\/\/x-access-token:[^@]*@/gu, 'https://x-access-token:***@')
9
+ .replace(/Authorization: Basic [A-Za-z0-9+/=]+/gu, 'Authorization: Basic ***');
10
+ }
11
+ //# sourceMappingURL=git-auth-support.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"git-auth-support.js","sourceRoot":"","sources":["../../src/controller/git-auth-support.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,MAAM,UAAU,yBAAyB,CAAC,WAAmB;IAC5D,MAAM,MAAM,GAAG,wBAAwB,MAAM,CAAC,IAAI,CAAC,kBAAkB,WAAW,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;IACzG,OAAO,CAAC,IAAI,EAAE,wCAAwC,MAAM,EAAE,CAAC,CAAC;AACjE,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,IAAY;IACtD,OAAO,IAAI;SACT,OAAO,CAAC,mCAAmC,EAAE,6BAA6B,CAAC;SAC3E,OAAO,CAAC,wCAAwC,EAAE,0BAA0B,CAAC,CAAC;AACjF,CAAC"}
@@ -0,0 +1,34 @@
1
+ import type { ActiveWorkerTask } from './active-task-registry.js';
2
+ export interface PullDefaultRequest {
3
+ readonly repoUrl: string;
4
+ }
5
+ export interface PullDefaultCommitSummary {
6
+ readonly sha: string;
7
+ readonly subject: string;
8
+ readonly author?: string;
9
+ readonly date?: string;
10
+ }
11
+ export interface PullDefaultResult {
12
+ readonly repoUrl: string;
13
+ readonly success: boolean;
14
+ readonly error?: string;
15
+ readonly defaultBranch?: string;
16
+ readonly remoteDefaultHead?: string;
17
+ readonly localDefaultHead?: string;
18
+ readonly currentBranch?: string | null;
19
+ readonly fetchedCommits?: readonly PullDefaultCommitSummary[];
20
+ readonly commitsSinceForkPoint?: readonly PullDefaultCommitSummary[];
21
+ readonly divergence?: {
22
+ readonly aheadOfDefault: number;
23
+ readonly behindDefault: number;
24
+ readonly forkPoint: string;
25
+ };
26
+ }
27
+ export declare class PullDefaultValidationError extends Error {
28
+ }
29
+ export declare function pullDefaultForTask(options: {
30
+ readonly activeTask: ActiveWorkerTask;
31
+ readonly repoUrl: string;
32
+ readonly githubToken: string;
33
+ }): Promise<PullDefaultResult>;
34
+ //# sourceMappingURL=git-pull-default-operations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"git-pull-default-operations.d.ts","sourceRoot":"","sources":["../../src/controller/git-pull-default-operations.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAKlE,MAAM,WAAW,kBAAkB;IAClC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,wBAAwB;IACxC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;CACvB;AASD,MAAM,WAAW,iBAAiB;IACjC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,QAAQ,CAAC,cAAc,CAAC,EAAE,SAAS,wBAAwB,EAAE,CAAC;IAC9D,QAAQ,CAAC,qBAAqB,CAAC,EAAE,SAAS,wBAAwB,EAAE,CAAC;IACrE,QAAQ,CAAC,UAAU,CAAC,EAAE;QACrB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;QAChC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;QAC/B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;KAC3B,CAAC;CACF;AAED,qBAAa,0BAA2B,SAAQ,KAAK;CAAG;AAgGxD,wBAAsB,kBAAkB,CAAC,OAAO,EAAE;IACjD,QAAQ,CAAC,UAAU,EAAE,gBAAgB,CAAC;IACtC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC7B,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAoG7B"}
@@ -0,0 +1,175 @@
1
+ import { execa } from 'execa';
2
+ import { scrubGithubTokenFromOutput } from './git-auth-support.js';
3
+ const GIT_OPERATION_TIMEOUT_MS = 120_000;
4
+ export class PullDefaultValidationError extends Error {
5
+ }
6
+ function parseRepoFromUrl(repoUrl) {
7
+ const cleaned = repoUrl.replace(/\.git$/, '');
8
+ const urlPattern = /(?:https?:\/\/)?github\.com\/([^/]+\/[^/]+)$/u;
9
+ const match = urlPattern.exec(cleaned);
10
+ if (match?.[1])
11
+ return match[1];
12
+ if (/^[^\s/]+\/[^\s/]+$/u.test(cleaned))
13
+ return cleaned;
14
+ throw new PullDefaultValidationError(`Invalid GitHub repository: ${repoUrl}`);
15
+ }
16
+ function buildPushUrl(repoUrl, githubToken) {
17
+ return `https://x-access-token:${githubToken}@github.com/${parseRepoFromUrl(repoUrl)}.git`;
18
+ }
19
+ async function git(options) {
20
+ const result = await execa('git', [...options.args], {
21
+ cwd: options.cwd,
22
+ reject: false,
23
+ timeout: GIT_OPERATION_TIMEOUT_MS,
24
+ });
25
+ const normalized = {
26
+ stdout: result.stdout,
27
+ stderr: result.stderr,
28
+ exitCode: result.exitCode ?? 0,
29
+ };
30
+ if (options.reject === true && normalized.exitCode !== 0) {
31
+ throw new Error(`git ${options.args.join(' ')} failed\n${normalized.stdout}\n${normalized.stderr}`.trim());
32
+ }
33
+ return normalized;
34
+ }
35
+ async function gitStdout(cwd, args) {
36
+ return (await git({ cwd, args, reject: true })).stdout.trim();
37
+ }
38
+ function parseCommitSummaries(output) {
39
+ if (output.trim().length === 0)
40
+ return [];
41
+ return output
42
+ .trim()
43
+ .split('\n')
44
+ .map((line) => {
45
+ const [sha = '', subject = '', author = '', date = ''] = line.split('\t');
46
+ const summary = {
47
+ sha,
48
+ subject,
49
+ };
50
+ if (author) {
51
+ summary.author = author;
52
+ }
53
+ if (date) {
54
+ summary.date = date;
55
+ }
56
+ return summary;
57
+ });
58
+ }
59
+ async function commitSummaries(cwd, range) {
60
+ const result = await git({
61
+ cwd,
62
+ args: ['log', range, '--format=%H%x09%s%x09%an%x09%aI'],
63
+ reject: false,
64
+ });
65
+ if (result.exitCode !== 0)
66
+ return [];
67
+ return parseCommitSummaries(result.stdout);
68
+ }
69
+ async function refExists(cwd, ref) {
70
+ return ((await git({ cwd, args: ['rev-parse', '--verify', '--quiet', ref], reject: false }))
71
+ .exitCode === 0);
72
+ }
73
+ async function countRange(cwd, range) {
74
+ const result = await git({ cwd, args: ['rev-list', '--count', range], reject: false });
75
+ if (result.exitCode !== 0)
76
+ return 0;
77
+ return Number.parseInt(result.stdout.trim(), 10) || 0;
78
+ }
79
+ async function currentBranch(cwd) {
80
+ const result = await git({ cwd, args: ['branch', '--show-current'], reject: false });
81
+ if (result.exitCode !== 0)
82
+ return null;
83
+ const branch = result.stdout.trim();
84
+ return branch.length > 0 ? branch : null;
85
+ }
86
+ export async function pullDefaultForTask(options) {
87
+ const repo = options.activeTask.repos.find((candidate) => candidate.repoUrl === options.repoUrl);
88
+ if (!repo) {
89
+ throw new PullDefaultValidationError(`Repo '${options.repoUrl}' is not registered for active task '${options.activeTask.taskId}'.`);
90
+ }
91
+ try {
92
+ const defaultBranch = repo.baseBranch;
93
+ const defaultRef = `refs/heads/${defaultBranch}`;
94
+ const remoteDefaultRef = `refs/remotes/origin/${defaultBranch}`;
95
+ const previousRemoteDefaultHead = (await refExists(repo.hostWorkspacePath, remoteDefaultRef))
96
+ ? await gitStdout(repo.hostWorkspacePath, ['rev-parse', remoteDefaultRef])
97
+ : null;
98
+ const fetchResult = await git({
99
+ cwd: repo.hostWorkspacePath,
100
+ args: [
101
+ 'fetch',
102
+ '--prune',
103
+ buildPushUrl(options.repoUrl, options.githubToken),
104
+ `${defaultBranch}:${remoteDefaultRef}`,
105
+ ],
106
+ reject: false,
107
+ });
108
+ if (fetchResult.exitCode !== 0) {
109
+ return {
110
+ repoUrl: options.repoUrl,
111
+ success: false,
112
+ error: `Fetch failed: ${scrubGithubTokenFromOutput(`${fetchResult.stdout}\n${fetchResult.stderr}`).trim()}`,
113
+ };
114
+ }
115
+ const remoteDefaultHead = await gitStdout(repo.hostWorkspacePath, [
116
+ 'rev-parse',
117
+ remoteDefaultRef,
118
+ ]);
119
+ const fetchedCommits = previousRemoteDefaultHead
120
+ ? await commitSummaries(repo.hostWorkspacePath, `${previousRemoteDefaultHead}..${remoteDefaultRef}`)
121
+ : [];
122
+ if (await refExists(repo.hostWorkspacePath, defaultRef)) {
123
+ const fastForwardCheck = await git({
124
+ cwd: repo.hostWorkspacePath,
125
+ args: ['merge-base', '--is-ancestor', defaultRef, remoteDefaultRef],
126
+ reject: false,
127
+ });
128
+ if (fastForwardCheck.exitCode !== 0) {
129
+ return {
130
+ repoUrl: options.repoUrl,
131
+ success: false,
132
+ defaultBranch,
133
+ remoteDefaultHead,
134
+ error: `Local ${defaultBranch} cannot be fast-forwarded to origin/${defaultBranch}; inspect it manually.`,
135
+ };
136
+ }
137
+ }
138
+ await git({
139
+ cwd: repo.hostWorkspacePath,
140
+ args: ['update-ref', defaultRef, remoteDefaultRef],
141
+ reject: true,
142
+ });
143
+ const localDefaultHead = await gitStdout(repo.hostWorkspacePath, ['rev-parse', defaultRef]);
144
+ const branch = await currentBranch(repo.hostWorkspacePath);
145
+ const forkPoint = await gitStdout(repo.hostWorkspacePath, [
146
+ 'merge-base',
147
+ 'HEAD',
148
+ remoteDefaultRef,
149
+ ]);
150
+ const commitsSinceForkPoint = await commitSummaries(repo.hostWorkspacePath, `${forkPoint}..${remoteDefaultRef}`);
151
+ return {
152
+ repoUrl: options.repoUrl,
153
+ success: true,
154
+ defaultBranch,
155
+ remoteDefaultHead,
156
+ localDefaultHead,
157
+ currentBranch: branch,
158
+ fetchedCommits,
159
+ commitsSinceForkPoint,
160
+ divergence: {
161
+ aheadOfDefault: await countRange(repo.hostWorkspacePath, `${remoteDefaultRef}..HEAD`),
162
+ behindDefault: await countRange(repo.hostWorkspacePath, `HEAD..${remoteDefaultRef}`),
163
+ forkPoint,
164
+ },
165
+ };
166
+ }
167
+ catch (error) {
168
+ return {
169
+ repoUrl: options.repoUrl,
170
+ success: false,
171
+ error: error instanceof Error ? error.message : String(error),
172
+ };
173
+ }
174
+ }
175
+ //# sourceMappingURL=git-pull-default-operations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"git-pull-default-operations.js","sourceRoot":"","sources":["../../src/controller/git-pull-default-operations.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ import type { ActiveWorkerTask } from './active-task-registry.js';
2
+ export interface PushBranchRequest {
3
+ readonly repoUrl: string;
4
+ readonly branchName: string;
5
+ }
6
+ export interface PushCommitSummary {
7
+ readonly sha: string;
8
+ readonly subject: string;
9
+ readonly author?: string;
10
+ readonly date?: string;
11
+ }
12
+ export interface PushBranchResult {
13
+ readonly repoUrl: string;
14
+ readonly branch: string;
15
+ readonly success: boolean;
16
+ readonly error?: string;
17
+ readonly localHead?: string;
18
+ readonly remoteBranchHead?: string;
19
+ readonly defaultBranch?: string;
20
+ readonly remoteDefaultHead?: string;
21
+ readonly commitsOnBranch?: readonly PushCommitSummary[];
22
+ readonly pushedInThisCall?: readonly PushCommitSummary[];
23
+ readonly remoteAlreadyHadBranch?: boolean;
24
+ readonly divergence?: {
25
+ readonly aheadOfDefault: number;
26
+ readonly behindDefault: number;
27
+ };
28
+ }
29
+ export declare class PushBranchesValidationError extends Error {
30
+ }
31
+ export declare function pushBranchesForTask(options: {
32
+ readonly activeTask: ActiveWorkerTask;
33
+ readonly branches: readonly PushBranchRequest[];
34
+ readonly githubToken: string;
35
+ }): Promise<{
36
+ readonly results: readonly PushBranchResult[];
37
+ }>;
38
+ //# sourceMappingURL=git-push-operations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"git-push-operations.d.ts","sourceRoot":"","sources":["../../src/controller/git-push-operations.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAKlE,MAAM,WAAW,iBAAiB;IACjC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,iBAAiB;IACjC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;CACvB;AASD,MAAM,WAAW,gBAAgB;IAChC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,eAAe,CAAC,EAAE,SAAS,iBAAiB,EAAE,CAAC;IACxD,QAAQ,CAAC,gBAAgB,CAAC,EAAE,SAAS,iBAAiB,EAAE,CAAC;IACzD,QAAQ,CAAC,sBAAsB,CAAC,EAAE,OAAO,CAAC;IAC1C,QAAQ,CAAC,UAAU,CAAC,EAAE;QAAE,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAA;KAAE,CAAC;CAC1F;AAED,qBAAa,2BAA4B,SAAQ,KAAK;CAAG;AAiMzD,wBAAsB,mBAAmB,CAAC,OAAO,EAAE;IAClD,QAAQ,CAAC,UAAU,EAAE,gBAAgB,CAAC;IACtC,QAAQ,CAAC,QAAQ,EAAE,SAAS,iBAAiB,EAAE,CAAC;IAChD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC7B,GAAG,OAAO,CAAC;IAAE,QAAQ,CAAC,OAAO,EAAE,SAAS,gBAAgB,EAAE,CAAA;CAAE,CAAC,CAsG7D"}