@agent-vm/agent-vm 0.0.32 → 0.0.34
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.
- package/dist/build/gondolin-image-builder.d.ts.map +1 -1
- package/dist/build/gondolin-image-builder.js +7 -12
- package/dist/build/gondolin-image-builder.js.map +1 -1
- package/dist/cli/agent-vm-cli-support.d.ts +7 -0
- package/dist/cli/agent-vm-cli-support.d.ts.map +1 -1
- package/dist/cli/agent-vm-cli-support.js +2 -0
- package/dist/cli/agent-vm-cli-support.js.map +1 -1
- package/dist/cli/build-command.d.ts.map +1 -1
- package/dist/cli/build-command.js +15 -7
- package/dist/cli/build-command.js.map +1 -1
- package/dist/cli/commands/command-definition-support.js +1 -1
- package/dist/cli/commands/command-definition-support.js.map +1 -1
- package/dist/cli/commands/controller-definition.d.ts +24 -24
- package/dist/cli/commands/create-app.d.ts +60 -24
- package/dist/cli/commands/create-app.d.ts.map +1 -1
- package/dist/cli/commands/create-app.js +2 -0
- package/dist/cli/commands/create-app.js.map +1 -1
- package/dist/cli/commands/manual-definition.d.ts +31 -0
- package/dist/cli/commands/manual-definition.d.ts.map +1 -0
- package/dist/cli/commands/manual-definition.js +64 -0
- package/dist/cli/commands/manual-definition.js.map +1 -0
- package/dist/cli/controller-operation-commands.d.ts.map +1 -1
- package/dist/cli/controller-operation-commands.js +2 -1
- package/dist/cli/controller-operation-commands.js.map +1 -1
- package/dist/cli/init-command.d.ts.map +1 -1
- package/dist/cli/init-command.js +83 -52
- package/dist/cli/init-command.js.map +1 -1
- package/dist/cli/manual-commands.d.ts +10 -0
- package/dist/cli/manual-commands.d.ts.map +1 -0
- package/dist/cli/manual-commands.js +25 -0
- package/dist/cli/manual-commands.js.map +1 -0
- package/dist/cli/manual-templates.d.ts +12 -0
- package/dist/cli/manual-templates.d.ts.map +1 -0
- package/dist/cli/manual-templates.js +214 -0
- package/dist/cli/manual-templates.js.map +1 -0
- package/dist/config/json-config-file.d.ts +2 -0
- package/dist/config/json-config-file.d.ts.map +1 -0
- package/dist/config/json-config-file.js +32 -0
- package/dist/config/json-config-file.js.map +1 -0
- package/dist/config/system-config.d.ts +35 -4
- package/dist/config/system-config.d.ts.map +1 -1
- package/dist/config/system-config.js +127 -27
- package/dist/config/system-config.js.map +1 -1
- package/dist/controller/active-task-registry.d.ts +4 -1
- package/dist/controller/active-task-registry.d.ts.map +1 -1
- package/dist/controller/active-task-registry.js +19 -2
- package/dist/controller/active-task-registry.js.map +1 -1
- package/dist/controller/controller-runtime-operations.d.ts +15 -31
- package/dist/controller/controller-runtime-operations.d.ts.map +1 -1
- package/dist/controller/controller-runtime-operations.js +17 -92
- package/dist/controller/controller-runtime-operations.js.map +1 -1
- package/dist/controller/controller-runtime-types.d.ts +17 -12
- package/dist/controller/controller-runtime-types.d.ts.map +1 -1
- package/dist/controller/controller-runtime.d.ts.map +1 -1
- package/dist/controller/controller-runtime.js +126 -250
- package/dist/controller/controller-runtime.js.map +1 -1
- package/dist/controller/git-pull-default-operations.js +1 -1
- package/dist/controller/git-pull-default-operations.js.map +1 -1
- package/dist/controller/git-push-operations.js +1 -1
- package/dist/controller/git-push-operations.js.map +1 -1
- package/dist/controller/http/controller-http-route-support.d.ts +2 -2
- package/dist/controller/http/controller-http-route-support.d.ts.map +1 -1
- package/dist/controller/http/controller-http-route-support.js.map +1 -1
- package/dist/controller/http/controller-http-routes.d.ts +8 -4
- package/dist/controller/http/controller-http-routes.d.ts.map +1 -1
- package/dist/controller/http/controller-http-routes.js +102 -26
- package/dist/controller/http/controller-http-routes.js.map +1 -1
- package/dist/controller/http/controller-request-schemas.d.ts +2 -2
- package/dist/controller/http/controller-request-schemas.d.ts.map +1 -1
- package/dist/controller/http/controller-request-schemas.js +2 -2
- package/dist/controller/http/controller-request-schemas.js.map +1 -1
- package/dist/controller/http/controller-zone-operation-routes.d.ts.map +1 -1
- package/dist/controller/http/controller-zone-operation-routes.js +130 -11
- package/dist/controller/http/controller-zone-operation-routes.js.map +1 -1
- package/dist/controller/leases/agent-sandbox-seeding.d.ts +61 -0
- package/dist/controller/leases/agent-sandbox-seeding.d.ts.map +1 -0
- package/dist/controller/leases/agent-sandbox-seeding.js +186 -0
- package/dist/controller/leases/agent-sandbox-seeding.js.map +1 -0
- package/dist/controller/leases/idle-reaper.d.ts +4 -1
- package/dist/controller/leases/idle-reaper.d.ts.map +1 -1
- package/dist/controller/leases/idle-reaper.js +19 -8
- package/dist/controller/leases/idle-reaper.js.map +1 -1
- package/dist/controller/leases/lease-idle-policy.d.ts +12 -0
- package/dist/controller/leases/lease-idle-policy.d.ts.map +1 -0
- package/dist/controller/leases/lease-idle-policy.js +28 -0
- package/dist/controller/leases/lease-idle-policy.js.map +1 -0
- package/dist/controller/leases/lease-manager.d.ts +6 -6
- package/dist/controller/leases/lease-manager.d.ts.map +1 -1
- package/dist/controller/leases/lease-manager.js +23 -6
- package/dist/controller/leases/lease-manager.js.map +1 -1
- package/dist/controller/leases/lease-scope.d.ts +12 -0
- package/dist/controller/leases/lease-scope.d.ts.map +1 -0
- package/dist/controller/leases/lease-scope.js +19 -0
- package/dist/controller/leases/lease-scope.js.map +1 -0
- package/dist/controller/leases/lease-work-mount-paths.d.ts +17 -0
- package/dist/controller/leases/lease-work-mount-paths.d.ts.map +1 -0
- package/dist/controller/leases/lease-work-mount-paths.js +120 -0
- package/dist/controller/leases/lease-work-mount-paths.js.map +1 -0
- package/dist/controller/worker-task-runner.d.ts.map +1 -1
- package/dist/controller/worker-task-runner.js +32 -10
- package/dist/controller/worker-task-runner.js.map +1 -1
- package/dist/controller/zone-runtimes/openclaw-zone-runtime.d.ts +30 -0
- package/dist/controller/zone-runtimes/openclaw-zone-runtime.d.ts.map +1 -0
- package/dist/controller/zone-runtimes/openclaw-zone-runtime.js +110 -0
- package/dist/controller/zone-runtimes/openclaw-zone-runtime.js.map +1 -0
- package/dist/controller/zone-runtimes/worker-zone-runtime.d.ts +33 -0
- package/dist/controller/zone-runtimes/worker-zone-runtime.d.ts.map +1 -0
- package/dist/controller/zone-runtimes/worker-zone-runtime.js +224 -0
- package/dist/controller/zone-runtimes/worker-zone-runtime.js.map +1 -0
- package/dist/controller/zone-runtimes/zone-runtime-errors.d.ts +51 -0
- package/dist/controller/zone-runtimes/zone-runtime-errors.d.ts.map +1 -0
- package/dist/controller/zone-runtimes/zone-runtime-errors.js +94 -0
- package/dist/controller/zone-runtimes/zone-runtime-errors.js.map +1 -0
- package/dist/controller/zone-runtimes/zone-runtime-registry.d.ts +26 -0
- package/dist/controller/zone-runtimes/zone-runtime-registry.d.ts.map +1 -0
- package/dist/controller/zone-runtimes/zone-runtime-registry.js +84 -0
- package/dist/controller/zone-runtimes/zone-runtime-registry.js.map +1 -0
- package/dist/controller/zone-runtimes/zone-runtime-types.d.ts +89 -0
- package/dist/controller/zone-runtimes/zone-runtime-types.d.ts.map +1 -0
- package/dist/controller/zone-runtimes/zone-runtime-types.js +2 -0
- package/dist/controller/zone-runtimes/zone-runtime-types.js.map +1 -0
- package/dist/gateway/gateway-image-builder.d.ts.map +1 -1
- package/dist/gateway/gateway-image-builder.js +2 -2
- package/dist/gateway/gateway-image-builder.js.map +1 -1
- package/dist/gateway/gateway-zone-support.d.ts.map +1 -1
- package/dist/gateway/gateway-zone-support.js +5 -2
- package/dist/gateway/gateway-zone-support.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/operations/config-validation.d.ts.map +1 -1
- package/dist/operations/config-validation.js +48 -2
- package/dist/operations/config-validation.js.map +1 -1
- package/dist/operations/controller-status.d.ts +13 -8
- package/dist/operations/controller-status.d.ts.map +1 -1
- package/dist/operations/controller-status.js +13 -10
- package/dist/operations/controller-status.js.map +1 -1
- package/dist/operations/doctor.d.ts.map +1 -1
- package/dist/operations/doctor.js +64 -6
- package/dist/operations/doctor.js.map +1 -1
- package/dist/tool-vm/tool-vm-lifecycle.d.ts +5 -5
- package/dist/tool-vm/tool-vm-lifecycle.d.ts.map +1 -1
- package/dist/tool-vm/tool-vm-lifecycle.js +12 -12
- package/dist/tool-vm/tool-vm-lifecycle.js.map +1 -1
- package/package.json +8 -7
- package/dist/controller/leases/lease-workspace-paths.d.ts +0 -14
- package/dist/controller/leases/lease-workspace-paths.d.ts.map +0 -1
- package/dist/controller/leases/lease-workspace-paths.js +0 -104
- package/dist/controller/leases/lease-workspace-paths.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lease-idle-policy.js","sourceRoot":"","sources":["../../../src/controller/leases/lease-idle-policy.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,eAAe,GAAG;IAC9B,OAAO;IACP,SAAS;IACT,SAAS;IACT,SAAS;IACT,QAAQ;IACR,WAAW;CACF,CAAC;AAUX,SAAS,aAAa,CAAC,QAAgB;IACtC,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC7E,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;AAC/F,CAAC;AAED,SAAS,gBAAgB,CAAC,SAAiB;IAC1C,OAAO,eAAe,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC;AACrE,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,OAGhC;IACA,KAAK,MAAM,MAAM,IAAI,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QACtD,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QACjD,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACvB,OAAO,GAAG,CAAC;QACZ,CAAC;IACF,CAAC;IACD,MAAM,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACvD,OAAO,gBAAgB,CAAC,SAAS,CAAC;QACjC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC;QACrE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC;AAC7B,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { ManagedVm } from '@agent-vm/gondolin-adapter';
|
|
2
2
|
import type { TcpPool } from './tcp-pool.js';
|
|
3
|
-
export interface
|
|
3
|
+
export interface ToolVmProfile {
|
|
4
4
|
readonly cpus: number;
|
|
5
5
|
readonly imageProfile: string;
|
|
6
6
|
readonly memory: string;
|
|
@@ -21,7 +21,7 @@ export interface Lease {
|
|
|
21
21
|
};
|
|
22
22
|
readonly tcpSlot: number;
|
|
23
23
|
readonly vm: ManagedVm;
|
|
24
|
-
readonly
|
|
24
|
+
readonly hostWorkMountDir: string;
|
|
25
25
|
readonly zoneId: string;
|
|
26
26
|
}
|
|
27
27
|
export interface LeaseRenewal {
|
|
@@ -36,10 +36,10 @@ export interface LeaseSnapshot {
|
|
|
36
36
|
export interface LeaseManager {
|
|
37
37
|
createLease(options: {
|
|
38
38
|
readonly agentWorkspaceDir: string;
|
|
39
|
-
readonly profile:
|
|
39
|
+
readonly profile: ToolVmProfile;
|
|
40
40
|
readonly profileId: string;
|
|
41
41
|
readonly scopeKey: string;
|
|
42
|
-
readonly
|
|
42
|
+
readonly hostWorkMountDir: string;
|
|
43
43
|
readonly zoneId: string;
|
|
44
44
|
}): Promise<Lease>;
|
|
45
45
|
keepLeaseAlive(leaseId: string): LeaseRenewal | undefined;
|
|
@@ -54,11 +54,11 @@ export declare class LeaseScopeConflictError extends Error {
|
|
|
54
54
|
export declare function createLeaseManager(options: {
|
|
55
55
|
readonly createManagedVm: (leaseOptions: {
|
|
56
56
|
readonly agentWorkspaceDir: string;
|
|
57
|
-
readonly profile:
|
|
57
|
+
readonly profile: ToolVmProfile;
|
|
58
58
|
readonly profileId: string;
|
|
59
59
|
readonly scopeKey: string;
|
|
60
60
|
readonly tcpSlot: number;
|
|
61
|
-
readonly
|
|
61
|
+
readonly hostWorkMountDir: string;
|
|
62
62
|
readonly zoneId: string;
|
|
63
63
|
}) => Promise<ManagedVm>;
|
|
64
64
|
readonly now: () => number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lease-manager.d.ts","sourceRoot":"","sources":["../../../src/controller/leases/lease-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAE5D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAE7C,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"lease-manager.d.ts","sourceRoot":"","sources":["../../../src/controller/leases/lease-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,17 @@
|
|
|
1
1
|
export class LeaseScopeConflictError extends Error {
|
|
2
2
|
}
|
|
3
|
+
function formatLeaseManagerError(error) {
|
|
4
|
+
return error instanceof Error ? error.message : String(error);
|
|
5
|
+
}
|
|
6
|
+
function writeLeaseManagerWarning(message) {
|
|
7
|
+
process.stderr.write(`[lease-manager] ${message}\n`);
|
|
8
|
+
}
|
|
3
9
|
function assertReusableScopeLease(existingLease, requestedLease) {
|
|
4
10
|
if (existingLease.profileId !== requestedLease.profileId) {
|
|
5
11
|
throw new LeaseScopeConflictError(`Tool VM lease scope conflict for zone '${requestedLease.zoneId}' scopeKey '${requestedLease.scopeKey}': existing profileId '${existingLease.profileId}' does not match requested profileId '${requestedLease.profileId}'.`);
|
|
6
12
|
}
|
|
7
|
-
if (existingLease.
|
|
8
|
-
throw new LeaseScopeConflictError(`Tool VM lease scope conflict for zone '${requestedLease.zoneId}' scopeKey '${requestedLease.scopeKey}': existing
|
|
13
|
+
if (existingLease.hostWorkMountDir !== requestedLease.hostWorkMountDir) {
|
|
14
|
+
throw new LeaseScopeConflictError(`Tool VM lease scope conflict for zone '${requestedLease.zoneId}' scopeKey '${requestedLease.scopeKey}': existing hostWorkMountDir '${existingLease.hostWorkMountDir}' does not match requested hostWorkMountDir '${requestedLease.hostWorkMountDir}'.`);
|
|
9
15
|
}
|
|
10
16
|
if (existingLease.agentWorkspaceDir !== requestedLease.agentWorkspaceDir) {
|
|
11
17
|
throw new LeaseScopeConflictError(`Tool VM lease scope conflict for zone '${requestedLease.zoneId}' scopeKey '${requestedLease.scopeKey}': existing agentWorkspaceDir '${existingLease.agentWorkspaceDir}' does not match requested agentWorkspaceDir '${requestedLease.agentWorkspaceDir}'.`);
|
|
@@ -16,7 +22,8 @@ async function isLeaseVmLive(lease) {
|
|
|
16
22
|
const result = await lease.vm.exec('true');
|
|
17
23
|
return result.exitCode === 0;
|
|
18
24
|
}
|
|
19
|
-
catch {
|
|
25
|
+
catch (error) {
|
|
26
|
+
writeLeaseManagerWarning(`liveness check failed for lease '${lease.id}' in zone '${lease.zoneId}': ${formatLeaseManagerError(error)}`);
|
|
20
27
|
return false;
|
|
21
28
|
}
|
|
22
29
|
}
|
|
@@ -73,7 +80,12 @@ export function createLeaseManager(options) {
|
|
|
73
80
|
async function evictLease(lease) {
|
|
74
81
|
deleteLease(lease);
|
|
75
82
|
options.tcpPool.release(lease.tcpSlot);
|
|
76
|
-
|
|
83
|
+
try {
|
|
84
|
+
await lease.vm.close();
|
|
85
|
+
}
|
|
86
|
+
catch (error) {
|
|
87
|
+
writeLeaseManagerWarning(`failed to close evicted lease '${lease.id}' in zone '${lease.zoneId}': ${formatLeaseManagerError(error)}`);
|
|
88
|
+
}
|
|
77
89
|
}
|
|
78
90
|
return {
|
|
79
91
|
async createLease(leaseOptions) {
|
|
@@ -110,14 +122,19 @@ export function createLeaseManager(options) {
|
|
|
110
122
|
sshAccess,
|
|
111
123
|
tcpSlot,
|
|
112
124
|
vm,
|
|
113
|
-
|
|
125
|
+
hostWorkMountDir: leaseOptions.hostWorkMountDir,
|
|
114
126
|
zoneId: leaseOptions.zoneId,
|
|
115
127
|
};
|
|
116
128
|
storeLease(lease);
|
|
117
129
|
return lease;
|
|
118
130
|
}
|
|
119
131
|
catch (error) {
|
|
120
|
-
|
|
132
|
+
try {
|
|
133
|
+
await vm.close();
|
|
134
|
+
}
|
|
135
|
+
catch (closeError) {
|
|
136
|
+
writeLeaseManagerWarning(`failed to close partially-created lease VM for zone '${leaseOptions.zoneId}' scope '${leaseOptions.scopeKey}': ${formatLeaseManagerError(closeError)}`);
|
|
137
|
+
}
|
|
121
138
|
throw error;
|
|
122
139
|
}
|
|
123
140
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lease-manager.js","sourceRoot":"","sources":["../../../src/controller/leases/lease-manager.ts"],"names":[],"mappings":"AA2DA,MAAM,OAAO,uBAAwB,SAAQ,KAAK;CAAG;AAErD,SAAS,wBAAwB,CAChC,aAAoB,EACpB,cAMC;IAED,IAAI,aAAa,CAAC,SAAS,KAAK,cAAc,CAAC,SAAS,EAAE,CAAC;QAC1D,MAAM,IAAI,uBAAuB,CAChC,0CAA0C,cAAc,CAAC,MAAM,eAAe,cAAc,CAAC,QAAQ,0BAA0B,aAAa,CAAC,SAAS,yCAAyC,cAAc,CAAC,SAAS,IAAI,CAC3N,CAAC;IACH,CAAC;IACD,IAAI,aAAa,CAAC,
|
|
1
|
+
{"version":3,"file":"lease-manager.js","sourceRoot":"","sources":["../../../src/controller/leases/lease-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export type AgentScopeParseResult = {
|
|
2
|
+
readonly agentId: string;
|
|
3
|
+
readonly kind: 'agent';
|
|
4
|
+
} | {
|
|
5
|
+
readonly kind: 'malformed-agent-scope';
|
|
6
|
+
readonly reason: string;
|
|
7
|
+
} | {
|
|
8
|
+
readonly kind: 'non-agent-scope';
|
|
9
|
+
};
|
|
10
|
+
export declare function parseAgentScopeKey(scopeKey: string): AgentScopeParseResult;
|
|
11
|
+
export declare function parseAgentIdFromScopeKey(scopeKey: string): string | null;
|
|
12
|
+
//# sourceMappingURL=lease-scope.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lease-scope.d.ts","sourceRoot":"","sources":["../../../src/controller/leases/lease-scope.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,qBAAqB,GAC9B;IACA,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;CACtB,GACD;IACA,QAAQ,CAAC,IAAI,EAAE,uBAAuB,CAAC;IACvC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACvB,GACD;IACA,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;CAChC,CAAC;AAEL,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,qBAAqB,CAY1E;AAED,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAGxE"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
const agentIdPattern = /^[a-z0-9][a-z0-9._-]*$/u;
|
|
2
|
+
export function parseAgentScopeKey(scopeKey) {
|
|
3
|
+
const [scopeKind, agentId] = scopeKey.split(':');
|
|
4
|
+
if (scopeKind !== 'agent') {
|
|
5
|
+
return { kind: 'non-agent-scope' };
|
|
6
|
+
}
|
|
7
|
+
if (!agentId) {
|
|
8
|
+
return { kind: 'malformed-agent-scope', reason: 'missing agent id' };
|
|
9
|
+
}
|
|
10
|
+
if (!agentIdPattern.test(agentId)) {
|
|
11
|
+
return { kind: 'malformed-agent-scope', reason: `invalid agent id '${agentId}'` };
|
|
12
|
+
}
|
|
13
|
+
return { agentId, kind: 'agent' };
|
|
14
|
+
}
|
|
15
|
+
export function parseAgentIdFromScopeKey(scopeKey) {
|
|
16
|
+
const parsedScope = parseAgentScopeKey(scopeKey);
|
|
17
|
+
return parsedScope.kind === 'agent' ? parsedScope.agentId : null;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=lease-scope.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lease-scope.js","sourceRoot":"","sources":["../../../src/controller/leases/lease-scope.ts"],"names":[],"mappings":"AAAA,MAAM,cAAc,GAAG,yBAAyB,CAAC;AAejD,MAAM,UAAU,kBAAkB,CAAC,QAAgB;IAClD,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACjD,IAAI,SAAS,KAAK,OAAO,EAAE,CAAC;QAC3B,OAAO,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC;IACpC,CAAC;IACD,IAAI,CAAC,OAAO,EAAE,CAAC;QACd,OAAO,EAAE,IAAI,EAAE,uBAAuB,EAAE,MAAM,EAAE,kBAAkB,EAAE,CAAC;IACtE,CAAC;IACD,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QACnC,OAAO,EAAE,IAAI,EAAE,uBAAuB,EAAE,MAAM,EAAE,qBAAqB,OAAO,GAAG,EAAE,CAAC;IACnF,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;AACnC,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,QAAgB;IACxD,MAAM,WAAW,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IACjD,OAAO,WAAW,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;AAClE,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { SystemConfig } from '../../config/system-config.js';
|
|
2
|
+
type ZoneConfig = SystemConfig['zones'][number];
|
|
3
|
+
export type LeaseWorkMountValidationErrorKind = 'allowed-root-realpath-failed' | 'host-not-absolute' | 'host-outside-allowed-roots' | 'host-parent-traversal' | 'outside-allowed-roots' | 'realpath-failed' | 'root-mount-target' | 'unsupported-gateway' | 'work-mount-not-absolute' | 'work-mount-parent-traversal';
|
|
4
|
+
export declare class LeaseWorkMountValidationError extends Error {
|
|
5
|
+
readonly kind: LeaseWorkMountValidationErrorKind;
|
|
6
|
+
constructor(kind: LeaseWorkMountValidationErrorKind, message: string, options?: ErrorOptions);
|
|
7
|
+
}
|
|
8
|
+
export declare function validateResolvedToolWorkMountDir(options: {
|
|
9
|
+
readonly hostWorkMountDir: string;
|
|
10
|
+
readonly zone: ZoneConfig;
|
|
11
|
+
}): Promise<string>;
|
|
12
|
+
export declare function resolveLeaseWorkMountDir(options: {
|
|
13
|
+
readonly workMountDir: string;
|
|
14
|
+
readonly zone: ZoneConfig;
|
|
15
|
+
}): Promise<string>;
|
|
16
|
+
export {};
|
|
17
|
+
//# sourceMappingURL=lease-work-mount-paths.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lease-work-mount-paths.d.ts","sourceRoot":"","sources":["../../../src/controller/leases/lease-work-mount-paths.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAQlE,KAAK,UAAU,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC;AAEhD,MAAM,MAAM,iCAAiC,GAC1C,8BAA8B,GAC9B,mBAAmB,GACnB,4BAA4B,GAC5B,uBAAuB,GACvB,uBAAuB,GACvB,iBAAiB,GACjB,mBAAmB,GACnB,qBAAqB,GACrB,yBAAyB,GACzB,6BAA6B,CAAC;AAEjC,qBAAa,6BAA8B,SAAQ,KAAK;IACvD,QAAQ,CAAC,IAAI,EAAE,iCAAiC,CAAC;gBAErC,IAAI,EAAE,iCAAiC,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY;CAI5F;AA2FD,wBAAsB,gCAAgC,CAAC,OAAO,EAAE;IAC/D,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;CAC1B,GAAG,OAAO,CAAC,MAAM,CAAC,CAoBlB;AAED,wBAAsB,wBAAwB,CAAC,OAAO,EAAE;IACvD,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;CAC1B,GAAG,OAAO,CAAC,MAAM,CAAC,CAoDlB"}
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
import { realpath } from 'node:fs/promises';
|
|
2
|
+
import path from 'node:path';
|
|
3
|
+
// These guest roots are mounted by the OpenClaw gateway image. Lease callers
|
|
4
|
+
// must speak in gateway paths; the controller owns translation to host paths.
|
|
5
|
+
const OPENCLAW_STATE_VM_ROOT = '/home/openclaw/.openclaw/state';
|
|
6
|
+
const OPENCLAW_STATE_SANDBOXES_VM_ROOT = `${OPENCLAW_STATE_VM_ROOT}/sandboxes`;
|
|
7
|
+
const OPENCLAW_ZONE_FILES_VM_ROOT = '/zone';
|
|
8
|
+
export class LeaseWorkMountValidationError extends Error {
|
|
9
|
+
kind;
|
|
10
|
+
constructor(kind, message, options) {
|
|
11
|
+
super(message, options);
|
|
12
|
+
this.kind = kind;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
function pathContainsParentTraversal(inputPath) {
|
|
16
|
+
return inputPath.split(/[\\/]+/u).includes('..');
|
|
17
|
+
}
|
|
18
|
+
function normalizeGuestWorkMountDir(workMountDir) {
|
|
19
|
+
const normalizedWorkMountDir = path.posix.normalize(workMountDir);
|
|
20
|
+
return normalizedWorkMountDir.length > 1
|
|
21
|
+
? normalizedWorkMountDir.replace(/\/+$/u, '')
|
|
22
|
+
: normalizedWorkMountDir;
|
|
23
|
+
}
|
|
24
|
+
function isPathWithin(candidatePath, rootPath) {
|
|
25
|
+
const relativePath = path.relative(rootPath, candidatePath);
|
|
26
|
+
return relativePath === '' || (!relativePath.startsWith('..') && !path.isAbsolute(relativePath));
|
|
27
|
+
}
|
|
28
|
+
function mapGuestPathToHostPath(options) {
|
|
29
|
+
if (!options.normalizedWorkMountDir.startsWith(`${options.guestRoot}/`)) {
|
|
30
|
+
return null;
|
|
31
|
+
}
|
|
32
|
+
const relativePath = path.posix.relative(options.guestRoot, options.normalizedWorkMountDir);
|
|
33
|
+
return path.join(options.hostRoot, relativePath);
|
|
34
|
+
}
|
|
35
|
+
async function realpathIfDirectory(directoryPath) {
|
|
36
|
+
try {
|
|
37
|
+
return await realpath(directoryPath);
|
|
38
|
+
}
|
|
39
|
+
catch (error) {
|
|
40
|
+
const code = error && typeof error === 'object' && 'code' in error ? String(error.code) : 'UNKNOWN';
|
|
41
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
42
|
+
throw new LeaseWorkMountValidationError('realpath-failed', `Lease work mount path '${directoryPath}' failed directory realpath check (${code}): ${message}`, { cause: error });
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
async function realpathAllowedRoot(directoryPath) {
|
|
46
|
+
try {
|
|
47
|
+
return await realpath(directoryPath);
|
|
48
|
+
}
|
|
49
|
+
catch (error) {
|
|
50
|
+
if (error && typeof error === 'object' && 'code' in error && error.code === 'ENOENT') {
|
|
51
|
+
return null;
|
|
52
|
+
}
|
|
53
|
+
const code = error && typeof error === 'object' && 'code' in error ? String(error.code) : 'UNKNOWN';
|
|
54
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
55
|
+
throw new LeaseWorkMountValidationError('allowed-root-realpath-failed', `Lease allowed work mount root '${directoryPath}' failed directory realpath check (${code}): ${message}`, { cause: error });
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
async function validateResolvedLeaseWorkMountDir(options) {
|
|
59
|
+
if (options.zone.gateway.type !== 'openclaw') {
|
|
60
|
+
throw new LeaseWorkMountValidationError('unsupported-gateway', `Zone '${options.zone.id}' does not support OpenClaw tool VM leases.`);
|
|
61
|
+
}
|
|
62
|
+
const hostSandboxRoot = path.join(options.zone.gateway.stateDir, 'sandboxes');
|
|
63
|
+
const [realCandidatePath, realSandboxRoot, realZoneFilesRoot] = await Promise.all([
|
|
64
|
+
realpathIfDirectory(options.hostWorkMountDir),
|
|
65
|
+
realpathAllowedRoot(hostSandboxRoot),
|
|
66
|
+
realpathAllowedRoot(options.zone.gateway.zoneFilesDir),
|
|
67
|
+
]);
|
|
68
|
+
const allowedRoots = [realSandboxRoot, realZoneFilesRoot].filter((root) => root !== null);
|
|
69
|
+
if (!allowedRoots.some((root) => isPathWithin(realCandidatePath, root))) {
|
|
70
|
+
throw new LeaseWorkMountValidationError('host-outside-allowed-roots', `Lease hostWorkMountDir '${options.hostWorkMountDir}' resolves outside allowed OpenClaw tool work mount roots for zone '${options.zone.id}'.`);
|
|
71
|
+
}
|
|
72
|
+
return realCandidatePath;
|
|
73
|
+
}
|
|
74
|
+
export async function validateResolvedToolWorkMountDir(options) {
|
|
75
|
+
if (options.zone.gateway.type !== 'openclaw') {
|
|
76
|
+
throw new LeaseWorkMountValidationError('unsupported-gateway', `Zone '${options.zone.id}' does not support OpenClaw tool VM leases.`);
|
|
77
|
+
}
|
|
78
|
+
if (!path.isAbsolute(options.hostWorkMountDir)) {
|
|
79
|
+
throw new LeaseWorkMountValidationError('host-not-absolute', `Lease hostWorkMountDir '${options.hostWorkMountDir}' must be absolute.`);
|
|
80
|
+
}
|
|
81
|
+
if (pathContainsParentTraversal(options.hostWorkMountDir)) {
|
|
82
|
+
throw new LeaseWorkMountValidationError('host-parent-traversal', `Lease hostWorkMountDir '${options.hostWorkMountDir}' must not contain '..' path segments.`);
|
|
83
|
+
}
|
|
84
|
+
return await validateResolvedLeaseWorkMountDir(options);
|
|
85
|
+
}
|
|
86
|
+
export async function resolveLeaseWorkMountDir(options) {
|
|
87
|
+
if (options.zone.gateway.type !== 'openclaw') {
|
|
88
|
+
throw new LeaseWorkMountValidationError('unsupported-gateway', `Zone '${options.zone.id}' does not support OpenClaw tool VM leases.`);
|
|
89
|
+
}
|
|
90
|
+
if (!path.isAbsolute(options.workMountDir)) {
|
|
91
|
+
throw new LeaseWorkMountValidationError('work-mount-not-absolute', `Lease workMountDir '${options.workMountDir}' must be absolute.`);
|
|
92
|
+
}
|
|
93
|
+
if (pathContainsParentTraversal(options.workMountDir)) {
|
|
94
|
+
throw new LeaseWorkMountValidationError('work-mount-parent-traversal', `Lease workMountDir '${options.workMountDir}' must not contain '..' path segments.`);
|
|
95
|
+
}
|
|
96
|
+
const normalizedWorkMountDir = normalizeGuestWorkMountDir(options.workMountDir);
|
|
97
|
+
if (normalizedWorkMountDir === OPENCLAW_STATE_SANDBOXES_VM_ROOT ||
|
|
98
|
+
normalizedWorkMountDir === OPENCLAW_ZONE_FILES_VM_ROOT) {
|
|
99
|
+
throw new LeaseWorkMountValidationError('root-mount-target', `Lease workMountDir '${options.workMountDir}' must name a child path under ${OPENCLAW_ZONE_FILES_VM_ROOT} or ${OPENCLAW_STATE_SANDBOXES_VM_ROOT}, not the root itself.`);
|
|
100
|
+
}
|
|
101
|
+
const hostSandboxRoot = path.join(options.zone.gateway.stateDir, 'sandboxes');
|
|
102
|
+
const hostWorkMountDir = mapGuestPathToHostPath({
|
|
103
|
+
guestRoot: OPENCLAW_STATE_SANDBOXES_VM_ROOT,
|
|
104
|
+
hostRoot: hostSandboxRoot,
|
|
105
|
+
normalizedWorkMountDir,
|
|
106
|
+
}) ??
|
|
107
|
+
mapGuestPathToHostPath({
|
|
108
|
+
guestRoot: OPENCLAW_ZONE_FILES_VM_ROOT,
|
|
109
|
+
hostRoot: options.zone.gateway.zoneFilesDir,
|
|
110
|
+
normalizedWorkMountDir,
|
|
111
|
+
});
|
|
112
|
+
if (!hostWorkMountDir) {
|
|
113
|
+
throw new LeaseWorkMountValidationError('outside-allowed-roots', `Lease workMountDir '${options.workMountDir}' must be under ${OPENCLAW_STATE_SANDBOXES_VM_ROOT} or ${OPENCLAW_ZONE_FILES_VM_ROOT}.`);
|
|
114
|
+
}
|
|
115
|
+
return await validateResolvedLeaseWorkMountDir({
|
|
116
|
+
hostWorkMountDir,
|
|
117
|
+
zone: options.zone,
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
//# sourceMappingURL=lease-work-mount-paths.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lease-work-mount-paths.js","sourceRoot":"","sources":["../../../src/controller/leases/lease-work-mount-paths.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker-task-runner.d.ts","sourceRoot":"","sources":["../../src/controller/worker-task-runner.ts"],"names":[],"mappings":"AAIA,OAAO,EAMN,KAAK,SAAS,EACd,KAAK,YAAY,EAEjB,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"worker-task-runner.d.ts","sourceRoot":"","sources":["../../src/controller/worker-task-runner.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,7 @@ import path from 'node:path';
|
|
|
4
4
|
import { appendEvent, computeTotalTaskTimeoutMs, resolveWorkerConfigInstructionReferences, workerConfigDraftSchema, workerConfigSchema, } from '@agent-vm/agent-vm-worker';
|
|
5
5
|
import { execa } from 'execa';
|
|
6
6
|
import { z } from 'zod';
|
|
7
|
+
import { loadJsonConfigFile } from '../config/json-config-file.js';
|
|
7
8
|
import { workerTaskResourcesSchema, workerTaskControllerRequestSchema, } from '../config/resource-contracts/index.js';
|
|
8
9
|
import { startGatewayZone } from '../gateway/gateway-zone-orchestrator.js';
|
|
9
10
|
import { hasRepoResourceDescriptionContract, loadRepoResourceDescriptionContract, } from '../resources/repo-resource-contract-loader.js';
|
|
@@ -41,25 +42,46 @@ const taskStatusResponseSchema = z
|
|
|
41
42
|
.passthrough();
|
|
42
43
|
const GIT_CLONE_TIMEOUT_MS = 120_000;
|
|
43
44
|
const GIT_METADATA_TIMEOUT_MS = 30_000;
|
|
45
|
+
async function loadJsonObjectFile(filePath, label) {
|
|
46
|
+
const parsed = await loadJsonConfigFile(filePath);
|
|
47
|
+
if (!isPlainObject(parsed)) {
|
|
48
|
+
throw new Error(`${label} must be a JSON object`);
|
|
49
|
+
}
|
|
50
|
+
return parsed;
|
|
51
|
+
}
|
|
52
|
+
function isFileNotFoundError(error) {
|
|
53
|
+
return Boolean(error && typeof error === 'object' && 'code' in error && error.code === 'ENOENT');
|
|
54
|
+
}
|
|
44
55
|
async function readJsonObjectFile(filePath, options) {
|
|
45
56
|
try {
|
|
46
|
-
|
|
47
|
-
const parsed = JSON.parse(raw);
|
|
48
|
-
if (!isPlainObject(parsed)) {
|
|
49
|
-
throw new Error(`${options.label} must be a JSON object`);
|
|
50
|
-
}
|
|
51
|
-
return parsed;
|
|
57
|
+
return await loadJsonObjectFile(filePath, options.label);
|
|
52
58
|
}
|
|
53
59
|
catch (error) {
|
|
54
|
-
if (error
|
|
60
|
+
if (!isFileNotFoundError(error)) {
|
|
61
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
62
|
+
throw new Error(`Invalid ${options.label}: ${message}`, { cause: error });
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
if (path.basename(filePath) === 'config.json') {
|
|
66
|
+
const jsoncFilePath = path.join(path.dirname(filePath), 'config.jsonc');
|
|
67
|
+
try {
|
|
68
|
+
return await loadJsonObjectFile(jsoncFilePath, options.label);
|
|
69
|
+
}
|
|
70
|
+
catch (jsoncError) {
|
|
71
|
+
if (!isFileNotFoundError(jsoncError)) {
|
|
72
|
+
const message = jsoncError instanceof Error ? jsoncError.message : String(jsoncError);
|
|
73
|
+
throw new Error(`Invalid ${options.label}: ${message}`, { cause: jsoncError });
|
|
74
|
+
}
|
|
55
75
|
if (options.missingValue !== undefined) {
|
|
56
76
|
return options.missingValue;
|
|
57
77
|
}
|
|
58
|
-
throw new Error(`${options.label} file not found at ${filePath}`, { cause:
|
|
78
|
+
throw new Error(`${options.label} file not found at ${filePath}`, { cause: jsoncError });
|
|
59
79
|
}
|
|
60
|
-
const message = error instanceof Error ? error.message : String(error);
|
|
61
|
-
throw new Error(`Invalid ${options.label}: ${message}`, { cause: error });
|
|
62
80
|
}
|
|
81
|
+
if (options.missingValue !== undefined) {
|
|
82
|
+
return options.missingValue;
|
|
83
|
+
}
|
|
84
|
+
throw new Error(`${options.label} file not found at ${filePath}`);
|
|
63
85
|
}
|
|
64
86
|
async function materializeRepoAgentVmDirectory(options) {
|
|
65
87
|
await fs.mkdir(options.metadataDir, { recursive: true });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker-task-runner.js","sourceRoot":"","sources":["../../src/controller/worker-task-runner.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"worker-task-runner.js","sourceRoot":"","sources":["../../src/controller/worker-task-runner.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { SecretResolver } from '@agent-vm/gondolin-adapter';
|
|
2
|
+
import type { LoadedSystemConfig } from '../../config/system-config.js';
|
|
3
|
+
import type { GatewayZoneStartResult } from '../../gateway/gateway-zone-support.js';
|
|
4
|
+
import { runControllerCredentialsRefresh as runControllerCredentialsRefreshDefault } from '../../operations/credentials-refresh.js';
|
|
5
|
+
import { runControllerDestroy as runControllerDestroyDefault } from '../../operations/destroy-zone.js';
|
|
6
|
+
import { runControllerUpgrade as runControllerUpgradeDefault } from '../../operations/upgrade-zone.js';
|
|
7
|
+
import { runControllerLogs as runControllerLogsDefault } from '../../operations/zone-logs.js';
|
|
8
|
+
import type { LeaseManager } from '../leases/lease-manager.js';
|
|
9
|
+
import type { ControllerZoneConfig, OpenClawZoneRuntime } from './zone-runtime-types.js';
|
|
10
|
+
type OpenClawZoneConfig = ControllerZoneConfig & {
|
|
11
|
+
readonly gateway: Extract<ControllerZoneConfig['gateway'], {
|
|
12
|
+
readonly type: 'openclaw';
|
|
13
|
+
}>;
|
|
14
|
+
};
|
|
15
|
+
export interface CreateOpenClawZoneRuntimeOptions {
|
|
16
|
+
readonly deleteGatewayRuntimeRecord?: (stateDirectory: string) => Promise<void>;
|
|
17
|
+
readonly leaseManager: Pick<LeaseManager, 'listLeases' | 'releaseLease'>;
|
|
18
|
+
readonly now: () => number;
|
|
19
|
+
readonly restartGatewayZone?: (zoneId: string) => Promise<GatewayZoneStartResult>;
|
|
20
|
+
readonly runControllerCredentialsRefresh?: typeof runControllerCredentialsRefreshDefault;
|
|
21
|
+
readonly runControllerDestroy?: typeof runControllerDestroyDefault;
|
|
22
|
+
readonly runControllerLogs?: typeof runControllerLogsDefault;
|
|
23
|
+
readonly runControllerUpgrade?: typeof runControllerUpgradeDefault;
|
|
24
|
+
readonly secretResolver: SecretResolver;
|
|
25
|
+
readonly systemConfig: LoadedSystemConfig;
|
|
26
|
+
readonly zone: OpenClawZoneConfig;
|
|
27
|
+
}
|
|
28
|
+
export declare function createOpenClawZoneRuntime(options: CreateOpenClawZoneRuntimeOptions): OpenClawZoneRuntime;
|
|
29
|
+
export {};
|
|
30
|
+
//# sourceMappingURL=openclaw-zone-runtime.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openclaw-zone-runtime.d.ts","sourceRoot":"","sources":["../../../src/controller/zone-runtimes/openclaw-zone-runtime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAEjE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAIxE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AACpF,OAAO,EAAE,+BAA+B,IAAI,sCAAsC,EAAE,MAAM,yCAAyC,CAAC;AACpI,OAAO,EAAE,oBAAoB,IAAI,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AACvG,OAAO,EAAE,oBAAoB,IAAI,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AACvG,OAAO,EAAE,iBAAiB,IAAI,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAC9F,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAK/D,OAAO,KAAK,EACX,oBAAoB,EAEpB,mBAAmB,EACnB,MAAM,yBAAyB,CAAC;AAEjC,KAAK,kBAAkB,GAAG,oBAAoB,GAAG;IAChD,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,oBAAoB,CAAC,SAAS,CAAC,EAAE;QAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAA;KAAE,CAAC,CAAC;CAC1F,CAAC;AAEF,MAAM,WAAW,gCAAgC;IAChD,QAAQ,CAAC,0BAA0B,CAAC,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAChF,QAAQ,CAAC,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,YAAY,GAAG,cAAc,CAAC,CAAC;IACzE,QAAQ,CAAC,GAAG,EAAE,MAAM,MAAM,CAAC;IAC3B,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAClF,QAAQ,CAAC,+BAA+B,CAAC,EAAE,OAAO,sCAAsC,CAAC;IACzF,QAAQ,CAAC,oBAAoB,CAAC,EAAE,OAAO,2BAA2B,CAAC;IACnE,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,wBAAwB,CAAC;IAC7D,QAAQ,CAAC,oBAAoB,CAAC,EAAE,OAAO,2BAA2B,CAAC;IACnE,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IACxC,QAAQ,CAAC,YAAY,EAAE,kBAAkB,CAAC;IAC1C,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAC;CAClC;AAMD,wBAAgB,yBAAyB,CACxC,OAAO,EAAE,gCAAgC,GACvC,mBAAmB,CA+HrB"}
|