@calltelemetry/ct-lab-mcp 0.8.70 → 0.8.71

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 (44) hide show
  1. package/README.md +3 -0
  2. package/dist/src/proxmox/mock.d.ts.map +1 -1
  3. package/dist/src/proxmox/mock.js +28 -0
  4. package/dist/src/proxmox/mock.js.map +1 -1
  5. package/dist/src/server.d.ts.map +1 -1
  6. package/dist/src/server.js +1 -0
  7. package/dist/src/server.js.map +1 -1
  8. package/dist/src/tools/claimed-import-qcow.d.ts +1 -1
  9. package/dist/src/tools/claimed-import-qcow.d.ts.map +1 -1
  10. package/dist/src/tools/claimed-import-qcow.js +11 -1
  11. package/dist/src/tools/claimed-import-qcow.js.map +1 -1
  12. package/dist/src/tools/cube-provision.d.ts +11 -0
  13. package/dist/src/tools/cube-provision.d.ts.map +1 -1
  14. package/dist/src/tools/cube-provision.js +12 -3
  15. package/dist/src/tools/cube-provision.js.map +1 -1
  16. package/dist/src/tools/host-migrate-vm.d.ts.map +1 -1
  17. package/dist/src/tools/host-migrate-vm.js +10 -1
  18. package/dist/src/tools/host-migrate-vm.js.map +1 -1
  19. package/dist/src/tools/import-qcow.d.ts +1 -1
  20. package/dist/src/tools/import-qcow.d.ts.map +1 -1
  21. package/dist/src/tools/import-qcow.js +13 -3
  22. package/dist/src/tools/import-qcow.js.map +1 -1
  23. package/dist/src/tools/index.js +4 -4
  24. package/dist/src/tools/index.js.map +1 -1
  25. package/dist/src/tools/provision-tools.d.ts.map +1 -1
  26. package/dist/src/tools/provision-tools.js +36 -2
  27. package/dist/src/tools/provision-tools.js.map +1 -1
  28. package/dist/src/tools/quick-provision.d.ts +2 -0
  29. package/dist/src/tools/quick-provision.d.ts.map +1 -1
  30. package/dist/src/tools/quick-provision.js +15 -1
  31. package/dist/src/tools/quick-provision.js.map +1 -1
  32. package/dist/src/tools/sandbox-tools.d.ts.map +1 -1
  33. package/dist/src/tools/sandbox-tools.js +11 -1
  34. package/dist/src/tools/sandbox-tools.js.map +1 -1
  35. package/dist/src/tools/storage-tools.d.ts +19 -0
  36. package/dist/src/tools/storage-tools.d.ts.map +1 -1
  37. package/dist/src/tools/storage-tools.js +15 -0
  38. package/dist/src/tools/storage-tools.js.map +1 -1
  39. package/dist/src/tools/thin-storage-policy.d.ts +99 -0
  40. package/dist/src/tools/thin-storage-policy.d.ts.map +1 -0
  41. package/dist/src/tools/thin-storage-policy.js +236 -0
  42. package/dist/src/tools/thin-storage-policy.js.map +1 -0
  43. package/dist/src/tools/vm-action.d.ts +4 -4
  44. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"quick-provision.d.ts","sourceRoot":"","sources":["../../../src/tools/quick-provision.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,cAAc,EAAoE,MAAM,iBAAiB,CAAC;AAQnH,OAAO,EAAE,YAAY,EAA4C,MAAM,oBAAoB,CAAC;AAE5F,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4D3C,CAAC;AAEF,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAA4C,CAAC;AAC1F,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gCAAgC,CAAC,CAAC;AAE1F,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,0BAA0B,GAAG,MAAM,EAAE,CAyBlF;AAED,wBAAsB,2BAA2B,CAC/C,OAAO,EAAE,OAAO,EAChB,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,YAAY,CAAA;CAAO,GACtC,OAAO,CAAC,cAAc,CAAC,CAiEzB"}
1
+ {"version":3,"file":"quick-provision.d.ts","sourceRoot":"","sources":["../../../src/tools/quick-provision.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,cAAc,EAAoE,MAAM,iBAAiB,CAAC;AAQnH,OAAO,EAAE,YAAY,EAA4C,MAAM,oBAAoB,CAAC;AAC5F,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAGjE,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgE3C,CAAC;AAEF,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAA4C,CAAC;AAC1F,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gCAAgC,CAAC,CAAC;AAE1F,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,0BAA0B,GAAG,MAAM,EAAE,CAyBlF;AAED,wBAAsB,2BAA2B,CAC/C,OAAO,EAAE,OAAO,EAChB,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,YAAY,CAAC;IAAC,eAAe,CAAC,EAAE,kBAAkB,CAAA;CAAO,GAC5E,OAAO,CAAC,cAAc,CAAC,CA0EzB"}
@@ -8,6 +8,7 @@ import { z } from "zod";
8
8
  import { ProxmoxErrorCode, createToolErrorResult, createToolSuccessResult } from "../types/mcp.js";
9
9
  import { installVersionForProvision, isShaChannelVersion, normalizeWebImage, reservedIdentityError, shaChannelProvisionError, } from "./sha-channel.js";
10
10
  import { defaultScriptRunner, resolvePluginScript } from "./script-runner.js";
11
+ import { guardCanonicalThinStorage } from "./thin-storage-policy.js";
11
12
  export const ProxmoxQuickProvisionInputShape = {
12
13
  linearIssue: z
13
14
  .string()
@@ -54,7 +55,11 @@ export const ProxmoxQuickProvisionInputShape = {
54
55
  .min(1)
55
56
  .optional()
56
57
  .describe("Optional deterministic seed for tests; production auto-placement uses system randomness."),
57
- storage: z.string().min(1).optional(),
58
+ storage: z
59
+ .string()
60
+ .min(1)
61
+ .optional()
62
+ .describe("VM-disk storage pool. Thin-only: must be lvmthin (default and recommended: 'local-lvm'); thick or undeterminable storage is refused with THICK_STORAGE_REFUSED before any change. Omitted means the canonical default pool, which is still checked."),
58
63
  importStorage: z.string().min(1).optional(),
59
64
  network: z.string().min(1).optional(),
60
65
  vlanTag: z.number().int().min(1).max(4094).optional(),
@@ -128,6 +133,15 @@ export async function handleProxmoxQuickProvision(rawArgs, options = {}) {
128
133
  if (args.apply && (args.vmid === undefined || !args.operationId || args.hostAssetId === "auto")) {
129
134
  return createToolErrorResult(ProxmoxErrorCode.VALIDATION_ERROR, "apply requires the reviewed plan's explicit hostAssetId, vmid, and operationId. Plan first without apply.");
130
135
  }
136
+ // Thin-only (REL-1588): refuse thick/undeterminable storage, for plan and apply, before
137
+ // the script runs. Fails closed when the bridge cannot prove the storage type.
138
+ const thinRefusal = await guardCanonicalThinStorage(options.canonicalBridge, {
139
+ operation: "proxmox_quick_provision",
140
+ hostAssetId: args.hostAssetId,
141
+ storage: args.storage,
142
+ });
143
+ if (thinRefusal)
144
+ return thinRefusal;
131
145
  let scriptPath;
132
146
  try {
133
147
  scriptPath = options.runner
@@ -1 +1 @@
1
- {"version":3,"file":"quick-provision.js","sourceRoot":"","sources":["../../../src/tools/quick-provision.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"quick-provision.js","sourceRoot":"","sources":["../../../src/tools/quick-provision.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"sandbox-tools.d.ts","sourceRoot":"","sources":["../../../src/tools/sandbox-tools.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,cAAc,EAA2C,MAAM,iBAAiB,CAAC;AAE1F,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAM9C,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;CAwClC,CAAC;AAEF,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmBhC,CAAC;AAEL,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,eAAO,MAAM,sBAAsB;;;;;;;;;;;;CA6BlC,CAAC;AAEF,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkBhC,CAAC;AAEL,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAIxE,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,cAAc,CAAC,CA8DzB;AAED,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,cAAc,CAAC,CA8CzB"}
1
+ {"version":3,"file":"sandbox-tools.d.ts","sourceRoot":"","sources":["../../../src/tools/sandbox-tools.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,cAAc,EAA2C,MAAM,iBAAiB,CAAC;AAG1F,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAM9C,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;CAwClC,CAAC;AAEF,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmBhC,CAAC;AAEL,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,eAAO,MAAM,sBAAsB;;;;;;;;;;;;CA6BlC,CAAC;AAEF,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkBhC,CAAC;AAEL,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAIxE,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,cAAc,CAAC,CAsEzB;AAED,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,cAAc,CAAC,CA8CzB"}
@@ -6,6 +6,7 @@
6
6
  import { z } from "zod";
7
7
  import { ProxmoxErrorCode, createToolErrorResult } from "../types/mcp.js";
8
8
  import { canonicalMode, runCanonicalOperation } from "./canonical-guard.js";
9
+ import { guardCanonicalThinStorage } from "./thin-storage-policy.js";
9
10
  import { normalizeProxmoxHost, ProxmoxHostInputSchema, } from "./proxmox-host-policy.js";
10
11
  export const SandboxCloneInputShape = {
11
12
  name: z
@@ -33,7 +34,7 @@ export const SandboxCloneInputShape = {
33
34
  cores: z.number().int().positive().optional().default(2).describe("vCPU core count (default: 2)."),
34
35
  memoryMb: z.number().int().positive().optional().default(4096).describe("RAM in megabytes (default: 4096)."),
35
36
  diskGb: z.number().int().positive().optional().describe("Optional disk size assertion in GiB; must match the fresh protected template disk because sandbox clone does not resize disks. Omit to use the actual template size."),
36
- storage: z.string().min(1).optional().default("local-lvm").describe("Target storage pool (default: 'local-lvm')."),
37
+ storage: z.string().min(1).optional().default("local-lvm").describe("Target storage pool (default: 'local-lvm', the thin lvmthin pool). Thin-only: thick or undeterminable storage is refused with THICK_STORAGE_REFUSED before any change."),
37
38
  baselineSnapshot: z.string().min(1).optional().default("clean-state").describe("Baseline snapshot name (default: 'clean-state')."),
38
39
  ttlHours: z.number().int().positive().optional().default(4).describe("Slot lease TTL in hours (default: 4)."),
39
40
  sshKey: z.string().optional().describe("SSH public key string (ssh-ed25519 or ssh-rsa) to inject via cloud-init."),
@@ -130,6 +131,15 @@ export async function handleSandboxClone(rawArgs, context) {
130
131
  }
131
132
  const value = parsed.data;
132
133
  const normalizedHost = normalizeProxmoxHost(value.hostAssetId);
134
+ // Thin-only (REL-1588): the clone's disks land on `storage`. The schema default is
135
+ // 'local-lvm', the lvmthin pool on both Proxmox hosts.
136
+ const thinRefusal = await guardCanonicalThinStorage(context.canonicalBridge, {
137
+ operation: "sandbox_clone",
138
+ hostAssetId: normalizedHost,
139
+ storage: value.storage,
140
+ });
141
+ if (thinRefusal)
142
+ return thinRefusal;
133
143
  const args = [
134
144
  "sandbox",
135
145
  "clone",
@@ -1 +1 @@
1
- {"version":3,"file":"sandbox-tools.js","sourceRoot":"","sources":["../../../src/tools/sandbox-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sandbox-tools.js","sourceRoot":"","sources":["../../../src/tools/sandbox-tools.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,7 @@
9
9
  import { z } from "zod";
10
10
  import { ToolContext } from "./list-hosts.js";
11
11
  import { CallToolResult } from "../types/mcp.js";
12
+ import { StoragePoolInfo } from "../hypervisors/types.js";
12
13
  export declare const ListStorageInputShape: {
13
14
  host: z.ZodDefault<z.ZodOptional<z.ZodEnum<["proxmox-lab", "proxmox-mini", "proxmox-minis-lab", "esxi-intel-192-168-123-176", "all"]>>>;
14
15
  includeContent: z.ZodOptional<z.ZodBoolean>;
@@ -27,6 +28,23 @@ export declare const ListStorageInputSchema: z.ZodObject<{
27
28
  host?: "proxmox-lab" | "proxmox-mini" | "proxmox-minis-lab" | "all" | "esxi-intel-192-168-123-176" | undefined;
28
29
  includeContent?: boolean | undefined;
29
30
  }>;
31
+ type CanonicalStoragePool = Omit<StoragePoolInfo, "content" | "enabled" | "shared"> & {
32
+ content: string | null;
33
+ contentCapabilities: string[] | null;
34
+ enabled: boolean | null;
35
+ shared: boolean | null;
36
+ /** Present only when the capacity receipt carries Proxmox's `sparse` flag (zfspool). */
37
+ sparse?: boolean;
38
+ };
39
+ /**
40
+ * Parse one exact `host capacity` receipt into its storage pools without
41
+ * knowing the platform up front. Used by the thin-storage policy (REL-1588) to
42
+ * reuse the same read path and contract validation as list_storage.
43
+ */
44
+ export declare function parseCanonicalHostCapacity(stdout: string, hostAssetId: string): {
45
+ hypervisor: "proxmox" | "esxi";
46
+ pools: CanonicalStoragePool[];
47
+ } | undefined;
30
48
  export declare function handleListStorage(args: unknown, context: ToolContext): Promise<CallToolResult>;
31
49
  export declare const ListSnapshotsInputShape: {
32
50
  host: z.ZodDefault<z.ZodOptional<z.ZodEnum<["proxmox-lab", "proxmox-mini", "proxmox-minis-lab", "esxi-intel-192-168-123-176", "all"]>>>;
@@ -247,4 +265,5 @@ export declare const RollbackSnapshotInputSchema: z.ZodEffects<z.ZodObject<{
247
265
  vmIdOrName?: string | number | undefined;
248
266
  }>;
249
267
  export declare function handleRollbackSnapshot(args: unknown, context: ToolContext): Promise<CallToolResult>;
268
+ export {};
250
269
  //# sourceMappingURL=storage-tools.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"storage-tools.d.ts","sourceRoot":"","sources":["../../../src/tools/storage-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EACL,cAAc,EAIf,MAAM,iBAAiB,CAAC;AAWzB,eAAO,MAAM,qBAAqB;;;;CAcjC,CAAC;AAEF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;EAAkC,CAAC;AAqYtE,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,OAAO,EACb,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,cAAc,CAAC,CA8DzB;AA0CD,eAAO,MAAM,uBAAuB;;;CAUnC,CAAC;AAEF,eAAO,MAAM,wBAAwB;;;;;;;;;EAAoC,CAAC;AAE1E,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,OAAO,EACb,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,cAAc,CAAC,CAqDzB;AAMD,eAAO,MAAM,sBAAsB;;;;;;CAmBlC,CAAC;AAEF,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;EAAmC,CAAC;AAExE,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,OAAO,EACb,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,cAAc,CAAC,CAyEzB;AAMD,eAAO,MAAM,sBAAsB;;;;CAclC,CAAC;AAEF,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;EAKjC,CAAC;AAEJ,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,OAAO,EACb,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,cAAc,CAAC,CA2FzB;AAMD,eAAO,MAAM,kBAAkB;;;;;;CAsB9B,CAAC;AAEF,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAK7B,CAAC;AAEJ,wBAAsB,cAAc,CAClC,IAAI,EAAE,OAAO,EACb,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,cAAc,CAAC,CAwDzB;AAMD,eAAO,MAAM,oBAAoB;;;;;CAmBhC,CAAC;AAEF,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;EAK/B,CAAC;AAEJ,wBAAsB,gBAAgB,CACpC,IAAI,EAAE,OAAO,EACb,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,cAAc,CAAC,CAwDzB;AAMD,eAAO,MAAM,wBAAwB;;;;;;;CA0BpC,CAAC;AAEF,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAKnC,CAAC;AAEJ,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,OAAO,EACb,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,cAAc,CAAC,CAwDzB;AAMD,eAAO,MAAM,0BAA0B;;;;;CAiBtC,CAAC;AAEF,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;EAKrC,CAAC;AAEJ,wBAAsB,sBAAsB,CAC1C,IAAI,EAAE,OAAO,EACb,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,cAAc,CAAC,CAwDzB"}
1
+ {"version":3,"file":"storage-tools.d.ts","sourceRoot":"","sources":["../../../src/tools/storage-tools.ts"],"names":[],"mappings":"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"}
@@ -57,6 +57,7 @@ const ProxmoxStorageSchema = z.object({
57
57
  total: z.number().finite().nonnegative(),
58
58
  type: z.string().min(1),
59
59
  used: z.number().finite().nonnegative(),
60
+ sparse: BooleanishSchema.optional(),
60
61
  }).passthrough();
61
62
  const ProxmoxCapacitySchema = z.object({
62
63
  asset_id: z.string().min(1),
@@ -157,6 +158,7 @@ function parseCanonicalStoragePools(stdout, spec) {
157
158
  type: pool.type,
158
159
  usedBytes: pool.used,
159
160
  usedFraction: pool.total > 0 ? pool.used / pool.total : 0,
161
+ ...(pool.sparse !== undefined ? { sparse: booleanish(pool.sparse) } : {}),
160
162
  }));
161
163
  }
162
164
  const parsed = EsxiCapacitySchema.safeParse(capacity);
@@ -185,6 +187,19 @@ function parseCanonicalStoragePools(stdout, spec) {
185
187
  };
186
188
  });
187
189
  }
190
+ /**
191
+ * Parse one exact `host capacity` receipt into its storage pools without
192
+ * knowing the platform up front. Used by the thin-storage policy (REL-1588) to
193
+ * reuse the same read path and contract validation as list_storage.
194
+ */
195
+ export function parseCanonicalHostCapacity(stdout, hostAssetId) {
196
+ for (const hypervisor of ["proxmox", "esxi"]) {
197
+ const pools = parseCanonicalStoragePools(stdout, { hostAssetId, hypervisor });
198
+ if (pools)
199
+ return { hypervisor, pools };
200
+ }
201
+ return undefined;
202
+ }
188
203
  function classifyCanonicalStorageOutcome(outcome) {
189
204
  const { spec, result } = outcome;
190
205
  if (result.timedOut) {
@@ -1 +1 @@
1
- {"version":3,"file":"storage-tools.js","sourceRoot":"","sources":["../../../src/tools/storage-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"storage-tools.js","sourceRoot":"","sources":["../../../src/tools/storage-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAEL,gBAAgB,EAChB,qBAAqB,EACrB,uBAAuB,GACxB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAGrD,+EAA+E;AAC/E,kBAAkB;AAClB,+EAA+E;AAE/E,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,IAAI,EAAE,CAAC;SACJ,IAAI,CAAC,CAAC,aAAa,EAAE,cAAc,EAAE,mBAAmB,EAAE,4BAA4B,EAAE,KAAK,CAAC,CAAC;SAC/F,QAAQ,EAAE;SACV,OAAO,CAAC,KAAK,CAAC;SACd,QAAQ,CAAC,oCAAoC,CAAC;IACjD,cAAc,EAAE,CAAC;SACd,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,QAAQ,CAAC,iQAAiQ,CAAC;IAC9Q,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,4FAA4F,CAAC;CAC1G,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;AAuBtE,MAAM,uBAAuB,GAAwB;IACnD,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAE,SAAS,EAAE;IACrD,EAAE,WAAW,EAAE,mBAAmB,EAAE,UAAU,EAAE,SAAS,EAAE;IAC3D,EAAE,WAAW,EAAE,4BAA4B,EAAE,UAAU,EAAE,MAAM,EAAE;CAClE,CAAC;AAEF,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;IAC3B,kBAAkB,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;IACzC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IACrC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;CACnB,CAAC,CAAC,WAAW,EAAE,CAAC;AAEjB,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC;IAC/B,CAAC,CAAC,OAAO,EAAE;IACX,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;CAC/B,CAAC,CAAC;AAEH,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IACpC,MAAM,EAAE,gBAAgB;IACxB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE;IACxC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,OAAO,EAAE,gBAAgB;IACzB,MAAM,EAAE,gBAAgB;IACxB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE;IACxC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE;IACvC,MAAM,EAAE,gBAAgB,CAAC,QAAQ,EAAE;CACpC,CAAC,CAAC,WAAW,EAAE,CAAC;AAEjB,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3B,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;QACb,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;QAC3B,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,oBAAoB,CAAC;QACtC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;KAC/B,CAAC,CAAC,WAAW,EAAE;IAChB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;CAC/B,CAAC,CAAC,WAAW,EAAE,CAAC;AAEjB,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE;IACvB,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE;IACjD,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE;IACnD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CAC3E,CAAC,CAAC,WAAW,EAAE,CAAC;AAEjB,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3B,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;QACb,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC;QACxC,aAAa,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;QACpC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;KAC/B,CAAC,CAAC,WAAW,EAAE;IAChB,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;CAC5B,CAAC,CAAC,WAAW,EAAE,CAAC;AAEjB,SAAS,6BAA6B,CACpC,IAAoD;IAEpD,MAAM,WAAW,GAAG,IAAI,KAAK,cAAc,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,IAAI,CAAC;IACzE,OAAO,uBAAuB,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAC7C,WAAW,KAAK,KAAK,IAAI,IAAI,CAAC,WAAW,KAAK,WAAW,CAC1D,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,KAAa;IACpC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACjC,OAAO,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;YACnE,CAAC,CAAC,MAAiC;YACnC,CAAC,CAAC,SAAS,CAAC;IAChB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,SAAS,+BAA+B,CACtC,MAAc,EACd,MAAc,EACd,WAAmB;IAEnB,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;IACpC,IAAI,aAAa;QAAE,OAAO,aAAa,CAAC;IACxC,MAAM,OAAO,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;IACxC,MAAM,YAAY,GAAG,OAAO,OAAO,EAAE,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACtF,MAAM,YAAY,GAAG,OAAO,OAAO,EAAE,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACtF,OAAO,YAAY,IAAI,YAAY,IAAI,MAAM,CAAC,IAAI,EAAE;WAC/C,0CAA0C,WAAW,EAAE,CAAC;AAC/D,CAAC;AAED,SAAS,4BAA4B,CACnC,IAAuB,EACvB,MAA8D;IAE9D,IAAI,MAAM,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IACjC,MAAM,OAAO,GAAG,+BAA+B,CAC7C,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,MAAM,EACb,IAAI,CAAC,WAAW,CACjB,CAAC;IACF,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QAClC,OAAO,8CAA8C,CAAC,IAAI,CAAC,OAAO,CAAC;eAC9D,uEAAuE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC7F,CAAC;IACD,OAAO,CACL,8BAA8B,CAAC,IAAI,CAAC,OAAO,CAAC;WACzC,wDAAwD,CAAC,IAAI,CAAC,OAAO,CAAC,CAC1E,IAAI,gRAAgR,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AACtS,CAAC;AAED,SAAS,UAAU,CAAC,KAAuB;IACzC,OAAO,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,CAAC,CAAC;AACvC,CAAC;AAED,SAAS,0BAA0B,CACjC,MAAc,EACd,IAAuB;IAEvB,MAAM,OAAO,GAAG,qBAAqB,CAAC,SAAS,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC;IACzE,IACE,CAAC,OAAO,CAAC,OAAO;WACb,OAAO,CAAC,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,WAAW;WAC1C,OAAO,CAAC,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,UAAU;WACzC,OAAO,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,EAC/B,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,QAAQ,GAAG,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACtD,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QAClC,MAAM,MAAM,GAAG,qBAAqB,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACzD,IACE,CAAC,MAAM,CAAC,OAAO;eACZ,MAAM,CAAC,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,WAAW;eACzC,MAAM,CAAC,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,UAAU;eACxC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CACxC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAClD,EACD,CAAC;YACD,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAC7C,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC;YAC/B,cAAc,EAAE,IAAI,CAAC,KAAK;YAC1B,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,mBAAmB,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;YACzF,OAAO,EAAE,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC;YACjC,QAAQ,EAAE,IAAI,CAAC,WAAW;YAC1B,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC;YAC/B,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,UAAU,EAAE,IAAI,CAAC,KAAK;YACtB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,SAAS,EAAE,IAAI,CAAC,IAAI;YACpB,YAAY,EAAE,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACzD,GAAG,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC1E,CAAC,CAAC,CAAC;IACN,CAAC;IAED,MAAM,MAAM,GAAG,kBAAkB,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IACtD,IACE,CAAC,MAAM,CAAC,OAAO;WACZ,MAAM,CAAC,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,WAAW;WACzC,MAAM,CAAC,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,UAAU;WACxC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,cAAc,CAAC,EAC1F,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QAC9C,MAAM,SAAS,GAAG,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,gBAAgB,CAAC;QAC9D,OAAO;YACL,MAAM,EAAE,IAAI,CAAC,UAAU;YACvB,cAAc,EAAE,IAAI,CAAC,gBAAgB;YACrC,OAAO,EAAE,IAAI;YACb,mBAAmB,EAAE,IAAI;YACzB,OAAO,EAAE,IAAI;YACb,QAAQ,EAAE,IAAI,CAAC,WAAW;YAC1B,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,MAAM,EAAE,IAAI;YACZ,OAAO,EAAE,IAAI,CAAC,IAAI;YAClB,UAAU,EAAE,IAAI,CAAC,cAAc;YAC/B,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,SAAS;YACT,YAAY,EAAE,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;SAC5E,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAOD;;;;GAIG;AACH,MAAM,UAAU,0BAA0B,CACxC,MAAc,EACd,WAAmB;IAEnB,KAAK,MAAM,UAAU,IAAI,CAAC,SAAS,EAAE,MAAM,CAAU,EAAE,CAAC;QACtD,MAAM,KAAK,GAAG,0BAA0B,CACtC,MAAM,EACN,EAAE,WAAW,EAAE,UAAU,EAAuB,CACjD,CAAC;QACF,IAAI,KAAK;YAAE,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;IAC1C,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAOD,SAAS,+BAA+B,CACtC,OAAgC;IAEhC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IACjC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpB,OAAO;YACL,IAAI,EAAE,aAAa;YACnB,OAAO,EAAE;gBACP,IAAI,EAAE,uBAAuB;gBAC7B,aAAa,EAAE,IAAI,CAAC,WAAW;gBAC/B,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,OAAO,EAAE,+BAA+B,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,CAAC;aACzF;SACF,CAAC;IACJ,CAAC;IACD,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;QAC1B,MAAM,KAAK,GAAG,0BAA0B,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAC9D,OAAO,KAAK;YACV,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE;YAC5B,CAAC,CAAC;gBACE,IAAI,EAAE,OAAO;gBACb,QAAQ,EAAE,qBAAqB,CAC7B,4BAA4B,EAC5B,qEAAqE,IAAI,CAAC,WAAW,EAAE,EACvF,EAAE,SAAS,EAAE,cAAc,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CACtF;aACF,CAAC;IACR,CAAC;IAED,MAAM,cAAc,GAAG,qBAAqB,CAAC,SAAS,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IACvF,IACE,CAAC,MAAM,CAAC,QAAQ;WACb,CACD,CAAC,cAAc,CAAC,OAAO;eACpB,cAAc,CAAC,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,WAAW;eACjD,cAAc,CAAC,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,UAAU;eAChD,cAAc,CAAC,IAAI,CAAC,SAAS,KAAK,MAAM,CAAC,QAAQ,CACrD,EACD,CAAC;QACD,OAAO;YACL,IAAI,EAAE,OAAO;YACb,QAAQ,EAAE,qBAAqB,CAC7B,4BAA4B,EAC5B,wEAAwE,IAAI,CAAC,WAAW,EAAE,EAC1F,EAAE,SAAS,EAAE,cAAc,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CACtF;SACF,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAAG,+BAA+B,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IAChG,IAAI,4BAA4B,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC;QAC/C,OAAO;YACL,IAAI,EAAE,aAAa;YACnB,OAAO,EAAE;gBACP,IAAI,EAAE,uBAAuB;gBAC7B,aAAa,EAAE,IAAI,CAAC,WAAW;gBAC/B,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,OAAO;aACR;SACF,CAAC;IACJ,CAAC;IACD,OAAO;QACL,IAAI,EAAE,OAAO;QACb,QAAQ,EAAE,qBAAqB,CAC7B,4BAA4B,EAC5B,OAAO,EACP;YACE,SAAS,EAAE,cAAc;YACzB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/D,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC/C,CACF;KACF,CAAC;AACJ,CAAC;AAED,SAAS,8BAA8B,CACrC,IAA4C,EAC5C,QAA6B,EAC7B,QAAmC;IAEnC,MAAM,UAAU,GAAG,QAAQ,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;IACjE,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;IACrE,IAAI,KAAK,EAAE,IAAI,KAAK,OAAO;QAAE,OAAO,KAAK,CAAC,QAAQ,CAAC;IAEnD,MAAM,KAAK,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAC3C,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAChD,CAAC;IACF,MAAM,QAAQ,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAC9C,OAAO,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CACxD,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC;IAC/E,MAAM,cAAc,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAChE,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACnE,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;IACpC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC;QAC9D,OAAO,qBAAqB,CAC1B,4BAA4B,EAC5B,gEAAgE,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAC3F,EAAE,SAAS,EAAE,cAAc,EAAE,cAAc,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAC3E,CAAC;IACJ,CAAC;IAED,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO;QAChC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,OAAQ,CAAC,WAAW,EAAE,CAAC;QACpF,CAAC,CAAC,KAAK,CAAC;IACV,MAAM,OAAO,GAAG;QACd,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,cAAc;QACzB,cAAc;QACd,OAAO;QACP,UAAU,EAAE,aAAa,CAAC,MAAM;QAChC,KAAK,EAAE,aAAa;QACpB,QAAQ,EAAE,EAAE;QACZ,aAAa,EAAE;YACb,SAAS,EAAE,KAAK;YAChB,SAAS,EAAE,KAAK;YAChB,MAAM,EAAE,mFAAmF;SAC5F;QACD,QAAQ;QACR,QAAQ;KACT,CAAC;IACF,OAAO,uBAAuB,CAAC,mBAAmB,CAAC,aAAa,EAAE,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;AAClF,CAAC;AAED,KAAK,UAAU,0BAA0B,CACvC,IAA4C,EAC5C,OAAoB;IAEpB,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;QACxB,OAAO,qBAAqB,CAC1B,8BAA8B,EAC9B,iIAAiI,EACjI,EAAE,SAAS,EAAE,cAAc,EAAE,cAAc,EAAE,IAAI,EAAE,CACpD,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IACvC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,qBAAqB,CAC1B,iCAAiC,EACjC,uCAAuC,EACvC,EAAE,SAAS,EAAE,cAAc,EAAE,CAC9B,CAAC;IACJ,CAAC;IACD,MAAM,QAAQ,GAAG,6BAA6B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1D,IAAI,QAAQ,CAAC;IACb,IAAI,CAAC;QACH,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACzD,IAAI;YACJ,MAAM,EAAE,MAAM,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;SAC/E,CAAC,CAAC,CAAC,CAAC;IACP,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACxB,OAAO,qBAAqB,CAC1B,iCAAiC,EACjC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EACtD,EAAE,SAAS,EAAE,cAAc,EAAE,CAC9B,CAAC;IACJ,CAAC;IAED,OAAO,8BAA8B,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;AAClE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,IAAa,EACb,OAAoB;IAEpB,MAAM,MAAM,GAAG,sBAAsB,CAAC,SAAS,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;IAC5D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,qCAAqC,CAAC,CAAC;IACzG,CAAC;IAED,MAAM,WAAW,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;IAC3C,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,WAAW,CAAC;IAClE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,aAAa,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC;IAErD,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO,0BAA0B,CAAC,EAAE,GAAG,MAAM,CAAC,IAAI,EAAE,cAAc,EAAE,EAAE,OAAO,CAAC,CAAC;IACjF,CAAC;IAED,MAAM,OAAO,GAAG,OAAO,CAAC,iBAAiB,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;IAEjE,MAAM,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;QAC1C,IAAI,IAAI,KAAK,KAAK;YAAE,OAAO,IAAI,CAAC;QAChC,OAAO,CAAC,CAAC,QAAQ,KAAK,IAAI,IAAI,CAAC,IAAI,KAAK,cAAc,IAAI,CAAC,CAAC,QAAQ,KAAK,mBAAmB,CAAC,CAAC;IAChG,CAAC,CAAC,CAAC;IAEH,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChC,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,cAAc,EAAE,iDAAiD,IAAI,IAAI,CAAC,CAAC;IAC3H,CAAC;IAED,MAAM,QAAQ,GAAsB,EAAE,CAAC;IACvC,MAAM,WAAW,GAA2B,EAAE,CAAC;IAE/C,KAAK,MAAM,MAAM,IAAI,cAAc,EAAE,CAAC;QACpC,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;YACvB,IAAI,CAAC;gBACH,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,WAAW,EAAE,CAAC;gBACzC,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;oBACtB,IAAI,CAAC,aAAa,IAAI,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,aAAa,CAAC,WAAW,EAAE,EAAE,CAAC;wBAC9E,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;wBACjB,IAAI,cAAc,IAAI,MAAM,CAAC,kBAAkB,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;4BAC5D,IAAI,CAAC;gCACH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;gCAC5D,WAAW,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC;4BAChC,CAAC;4BAAC,OAAO,GAAQ,EAAE,CAAC;gCAClB,MAAM,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC,OAAO,OAAO,MAAM,CAAC,QAAQ,GAAG,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;4BAC3G,CAAC;wBACH,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;YAAC,OAAO,GAAQ,EAAE,CAAC;gBAClB,MAAM,CAAC,KAAK,CAAC,8BAA8B,MAAM,CAAC,QAAQ,GAAG,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;YAC9E,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,QAAQ,GAAG,mBAAmB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IAE5D,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;QAC3C,iBAAiB,EAAE;YACjB,OAAO,EAAE,IAAI;YACb,UAAU,EAAE,QAAQ,CAAC,MAAM;YAC3B,KAAK,EAAE,QAAQ;YACf,QAAQ,EAAE,WAAW;SACtB;KACF,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAC1B,KAAoD,EACpD,QAAgC;IAEhC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,qDAAqD,CAAC;IAC/D,CAAC;IAED,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QAC/B,MAAM,OAAO,GAAG,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACjE,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC/D,MAAM,OAAO,GAAG,CAAC,CAAC,CAAC,cAAc,GAAG,CAAC,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACrE,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,GAAG,GAAG,CAAC,CAAC;QAC7C,MAAM,UAAU,GAAG,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;QAE5D,OAAO,SAAS,CAAC,CAAC,QAAQ,cAAc,CAAC,CAAC,OAAO,YAAY,CAAC,CAAC,IAAI,QAAQ,OAAO,SAAS,MAAM,QAAQ,GAAG,UAAU,OAAO,WAAW,UAAU,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,QAAQ,CAAC,CAAC,OAAO,IAAI,aAAa,MAAM,CAAC;IACjO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEd,IAAI,cAAc,GAAG,EAAE,CAAC;IACxB,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,WAAW,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACrC,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAC/D,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC;YAC3D,OAAO,OAAO,CAAC,CAAC,QAAQ,UAAU,CAAC,CAAC,OAAO,YAAY,CAAC,CAAC,KAAK,UAAU,MAAM,WAAW,CAAC,CAAC,OAAO,QAAQ,OAAO,IAAI,CAAC;QACxH,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEd,cAAc,GAAG,sJAAsJ,WAAW,EAAE,CAAC;IACvL,CAAC;IAED,OAAO;;;;EAIP,QAAQ,GAAG,cAAc,EAAE,CAAC;AAC9B,CAAC;AAED,+EAA+E;AAC/E,oBAAoB;AACpB,+EAA+E;AAE/E,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,IAAI,EAAE,CAAC;SACJ,IAAI,CAAC,CAAC,aAAa,EAAE,cAAc,EAAE,mBAAmB,EAAE,4BAA4B,EAAE,KAAK,CAAC,CAAC;SAC/F,QAAQ,EAAE;SACV,OAAO,CAAC,KAAK,CAAC;SACd,QAAQ,CAAC,yBAAyB,CAAC;IACtC,IAAI,EAAE,CAAC;SACJ,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,kDAAkD,CAAC;CAChE,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC;AAE1E,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,IAAa,EACb,OAAoB;IAEpB,MAAM,MAAM,GAAG,wBAAwB,CAAC,SAAS,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;IAC9D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,uCAAuC,CAAC,CAAC;IAC3G,CAAC;IAED,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC;IACnC,MAAM,OAAO,GAAG,OAAO,CAAC,iBAAiB,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;IACjE,MAAM,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;QAC1C,IAAI,IAAI,KAAK,KAAK;YAAE,OAAO,IAAI,CAAC;QAChC,OAAO,CAAC,CAAC,QAAQ,KAAK,IAAI,IAAI,CAAC,IAAI,KAAK,cAAc,IAAI,CAAC,CAAC,QAAQ,KAAK,mBAAmB,CAAC,CAAC;IAChG,CAAC,CAAC,CAAC;IAEH,MAAM,YAAY,GAAqB,EAAE,CAAC;IAE1C,KAAK,MAAM,MAAM,IAAI,cAAc,EAAE,CAAC;QACpC,IAAI,MAAM,CAAC,aAAa,EAAE,CAAC;YACzB,IAAI,IAAI,EAAE,CAAC;gBACT,IAAI,CAAC;oBACH,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;oBAC/C,YAAY,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC;gBAC9B,CAAC;gBAAC,OAAO,GAAQ,EAAE,CAAC;oBAClB,MAAM,CAAC,IAAI,CAAC,kCAAkC,IAAI,OAAO,MAAM,CAAC,QAAQ,GAAG,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;gBAC5F,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnC,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;oBACrB,IAAI,CAAC;wBACH,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;wBAChD,YAAY,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC;oBAC9B,CAAC;oBAAC,MAAM,CAAC,CAAA,CAAC;gBACZ,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,IAAI,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QAClC,MAAM,OAAO,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAClE,OAAO,OAAO,CAAC,CAAC,QAAQ,UAAU,CAAC,CAAC,MAAM,SAAS,CAAC,CAAC,IAAI,aAAa,CAAC,CAAC,IAAI,UAAU,OAAO,MAAM,CAAC,CAAC,WAAW,IAAI,MAAM,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,WAAW,IAAI,CAAC;IAC/K,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEd,MAAM,QAAQ,GAAG,YAAY,CAAC,MAAM,KAAK,CAAC;QACxC,CAAC,CAAC,+EAA+E;QACjF,CAAC,CAAC,iCAAiC,YAAY,CAAC,MAAM,8GAA8G,IAAI,EAAE,CAAC;IAE7K,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;QAC3C,iBAAiB,EAAE;YACjB,OAAO,EAAE,IAAI;YACb,cAAc,EAAE,YAAY,CAAC,MAAM;YACnC,SAAS,EAAE,YAAY;SACxB;KACF,CAAC;AACJ,CAAC;AAED,+EAA+E;AAC/E,mBAAmB;AACnB,+EAA+E;AAE/E,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,IAAI,EAAE,CAAC;SACJ,IAAI,CAAC,CAAC,aAAa,EAAE,cAAc,EAAE,mBAAmB,EAAE,4BAA4B,CAAC,CAAC;SACxF,QAAQ,CAAC,8DAA8D,CAAC;IAC3E,MAAM,EAAE,CAAC;SACN,IAAI,CAAC,CAAC,eAAe,EAAE,iBAAiB,CAAC,CAAC;SAC1C,QAAQ,CAAC,gFAAgF,CAAC;IAC7F,QAAQ,EAAE,CAAC;SACR,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,+IAA+I,CAAC;IAC5J,IAAI,EAAE,CAAC;SACJ,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,uEAAuE,CAAC;IACpF,YAAY,EAAE,CAAC;SACZ,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,mEAAmE,CAAC;CACjF,CAAC;AAEF,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC;AAExE,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,IAAa,EACb,OAAoB;IAEpB,MAAM,MAAM,GAAG,uBAAuB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACvD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,sCAAsC,CAAC,CAAC;IAC1G,CAAC;IAED,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC;IACnE,MAAM,MAAM,GAAG,OAAO,CAAC,iBAAiB,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;IAE1D,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,cAAc,EAAE,oBAAoB,IAAI,cAAc,CAAC,CAAC;IACxG,CAAC;IAED,IAAI,CAAC;QACH,IAAI,MAAM,KAAK,eAAe,EAAE,CAAC;YAC/B,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,oDAAoD,CAAC,CAAC;YACxH,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;gBACzB,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,uBAAuB,EAAE,SAAS,IAAI,4CAA4C,CAAC,CAAC;YACpI,CAAC;YAED,MAAM,CAAC,IAAI,CAAC,oBAAoB,QAAQ,cAAc,IAAI,MAAM,CAAC,CAAC;YAClE,MAAM,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;YAEpC,SAAS,CAAC,IAAI,CAAC;gBACb,KAAK,EAAE,uBAAuB;gBAC9B,KAAK,EAAE,YAAY;gBACnB,MAAM,EAAE,SAAS;gBACjB,MAAM,EAAE,IAAI;gBACZ,QAAQ,EAAE,EAAE,QAAQ,EAAE;aACvB,CAAC,CAAC;YAEH,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,qDAAqD,QAAQ,kCAAkC,IAAI,OAAO,EAAE,CAAC;gBAC7I,iBAAiB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE;aACrD,CAAC;QACJ,CAAC;QAED,IAAI,MAAM,KAAK,iBAAiB,EAAE,CAAC;YACjC,IAAI,CAAC,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gBAC3B,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,sEAAsE,CAAC,CAAC;YAC1I,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;gBAC3B,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,uBAAuB,EAAE,SAAS,IAAI,uCAAuC,CAAC,CAAC;YAC/H,CAAC;YAED,MAAM,CAAC,IAAI,CAAC,sBAAsB,YAAY,YAAY,IAAI,MAAM,IAAI,MAAM,CAAC,CAAC;YAChF,MAAM,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;YAEhD,SAAS,CAAC,IAAI,CAAC;gBACb,KAAK,EAAE,yBAAyB;gBAChC,KAAK,EAAE,YAAY;gBACnB,MAAM,EAAE,SAAS;gBACjB,MAAM,EAAE,IAAI;gBACZ,IAAI;gBACJ,QAAQ,EAAE,EAAE,YAAY,EAAE;aAC3B,CAAC,CAAC;YAEH,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,yDAAyD,YAAY,kBAAkB,IAAI,SAAS,IAAI,gBAAgB,EAAE,CAAC;gBAC3J,iBAAiB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE;aAC/D,CAAC;QACJ,CAAC;QAED,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,mBAAmB,MAAM,IAAI,CAAC,CAAC;IACjG,CAAC;IAAC,OAAO,GAAY,EAAE,CAAC;QACtB,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7D,MAAM,CAAC,KAAK,CAAC,2BAA2B,IAAI,KAAK,GAAG,EAAE,CAAC,CAAC;QACxD,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,+BAA+B,IAAI,MAAM,GAAG,EAAE,CAAC,CAAC;IAClH,CAAC;AACH,CAAC;AAED,+EAA+E;AAC/E,oBAAoB;AACpB,+EAA+E;AAE/E,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,MAAM,EAAE,CAAC;SACN,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;SAC/B,QAAQ,EAAE;SACV,QAAQ,CAAC,+EAA+E,CAAC;IAC5F,UAAU,EAAE,CAAC;SACV,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;SAC/B,QAAQ,EAAE;SACV,QAAQ,CAAC,mBAAmB,CAAC;IAChC,IAAI,EAAE,CAAC;SACJ,IAAI,CAAC,CAAC,aAAa,EAAE,cAAc,EAAE,mBAAmB,EAAE,4BAA4B,EAAE,MAAM,CAAC,CAAC;SAChG,QAAQ,EAAE;SACV,OAAO,CAAC,MAAM,CAAC;SACf,QAAQ,CAAC,6CAA6C,CAAC;CAC3D,CAAC;AAEF,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC;KACrC,MAAM,CAAC,sBAAsB,CAAC;KAC9B,MAAM,CACL,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,CAAC,EACjD,EAAE,OAAO,EAAE,mDAAmD,EAAE,CACjE,CAAC;AAEJ,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,IAAa,EACb,OAAoB;IAEpB,MAAM,MAAM,GAAG,uBAAuB,CAAC,SAAS,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;IAC7D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,uCAAuC,CAAC,CAAC;IAC3G,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,UAAW,CAAC;IAC7D,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;IAEpC,MAAM,OAAO,GAAG,OAAO,CAAC,iBAAiB,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;IACjE,IAAI,WAAW,GAAG,UAAU,IAAI,UAAU,KAAK,MAAM;QACnD,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,UAAU,IAAI,CAAC,UAAU,KAAK,cAAc,IAAI,CAAC,CAAC,QAAQ,KAAK,mBAAmB,CAAC,CAAC;QACvH,CAAC,CAAC,IAAI,CAAC;IAET,IAAI,QAAQ,GAAG,IAAI,CAAC;IACpB,IAAI,WAAW,EAAE,CAAC;QAChB,QAAQ,GAAG,MAAM,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC7C,CAAC;SAAM,CAAC;QACN,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACxB,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACjC,IAAI,EAAE,EAAE,CAAC;gBACP,WAAW,GAAG,CAAC,CAAC;gBAChB,QAAQ,GAAG,EAAE,CAAC;gBACd,MAAM;YACR,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,CAAC,WAAW,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC9B,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,YAAY,EAAE,OAAO,MAAM,yCAAyC,CAAC,CAAC;IACtH,CAAC;IAED,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC;QAC9B,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,uBAAuB,EAAE,SAAS,WAAW,CAAC,QAAQ,kCAAkC,CAAC,CAAC;IAC1I,CAAC;IAED,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAE3D,yBAAyB;QACzB,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACtC,MAAM,OAAO,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;YACnE,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC9F,OAAO,SAAS,CAAC,CAAC,KAAK,YAAY,CAAC,CAAC,OAAO,YAAY,CAAC,CAAC,KAAK,UAAU,OAAO,QAAQ,CAAC,CAAC,MAAM,QAAQ,KAAK,IAAI,UAAU,IAAI,CAAC;QAClI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEd,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACxC,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,KAAK,MAAM,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,MAAM,CAAC;YAC/F,OAAO,SAAS,CAAC,CAAC,KAAK,UAAU,QAAQ,QAAQ,CAAC,CAAC,OAAO,kBAAkB,CAAC;QAC/E,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEd,IAAI,SAAS,GAAG,EAAE,CAAC;QACnB,IAAI,MAAM,CAAC,gBAAgB,IAAI,MAAM,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClE,MAAM,MAAM,GAAG,MAAM,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;gBAChD,MAAM,OAAO,GAAG,CAAC,EAAE,CAAC,UAAU,GAAG,CAAC,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;gBAClE,MAAM,MAAM,GAAG,CAAC,EAAE,CAAC,SAAS,GAAG,CAAC,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;gBAChE,MAAM,OAAO,GAAG,CAAC,EAAE,CAAC,cAAc,GAAG,CAAC,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;gBACtE,MAAM,IAAI,GAAG,EAAE,CAAC,WAAW,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;gBAC5E,OAAO,SAAS,EAAE,CAAC,UAAU,YAAY,EAAE,CAAC,MAAM,QAAQ,OAAO,SAAS,MAAM,QAAQ,EAAE,CAAC,WAAW,UAAU,OAAO,WAAW,IAAI,QAAQ,EAAE,CAAC,UAAU,IAAI,KAAK,MAAM,CAAC;YAC7K,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAEd,SAAS,GAAG,wKAAwK,MAAM,EAAE,CAAC;QAC/L,CAAC;aAAM,CAAC;YACN,SAAS,GAAG,+BAA+B,MAAM,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,0CAA0C,CAAC,CAAC,CAAC,eAAe,GAAG,CAAC;QAC3I,CAAC;QAED,MAAM,QAAQ,GAAG,8CAA8C,MAAM,CAAC,MAAM,SAAS,MAAM,CAAC,IAAI;;YAExF,MAAM,CAAC,QAAQ,oBAAoB,MAAM,CAAC,MAAM,yBAAyB,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW;;;;;EAKtI,QAAQ,IAAI,mDAAmD;;;;;EAK/D,SAAS,IAAI,6CAA6C,GAAG,SAAS,EAAE,CAAC;QAEvE,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;YAC3C,iBAAiB,EAAE;gBACjB,OAAO,EAAE,IAAI;gBACb,MAAM;aACP;SACF,CAAC;IACJ,CAAC;IAAC,OAAO,GAAY,EAAE,CAAC;QACtB,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7D,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,mCAAmC,MAAM,MAAM,GAAG,EAAE,CAAC,CAAC;IAC1H,CAAC;AACH,CAAC;AAED,+EAA+E;AAC/E,eAAe;AACf,+EAA+E;AAE/E,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,MAAM,EAAE,CAAC;SACN,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;SAC/B,QAAQ,EAAE;SACV,QAAQ,CAAC,mFAAmF,CAAC;IAChG,UAAU,EAAE,CAAC;SACV,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;SAC/B,QAAQ,EAAE;SACV,QAAQ,CAAC,mBAAmB,CAAC;IAChC,GAAG,EAAE,CAAC;SACH,MAAM,EAAE;SACR,QAAQ,CAAC,yIAAyI,CAAC;IACtJ,KAAK,EAAE,CAAC;SACL,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,OAAO,CAAC,MAAM,CAAC;SACf,QAAQ,CAAC,4CAA4C,CAAC;IACzD,IAAI,EAAE,CAAC;SACJ,IAAI,CAAC,CAAC,aAAa,EAAE,cAAc,EAAE,mBAAmB,EAAE,4BAA4B,EAAE,MAAM,CAAC,CAAC;SAChG,QAAQ,EAAE;SACV,OAAO,CAAC,MAAM,CAAC;SACf,QAAQ,CAAC,4BAA4B,CAAC;CAC1C,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC;KACjC,MAAM,CAAC,kBAAkB,CAAC;KAC1B,MAAM,CACL,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,CAAC,EACjD,EAAE,OAAO,EAAE,mDAAmD,EAAE,CACjE,CAAC;AAEJ,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,IAAa,EACb,OAAoB;IAEpB,MAAM,MAAM,GAAG,mBAAmB,CAAC,SAAS,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;IACzD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,kCAAkC,CAAC,CAAC;IACtG,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,UAAW,CAAC;IAC7D,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC;IAErD,MAAM,OAAO,GAAG,OAAO,CAAC,iBAAiB,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;IACjE,IAAI,WAAW,GAAG,UAAU,IAAI,UAAU,KAAK,MAAM;QACnD,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,UAAU,IAAI,CAAC,UAAU,KAAK,cAAc,IAAI,CAAC,CAAC,QAAQ,KAAK,mBAAmB,CAAC,CAAC;QACvH,CAAC,CAAC,IAAI,CAAC;IAET,IAAI,QAAQ,GAAG,IAAI,CAAC;IACpB,IAAI,WAAW,EAAE,CAAC;QAChB,QAAQ,GAAG,MAAM,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC7C,CAAC;SAAM,CAAC;QACN,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACxB,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACjC,IAAI,EAAE,EAAE,CAAC;gBACP,WAAW,GAAG,CAAC,CAAC;gBAChB,QAAQ,GAAG,EAAE,CAAC;gBACd,MAAM;YACR,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,CAAC,WAAW,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC9B,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,YAAY,EAAE,OAAO,MAAM,cAAc,CAAC,CAAC;IAC3F,CAAC;IAED,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;QAC1B,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,uBAAuB,EAAE,SAAS,WAAW,CAAC,QAAQ,8BAA8B,CAAC,CAAC;IACtI,CAAC;IAED,IAAI,CAAC;QACH,MAAM,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;QAEpD,SAAS,CAAC,IAAI,CAAC;YACb,KAAK,EAAE,mBAAmB;YAC1B,KAAK,EAAE,YAAY;YACnB,MAAM,EAAE,SAAS;YACjB,MAAM,EAAE,WAAW,CAAC,QAAQ;YAC5B,IAAI,EAAE,QAAQ,CAAC,EAAE;YACjB,QAAQ,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE;SACzB,CAAC,CAAC;QAEH,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,8CAA8C,GAAG,iCAAiC,KAAK,gBAAgB,QAAQ,CAAC,IAAI,SAAS,QAAQ,CAAC,EAAE,iBAAiB,WAAW,CAAC,QAAQ,KAAK,EAAE,CAAC;YACrN,iBAAiB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE;SACvH,CAAC;IACJ,CAAC;IAAC,OAAO,GAAY,EAAE,CAAC;QACtB,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7D,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,8BAA8B,MAAM,MAAM,GAAG,EAAE,CAAC,CAAC;IACnH,CAAC;AACH,CAAC;AAED,+EAA+E;AAC/E,iBAAiB;AACjB,+EAA+E;AAE/E,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,MAAM,EAAE,CAAC;SACN,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;SAC/B,QAAQ,EAAE;SACV,QAAQ,CAAC,wDAAwD,CAAC;IACrE,UAAU,EAAE,CAAC;SACV,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;SAC/B,QAAQ,EAAE;SACV,QAAQ,CAAC,mBAAmB,CAAC;IAChC,KAAK,EAAE,CAAC;SACL,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,OAAO,CAAC,MAAM,CAAC;SACf,QAAQ,CAAC,4CAA4C,CAAC;IACzD,IAAI,EAAE,CAAC;SACJ,IAAI,CAAC,CAAC,aAAa,EAAE,cAAc,EAAE,mBAAmB,EAAE,4BAA4B,EAAE,MAAM,CAAC,CAAC;SAChG,QAAQ,EAAE;SACV,OAAO,CAAC,MAAM,CAAC;SACf,QAAQ,CAAC,4BAA4B,CAAC;CAC1C,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC;KACnC,MAAM,CAAC,oBAAoB,CAAC;KAC5B,MAAM,CACL,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,CAAC,EACjD,EAAE,OAAO,EAAE,mDAAmD,EAAE,CACjE,CAAC;AAEJ,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,IAAa,EACb,OAAoB;IAEpB,MAAM,MAAM,GAAG,qBAAqB,CAAC,SAAS,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;IAC3D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,oCAAoC,CAAC,CAAC;IACxG,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,UAAW,CAAC;IAC7D,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC;IAEhD,MAAM,OAAO,GAAG,OAAO,CAAC,iBAAiB,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;IACjE,IAAI,WAAW,GAAG,UAAU,IAAI,UAAU,KAAK,MAAM;QACnD,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,UAAU,IAAI,CAAC,UAAU,KAAK,cAAc,IAAI,CAAC,CAAC,QAAQ,KAAK,mBAAmB,CAAC,CAAC;QACvH,CAAC,CAAC,IAAI,CAAC;IAET,IAAI,QAAQ,GAAG,IAAI,CAAC;IACpB,IAAI,WAAW,EAAE,CAAC;QAChB,QAAQ,GAAG,MAAM,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC7C,CAAC;SAAM,CAAC;QACN,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACxB,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACjC,IAAI,EAAE,EAAE,CAAC;gBACP,WAAW,GAAG,CAAC,CAAC;gBAChB,QAAQ,GAAG,EAAE,CAAC;gBACd,MAAM;YACR,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,CAAC,WAAW,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC9B,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,YAAY,EAAE,OAAO,MAAM,cAAc,CAAC,CAAC;IAC3F,CAAC;IAED,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,CAAC;QAC5B,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,uBAAuB,EAAE,SAAS,WAAW,CAAC,QAAQ,gCAAgC,CAAC,CAAC;IACxI,CAAC;IAED,IAAI,CAAC;QACH,MAAM,WAAW,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAEjD,SAAS,CAAC,IAAI,CAAC;YACb,KAAK,EAAE,qBAAqB;YAC5B,KAAK,EAAE,YAAY;YACnB,MAAM,EAAE,SAAS;YACjB,MAAM,EAAE,WAAW,CAAC,QAAQ;YAC5B,IAAI,EAAE,QAAQ,CAAC,EAAE;YACjB,QAAQ,EAAE,EAAE,KAAK,EAAE;SACpB,CAAC,CAAC;QAEH,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,4CAA4C,KAAK,gBAAgB,QAAQ,CAAC,IAAI,SAAS,QAAQ,CAAC,EAAE,iBAAiB,WAAW,CAAC,QAAQ,6BAA6B,EAAE,CAAC;YACvM,iBAAiB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE;SAClH,CAAC;IACJ,CAAC;IAAC,OAAO,GAAY,EAAE,CAAC;QACtB,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7D,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,gCAAgC,MAAM,MAAM,GAAG,EAAE,CAAC,CAAC;IACrH,CAAC;AACH,CAAC;AAED,+EAA+E;AAC/E,qBAAqB;AACrB,+EAA+E;AAE/E,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC,MAAM,EAAE,CAAC;SACN,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;SAC/B,QAAQ,EAAE;SACV,QAAQ,CAAC,6EAA6E,CAAC;IAC1F,UAAU,EAAE,CAAC;SACV,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;SAC/B,QAAQ,EAAE;SACV,QAAQ,CAAC,mBAAmB,CAAC;IAChC,YAAY,EAAE,CAAC;SACZ,MAAM,EAAE;SACR,QAAQ,CAAC,+DAA+D,CAAC;IAC5E,WAAW,EAAE,CAAC;SACX,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,uDAAuD,CAAC;IACpE,UAAU,EAAE,CAAC;SACV,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,OAAO,CAAC,KAAK,CAAC;SACd,QAAQ,CAAC,8EAA8E,CAAC;IAC3F,IAAI,EAAE,CAAC;SACJ,IAAI,CAAC,CAAC,aAAa,EAAE,cAAc,EAAE,mBAAmB,EAAE,4BAA4B,EAAE,MAAM,CAAC,CAAC;SAChG,QAAQ,EAAE;SACV,OAAO,CAAC,MAAM,CAAC;SACf,QAAQ,CAAC,4BAA4B,CAAC;CAC1C,CAAC;AAEF,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC;KACvC,MAAM,CAAC,wBAAwB,CAAC;KAChC,MAAM,CACL,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,CAAC,EACjD,EAAE,OAAO,EAAE,mDAAmD,EAAE,CACjE,CAAC;AAEJ,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,IAAa,EACb,OAAoB;IAEpB,MAAM,MAAM,GAAG,yBAAyB,CAAC,SAAS,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;IAC/D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,wCAAwC,CAAC,CAAC;IAC5G,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,UAAW,CAAC;IAC7D,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC;IAEhF,MAAM,OAAO,GAAG,OAAO,CAAC,iBAAiB,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;IACjE,IAAI,WAAW,GAAG,UAAU,IAAI,UAAU,KAAK,MAAM;QACnD,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,UAAU,IAAI,CAAC,UAAU,KAAK,cAAc,IAAI,CAAC,CAAC,QAAQ,KAAK,mBAAmB,CAAC,CAAC;QACvH,CAAC,CAAC,IAAI,CAAC;IAET,IAAI,QAAQ,GAAG,IAAI,CAAC;IACpB,IAAI,WAAW,EAAE,CAAC;QAChB,QAAQ,GAAG,MAAM,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC7C,CAAC;SAAM,CAAC;QACN,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACxB,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACjC,IAAI,EAAE,EAAE,CAAC;gBACP,WAAW,GAAG,CAAC,CAAC;gBAChB,QAAQ,GAAG,EAAE,CAAC;gBACd,MAAM;YACR,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,CAAC,WAAW,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC9B,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,YAAY,EAAE,OAAO,MAAM,cAAc,CAAC,CAAC;IAC3F,CAAC;IAED,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,CAAC;QAChC,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,uBAAuB,EAAE,SAAS,WAAW,CAAC,QAAQ,oCAAoC,CAAC,CAAC;IAC5I,CAAC;IAED,IAAI,CAAC;QACH,MAAM,WAAW,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,EAAE,YAAY,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;QAErF,SAAS,CAAC,IAAI,CAAC;YACb,KAAK,EAAE,yBAAyB;YAChC,KAAK,EAAE,YAAY;YACnB,MAAM,EAAE,SAAS;YACjB,MAAM,EAAE,WAAW,CAAC,QAAQ;YAC5B,IAAI,EAAE,QAAQ,CAAC,EAAE;YACjB,QAAQ,EAAE,EAAE,YAAY,EAAE,UAAU,EAAE;SACvC,CAAC,CAAC;QAEH,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,wDAAwD,YAAY,6BAA6B,QAAQ,CAAC,IAAI,SAAS,QAAQ,CAAC,EAAE,iBAAiB,WAAW,CAAC,QAAQ,qBAAqB,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,oBAAoB,WAAW,IAAI,MAAM,EAAE,EAAE,CAAC;YAC/S,iBAAiB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE;SAClJ,CAAC;IACJ,CAAC;IAAC,OAAO,GAAY,EAAE,CAAC;QACtB,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7D,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,8BAA8B,YAAY,YAAY,MAAM,MAAM,GAAG,EAAE,CAAC,CAAC;IAC3I,CAAC;AACH,CAAC;AAED,+EAA+E;AAC/E,uBAAuB;AACvB,+EAA+E;AAE/E,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACxC,MAAM,EAAE,CAAC;SACN,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;SAC/B,QAAQ,EAAE;SACV,QAAQ,CAAC,gDAAgD,CAAC;IAC7D,UAAU,EAAE,CAAC;SACV,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;SAC/B,QAAQ,EAAE;SACV,QAAQ,CAAC,mBAAmB,CAAC;IAChC,YAAY,EAAE,CAAC;SACZ,MAAM,EAAE;SACR,QAAQ,CAAC,mEAAmE,CAAC;IAChF,IAAI,EAAE,CAAC;SACJ,IAAI,CAAC,CAAC,aAAa,EAAE,cAAc,EAAE,mBAAmB,EAAE,4BAA4B,EAAE,MAAM,CAAC,CAAC;SAChG,QAAQ,EAAE;SACV,OAAO,CAAC,MAAM,CAAC;SACf,QAAQ,CAAC,4BAA4B,CAAC;CAC1C,CAAC;AAEF,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC;KACzC,MAAM,CAAC,0BAA0B,CAAC;KAClC,MAAM,CACL,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,CAAC,EACjD,EAAE,OAAO,EAAE,mDAAmD,EAAE,CACjE,CAAC;AAEJ,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,IAAa,EACb,OAAoB;IAEpB,MAAM,MAAM,GAAG,2BAA2B,CAAC,SAAS,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;IACjE,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,0CAA0C,CAAC,CAAC;IAC9G,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,UAAW,CAAC;IAC7D,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC;IAEvD,MAAM,OAAO,GAAG,OAAO,CAAC,iBAAiB,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;IACjE,IAAI,WAAW,GAAG,UAAU,IAAI,UAAU,KAAK,MAAM;QACnD,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,UAAU,IAAI,CAAC,UAAU,KAAK,cAAc,IAAI,CAAC,CAAC,QAAQ,KAAK,mBAAmB,CAAC,CAAC;QACvH,CAAC,CAAC,IAAI,CAAC;IAET,IAAI,QAAQ,GAAG,IAAI,CAAC;IACpB,IAAI,WAAW,EAAE,CAAC;QAChB,QAAQ,GAAG,MAAM,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC7C,CAAC;SAAM,CAAC;QACN,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACxB,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACjC,IAAI,EAAE,EAAE,CAAC;gBACP,WAAW,GAAG,CAAC,CAAC;gBAChB,QAAQ,GAAG,EAAE,CAAC;gBACd,MAAM;YACR,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,CAAC,WAAW,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC9B,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,YAAY,EAAE,OAAO,MAAM,cAAc,CAAC,CAAC;IAC3F,CAAC;IAED,IAAI,CAAC,WAAW,CAAC,gBAAgB,EAAE,CAAC;QAClC,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,uBAAuB,EAAE,SAAS,WAAW,CAAC,QAAQ,sCAAsC,CAAC,CAAC;IAC9I,CAAC;IAED,IAAI,CAAC;QACH,MAAM,WAAW,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC;QAE9D,SAAS,CAAC,IAAI,CAAC;YACb,KAAK,EAAE,2BAA2B;YAClC,KAAK,EAAE,YAAY;YACnB,MAAM,EAAE,SAAS;YACjB,MAAM,EAAE,WAAW,CAAC,QAAQ;YAC5B,IAAI,EAAE,QAAQ,CAAC,EAAE;YACjB,QAAQ,EAAE,EAAE,YAAY,EAAE;SAC3B,CAAC,CAAC;QAEH,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,8CAA8C,QAAQ,CAAC,IAAI,SAAS,QAAQ,CAAC,EAAE,iBAAiB,WAAW,CAAC,QAAQ,mCAAmC,YAAY,OAAO,EAAE,CAAC;YAC7M,iBAAiB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,IAAI,EAAE,YAAY,EAAE;SACzH,CAAC;IACJ,CAAC;IAAC,OAAO,GAAY,EAAE,CAAC;QACtB,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7D,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,gCAAgC,YAAY,YAAY,MAAM,MAAM,GAAG,EAAE,CAAC,CAAC;IAC7I,CAAC;AACH,CAAC"}
@@ -0,0 +1,99 @@
1
+ /**
2
+ * Thin-only guest disk policy (REL-1588, operator decision 2026-10-08:
3
+ * "Never thick disks").
4
+ *
5
+ * Every guest disk this server creates, clones or imports on Proxmox must live
6
+ * on thin-provisioned storage: `lvmthin` always, `zfspool` only when the pool
7
+ * is proven `sparse`. Anything else (plain `lvm`, `dir`, `nfs`, `iscsi`,
8
+ * `cifs`, `rbd`, an unknown or undeterminable type) is REFUSED with the stable
9
+ * code THICK_STORAGE_REFUSED before the mutating canonical call is made.
10
+ *
11
+ * Fail closed: when the storage type cannot be proven (host unreachable,
12
+ * malformed receipt, pool missing from the host, ...) the request is refused
13
+ * with the same code and a message that says the type could not be determined.
14
+ *
15
+ * Scope note: this module owns the TypeScript layer only. The canonical shell
16
+ * transports in ct-meta carry their own independent guard
17
+ * (`proxmox-thin-storage.sh`); this layer refuses earlier and with a typed
18
+ * error, it does not replace that one. Nothing here builds Proxmox disk
19
+ * options, so discard=on is owned by the transports/templates, not by this
20
+ * server (see docs in README).
21
+ *
22
+ * Storage that is NOT a guest-disk target is deliberately out of scope:
23
+ * `importStorage` (the dir storage that holds the downloaded image before it is
24
+ * imported) and ESXi datastores.
25
+ */
26
+ import { CanonicalLabBridge } from "../canonical/bridge.js";
27
+ import type { IHypervisorDriver } from "../hypervisors/types.js";
28
+ import { CallToolResult } from "../types/mcp.js";
29
+ /** Stable, machine-matchable error code for every thin-only refusal. */
30
+ export declare const THICK_STORAGE_REFUSED: "THICK_STORAGE_REFUSED";
31
+ /**
32
+ * The thin pool on every Proxmox lab host (`local-lvm`, type `lvmthin`). This is
33
+ * also the canonical CLI's default VM-disk storage, so an omitted `storage` is
34
+ * enforced against this pool rather than skipped.
35
+ */
36
+ export declare const DEFAULT_THIN_STORAGE = "local-lvm";
37
+ export type ThinStorageRefusalReason = "thick_storage_type" | "storage_type_undeterminable";
38
+ export interface ThinStorageRefusalDetails extends Record<string, unknown> {
39
+ reason: ThinStorageRefusalReason;
40
+ storage: string;
41
+ storageType?: string;
42
+ hostAssetId?: string;
43
+ thinPool: string;
44
+ }
45
+ export declare class ThickStorageRefusedError extends Error {
46
+ readonly code: "THICK_STORAGE_REFUSED";
47
+ readonly details: ThinStorageRefusalDetails;
48
+ constructor(message: string, details: ThinStorageRefusalDetails);
49
+ }
50
+ /** True when a Proxmox storage of this type provides thin guest disks. */
51
+ export declare function isThinGuestDiskStorage(storageType: string | null | undefined, options?: {
52
+ sparse?: boolean;
53
+ }): boolean;
54
+ export interface AssertThinStorageOptions {
55
+ /** Storage pool name the request targets. */
56
+ storage: string;
57
+ hostAssetId?: string;
58
+ /** Thin pool to recommend in the refusal message. */
59
+ thinPool?: string;
60
+ /** Proven `sparse` flag of a zfspool; absent means not proven. */
61
+ sparse?: boolean;
62
+ }
63
+ /**
64
+ * Pure policy check. Throws ThickStorageRefusedError (code THICK_STORAGE_REFUSED)
65
+ * unless the storage type is thin. An undefined/blank/"unknown" type means the
66
+ * type could not be determined and is refused as such (fail closed).
67
+ */
68
+ export declare function assertThinStorage(storageType: string | null | undefined, options: AssertThinStorageOptions): void;
69
+ export interface CanonicalThinStorageRequest {
70
+ /** Tool name for error details. */
71
+ operation: string;
72
+ /** Exact host asset id, or "auto"/undefined to check every canonical Proxmox host. */
73
+ hostAssetId?: string;
74
+ /** Requested VM-disk storage; omitted means the canonical CLI default pool. */
75
+ storage?: string;
76
+ }
77
+ /**
78
+ * Canonical-mode guard. Resolves the storage type through the same
79
+ * `host capacity` read path as list_storage (no new credentials) and refuses
80
+ * thick or undeterminable storage. Returns an error result to hand straight
81
+ * back to the caller, or undefined when the request may proceed. It must be
82
+ * called BEFORE the mutating canonical CLI call.
83
+ */
84
+ export declare function guardCanonicalThinStorage(bridge: CanonicalLabBridge | undefined, request: CanonicalThinStorageRequest): Promise<CallToolResult | undefined>;
85
+ /**
86
+ * Legacy (non-canonical) clone guard. A clone lands on the explicit `storage`
87
+ * when one is given and otherwise on the storage that holds the source
88
+ * template's disks, so both are resolved against the driver's own storage list.
89
+ * ESXi drivers are out of scope. Missing driver capability fails closed.
90
+ */
91
+ export declare function guardLegacyCloneThinStorage(plan: {
92
+ host: string;
93
+ source: string | number;
94
+ driver: IHypervisorDriver;
95
+ }, request: {
96
+ operation: string;
97
+ storage?: string;
98
+ }): Promise<CallToolResult | undefined>;
99
+ //# sourceMappingURL=thin-storage-policy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"thin-storage-policy.d.ts","sourceRoot":"","sources":["../../../src/tools/thin-storage-policy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,cAAc,EAAyB,MAAM,iBAAiB,CAAC;AAOxE,wEAAwE;AACxE,eAAO,MAAM,qBAAqB,EAAG,uBAAgC,CAAC;AAEtE;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,cAAc,CAAC;AAIhD,MAAM,MAAM,wBAAwB,GAAG,oBAAoB,GAAG,6BAA6B,CAAC;AAE5F,MAAM,WAAW,yBAA0B,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACxE,MAAM,EAAE,wBAAwB,CAAC;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,qBAAa,wBAAyB,SAAQ,KAAK;IACjD,QAAQ,CAAC,IAAI,0BAAyB;IACtC,QAAQ,CAAC,OAAO,EAAE,yBAAyB,CAAC;gBAEhC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,yBAAyB;CAKhE;AAED,0EAA0E;AAC1E,wBAAgB,sBAAsB,CACpC,WAAW,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACtC,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAA;CAAO,GACjC,OAAO,CAMT;AAED,MAAM,WAAW,wBAAwB;IACvC,6CAA6C;IAC7C,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qDAAqD;IACrD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,kEAAkE;IAClE,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,WAAW,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACtC,OAAO,EAAE,wBAAwB,GAChC,IAAI,CA6BN;AAkCD,MAAM,WAAW,2BAA2B;IAC1C,mCAAmC;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,sFAAsF;IACtF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,+EAA+E;IAC/E,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;GAMG;AACH,wBAAsB,yBAAyB,CAC7C,MAAM,EAAE,kBAAkB,GAAG,SAAS,EACtC,OAAO,EAAE,2BAA2B,GACnC,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC,CA0ErC;AAED;;;;;GAKG;AACH,wBAAsB,2BAA2B,CAC/C,IAAI,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;IAAC,MAAM,EAAE,iBAAiB,CAAA;CAAE,EAC1E,OAAO,EAAE;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAC/C,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC,CAgErC"}