@agent-vm/agent-vm 0.0.78 → 0.0.79

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 (75) hide show
  1. package/dist/cli/commands/controller-definition.d.ts.map +1 -1
  2. package/dist/cli/commands/controller-definition.js +7 -3
  3. package/dist/cli/commands/controller-definition.js.map +1 -1
  4. package/dist/cli/manual-templates.d.ts.map +1 -1
  5. package/dist/cli/manual-templates.js +7 -3
  6. package/dist/cli/manual-templates.js.map +1 -1
  7. package/dist/controller/controller-runtime-types.d.ts +4 -0
  8. package/dist/controller/controller-runtime-types.d.ts.map +1 -1
  9. package/dist/controller/controller-runtime.d.ts.map +1 -1
  10. package/dist/controller/controller-runtime.js +28 -3
  11. package/dist/controller/controller-runtime.js.map +1 -1
  12. package/dist/controller/http/controller-http-route-support.d.ts +12 -0
  13. package/dist/controller/http/controller-http-route-support.d.ts.map +1 -1
  14. package/dist/controller/http/controller-http-route-support.js +12 -0
  15. package/dist/controller/http/controller-http-route-support.js.map +1 -1
  16. package/dist/controller/http/controller-http-routes.d.ts +4 -1
  17. package/dist/controller/http/controller-http-routes.d.ts.map +1 -1
  18. package/dist/controller/http/controller-http-routes.js +75 -24
  19. package/dist/controller/http/controller-http-routes.js.map +1 -1
  20. package/dist/controller/http/controller-lease-response-types.d.ts +1 -0
  21. package/dist/controller/http/controller-lease-response-types.d.ts.map +1 -1
  22. package/dist/controller/http/controller-lease-response-types.js +1 -0
  23. package/dist/controller/http/controller-lease-response-types.js.map +1 -1
  24. package/dist/controller/http/controller-request-schemas.d.ts +1 -0
  25. package/dist/controller/http/controller-request-schemas.d.ts.map +1 -1
  26. package/dist/controller/http/controller-request-schemas.js +15 -1
  27. package/dist/controller/http/controller-request-schemas.js.map +1 -1
  28. package/dist/controller/http/controller-zone-operation-routes.d.ts +4 -2
  29. package/dist/controller/http/controller-zone-operation-routes.d.ts.map +1 -1
  30. package/dist/controller/http/controller-zone-operation-routes.js +50 -1
  31. package/dist/controller/http/controller-zone-operation-routes.js.map +1 -1
  32. package/dist/controller/leases/lease-manager.d.ts +17 -1
  33. package/dist/controller/leases/lease-manager.d.ts.map +1 -1
  34. package/dist/controller/leases/lease-manager.js +133 -34
  35. package/dist/controller/leases/lease-manager.js.map +1 -1
  36. package/dist/controller/leases/tcp-pool.d.ts +3 -0
  37. package/dist/controller/leases/tcp-pool.d.ts.map +1 -1
  38. package/dist/controller/leases/tcp-pool.js +12 -1
  39. package/dist/controller/leases/tcp-pool.js.map +1 -1
  40. package/dist/controller/leases/tool-vm-recovery.d.ts +31 -0
  41. package/dist/controller/leases/tool-vm-recovery.d.ts.map +1 -0
  42. package/dist/controller/leases/tool-vm-recovery.js +178 -0
  43. package/dist/controller/leases/tool-vm-recovery.js.map +1 -0
  44. package/dist/controller/leases/tool-vm-runtime-record.d.ts +59 -0
  45. package/dist/controller/leases/tool-vm-runtime-record.d.ts.map +1 -0
  46. package/dist/controller/leases/tool-vm-runtime-record.js +159 -0
  47. package/dist/controller/leases/tool-vm-runtime-record.js.map +1 -0
  48. package/dist/gateway/gateway-recovery.d.ts +8 -5
  49. package/dist/gateway/gateway-recovery.d.ts.map +1 -1
  50. package/dist/gateway/gateway-recovery.js +63 -123
  51. package/dist/gateway/gateway-recovery.js.map +1 -1
  52. package/dist/gateway/gateway-runtime-record.d.ts +24 -16
  53. package/dist/gateway/gateway-runtime-record.d.ts.map +1 -1
  54. package/dist/gateway/gateway-runtime-record.js +53 -68
  55. package/dist/gateway/gateway-runtime-record.js.map +1 -1
  56. package/dist/gateway/gateway-zone-orchestrator.d.ts +6 -0
  57. package/dist/gateway/gateway-zone-orchestrator.d.ts.map +1 -1
  58. package/dist/gateway/gateway-zone-orchestrator.js +157 -40
  59. package/dist/gateway/gateway-zone-orchestrator.js.map +1 -1
  60. package/dist/operations/controller-offline-cleanup.d.ts +3 -0
  61. package/dist/operations/controller-offline-cleanup.d.ts.map +1 -1
  62. package/dist/operations/controller-offline-cleanup.js +16 -6
  63. package/dist/operations/controller-offline-cleanup.js.map +1 -1
  64. package/dist/operations/destroy-zone.d.ts.map +1 -1
  65. package/dist/operations/destroy-zone.js +5 -0
  66. package/dist/operations/destroy-zone.js.map +1 -1
  67. package/dist/shared/managed-vm-process.d.ts +33 -0
  68. package/dist/shared/managed-vm-process.d.ts.map +1 -0
  69. package/dist/shared/managed-vm-process.js +248 -0
  70. package/dist/shared/managed-vm-process.js.map +1 -0
  71. package/dist/shared/port-owner.d.ts +18 -0
  72. package/dist/shared/port-owner.d.ts.map +1 -0
  73. package/dist/shared/port-owner.js +60 -0
  74. package/dist/shared/port-owner.js.map +1 -0
  75. package/package.json +11 -11
@@ -1,6 +1,7 @@
1
1
  import fs from 'node:fs/promises';
2
2
  import path from 'node:path';
3
3
  import { createManagedVm as createManagedVmFromCore, } from '@agent-vm/gondolin-adapter';
4
+ import { cleanupOrphanedToolVmsIfPresent } from '../controller/leases/tool-vm-recovery.js';
4
5
  import { assertOpenClawToolVmRequirements } from '../operations/openclaw-deployment-requirements.js';
5
6
  import { runTaskWithResult } from '../shared/run-task.js';
6
7
  import { resolveZoneSecrets } from './credential-manager.js';
@@ -28,6 +29,9 @@ function formatCommandOutput(name, value) {
28
29
  function formatGatewayCommandFailure(stepName, result) {
29
30
  return `${stepName} failed with exit ${result.exitCode}.${formatCommandOutput('stdout', result.stdout)}${formatCommandOutput('stderr', result.stderr)}`;
30
31
  }
32
+ function toPhaseCError(reason) {
33
+ return reason instanceof Error ? reason : new Error(String(reason));
34
+ }
31
35
  async function execGatewayCommand(options) {
32
36
  const result = await options.managedVm.exec(options.command);
33
37
  if (result.exitCode !== 0) {
@@ -120,57 +124,81 @@ export async function startGatewayZone(options, dependencies = {}) {
120
124
  const runTaskStep = options.runTask ?? (async (_title, fn) => await fn());
121
125
  const zone = options.zoneOverride ?? findGatewayZone(options.systemConfig, options.zoneId);
122
126
  const mappedLifecycleZone = mapSystemGatewayZoneToLifecycleZone(zone);
123
- const mcpPortalMaterialization = await buildRuntimeMcpPortalMaterialization({
127
+ const lifecycle = (dependencies.loadGatewayLifecycle ?? loadGatewayLifecycle)(zone.gateway.type);
128
+ // Phase A: collect host-side prerequisites in parallel.
129
+ //
130
+ // All five branches operate on disjoint paths and have no shared in-process
131
+ // state:
132
+ // - mcpPortalMaterialization writes $cacheDir/gateways/$zoneId/mcp-portal-effective/
133
+ // - recovery cleanup reads/deletes $stateDir/tool-leases/*.json and
134
+ // $stateDir/gateway-runtime.json after ownership checks; tool VM
135
+ // children are cleaned before the gateway so the old gateway cannot
136
+ // continue issuing work while child recovery runs.
137
+ // - assertions reads $zone.gateway.config (pure validation)
138
+ // - resolveZoneSecrets reads zone.secrets (no IO beyond secretResolver)
139
+ // - buildGatewayImage operates on $cacheDir/gateway-images/$profile
140
+ //
141
+ // mcpPortalMaterialization and resolveZoneSecrets both call
142
+ // secretResolver.resolveAll concurrently with disjoint ref sets. The
143
+ // @1password/sdk JS client is documented in its source to be concurrency-
144
+ // safe on a single Client instance (SharedCore WASM module handles
145
+ // concurrent invocations). The op-CLI fallback layer is intentionally
146
+ // two-tier only — SDK → op inject — with no further serial `op read`
147
+ // tier; see packages/secret-management/src/onepassword-secret-resolver.ts
148
+ // for the rationale (the previous third tier reintroduced a documented
149
+ // concurrent `op read` hazard at the outer-call layer).
150
+ const mcpPortalMaterializationPromise = buildRuntimeMcpPortalMaterialization({
124
151
  cacheDir: options.systemConfig.cacheDir,
125
152
  secretResolver: options.secretResolver,
126
153
  zone,
127
154
  });
128
- const lifecycleZone = {
129
- ...mappedLifecycleZone,
130
- ...mcpPortalMaterialization,
131
- egressHosts: mcpPortalMaterialization.egressHosts ?? mappedLifecycleZone.egressHosts,
132
- ...(options.runtimeEnvironment === undefined
133
- ? {}
134
- : {
135
- runtimeEnvironment: {
136
- ...mcpPortalMaterialization.runtimeEnvironment,
137
- ...options.runtimeEnvironment,
138
- },
139
- }),
140
- ...(options.runtimePluginConfigs === undefined
141
- ? {}
142
- : {
143
- runtimePluginConfigs: {
144
- ...mcpPortalMaterialization.runtimePluginConfigs,
145
- ...options.runtimePluginConfigs,
146
- },
147
- }),
148
- };
149
- await runTaskStep('Cleaning orphaned gateway runtime', async () => {
155
+ const cleanupOrphanedGateway = async () => {
150
156
  await (dependencies.cleanupOrphanedGatewayIfPresent ?? cleanupOrphanedGatewayIfPresent)({
151
- legacyRecordDefaults: {
152
- configPath: options.systemConfig.systemConfigPath,
153
- controllerPort: options.systemConfig.host.controllerPort,
154
- },
157
+ expectedConfigPath: options.systemConfig.systemConfigPath,
158
+ expectedControllerPort: options.systemConfig.host.controllerPort,
155
159
  mode: 'in-process-recovery',
156
160
  projectNamespace: options.systemConfig.host.projectNamespace,
157
161
  stateDir: zone.gateway.stateDir,
158
162
  zoneId: zone.id,
159
163
  });
160
- });
161
- if (zone.gateway.type === 'openclaw') {
162
- await runTaskStep('Validating OpenClaw Tool VM requirements', async () => {
163
- await assertOpenClawToolVmRequirements(options.systemConfig, zone.id);
164
+ };
165
+ // Tool VM orphan cleanup runs in-process-recovery mode only for OpenClaw
166
+ // zones worker zones never spawn tool VMs, so there is no
167
+ // $stateDir/tool-leases/ subtree to scan. Same five-fence + ps-command
168
+ // discipline as the gateway cleanup above: any scope mismatch skips the
169
+ // record instead of signaling its PID.
170
+ const cleanupOrphanedToolVms = async () => {
171
+ if (zone.gateway.type !== 'openclaw') {
172
+ return;
173
+ }
174
+ await (dependencies.cleanupOrphanedToolVmsIfPresent ?? cleanupOrphanedToolVmsIfPresent)({
175
+ expectedConfigPath: options.systemConfig.systemConfigPath,
176
+ expectedControllerPort: options.systemConfig.host.controllerPort,
177
+ mode: 'in-process-recovery',
178
+ projectNamespace: options.systemConfig.host.projectNamespace,
179
+ stateDir: zone.gateway.stateDir,
180
+ tcpBasePort: options.systemConfig.tcpPool.basePort,
181
+ zoneId: zone.id,
164
182
  });
165
- }
166
- const lifecycle = (dependencies.loadGatewayLifecycle ?? loadGatewayLifecycle)(zone.gateway.type);
167
- const resolvedSecrets = await runTaskWithResult(runTaskStep, 'Resolving zone secrets', async () => await resolveZoneSecrets({
183
+ };
184
+ const recoveryCleanupPromise = zone.gateway.type === 'openclaw'
185
+ ? runTaskStep('Cleaning orphaned tool VMs', async () => {
186
+ await cleanupOrphanedToolVms();
187
+ await runTaskStep('Cleaning orphaned gateway runtime', cleanupOrphanedGateway);
188
+ })
189
+ : runTaskStep('Cleaning orphaned gateway runtime', cleanupOrphanedGateway);
190
+ const assertionsPromise = zone.gateway.type === 'openclaw'
191
+ ? runTaskStep('Validating OpenClaw Tool VM requirements', async () => {
192
+ await assertOpenClawToolVmRequirements(options.systemConfig, zone.id);
193
+ })
194
+ : Promise.resolve();
195
+ const resolvedSecretsPromise = runTaskWithResult(runTaskStep, 'Resolving zone secrets', async () => await resolveZoneSecrets({
168
196
  audience: 'gateway',
169
197
  systemConfig: options.systemConfig,
170
198
  zoneId: zone.id,
171
199
  secretResolver: options.secretResolver,
172
200
  }));
173
- const image = await runTaskWithResult(runTaskStep, 'Building gateway image', async () => {
201
+ const imagePromise = runTaskWithResult(runTaskStep, 'Building gateway image', async () => {
174
202
  const gatewayImageProfile = selectGatewayImageProfile({
175
203
  systemConfig: options.systemConfig,
176
204
  zone,
@@ -183,6 +211,51 @@ export async function startGatewayZone(options, dependencies = {}) {
183
211
  ...(dependencies.loadBuildConfig ? { loadBuildConfig: dependencies.loadBuildConfig } : {}),
184
212
  });
185
213
  });
214
+ // Promise.all (fail-fast) rather than Promise.allSettled here. Rationale:
215
+ // - The image build branch can be slow on a cold cache (minutes for a
216
+ // full Gondolin rebuild). If any other branch fails fast (e.g., a
217
+ // config assertion at ~10ms), we want the operator to see the error
218
+ // immediately, not after the image build completes.
219
+ // - The realistic multi-failure mode (1Password is down) hits both
220
+ // secretResolver.resolveAll callers with the same root cause at the
221
+ // same op-CLI timeout (~30s). Promise.all surfaces the first; that's
222
+ // diagnostically sufficient.
223
+ // - Phase C uses allSettled for a DIFFERENT reason: it has a live
224
+ // QEMU resource to close on partial failure. Phase A produces no
225
+ // such resource.
226
+ //
227
+ // Cost of fail-fast: if multiple branches reject simultaneously, the
228
+ // other reasons are lost (only the first reaches the caller). Background
229
+ // completion of the other branches is harmless — no Phase A branch
230
+ // produces a host-visible resource that needs cleanup.
231
+ const [mcpPortalMaterialization, , , resolvedSecrets, image] = await Promise.all([
232
+ mcpPortalMaterializationPromise,
233
+ recoveryCleanupPromise,
234
+ assertionsPromise,
235
+ resolvedSecretsPromise,
236
+ imagePromise,
237
+ ]);
238
+ const lifecycleZone = {
239
+ ...mappedLifecycleZone,
240
+ ...mcpPortalMaterialization,
241
+ egressHosts: mcpPortalMaterialization.egressHosts ?? mappedLifecycleZone.egressHosts,
242
+ ...(options.runtimeEnvironment === undefined
243
+ ? {}
244
+ : {
245
+ runtimeEnvironment: {
246
+ ...mcpPortalMaterialization.runtimeEnvironment,
247
+ ...options.runtimeEnvironment,
248
+ },
249
+ }),
250
+ ...(options.runtimePluginConfigs === undefined
251
+ ? {}
252
+ : {
253
+ runtimePluginConfigs: {
254
+ ...mcpPortalMaterialization.runtimePluginConfigs,
255
+ ...options.runtimePluginConfigs,
256
+ },
257
+ }),
258
+ };
186
259
  await fs.mkdir(zone.gateway.stateDir, { recursive: true });
187
260
  if (zone.gateway.type === 'openclaw') {
188
261
  await fs.mkdir(zone.gateway.zoneFilesDir, { recursive: true });
@@ -194,9 +267,6 @@ export async function startGatewayZone(options, dependencies = {}) {
194
267
  await fs.mkdir(logDir, { recursive: true, mode: 0o700 });
195
268
  await fs.chmod(logDir, 0o700);
196
269
  }
197
- await runTaskStep('Preparing host state', async () => {
198
- await lifecycle.prepareHostState?.(lifecycleZone, options.secretResolver);
199
- });
200
270
  const vmSpec = lifecycle.buildVmSpec({
201
271
  controllerPort: options.systemConfig.host.controllerPort,
202
272
  gatewayCacheDir,
@@ -220,7 +290,15 @@ export async function startGatewayZone(options, dependencies = {}) {
220
290
  ...options.vfsMountsOverride,
221
291
  };
222
292
  const createManagedVm = dependencies.createManagedVm ?? createManagedVmFromCore;
223
- const managedVm = await runTaskWithResult(runTaskStep, 'Booting gateway VM', async () => await createManagedVm({
293
+ // Phase C: prepareHostState writes to stateDir (realfs-mounted live in
294
+ // the VM), which is only read by the bootstrap exec running INSIDE the
295
+ // VM — that runs after createManagedVm resolves. So the host-side
296
+ // writes can overlap with QEMU boot. Promise.allSettled lets us close
297
+ // an orphan VM if prep fails after the VM came up.
298
+ const prepHostStatePromise = runTaskStep('Preparing host state', async () => {
299
+ await lifecycle.prepareHostState?.(lifecycleZone, options.secretResolver);
300
+ });
301
+ const managedVmPromise = runTaskWithResult(runTaskStep, 'Booting gateway VM', async () => await createManagedVm({
224
302
  allowedHosts: vmSpec.allowedHosts,
225
303
  cpus: zone.gateway.cpus,
226
304
  env: environment,
@@ -233,6 +311,42 @@ export async function startGatewayZone(options, dependencies = {}) {
233
311
  tcpHosts,
234
312
  vfsMounts,
235
313
  }));
314
+ const [prepHostStateResult, managedVmResult] = await Promise.allSettled([
315
+ prepHostStatePromise,
316
+ managedVmPromise,
317
+ ]);
318
+ // Aggregate any failures from either Phase C branch. If prep failed
319
+ // after the VM came up, close the VM before throwing. The outer guard
320
+ // handles all failure paths in one place so the happy path below can
321
+ // rely on TypeScript narrowing both settled results to `fulfilled`
322
+ // without a dead-code assertion.
323
+ if (prepHostStateResult.status === 'rejected' || managedVmResult.status === 'rejected') {
324
+ const phaseCErrors = [];
325
+ if (prepHostStateResult.status === 'rejected') {
326
+ phaseCErrors.push(toPhaseCError(prepHostStateResult.reason));
327
+ if (managedVmResult.status === 'fulfilled') {
328
+ try {
329
+ await managedVmResult.value.close();
330
+ }
331
+ catch (closeError) {
332
+ phaseCErrors.push(new Error(`Failed to close gateway VM after host-state prep failure: ${closeError instanceof Error ? closeError.message : String(closeError)}`, { cause: closeError }));
333
+ }
334
+ }
335
+ }
336
+ if (managedVmResult.status === 'rejected') {
337
+ phaseCErrors.push(toPhaseCError(managedVmResult.reason));
338
+ }
339
+ if (phaseCErrors.length > 1) {
340
+ throw new AggregateError(phaseCErrors, 'Phase C failed: prep host state and/or VM boot');
341
+ }
342
+ // At least one branch rejected, so phaseCErrors has exactly one entry.
343
+ const [singlePhaseCError] = phaseCErrors;
344
+ if (singlePhaseCError === undefined) {
345
+ throw new Error('Phase C unreachable: rejection branch with no collected errors');
346
+ }
347
+ throw singlePhaseCError;
348
+ }
349
+ const managedVm = managedVmResult.value;
236
350
  try {
237
351
  await runTaskStep('Configuring gateway', async () => {
238
352
  await execGatewayCommand({
@@ -279,13 +393,16 @@ export async function startGatewayZone(options, dependencies = {}) {
279
393
  : { upstreamResponseTimeoutMs: zone.gateway.ingress.upstreamResponseTimeoutMs }),
280
394
  });
281
395
  await runTaskStep('Recording gateway runtime', async () => {
282
- await (dependencies.writeGatewayRuntimeRecord ?? writeGatewayRuntimeRecord)(zone.gateway.stateDir, buildGatewayRuntimeRecord({
396
+ await (dependencies.writeGatewayRuntimeRecord ?? writeGatewayRuntimeRecord)(zone.gateway.stateDir, await buildGatewayRuntimeRecord({
283
397
  controllerPort: options.systemConfig.host.controllerPort,
284
398
  gatewayType: zone.gateway.type,
285
399
  ingressPort: ingress.port,
286
400
  managedVm,
287
401
  processSpec,
288
402
  projectNamespace: options.systemConfig.host.projectNamespace,
403
+ ...(dependencies.readProcessIdentity !== undefined
404
+ ? { readProcessIdentity: dependencies.readProcessIdentity }
405
+ : {}),
289
406
  systemConfigPath: options.systemConfig.systemConfigPath,
290
407
  zoneId: zone.id,
291
408
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"gateway-zone-orchestrator.js","sourceRoot":"","sources":["../../src/gateway/gateway-zone-orchestrator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gateway-zone-orchestrator.js","sourceRoot":"","sources":["../../src/gateway/gateway-zone-orchestrator.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import type { LoadedSystemConfig } from '../config/system-config.js';
2
+ import { cleanupOrphanedToolVmsIfPresent, type ToolVmCleanupResult } from '../controller/leases/tool-vm-recovery.js';
2
3
  import { cleanupOrphanedGatewayIfPresent } from '../gateway/gateway-recovery.js';
3
4
  export interface ControllerOfflineCleanupResult {
4
5
  readonly results: readonly {
@@ -6,12 +7,14 @@ export interface ControllerOfflineCleanupResult {
6
7
  readonly cleanupWarning?: string;
7
8
  readonly killedPid: number | null;
8
9
  readonly stateDir: string;
10
+ readonly toolVmCleanup: ToolVmCleanupResult;
9
11
  readonly zoneId: string;
10
12
  }[];
11
13
  }
12
14
  interface ControllerOfflineCleanupDependencies {
13
15
  readonly assertControllerUnavailableForOfflineCleanup?: (controllerPort: number) => Promise<void>;
14
16
  readonly cleanupOrphanedGatewayIfPresent?: typeof cleanupOrphanedGatewayIfPresent;
17
+ readonly cleanupOrphanedToolVmsIfPresent?: typeof cleanupOrphanedToolVmsIfPresent;
15
18
  }
16
19
  export declare function runControllerOfflineCleanup(options: {
17
20
  readonly force?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"controller-offline-cleanup.d.ts","sourceRoot":"","sources":["../../src/operations/controller-offline-cleanup.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,EAAE,+BAA+B,EAAE,MAAM,gCAAgC,CAAC;AAEjF,MAAM,WAAW,8BAA8B;IAC9C,QAAQ,CAAC,OAAO,EAAE,SAAS;QAC1B,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;QAC5B,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;QACjC,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;QAClC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;QAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;KACxB,EAAE,CAAC;CACJ;AA8CD,UAAU,oCAAoC;IAC7C,QAAQ,CAAC,4CAA4C,CAAC,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAClG,QAAQ,CAAC,+BAA+B,CAAC,EAAE,OAAO,+BAA+B,CAAC;CAClF;AAED,wBAAsB,2BAA2B,CAChD,OAAO,EAAE;IACR,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,YAAY,EAAE,kBAAkB,CAAC;IAC1C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACxB,EACD,YAAY,GAAE,oCAAyC,GACrD,OAAO,CAAC,8BAA8B,CAAC,CAkCzC"}
1
+ {"version":3,"file":"controller-offline-cleanup.d.ts","sourceRoot":"","sources":["../../src/operations/controller-offline-cleanup.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,EACN,+BAA+B,EAC/B,KAAK,mBAAmB,EACxB,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAAE,+BAA+B,EAAE,MAAM,gCAAgC,CAAC;AAEjF,MAAM,WAAW,8BAA8B;IAC9C,QAAQ,CAAC,OAAO,EAAE,SAAS;QAC1B,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;QAC5B,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;QACjC,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;QAClC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;QAC1B,QAAQ,CAAC,aAAa,EAAE,mBAAmB,CAAC;QAC5C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;KACxB,EAAE,CAAC;CACJ;AA8CD,UAAU,oCAAoC;IAC7C,QAAQ,CAAC,4CAA4C,CAAC,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAClG,QAAQ,CAAC,+BAA+B,CAAC,EAAE,OAAO,+BAA+B,CAAC;IAClF,QAAQ,CAAC,+BAA+B,CAAC,EAAE,OAAO,+BAA+B,CAAC;CAClF;AAED,wBAAsB,2BAA2B,CAChD,OAAO,EAAE;IACR,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,YAAY,EAAE,kBAAkB,CAAC;IAC1C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACxB,EACD,YAAY,GAAE,oCAAyC,GACrD,OAAO,CAAC,8BAA8B,CAAC,CA6CzC"}
@@ -1,3 +1,4 @@
1
+ import { cleanupOrphanedToolVmsIfPresent, } from '../controller/leases/tool-vm-recovery.js';
1
2
  import { cleanupOrphanedGatewayIfPresent } from '../gateway/gateway-recovery.js';
2
3
  function isConnectionRefusedError(error) {
3
4
  if (typeof error !== 'object' || error === null) {
@@ -44,13 +45,21 @@ export async function runControllerOfflineCleanup(options, dependencies = {}) {
44
45
  await (dependencies.assertControllerUnavailableForOfflineCleanup ??
45
46
  assertControllerUnavailableForOfflineCleanup)(options.systemConfig.host.controllerPort);
46
47
  }
47
- const cleanup = dependencies.cleanupOrphanedGatewayIfPresent ?? cleanupOrphanedGatewayIfPresent;
48
+ const cleanupToolVms = dependencies.cleanupOrphanedToolVmsIfPresent ?? cleanupOrphanedToolVmsIfPresent;
49
+ const cleanupGateway = dependencies.cleanupOrphanedGatewayIfPresent ?? cleanupOrphanedGatewayIfPresent;
48
50
  const results = [];
49
- const result = await cleanup({
50
- legacyRecordDefaults: {
51
- configPath: options.systemConfig.systemConfigPath,
52
- controllerPort: options.systemConfig.host.controllerPort,
53
- },
51
+ const toolVmCleanup = await cleanupToolVms({
52
+ expectedConfigPath: options.systemConfig.systemConfigPath,
53
+ expectedControllerPort: options.systemConfig.host.controllerPort,
54
+ mode: 'offline-cleanup',
55
+ projectNamespace: options.systemConfig.host.projectNamespace,
56
+ stateDir: zone.gateway.stateDir,
57
+ tcpBasePort: options.systemConfig.tcpPool.basePort,
58
+ zoneId: zone.id,
59
+ });
60
+ const result = await cleanupGateway({
61
+ expectedConfigPath: options.systemConfig.systemConfigPath,
62
+ expectedControllerPort: options.systemConfig.host.controllerPort,
54
63
  mode: 'offline-cleanup',
55
64
  projectNamespace: options.systemConfig.host.projectNamespace,
56
65
  stateDir: zone.gateway.stateDir,
@@ -59,6 +68,7 @@ export async function runControllerOfflineCleanup(options, dependencies = {}) {
59
68
  results.push({
60
69
  ...result,
61
70
  stateDir: zone.gateway.stateDir,
71
+ toolVmCleanup,
62
72
  zoneId: zone.id,
63
73
  });
64
74
  return { results };
@@ -1 +1 @@
1
- {"version":3,"file":"controller-offline-cleanup.js","sourceRoot":"","sources":["../../src/operations/controller-offline-cleanup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"controller-offline-cleanup.js","sourceRoot":"","sources":["../../src/operations/controller-offline-cleanup.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"destroy-zone.d.ts","sourceRoot":"","sources":["../../src/operations/destroy-zone.ts"],"names":[],"mappings":"AAGA,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,CA+BD"}
1
+ {"version":3,"file":"destroy-zone.d.ts","sourceRoot":"","sources":["../../src/operations/destroy-zone.ts"],"names":[],"mappings":"AAGA,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,CAoCD"}
@@ -17,6 +17,11 @@ export async function runControllerDestroy(options, dependencies) {
17
17
  force: true,
18
18
  recursive: true,
19
19
  });
20
+ // Do NOT broaden this to `fs.rm(runtimeDir/zones/<zone>)`.
21
+ // runtimeDir/zones/<zone>/zone-git/ holds the authoritative git store for
22
+ // committed-but-unpushed zone work and is referenced via a `gitdir:` pointer
23
+ // in the backed-up zoneFilesDir/.git. See
24
+ // docs/architecture/storage-model.md "runtimeDir is two lifecycles".
20
25
  if (zone.gateway.type === 'openclaw') {
21
26
  await fs.rm(zone.gateway.zoneFilesDir, { force: true, recursive: true });
22
27
  }
@@ -1 +1 @@
1
- {"version":3,"file":"destroy-zone.js","sourceRoot":"","sources":["../../src/operations/destroy-zone.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,IAAI,MAAM,WAAW,CAAC;AAI7B,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,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,UAAU,EAAE,cAAc,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE;YAChF,KAAK,EAAE,IAAI;YACX,SAAS,EAAE,IAAI;SACf,CAAC,CAAC;QACH,MAAM,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE;YACjF,KAAK,EAAE,IAAI;YACX,SAAS,EAAE,IAAI;SACf,CAAC,CAAC;QACH,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YACtC,MAAM,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1E,CAAC;IACF,CAAC;IAED,OAAO;QACN,EAAE,EAAE,IAAI;QACR,MAAM,EAAE,OAAO,CAAC,KAAK;QACrB,MAAM,EAAE,OAAO,CAAC,MAAM;KACtB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"destroy-zone.js","sourceRoot":"","sources":["../../src/operations/destroy-zone.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,IAAI,MAAM,WAAW,CAAC;AAI7B,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,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,UAAU,EAAE,cAAc,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE;YAChF,KAAK,EAAE,IAAI;YACX,SAAS,EAAE,IAAI;SACf,CAAC,CAAC;QACH,MAAM,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE;YACjF,KAAK,EAAE,IAAI;YACX,SAAS,EAAE,IAAI;SACf,CAAC,CAAC;QACH,2DAA2D;QAC3D,0EAA0E;QAC1E,6EAA6E;QAC7E,0CAA0C;QAC1C,qEAAqE;QACrE,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YACtC,MAAM,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1E,CAAC;IACF,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,33 @@
1
+ export declare function isProcessAlive(pid: number): boolean;
2
+ export declare function readProcessCommand(pid: number): Promise<string | null>;
3
+ export interface ProcessIdentity {
4
+ readonly lstart: string;
5
+ readonly command: string;
6
+ }
7
+ export declare function readProcessIdentity(pid: number): Promise<ProcessIdentity | null>;
8
+ export declare function parseProcessIdentityOutput(line: string): ProcessIdentity | null;
9
+ export declare function isManagedVmProcess(command: string): boolean;
10
+ export declare function processIdentityMatches(recorded: ProcessIdentity, current: ProcessIdentity): boolean;
11
+ export declare function killProcess(pid: number, signal: NodeJS.Signals): void;
12
+ export declare function isNoSuchProcessError(error: unknown): boolean;
13
+ export declare function sleep(delayMs: number): Promise<void>;
14
+ export declare function waitForExit(options: {
15
+ readonly pid: number;
16
+ readonly processIsAlive: (pid: number) => boolean;
17
+ readonly sleep: (delayMs: number) => Promise<void>;
18
+ readonly timeoutMs: number;
19
+ }): Promise<boolean>;
20
+ export interface ManagedVmKillDependencies {
21
+ readonly isProcessAlive: (pid: number) => boolean;
22
+ readonly killProcess: (pid: number, signal: NodeJS.Signals) => void;
23
+ readonly readProcessCommand: (pid: number) => Promise<string | null>;
24
+ readonly readProcessIdentity?: (pid: number) => Promise<ProcessIdentity | null>;
25
+ readonly sleep: (delayMs: number) => Promise<void>;
26
+ }
27
+ export declare function killOrphanedManagedVmProcess(options: {
28
+ readonly contextLabel: string;
29
+ readonly dependencies: ManagedVmKillDependencies;
30
+ readonly pid: number;
31
+ readonly recordedIdentity?: ProcessIdentity;
32
+ }): Promise<number | null>;
33
+ //# sourceMappingURL=managed-vm-process.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"managed-vm-process.d.ts","sourceRoot":"","sources":["../../src/shared/managed-vm-process.ts"],"names":[],"mappings":"AAKA,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAenD;AAED,wBAAsB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAW5E;AASD,MAAM,WAAW,eAAe;IAC/B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CACzB;AAED,wBAAsB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAwBtF;AAED,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,CAW/E;AA6BD,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAE3D;AAED,wBAAgB,sBAAsB,CACrC,QAAQ,EAAE,eAAe,EACzB,OAAO,EAAE,eAAe,GACtB,OAAO,CAET;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,OAAO,GAAG,IAAI,CAerE;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAE5D;AAED,wBAAsB,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE1D;AAED,wBAAsB,WAAW,CAAC,OAAO,EAAE;IAC1C,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,cAAc,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;IAClD,QAAQ,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACnD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC3B,GAAG,OAAO,CAAC,OAAO,CAAC,CAUnB;AAED,MAAM,WAAW,yBAAyB;IACzC,QAAQ,CAAC,cAAc,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;IAClD,QAAQ,CAAC,WAAW,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,OAAO,KAAK,IAAI,CAAC;IACpE,QAAQ,CAAC,kBAAkB,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACrE,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAAC;IAChF,QAAQ,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACnD;AA+DD,wBAAsB,4BAA4B,CAAC,OAAO,EAAE;IAC3D,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,YAAY,EAAE,yBAAyB,CAAC;IACjD,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,gBAAgB,CAAC,EAAE,eAAe,CAAC;CAC5C,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAuEzB"}