@calltelemetry/ct-lab-mcp 0.8.91 → 0.8.93

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 (74) hide show
  1. package/README.md +24 -20
  2. package/dist/src/hypervisors/manager.d.ts.map +1 -1
  3. package/dist/src/hypervisors/manager.js +11 -11
  4. package/dist/src/hypervisors/manager.js.map +1 -1
  5. package/dist/src/hypervisors/types.d.ts +3 -0
  6. package/dist/src/hypervisors/types.d.ts.map +1 -1
  7. package/dist/src/server.js +4 -4
  8. package/dist/src/server.js.map +1 -1
  9. package/dist/src/slot/manager.d.ts.map +1 -1
  10. package/dist/src/slot/manager.js +29 -34
  11. package/dist/src/slot/manager.js.map +1 -1
  12. package/dist/src/tools/appliance-claim-tools.d.ts.map +1 -1
  13. package/dist/src/tools/appliance-claim-tools.js +12 -10
  14. package/dist/src/tools/appliance-claim-tools.js.map +1 -1
  15. package/dist/src/tools/auto-host-placement.d.ts +33 -0
  16. package/dist/src/tools/auto-host-placement.d.ts.map +1 -0
  17. package/dist/src/tools/auto-host-placement.js +39 -0
  18. package/dist/src/tools/auto-host-placement.js.map +1 -0
  19. package/dist/src/tools/claim-creation-projection.js +2 -2
  20. package/dist/src/tools/claim-creation-projection.js.map +1 -1
  21. package/dist/src/tools/claim-custody.d.ts +175 -0
  22. package/dist/src/tools/claim-custody.d.ts.map +1 -0
  23. package/dist/src/tools/claim-custody.js +196 -0
  24. package/dist/src/tools/claim-custody.js.map +1 -0
  25. package/dist/src/tools/claim-kubernetes.d.ts +14 -0
  26. package/dist/src/tools/claim-kubernetes.d.ts.map +1 -0
  27. package/dist/src/tools/{slot-kubernetes.js → claim-kubernetes.js} +30 -26
  28. package/dist/src/tools/claim-kubernetes.js.map +1 -0
  29. package/dist/src/tools/fleet-metrics.d.ts +37 -2
  30. package/dist/src/tools/fleet-metrics.d.ts.map +1 -1
  31. package/dist/src/tools/fleet-metrics.js +25 -15
  32. package/dist/src/tools/fleet-metrics.js.map +1 -1
  33. package/dist/src/tools/host-capacity-rank.d.ts +25 -0
  34. package/dist/src/tools/host-capacity-rank.d.ts.map +1 -0
  35. package/dist/src/tools/host-capacity-rank.js +17 -0
  36. package/dist/src/tools/host-capacity-rank.js.map +1 -0
  37. package/dist/src/tools/index.d.ts.map +1 -1
  38. package/dist/src/tools/index.js +20 -19
  39. package/dist/src/tools/index.js.map +1 -1
  40. package/dist/src/tools/kubernetes-backend.js +1 -1
  41. package/dist/src/tools/kubernetes-backend.js.map +1 -1
  42. package/dist/src/tools/legacy-clone-plan.d.ts +2 -0
  43. package/dist/src/tools/legacy-clone-plan.d.ts.map +1 -1
  44. package/dist/src/tools/legacy-clone-plan.js +13 -5
  45. package/dist/src/tools/legacy-clone-plan.js.map +1 -1
  46. package/dist/src/tools/legacy-guest-guard.d.ts.map +1 -1
  47. package/dist/src/tools/legacy-guest-guard.js +4 -2
  48. package/dist/src/tools/legacy-guest-guard.js.map +1 -1
  49. package/dist/src/tools/{physical-slot.d.ts → legacy-reservation.d.ts} +79 -40
  50. package/dist/src/tools/legacy-reservation.d.ts.map +1 -0
  51. package/dist/src/tools/legacy-reservation.js +111 -0
  52. package/dist/src/tools/legacy-reservation.js.map +1 -0
  53. package/dist/src/tools/provision-tools.d.ts.map +1 -1
  54. package/dist/src/tools/provision-tools.js +16 -4
  55. package/dist/src/tools/provision-tools.js.map +1 -1
  56. package/dist/src/tools/quick-provision.d.ts.map +1 -1
  57. package/dist/src/tools/quick-provision.js +15 -4
  58. package/dist/src/tools/quick-provision.js.map +1 -1
  59. package/dist/src/tools/renewal-claim.d.ts +2 -1
  60. package/dist/src/tools/renewal-claim.d.ts.map +1 -1
  61. package/dist/src/tools/renewal-claim.js +19 -8
  62. package/dist/src/tools/renewal-claim.js.map +1 -1
  63. package/dist/src/tools/slot-retirement.d.ts +22 -0
  64. package/dist/src/tools/slot-retirement.d.ts.map +1 -0
  65. package/dist/src/tools/slot-retirement.js +42 -0
  66. package/dist/src/tools/slot-retirement.js.map +1 -0
  67. package/package.json +2 -2
  68. package/dist/src/tools/physical-slot.d.ts.map +0 -1
  69. package/dist/src/tools/physical-slot.js +0 -319
  70. package/dist/src/tools/physical-slot.js.map +0 -1
  71. package/dist/src/tools/slot-kubernetes.d.ts +0 -14
  72. package/dist/src/tools/slot-kubernetes.d.ts.map +0 -1
  73. package/dist/src/tools/slot-kubernetes.js.map +0 -1
  74. /package/dist/src/tools/{physical-slot-claim-spec-schema.v1.json → appliance-claim-spec-schema.v1.json} +0 -0
package/README.md CHANGED
@@ -23,13 +23,15 @@ AI Clients (Claude Desktop / Cursor / Web / AI Agents)
23
23
  │
24
24
  ▼
25
25
  [MCP Tool Registry]
26
- ├── list_hosts (Proxmox + ESXi capacity, health & resource-derived 8GB unit estimates)
26
+ ├── list_hosts (Proxmox capacity: live free RAM/CPU/disk, health; 8GB unit estimates are deprecated)
27
27
  ├── list_inventory (Unified VM fleet inventory with Linear tags)
28
- ├── claim_slot (8GB slot leases with TTL & Linear issue tracking)
29
- ├── release_slot (Release lease + optional automated VM destruction)
28
+ ├── claim_slot (DEPRECATED alias -> create_appliance_claim; slot retirement ADR (REL-1746))
29
+ ├── release_slot (DEPRECATED alias -> delete_appliance_claim)
30
+ ├── find_slot / list_slots (DEPRECATED aliases -> list_hosts / list_appliance_claims)
31
+ ├── purge_slots (RETIRED: explicit SLOT_VERB_RETIRED error; use list_expired_vms / cleanup_expired_vms)
30
32
  ├── provision_vm (Disposable VM provisioning on Proxmox/ESXi)
31
- ├── proxmox_quick_provision (Size-driven randomized Proxmox fleet plan/apply)
32
- ├── pin_pool_slots (Wraps pin-pool-slots.sh: pin web SHA tag on guest IPs)
33
+ ├── proxmox_quick_provision (Size-driven Proxmox fleet plan/apply; host=auto ranks by free RAM then disk)
34
+ ├── pin_pool_slots (RETIRED: explicit SLOT_VERB_RETIRED error; pass webImage to proxmox_quick_provision)
33
35
  ├── vm_action (Power lifecycle with non-bypassable safety guardrails)
34
36
  ├── host_maintenance_shutdown (Guarded whole-host drain and graceful shutdown)
35
37
  ├── lab_mission (Canonical manifest-bound multi-phase mission)
@@ -72,10 +74,11 @@ than use the legacy Node VMID/name slot state when the bridge is unavailable.
72
74
  ## Key Features
73
75
 
74
76
  - **Multi-Hypervisor Fleet Management**: Polymorphic abstraction unifying Proxmox VE clusters (`proxmox-lab`, `proxmox-mini`) and VMware ESXi hosts (`esxi-intel-192-168-123-176`).
75
- - **Disposable VM Provisioning**: Give `proxmox_quick_provision` one resource size (`memoryMb`, `vcpus`, `diskGb`). Live capacity filters the homogeneous Proxmox pool, then one eligible host is selected with system randomness. Apply repeats the reviewed explicit host, VMID, and operation ID.
77
+ - **Disposable VM Provisioning**: Give `proxmox_quick_provision` one resource size (`memoryMb`, `vcpus`, `diskGb`). Live capacity filters the homogeneous Proxmox pool, then the eligible host with the most free RAM (then the most free disk headroom, then host id) is selected; a plan with `hostAssetId: auto` resolves it from `host capacity` and pins it in the reviewed plan (`placement` in the result). If capacity cannot be read the canonical CLI keeps resolving `auto`. Apply repeats the reviewed explicit host, VMID, and operation ID.
76
78
  - **Thin-only guest disks (REL-1588, "never thick disks")**: Every disk `provision_vm`, `auto_provision_vm`, `proxmox_quick_provision`, `proxmox_import_qcow`, `claimed_import_qcow`, `host_migrate_vm` and `sandbox_clone` creates, clones, migrates or imports on Proxmox must be on thin storage: `lvmthin` (the `local-lvm` pool on both lab hosts), or a `zfspool` proven `sparse`. Anything else (`lvm`, `dir`, `nfs`, `iscsi`, unknown) is refused with the stable error code `THICK_STORAGE_REFUSED` before any claim, journal, clone, import or other Proxmox change. The storage type is read through the same `host capacity` path as `list_storage`; if it cannot be determined the request fails closed. An omitted `storage` is checked against the default pool (`local-lvm`). `importStorage` (the `dir` pool that only stages a downloaded image) is not a guest-disk target and is not restricted. This server never builds Proxmox disk options itself, so `discard=on` is owned by the canonical transports and templates.
77
79
  - **Resource-based Lease Admission**: There are no fixed per-host or global VM-count quotas. Fresh host health, physical free RAM, VM-image storage, and the requested guest size determine placement. Outstanding unprovisioned claims reserve their size under the claim mutex; backed running VMs are already reflected in physical usage. Unknown, offline, or insufficient resources fail closed.
78
- - Legacy `slot` tool names and numeric counts remain available. `maxSlots` is the observed lease count plus an estimate of additional standard-size capacity; it never gates admission.
80
+ - Slots are retired (slot retirement ADR (REL-1746)); lab capacity is pure cluster capacity. `find_slot`, `claim_slot`, `release_slot` and `list_slots` remain only as deprecated aliases: they return their real result plus `deprecated: true` and the replacement (`list_hosts`, `create_appliance_claim`, `delete_appliance_claim`, `list_appliance_claims`). `purge_slots` and `pin_pool_slots` have no capacity equivalent and return an explicit `SLOT_VERB_RETIRED` error (not an internal failure) naming the replacement. `maxSlots`, `slot_limit` and `availableSlots` stay as deprecated numeric estimates and never gate admission.
81
+ - Host selection for provisioning ranks eligible Proxmox hosts by live free RAM, then free disk headroom (no random spread and no "Mini first" tier); ESXi remains a last-place opt-in fallback. A test-only `placementSeed` keeps its reproducible selection. `ferrum_fleet_metrics` reports free RAM/CPU/disk as the authoritative capacity and keeps `slotFloor`/`slotHardMax` as deprecated numbers.
79
82
  - ESXi leasing remains explicitly opt-in; platform authorization and protected assets remain separate from resource availability.
80
83
  - **Non-Bypassable Safety Guardrails**: Hard protection preventing destructive actions (`destroy`, `stop`, `reboot`) against core infrastructure:
81
84
  - Cisco Unified Communications Manager (CUCM 14 / 15 publishers and subscribers)
@@ -93,10 +96,10 @@ than use the legacy Node VMID/name slot state when the bridge is unavailable.
93
96
  power-off is not implemented.
94
97
  - **Remote Appliance CLI Control**: Mediated execution of `cli.sh` commands over SSH (port 2222) for status inspection, health diagnostics, Ecto migrations, table vacuums, and container logs.
95
98
  - **Leased Remote Development**: `lab_dev` is a canonical-only façade for the `ct-local-dev-v1` profile. It supports strict `doctor`, `plan`, `prepare`, `start`, `status`, `sync`, `stop`, and `cleanup` actions bound to one asset, lease, Linear issue, operation ID, and reviewed receipt chain. It accepts no guest commands, remote paths, or mock fallback.
96
- - **Physical-slot claim custody**: Proxmox claim creation requires the actual canonical node, explicit VMID and VM name in `ct-lab`, with a finite TTL. A shared Kubernetes Lease mutex serializes the physical host/node/VMID; its durable reservation stays occupied through unknown, partial and retiring outcomes. The source stamps a nonce and effective creation-request hash, then independently reads the original CRD UID before binding. Whole effective immutable CRD fields and creation labels are rehashed on bind, retry and deletion; only the declared lifecycle fields and stale label can change. A matching name alone grants no custody.
97
- - **One configured Kubernetes claim backend**: ApplianceClaim CRUD and physical-slot Lease operations share one backend resolver. Local stdio deployments must set an absolute `LAB_CLAIM_KUBECONFIG`, the exact `LAB_CLAIM_K8S_CONTEXT`, and an HTTPS-origin `LAB_CLAIM_K8S_SERVER`; the selected kubeconfig is validated against that server before a request. In-cluster deployments must set the context/server and provide the service-account token and CA for that same cluster. Cross-cluster deployments use the explicit kubeconfig path. The process never falls back to `KUBECONFIG`, `~/.kube/config`, or an embedded server, and a missing or mismatched binding is refused before claim or reservation effects. The Flux-managed consumer manifest `ct-infrastructure/clusters/doks-nyc1/apps/ct-lab/deploy-ct-lab-mcp.yaml` is a companion rollout change: the image-roll workflow refuses to update it until all three backend variables are present, and the kubeconfig path must be mounted from the selected cluster's protected configuration.
98
- - **Original UID deletion**: `delete_appliance_claim` requires `expectedUid` from the independently observed original claim. It sends UID/resourceVersion `DeleteOptions` preconditions and leaves the physical reservation retiring. The qualified operator/controller must independently prove original guest, owned-volume and original-UID absence before terminal release; an error or expiry-looking record never permits clearing protection.
99
- - **Guarded image import**: `claimed_import_qcow` creates a bare claim, waits for an operator to set it `Ready` (default 120 s, `CT_LAB_CLAIM_RECONCILE_TIMEOUT_MS`; a claim no operator reconciles fails with `CLAIM_NOT_RECONCILED` before any image import, because the claim plane and the operator's cluster differ), then invokes the canonical `vm provision --source published-qcow` lifecycle. Its actual default bridge keeps host CPU semantics; portable first-power qualification uses the separate explicit canonical source route. Returned, thrown and uncertain import errors retain both claim and reservation protection and preserve diagnostics. This path requires the qualified controller and operator successors; a source pin alone does not establish deployed readiness.
99
+ - **Claim custody annotation** (REL-1746; slots and reservation Leases are retired): Proxmox claim creation requires the actual canonical node, explicit VMID and VM name in `ct-lab`, with a finite TTL. The original-owner record lives on the claim itself as annotation `calltelemetry.com/claim-custody` (`claim-custody/v1`: guest tuple, phase, operation nonce, creation-request hash, context, provider binding), written in the same single create call as the claim. No Lease is ever created, renewed or required; per-guest serialization is in-process keyed by node and VMID, and the existing claim-occupancy scan plus the claim UID/resourceVersion protect against other actors. Whole effective immutable CRD fields and creation labels are rehashed on retry and deletion; only the declared lifecycle fields and stale label can change. A matching name alone grants no custody. Claims created before the retirement still carry a `ct-physical-slot-reservation.*` Lease: the MCP verifies them read-only (reporting `custody.source: "legacy-lease"`, `migration: "operator-pending"`) and the appliance operator converts them into the annotation; the MCP never writes a Lease.
100
+ - **One configured Kubernetes claim backend**: ApplianceClaim CRUD and read-only legacy reservation Lease reads share one backend resolver. Local stdio deployments must set an absolute `LAB_CLAIM_KUBECONFIG`, the exact `LAB_CLAIM_K8S_CONTEXT`, and an HTTPS-origin `LAB_CLAIM_K8S_SERVER`; the selected kubeconfig is validated against that server before a request. In-cluster deployments must set the context/server and provide the service-account token and CA for that same cluster. Cross-cluster deployments use the explicit kubeconfig path. The process never falls back to `KUBECONFIG`, `~/.kube/config`, or an embedded server, and a missing or mismatched binding is refused before any claim effect. The Flux-managed consumer manifest `ct-infrastructure/clusters/doks-nyc1/apps/ct-lab/deploy-ct-lab-mcp.yaml` is a companion rollout change: the image-roll workflow refuses to update it until all three backend variables are present, and the kubeconfig path must be mounted from the selected cluster's protected configuration.
101
+ - **Original UID deletion**: `delete_appliance_claim` requires `expectedUid` from the independently observed original claim. It verifies the claim custody record (or legacy Lease, read-only), then requests only claim deletion with UID/resourceVersion `DeleteOptions` preconditions; the operator owns teardown and must independently prove original guest, owned-volume and original-UID absence before releasing custody. A claim with neither a custody annotation nor a legacy Lease is refused (`NoClaimCustody`).
102
+ - **Guarded image import**: `claimed_import_qcow` creates a bare claim, waits for an operator to set it `Ready` (default 120 s, `CT_LAB_CLAIM_RECONCILE_TIMEOUT_MS`; a claim no operator reconciles fails with `CLAIM_NOT_RECONCILED` before any image import, because the claim plane and the operator's cluster differ), then invokes the canonical `vm provision --source published-qcow` lifecycle. Its actual default bridge keeps host CPU semantics; portable first-power qualification uses the separate explicit canonical source route. Returned, thrown and uncertain import errors retain the claim and its custody record and preserve diagnostics. This path requires the qualified controller and operator successors; a source pin alone does not establish deployed readiness.
100
103
  - **Legacy SDK effects**: Direct SDK guest creation/clone/power/config/destruction, unguarded script guest writes and generic guest SSH authentication/commands are unavailable without the implemented canonical lifecycle. No caller flag or environment switch enables the retired effects. The historical purge daemon reports `authority_required` with zero releases/destruction and keeps all protection records. Provider inventory reads and implemented typed canonical operations remain available.
101
104
 
102
105
  - **Sideloaded Appliance Management Runner**: `sideload_appliance_runner` executes isolated runner actions (`execute`, `container_override`, `systemd_reset`, `diagnostic_bundle`) over SSH (port 2222) using ephemeral runner payloads, eliminating brittleness and version drift from mutating `/home/calltelemetry/cli.sh`.
@@ -425,8 +428,8 @@ Canonical mutation parameters are deliberately explicit:
425
428
  mode for that purpose only. Every refusal of these three tools tells the caller
426
429
  to pass `assetId`. Requires a lab-inventory bundle that includes ct-meta
427
430
  `067fa4cc` or later (the CLI timeout-range help fix needs a later one).
428
- - `purge_slots` delegates only to `claims gc`; age, force, orphan, and VM-name
429
- shortcuts are rejected.
431
+ - `purge_slots` is retired (slot retirement ADR (REL-1746)) and returns an explicit
432
+ `SLOT_VERB_RETIRED` error; the operator reaper and `cleanup_expired_vms` own cleanup.
430
433
 
431
434
  This bridge change is delivered only by a reviewed `@calltelemetry/ct-lab-mcp`
432
435
  package release consumed through the host's approved version pin. Source edits
@@ -487,8 +490,9 @@ consumer update workflow.
487
490
  - Expired leases with attached VMs remain occupied until the deletion transport
488
491
  succeeds. Protected or failed deletions retain their exact lease and VM
489
492
  identity, preventing phantom free capacity.
490
- - `pin_pool_slots` wraps `pin-pool-slots.sh` by tag+host. Default is plan-only;
491
- `apply: true` pins `calltelemetry/web:<line>-stable-<12sha>` over SSH :2222.
493
+ - `pin_pool_slots` is retired (slot retirement ADR (REL-1746)) and returns an explicit
494
+ `SLOT_VERB_RETIRED` error; pass `webImage` to `proxmox_quick_provision` to pin
495
+ `calltelemetry/web:<line>-stable-<12sha>` at provision time.
492
496
 
493
497
  0.8.8 is SHA-channel. Do not invent `latest-0.8.8-stable.txt`. Point CUBE XCC
494
498
  at `http://<guest-ip>:80/api/xcc/<cube_id>`.
@@ -500,7 +504,7 @@ at `http://<guest-ip>:80/api/xcc/<cube_id>`.
500
504
  The server registers 7 comprehensive tools conforming to the MCP JSON Schema specification:
501
505
 
502
506
  ### 1. `list_hosts`
503
- Query capacity, health, CPU/RAM/Disk metrics, and resource-derived 8GB unit estimates across Proxmox VE (`proxmox-lab`, `proxmox-mini`) and VMware ESXi (`esxi-intel-192-168-123-176`).
507
+ Query live free RAM/CPU/disk capacity, health, and deprecated resource-derived 8GB unit estimates across Proxmox VE (`proxmox-lab`, `proxmox-mini`) and VMware ESXi (`esxi-intel-192-168-123-176`).
504
508
 
505
509
  ```json
506
510
  {
@@ -524,8 +528,8 @@ Query unified fleet inventory across Proxmox VE and VMware ESXi VMs with power s
524
528
  }
525
529
  ```
526
530
 
527
- ### 3. `claim_slot`
528
- Lease an 8GB appliance slot on a specified host or randomly across eligible Proxmox peers, with lease TTL and Linear issue tracking. Use `placementSeed` only in deterministic tests.
531
+ ### 3. `claim_slot` (deprecated alias of `create_appliance_claim`)
532
+ Claim capacity on a specified host or the capacity-ranked eligible Proxmox host (most free RAM, then disk), with TTL and Linear issue tracking. The result carries `deprecated: true` and the replacement. Use `placementSeed` only in deterministic tests.
529
533
 
530
534
  ```json
531
535
  {
@@ -540,8 +544,8 @@ Lease an 8GB appliance slot on a specified host or randomly across eligible Prox
540
544
 
541
545
  Claims can exceed the former 2/4/6 counts whenever fresh physical resources permit. Pass `slotSizeMb` and `diskGb` for a nonstandard lease size. Provisioning forwards the actual requested memory, vCPU, storage pool and disk requirements, then rechecks resources before public claim creation or cloning. Existing claims keep their identity, issue and TTL; the change does not trigger fleet cleanup.
542
546
 
543
- ### 4. `release_slot`
544
- Release an active 8GB slot claim by `claimId`, `tag`, `requester`, or `linearIssue`, with optional automatic destruction of attached test VMs.
547
+ ### 4. `release_slot` (deprecated alias of `delete_appliance_claim`)
548
+ Release an active claim by `claimId`, `tag`, `requester`, or `linearIssue`, with optional automatic destruction of attached test VMs.
545
549
 
546
550
  Canonical mode requires the complete identity/evidence fields below. Review the
547
551
  request with `apply: false`; then repeat the same request with `apply: true` and
@@ -1 +1 @@
1
- {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../src/hypervisors/manager.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,iBAAiB,EACjB,YAAY,EACZ,eAAe,EACf,aAAa,EACb,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,WAAW,EACX,qBAAqB,EACrB,sBAAsB,EACtB,UAAU,EACV,cAAc,EACf,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AAKxG,OAAO,EAAE,qBAAqB,EAAgC,MAAM,yBAAyB,CAAC;AAI9F,MAAM,WAAW,6BAA6B;IAC5C,OAAO,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAC9B,cAAc,CAAC,EAAE,iBAAiB,EAAE,CAAC;IACrC,WAAW,CAAC,EAAE,cAAc,EAAE,CAAC;IAC/B,WAAW,CAAC,EAAE,0BAA0B,CAAC;IACzC,YAAY,CAAC,EAAE,qBAAqB,CAAC;IACrC,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,qBAAa,sBAAsB;IACjC,OAAO,CAAC,OAAO,CAA6C;IAC5D,OAAO,CAAC,YAAY,CAAwB;gBAEhC,OAAO,GAAE,6BAAkC;IAmDvD;;OAEG;IACH,cAAc,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI;IAK/C;;OAEG;IACH,SAAS,CAAC,eAAe,EAAE,MAAM,GAAG,iBAAiB;IA4CrD;;OAEG;IACH,aAAa,IAAI,iBAAiB,EAAE;IAIpC;;OAEG;IACH,gBAAgB,CAAC,IAAI,EAAE,cAAc,GAAG,iBAAiB,EAAE;IAI3D;;OAEG;IACG,oBAAoB,CAAC,MAAM,CAAC,EAAE;QAClC,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,cAAc,CAAC,EAAE,cAAc,GAAG,KAAK,CAAC;QACxC,cAAc,CAAC,EAAE,OAAO,CAAC;KAC1B,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAiB3B;;OAEG;IACG,oBAAoB,CAAC,MAAM,CAAC,EAAE,sBAAsB,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAyEvF;;OAEG;IACG,MAAM,CACV,UAAU,EAAE,MAAM,GAAG,MAAM,EAC3B,aAAa,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC;QAAE,MAAM,EAAE,iBAAiB,CAAC;QAAC,EAAE,EAAE,eAAe,CAAA;KAAE,GAAG,IAAI,CAAC;IAuBrE;;OAEG;IACG,WAAW,CAAC,MAAM,EAAE,aAAa,GAAG;QAAE,cAAc,CAAC,EAAE,cAAc,CAAA;KAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAgC1G;;OAEG;IACG,QAAQ,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC;IAiG/D;;OAEG;IACG,WAAW,CAAC,sBAAsB,SAAiB,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IA+ClF;;OAEG;IACG,wBAAwB,IAAI,OAAO,CAAC,qBAAqB,CAAC;IA+BhE;;OAEG;IACG,wBAAwB,CAC5B,oBAAoB,GAAE,cAAc,GAAG,KAAa,EACpD,OAAO,GAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAChC,GAC9C,OAAO,CAAC,UAAU,EAAE,CAAC;CAuDzB"}
1
+ {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../src/hypervisors/manager.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,iBAAiB,EACjB,YAAY,EACZ,eAAe,EACf,aAAa,EACb,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,WAAW,EACX,qBAAqB,EACrB,sBAAsB,EACtB,UAAU,EACV,cAAc,EACf,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AAKxG,OAAO,EAAE,qBAAqB,EAAgC,MAAM,yBAAyB,CAAC;AAK9F,MAAM,WAAW,6BAA6B;IAC5C,OAAO,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAC9B,cAAc,CAAC,EAAE,iBAAiB,EAAE,CAAC;IACrC,WAAW,CAAC,EAAE,cAAc,EAAE,CAAC;IAC/B,WAAW,CAAC,EAAE,0BAA0B,CAAC;IACzC,YAAY,CAAC,EAAE,qBAAqB,CAAC;IACrC,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,qBAAa,sBAAsB;IACjC,OAAO,CAAC,OAAO,CAA6C;IAC5D,OAAO,CAAC,YAAY,CAAwB;gBAEhC,OAAO,GAAE,6BAAkC;IAmDvD;;OAEG;IACH,cAAc,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI;IAK/C;;OAEG;IACH,SAAS,CAAC,eAAe,EAAE,MAAM,GAAG,iBAAiB;IA4CrD;;OAEG;IACH,aAAa,IAAI,iBAAiB,EAAE;IAIpC;;OAEG;IACH,gBAAgB,CAAC,IAAI,EAAE,cAAc,GAAG,iBAAiB,EAAE;IAI3D;;OAEG;IACG,oBAAoB,CAAC,MAAM,CAAC,EAAE;QAClC,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,cAAc,CAAC,EAAE,cAAc,GAAG,KAAK,CAAC;QACxC,cAAc,CAAC,EAAE,OAAO,CAAC;KAC1B,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAiB3B;;OAEG;IACG,oBAAoB,CAAC,MAAM,CAAC,EAAE,sBAAsB,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAyEvF;;OAEG;IACG,MAAM,CACV,UAAU,EAAE,MAAM,GAAG,MAAM,EAC3B,aAAa,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC;QAAE,MAAM,EAAE,iBAAiB,CAAC;QAAC,EAAE,EAAE,eAAe,CAAA;KAAE,GAAG,IAAI,CAAC;IAuBrE;;OAEG;IACG,WAAW,CAAC,MAAM,EAAE,aAAa,GAAG;QAAE,cAAc,CAAC,EAAE,cAAc,CAAA;KAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAgC1G;;OAEG;IACG,QAAQ,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC;IAiG/D;;OAEG;IACG,WAAW,CAAC,sBAAsB,SAAiB,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IA+ClF;;OAEG;IACG,wBAAwB,IAAI,OAAO,CAAC,qBAAqB,CAAC;IA+BhE;;OAEG;IACG,wBAAwB,CAC5B,oBAAoB,GAAE,cAAc,GAAG,KAAa,EACpD,OAAO,GAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAChC,GAC9C,OAAO,CAAC,UAAU,EAAE,CAAC;CAqDzB"}
@@ -9,6 +9,7 @@ import { EsxiDriver } from "./esxi/client.js";
9
9
  import { MockEsxiDriver } from "./esxi/mock.js";
10
10
  import { defaultSafetyGuardrailEngine } from "../guardrails/safety.js";
11
11
  import { logger } from "../utils/logger.js";
12
+ import { capacityScore, rankHostsByCapacity } from "../tools/host-capacity-rank.js";
12
13
  import { LEGACY_ESXI_HOST_ID, esxiSlotsEnabled } from "./esxi/retired.js";
13
14
  export class MultiHypervisorManager {
14
15
  drivers = new Map();
@@ -453,15 +454,10 @@ export class MultiHypervisorManager {
453
454
  const max = used + avail;
454
455
  const memFree = Number.isFinite(cap.memoryFreeBytes) ? Math.max(0, cap.memoryFreeBytes) : 0;
455
456
  const cpuUsed = Number.isFinite(cap.cpuUsedPercent) ? cap.cpuUsedPercent : 0;
456
- // Scoring formula: available slots weight + free memory score - CPU penalty
457
- let score = avail * 1000 + Math.floor(memFree / (1024 * 1024 * 1024)) * 10 - cpuUsed;
458
- if (avail <= 0) {
459
- score = -10000;
460
- }
461
- // Strong preference for proxmox-mini (Minisforum 64GB) to load it up first and preserve proxmox-lab RAM for CUCM / core lab
462
- if (cap.name === "proxmox-mini" || cap.name === "proxmox-minis-lab") {
463
- score += 5000;
464
- }
457
+ // REL-1746: capacity ranking by live free RAM, then free disk headroom. `availableSlots`, `maxSlots` and
458
+ // `usedSlots` stay as deprecated numeric estimates; `score` is informational and agrees with the order.
459
+ const freeDiskGb = Number.isFinite(freeDiskBytes) ? Math.max(0, freeDiskBytes) / 1024 ** 3 : 0;
460
+ const score = avail > 0 ? capacityScore({ hostId: cap.name, freeMemoryMb: memFree / 1024 ** 2, freeDiskGb }) : -10000;
465
461
  return {
466
462
  hostName: cap.name,
467
463
  hypervisor: cap.type,
@@ -470,11 +466,15 @@ export class MultiHypervisorManager {
470
466
  usedSlots: used,
471
467
  cpuUsedPercent: cpuUsed,
472
468
  memoryFreeBytes: memFree,
469
+ freeDiskBytes: Number.isFinite(freeDiskBytes) ? Math.max(0, freeDiskBytes) : 0,
473
470
  score
474
471
  };
475
472
  }));
476
- // Sort descending by score
477
- return ranked.sort((a, b) => b.score - a.score);
473
+ // Best live capacity first; hosts that cannot take the guest (or retired ESXi) sort last.
474
+ return rankHostsByCapacity(ranked.map((host) => ({
475
+ ...host, hostId: host.hostName, freeMemoryMb: host.memoryFreeBytes / 1024 ** 2, freeDiskGb: (host.freeDiskBytes ?? 0) / 1024 ** 3,
476
+ fallback: host.hypervisor === "esxi", unavailable: host.availableSlots <= 0,
477
+ })));
478
478
  }
479
479
  }
480
480
  //# sourceMappingURL=manager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"manager.js","sourceRoot":"","sources":["../../../src/hypervisors/manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manager.js","sourceRoot":"","sources":["../../../src/hypervisors/manager.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAiBH,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAyB,4BAA4B,EAAE,MAAM,yBAAyB,CAAC;AAC9F,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AACpF,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAW1E,MAAM,OAAO,sBAAsB;IACzB,OAAO,GAAmC,IAAI,GAAG,EAAE,CAAC;IACpD,YAAY,CAAwB;IAE5C,YAAY,UAAyC,EAAE;QACrD,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,4BAA4B,CAAC;QAEzE,0CAA0C;QAC1C,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACpB,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gBACrC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;YAC9B,CAAC;QACH,CAAC;QAED,4DAA4D;QAC5D,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;YACxB,MAAM,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,KAAK,eAAe,IAAI,OAAO,CAAC,SAAS,CAAC;YACrF,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,WAAW,CAAC,YAAY,IAAI,OAAO,CAAC,WAAW,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC;gBACtF,IAAI,UAAU,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;oBAC7B,IAAI,CAAC,cAAc,CAAC,IAAI,iBAAiB,CAAC,GAAG,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;gBACrE,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,cAAc,CAAC,IAAI,aAAa,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;gBAC5E,CAAC;YACH,CAAC;YACD,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,WAAW,CAAC,SAAS,IAAI,EAAE,EAAE,CAAC;gBACvD,IAAI,UAAU,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;oBAC9B,IAAI,CAAC,cAAc,CAAC,IAAI,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;gBACnE,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,cAAc,CAAC,IAAI,UAAU,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;gBAC1E,CAAC;YACH,CAAC;QACH,CAAC;QAED,sCAAsC;QACtC,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;YAC3B,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;gBACzC,IAAI,OAAO,CAAC,SAAS,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;oBACpC,IAAI,CAAC,cAAc,CAAC,IAAI,iBAAiB,CAAC,GAAG,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;gBACrE,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,cAAc,CAAC,IAAI,aAAa,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;gBAC5E,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;YACxB,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;gBACvC,IAAI,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;oBACrC,IAAI,CAAC,cAAc,CAAC,IAAI,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;gBACnE,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,cAAc,CAAC,IAAI,UAAU,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;gBAC1E,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACH,cAAc,CAAC,MAAyB;QACtC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAC1C,MAAM,CAAC,KAAK,CAAC,0CAA0C,MAAM,CAAC,QAAQ,MAAM,MAAM,CAAC,cAAc,GAAG,CAAC,CAAC;IACxG,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,eAAuB;QAC/B,MAAM,GAAG,GAAG,eAAe,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;QAEjD,kBAAkB;QAClB,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACrC,IAAI,MAAM;YAAE,OAAO,MAAM,CAAC;QAE1B,KAAK,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;YACnD,IAAI,GAAG,CAAC,WAAW,EAAE,KAAK,GAAG;gBAAE,OAAO,MAAM,CAAC;QAC/C,CAAC;QAED,sBAAsB;QACtB,IAAI,GAAG,KAAK,aAAa,IAAI,GAAG,KAAK,KAAK,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACrF,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;YAC9C,IAAI,KAAK;gBAAE,OAAO,KAAK,CAAC;QAC1B,CAAC;QAED,IACE,GAAG,KAAK,cAAc;YACtB,GAAG,KAAK,mBAAmB;YAC3B,GAAG,KAAK,OAAO;YACf,GAAG,KAAK,MAAM;YACd,GAAG,KAAK,UAAU,EAClB,CAAC;YACD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;YACxF,IAAI,KAAK;gBAAE,OAAO,KAAK,CAAC;QAC1B,CAAC;QAED,IACE,GAAG,KAAK,mBAAmB;YAC3B,GAAG,KAAK,MAAM;YACd,GAAG,KAAK,UAAU;YAClB,GAAG,KAAK,iBAAiB,EACzB,CAAC;YACD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;YACpD,IAAI,KAAK;gBAAE,OAAO,KAAK,CAAC;QAC1B,CAAC;QAED,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7D,MAAM,IAAI,KAAK,CACb,oBAAoB,eAAe,kCAAkC,SAAS,GAAG,CAClF,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,aAAa;QACX,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED;;OAEG;IACH,gBAAgB,CAAC,IAAoB;QACnC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,KAAK,IAAI,CAAC,CAAC;IACpF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,oBAAoB,CAAC,MAI1B;QACC,IAAI,aAAa,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QAEzC,IAAI,MAAM,EAAE,IAAI,EAAE,CAAC;YACjB,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAC3C,aAAa,GAAG,CAAC,MAAM,CAAC,CAAC;QAC3B,CAAC;QACD,IAAI,MAAM,EAAE,cAAc,IAAI,MAAM,CAAC,cAAc,KAAK,KAAK,EAAE,CAAC;YAC9D,aAAa,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,cAAc,KAAK,MAAM,CAAC,cAAc,CAAC,CAAC;QACpG,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,EAAE,cAAc,IAAI,gBAAgB,EAAE,CAAC;QAC/D,IAAI,CAAC,SAAS;YAAE,aAAa,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,cAAc,KAAK,MAAM,CAAC,CAAC;QACnG,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;QAC9F,OAAO,UAAU,CAAC;IACpB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,oBAAoB,CAAC,MAA+B;QACxD,8EAA8E;QAC9E,4EAA4E;QAC5E,8BAA8B;QAC9B,MAAM,SAAS,GAAG,MAAM,EAAE,cAAc,IAAI,gBAAgB,EAAE,CAAC;QAC/D,IAAI,aAAa,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QACzC,IAAI,CAAC,SAAS;YAAE,aAAa,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,KAAK,MAAM,CAAC,CAAC;QAEzF,MAAM,cAAc,GAAG,MAAM,EAAE,UAAU,IAAI,MAAM,EAAE,cAAc,CAAC;QACpE,IAAI,cAAc,IAAI,cAAc,KAAK,KAAK,EAAE,CAAC;YAC/C,aAAa,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,KAAK,cAAc,CAAC,CAAC;QACnF,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,EAAE,IAAI,IAAI,MAAM,EAAE,QAAQ,CAAC;QAClD,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YACxC,aAAa,GAAG,SAAS,IAAI,MAAM,CAAC,cAAc,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAChF,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAC3E,IAAI,MAAM,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC;QAE9B,mFAAmF;QACnF,MAAM,gBAAgB,GAAG,MAAM,EAAE,gBAAgB,IAAI,KAAK,CAAC;QAC3D,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACtB,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;QACjD,CAAC;QAED,mBAAmB;QACnB,IAAI,MAAM,EAAE,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;YAC9C,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;gBAChC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC;YAC1D,CAAC;iBAAM,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;gBACvC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC;YAC1D,CAAC;iBAAM,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;gBACvC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;YACtE,CAAC;iBAAM,IAAI,MAAM,CAAC,MAAM,KAAK,YAAY,EAAE,CAAC;gBAC1C,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,WAAW,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;YACpE,CAAC;QACH,CAAC;QAED,kCAAkC;QAClC,IAAI,MAAM,EAAE,MAAM,EAAE,CAAC;YACnB,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;YAClD,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE;gBAC5B,MAAM,WAAW,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;gBAC3D,MAAM,SAAS,GAAG,EAAE,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;gBACvD,MAAM,SAAS,GAAG,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;gBACjF,MAAM,aAAa,GAAG,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC;gBAC9E,MAAM,cAAc,GAAG,EAAE,CAAC,cAAc,EAAE,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC;gBAClF,MAAM,WAAW,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;gBAE1E,OAAO,WAAW,IAAI,SAAS,IAAI,SAAS,IAAI,aAAa,IAAI,cAAc,IAAI,WAAW,CAAC;YACjG,CAAC,CAAC,CAAC;QACL,CAAC;QAED,iBAAiB;QACjB,IAAI,MAAM,EAAE,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3C,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;YACpE,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE;gBAC5B,MAAM,MAAM,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;gBACnD,OAAO,YAAY,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;YAC3D,CAAC,CAAC,CAAC;QACL,CAAC;QAED,0DAA0D;QAC1D,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAC1B,IAAI,CAAC,CAAC,UAAU,KAAK,CAAC,CAAC,UAAU;gBAAE,OAAO,CAAC,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;YACnF,IAAI,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,QAAQ;gBAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;YAC3E,OAAO,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QAChE,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CACV,UAA2B,EAC3B,aAAsB;QAEtB,IAAI,aAAa,EAAE,CAAC;YAClB,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;gBAC7C,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;gBAC1C,IAAI,EAAE;oBAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;YAChC,CAAC;YAAC,MAAM,CAAC;gBACP,mCAAmC;YACrC,CAAC;QACH,CAAC;QAED,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;YAC3C,IAAI,CAAC;gBACH,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;gBAC1C,IAAI,EAAE;oBAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;YAChC,CAAC;YAAC,MAAM,CAAC;gBACP,qBAAqB;YACvB,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,MAA2D;QAC3E,IAAI,YAA+B,CAAC;QAEpC,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;YACtB,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACnD,CAAC;aAAM,CAAC;YACN,qDAAqD;YACrD,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;YAC/D,IAAI,WAAW,EAAE,CAAC;gBAChB,YAAY,GAAG,WAAW,CAAC,MAAM,CAAC;YACpC,CAAC;iBAAM,CAAC;gBACN,4DAA4D;gBAC5D,MAAM,IAAI,GAAG,MAAM,CAAC,cAAc,IAAI,KAAK,CAAC;gBAC5C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,IAAI,EAAE;oBACvD,QAAQ,EAAE,CAAC,MAAM,CAAC,WAAW,IAAI,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,GAAG,IAAI,IAAI,CAAC;oBAC9D,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO;iBACpE,CAAC,CAAC;gBACH,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,cAAc,IAAI,CAAC,EAAE,CAAC;oBACzD,MAAM,IAAI,KAAK,CACb,gFAAgF,IAAI,IAAI,CACzF,CAAC;gBACJ,CAAC;gBACD,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;YACpD,CAAC;QACH,CAAC;QAED,MAAM,CAAC,IAAI,CACT,oBAAoB,MAAM,CAAC,SAAS,yBAAyB,YAAY,CAAC,QAAQ,MAAM,YAAY,CAAC,cAAc,MAAM,CAC1H,CAAC;QACF,OAAO,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACtC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAQ,CAAC,MAAsB;QACnC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;QACtE,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CACb,OAAO,MAAM,CAAC,UAAU,6CACtB,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,cAAc,MAAM,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,EAC3D,GAAG,CACJ,CAAC;QACJ,CAAC;QAED,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,KAAK,CAAC;QAC7B,MAAM,UAAU,GAAG,EAAE,CAAC,MAAM,CAAC;QAC7B,IAAI,SAAS,GAAG,UAAU,CAAC;QAC3B,IAAI,OAAO,GAAG,WAAW,MAAM,CAAC,MAAM,qBAAqB,EAAE,CAAC,IAAI,MAAM,EAAE,CAAC,EAAE,IAAI,CAAC;QAElF,QAAQ,MAAM,CAAC,MAAM,EAAE,CAAC;YACtB,KAAK,OAAO;gBACV,MAAM,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;gBAC5B,SAAS,GAAG,SAAS,CAAC;gBACtB,OAAO,GAAG,OAAO,EAAE,CAAC,IAAI,MAAM,EAAE,CAAC,EAAE,4BAA4B,CAAC;gBAChE,MAAM;YAER,KAAK,MAAM;gBACT,MAAM,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC,CAAC;gBAClD,SAAS,GAAG,SAAS,CAAC;gBACtB,OAAO,GAAG,OAAO,EAAE,CAAC,IAAI,MAAM,EAAE,CAAC,EAAE,yBAAyB,CAAC;gBAC7D,MAAM;YAER,KAAK,UAAU;gBACb,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;oBACtB,MAAM,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC,CAAC;gBACxD,CAAC;qBAAM,CAAC;oBACN,MAAM,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC,CAAC;gBACpD,CAAC;gBACD,SAAS,GAAG,SAAS,CAAC;gBACtB,OAAO,GAAG,OAAO,EAAE,CAAC,IAAI,MAAM,EAAE,CAAC,EAAE,gCAAgC,CAAC;gBACpE,MAAM;YAER,KAAK,QAAQ;gBACX,MAAM,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;gBAC7B,SAAS,GAAG,SAAS,CAAC;gBACtB,OAAO,GAAG,OAAO,EAAE,CAAC,IAAI,MAAM,EAAE,CAAC,EAAE,0BAA0B,CAAC;gBAC9D,MAAM;YAER,KAAK,OAAO;gBACV,MAAM,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;gBAC7B,SAAS,GAAG,SAAS,CAAC;gBACtB,OAAO,GAAG,OAAO,EAAE,CAAC,IAAI,MAAM,EAAE,CAAC,EAAE,yBAAyB,CAAC;gBAC7D,MAAM;YAER,KAAK,SAAS;gBACZ,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;oBACrB,MAAM,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;oBAC9B,SAAS,GAAG,QAAQ,CAAC;oBACrB,OAAO,GAAG,OAAO,EAAE,CAAC,IAAI,MAAM,EAAE,CAAC,EAAE,qBAAqB,CAAC;gBAC3D,CAAC;qBAAM,CAAC;oBACN,MAAM,IAAI,KAAK,CAAC,2CAA2C,MAAM,CAAC,QAAQ,IAAI,CAAC,CAAC;gBAClF,CAAC;gBACD,MAAM;YAER,KAAK,QAAQ;gBACX,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;oBACpB,MAAM,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;oBAC7B,SAAS,GAAG,SAAS,CAAC;oBACtB,OAAO,GAAG,OAAO,EAAE,CAAC,IAAI,MAAM,EAAE,CAAC,EAAE,yBAAyB,CAAC;gBAC/D,CAAC;qBAAM,CAAC;oBACN,MAAM,IAAI,KAAK,CAAC,0CAA0C,MAAM,CAAC,QAAQ,IAAI,CAAC,CAAC;gBACjF,CAAC;gBACD,MAAM;YAER,KAAK,QAAQ;gBACX,OAAO,GAAG,OAAO,EAAE,CAAC,IAAI,MAAM,EAAE,CAAC,EAAE,6BAA6B,EAAE,CAAC,MAAM,IAAI,CAAC;gBAC9E,MAAM;YAER,KAAK,SAAS;gBACZ,MAAM,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;gBAC9B,SAAS,GAAG,SAAS,CAAC;gBACtB,OAAO,GAAG,OAAO,EAAE,CAAC,IAAI,MAAM,EAAE,CAAC,EAAE,8CAA8C,CAAC;gBAClF,MAAM;YAER;gBACE,MAAM,IAAI,KAAK,CAAC,2BAA4B,MAAc,CAAC,MAAM,IAAI,CAAC,CAAC;QAC3E,CAAC;QAED,OAAO;YACL,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;YACnB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,UAAU,EAAE,MAAM,CAAC,cAAc;YACjC,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,cAAc,EAAE,UAAU;YAC1B,SAAS;YACT,OAAO;YACP,OAAO,EAAE,IAAI;YACb,IAAI,EAAE,MAAM,CAAC,MAAM;SACpB,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,sBAAsB,GAAG,cAAc;QACvD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAC;QACxE,MAAM,OAAO,GAAkB,EAAE,CAAC;QAElC,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;YACrB,MAAM,OAAO,GAAa,EAAE,CAAC;YAC7B,IAAI,QAAQ,GAAG,KAAK,CAAC;YACrB,IAAI,SAA+C,CAAC;YAEpD,wDAAwD;YACxD,IAAI,CAAC,EAAE,CAAC,UAAU,IAAI,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC;gBACtC,IAAI,CAAC,EAAE,CAAC,cAAc,EAAE,CAAC;oBACvB,QAAQ,GAAG,IAAI,CAAC;oBAChB,SAAS,GAAG,WAAW,CAAC;oBACxB,OAAO,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC;gBAC9D,CAAC;qBAAM,IAAI,EAAE,CAAC,cAAc,KAAK,sBAAsB,EAAE,CAAC;oBACxD,QAAQ,GAAG,IAAI,CAAC;oBAChB,SAAS,GAAG,kBAAkB,CAAC;oBAC/B,OAAO,CAAC,IAAI,CACV,oBAAoB,EAAE,CAAC,cAAc,4BAA4B,sBAAsB,IAAI,CAC5F,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,wDAAwD;YACxD,IAAI,CAAC,EAAE,CAAC,UAAU,IAAI,CAAC,EAAE,CAAC,WAAW,IAAI,CAAC,EAAE,CAAC,WAAW,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;gBACtE,QAAQ,GAAG,IAAI,CAAC;gBAChB,SAAS,GAAG,SAAS,IAAI,qBAAqB,CAAC;gBAC/C,OAAO,CAAC,IAAI,CAAC,2DAA2D,CAAC,CAAC;YAC5E,CAAC;YAED,OAAO,CAAC,IAAI,CAAC;gBACX,IAAI,EAAE,EAAE,CAAC,EAAE;gBACX,MAAM,EAAE,EAAE,CAAC,IAAI;gBACf,QAAQ,EAAE,EAAE,CAAC,QAAQ;gBACrB,UAAU,EAAE,EAAE,CAAC,UAAU;gBACzB,eAAe,EAAE,sBAAsB;gBACvC,aAAa,EAAE,EAAE,CAAC,cAAc;gBAChC,QAAQ;gBACR,SAAS;gBACT,OAAO;aACR,CAAC,CAAC;QACL,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,wBAAwB;QAC5B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,EAAE,gBAAgB,EAAE,KAAK,EAAE,CAAC,CAAC;QACzE,MAAM,QAAQ,GAGV,EAAE,CAAC;QAEP,IAAI,UAAU,GAAG,CAAC,CAAC;QAEnB,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;YACrB,MAAM,GAAG,GAAG,EAAE,CAAC,cAAc,IAAI,aAAa,CAAC;YAC/C,IAAI,CAAC,EAAE,CAAC,cAAc,IAAI,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC;gBAC1C,UAAU,EAAE,CAAC;YACf,CAAC;YAED,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBACnB,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC;YAC7D,CAAC;YAED,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC;YACtB,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YAChC,QAAQ,CAAC,GAAG,CAAC,CAAC,aAAa,CAAC,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,aAAa,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACjG,CAAC;QAED,OAAO;YACL,QAAQ,EAAE,GAAG,CAAC,MAAM;YACpB,QAAQ;YACR,UAAU;SACX,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,wBAAwB,CAC5B,uBAA+C,KAAK,EACpD,UACI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;QAE/C,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC;YACjD,cAAc,EAAE,oBAAoB,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,oBAAoB;SAC9E,CAAC,CAAC;QAEH,MAAM,MAAM,GAAiB,MAAM,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;YAC1E,IAAI,aAAa,GAAG,GAAG,CAAC,gBAAgB,CAAC;YACzC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gBACpB,IAAI,CAAC;oBACH,MAAM,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAC3E,IAAI,CAAC,OAAO,KAAK,OAAO,CAAC,OAAO,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,OAAO;2BAC5D,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;oBACjD,aAAa,GAAG,IAAI,EAAE,cAAc,IAAI,CAAC,CAAC;gBAC5C,CAAC;gBAAC,MAAM,CAAC;oBAAC,aAAa,GAAG,CAAC,CAAC;gBAAC,CAAC;YAChC,CAAC;YACD,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,KAAK,QAAQ,IAAI,GAAG,CAAC,gBAAgB,GAAG,CAAC,IAAI,GAAG,CAAC,iBAAiB,GAAG,CAAC;mBACzF,CAAC,GAAG,CAAC,gBAAgB,EAAE,GAAG,CAAC,iBAAiB,EAAE,GAAG,CAAC,eAAe,EAAE,aAAa;oBACjF,GAAG,CAAC,aAAa,EAAE,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC;qBACrE,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;mBACtD,OAAO,CAAC,QAAQ,GAAG,CAAC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,QAAQ,GAAG,CAAC;mBAClE,OAAO,CAAC,QAAQ,IAAI,GAAG,CAAC,aAAa,IAAI,GAAG,CAAC,eAAe,IAAI,GAAG,CAAC,gBAAgB,CAAC;YAC1F,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAC3C,GAAG,CAAC,eAAe,GAAG,CAAC,OAAO,CAAC,QAAQ,GAAG,IAAI,IAAI,CAAC,CAAC,EAAE,aAAa,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3G,MAAM,KAAK,GAAG,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,SAAS,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;YAChF,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,UAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAChF,MAAM,GAAG,GAAG,IAAI,GAAG,KAAK,CAAC;YACzB,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5F,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;YAE7E,yGAAyG;YACzG,wGAAwG;YACxG,MAAM,UAAU,GAAG,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,aAAa,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC/F,MAAM,KAAK,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,GAAG,IAAI,IAAI,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YAEtH,OAAO;gBACL,QAAQ,EAAE,GAAG,CAAC,IAAI;gBAClB,UAAU,EAAE,GAAG,CAAC,IAAI;gBACpB,cAAc,EAAE,KAAK;gBACrB,QAAQ,EAAE,GAAG;gBACb,SAAS,EAAE,IAAI;gBACf,cAAc,EAAE,OAAO;gBACvB,eAAe,EAAE,OAAO;gBACxB,aAAa,EAAE,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC9E,KAAK;aACN,CAAC;QACJ,CAAC,CAAC,CAAC,CAAC;QAEJ,0FAA0F;QAC1F,OAAO,mBAAmB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAC/C,GAAG,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,CAAC,eAAe,GAAG,IAAI,IAAI,CAAC,EAAE,UAAU,EAAE,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,CAAC,GAAG,IAAI,IAAI,CAAC;YACjI,QAAQ,EAAE,IAAI,CAAC,UAAU,KAAK,MAAM,EAAE,WAAW,EAAE,IAAI,CAAC,cAAc,IAAI,CAAC;SAC5E,CAAC,CAAC,CAAC,CAAC;IACP,CAAC;CACF"}
@@ -155,6 +155,9 @@ export interface RankedHost {
155
155
  usedSlots: number;
156
156
  cpuUsedPercent: number;
157
157
  memoryFreeBytes: number;
158
+ /** Live free disk headroom for the guest storage (REL-1746 capacity ranking). */
159
+ freeDiskBytes?: number;
160
+ /** Informational; ranking is free RAM then free disk, not this value. */
158
161
  score: number;
159
162
  }
160
163
  export interface StoragePoolInfo {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/hypervisors/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/hypervisors/types.ts"],"names":[],"mappings":"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"}
@@ -22,12 +22,12 @@ export const DEFAULT_SERVER_INSTRUCTIONS = "You are connected to @calltelemetry/
22
22
  "Capabilities:\n" +
23
23
  "- Multi-Hypervisor Capacity & Health: Query Proxmox VE (proxmox-lab, proxmox-minis-lab, proxmox-ibm64) with 'list_hosts'. ESXi is retired and optional (ALLOW_ESXI_SLOTS, default off).\n" +
24
24
  "- Unified Fleet Inventory: Discover VMs across Proxmox with status, IP, VLAN, protected state, release version, and Linear leases via 'list_inventory'.\n" +
25
- "- Resource-based Lease Engine: Admit the requested guest size using fresh physical RAM, VM-storage capacity, and host health; slot counts are estimates with no per-host or global count quotas via 'claim_slot', 'release_slot', and 'list_slots'.\n" +
26
- "- Automated Purge & Reclamation: Purge expired leases via 'purge_slots'. Classify expired/dead leftover VMs with 'list_expired_vms' and 'cleanup_expired_vms'; cleanup dry-run may omit confirmAssets for the full plan or pass an exact scope, while mutation requires a non-empty confirmAssets list and deletes only selected delete-ready disposables whose exact claim expiry has passed (graceful shutdown first for selected running expired guests); terminal ticket state alone never makes a claim delete-ready (ADR 0400 lease precedence).\n" +
25
+ "- Resource-based Lease Engine: Admit the requested guest size using fresh physical RAM, VM-storage capacity, and host health; slot counts are deprecated estimates with no per-host or global count quotas; the slot verbs 'claim_slot', 'release_slot', 'list_slots' and 'find_slot' are deprecated aliases (REL-1746) for create_appliance_claim, delete_appliance_claim, list_appliance_claims and list_hosts.\n" +
26
+ "- Automated Purge & Reclamation: The operator reaper deletes expired claims and unclaimed guests ('purge_slots' and 'pin_pool_slots' are retired by the slot retirement ADR (REL-1746)). Classify expired/dead leftover VMs with 'list_expired_vms' and 'cleanup_expired_vms'; cleanup dry-run may omit confirmAssets for the full plan or pass an exact scope, while mutation requires a non-empty confirmAssets list and deletes only selected delete-ready disposables whose exact claim expiry has passed (graceful shutdown first for selected running expired guests); terminal ticket state alone never makes a claim delete-ready (ADR 0400 lease precedence).\n" +
27
27
  "- Disposable VM Provisioning: Clone test appliance VMs from templates with network configuration via 'provision_vm'.\n" +
28
28
  "- Thin-only guest disks: every Proxmox guest disk this server creates, clones, migrates or imports must be on thin storage (lvmthin such as local-lvm, or a sparse zfspool). Thick, non-thin or undeterminable storage is refused with THICK_STORAGE_REFUSED before any change.\n" +
29
- "- Claim-scoped UAT guests: there is no 3-VM fleet. list_hosts on every Proxmox host, then auto_provision_vm into verified free RAM and storage on any Proxmox host with capacity (host=auto / resource-qualified). Hold that one guest until the live claim expires (renew while In Progress). Do not steal an In Progress or occupied guest. When the claim is released or expires, preserve evidence, shutdown, release_slot, and destroy that exact disposable. Parking it is leftover occupancy.\n" +
30
- "- Automated End-to-End Provisioning: Single-call workflow to auto-select a resource-qualified Proxmox host, claim slot, clone VM, boot, wait for SSH/health, and pin version via 'auto_provision_vm'.\n" +
29
+ "- Claim-scoped UAT guests: there is no 3-VM fleet. list_hosts on every Proxmox host, then auto_provision_vm into verified free RAM and storage on any Proxmox host with capacity (host=auto / resource-qualified). Hold that one guest until the live claim expires (renew while In Progress). Do not steal an In Progress or occupied guest. When the claim is released or expires, preserve evidence, shutdown, delete_appliance_claim, and destroy that exact disposable. Parking it is leftover occupancy.\n" +
30
+ "- Automated End-to-End Provisioning: Single-call workflow to auto-select the resource-qualified Proxmox host with the most free RAM, claim it, clone VM, boot, wait for SSH/health, and pin version via 'auto_provision_vm'.\n" +
31
31
  "- Power Lifecycle & Guardrails: Manage VM power states via 'vm_action'; use 'host_maintenance_shutdown' for a confirmed whole-host drain and graceful Proxmox/ESXi maintenance shutdown. Force host power-off is unavailable.\n" +
32
32
  "- Remote Appliance CLI Control: Execute mediated commands (status, health, assert_health, reset, set_version, db_vacuum, migrate, docker, logs) over secure SSH on Port 2222 via 'appliance_exec'.";
33
33
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../src/slot/manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../src/slot/manager.ts"],"names":[],"mappings":"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"}
@@ -4,13 +4,14 @@
4
4
  * atomic concurrency locking (AsyncMutex), TTL lease management, candidate slot ranking,
5
5
  * structured metadata labeling/indexing, and automated expired slot purge & reclamation.
6
6
  */
7
- import { createHash, randomInt, randomUUID } from "node:crypto";
7
+ import { createHash, randomUUID } from "node:crypto";
8
8
  import { CapacityExceededError, GlobalCapacityExceededError, SlotNotFoundError, LeaseCeilingExceededError, InvalidSlotOperationError, DatastoreCapacityExceededError, HypervisorSlotUnsupportedError, CubeNotFoundError, CubeAlreadyClaimedError } from "./types.js";
9
9
  import { ProxmoxDriver } from "../hypervisors/proxmox/client.js";
10
10
  import { AsyncMutex } from "../utils/mutex.js";
11
11
  import { defaultSafetyGuardrailEngine } from "../guardrails/safety.js";
12
12
  import { telemetry } from "../telemetry/index.js";
13
13
  import { logger } from "../utils/logger.js";
14
+ import { capacityScore, rankHostsByCapacity } from "../tools/host-capacity-rank.js";
14
15
  import { LEGACY_ESXI_HOST_ID, esxiSlotsEnabled } from "../hypervisors/esxi/retired.js";
15
16
  export * from "./types.js";
16
17
  /**
@@ -469,11 +470,19 @@ export class SlotManager {
469
470
  }
470
471
  throw new GlobalCapacityExceededError(`No eligible host has verified free resources for ${memoryMb} MB RAM and ${diskGb} GB disk.`, allocated, allocated);
471
472
  }
472
- eligible.sort((a, b) => a.host.hostId.localeCompare(b.host.hostId));
473
- const preferredIndex = request.preferredHost ? eligible.findIndex(({ host }) => host.hostId === this.normalizeHostId(request.preferredHost)) : -1;
474
- const index = preferredIndex >= 0 ? preferredIndex : request.placementSeed
475
- ? createHash("sha256").update(request.placementSeed).digest().readUInt32BE(0) % eligible.length
476
- : randomInt(eligible.length);
473
+ // REL-1746: rank by live free RAM then disk headroom. An explicit preferredHost still wins; a
474
+ // test-only placementSeed keeps its reproducible hash selection over the host-id order.
475
+ const rankedEligible = rankHostsByCapacity(eligible.map((entry) => ({
476
+ ...entry, hostId: entry.host.hostId, freeMemoryMb: entry.resources.freeMemoryMb, freeDiskGb: entry.resources.freeDiskGb,
477
+ fallback: entry.host.hypervisorType === "esxi",
478
+ })));
479
+ const preferredIndex = request.preferredHost ? rankedEligible.findIndex(({ host }) => host.hostId === this.normalizeHostId(request.preferredHost)) : -1;
480
+ let index = preferredIndex >= 0 ? preferredIndex : 0;
481
+ if (preferredIndex < 0 && request.placementSeed) {
482
+ rankedEligible.sort((a, b) => a.host.hostId.localeCompare(b.host.hostId));
483
+ index = createHash("sha256").update(request.placementSeed).digest().readUInt32BE(0) % rankedEligible.length;
484
+ }
485
+ eligible = rankedEligible;
477
486
  const targetSlot = this.createAvailableSlot(eligible[index].host);
478
487
  targetSlot.memoryMb = memoryMb;
479
488
  targetSlot.allocatedMemoryMb = memoryMb;
@@ -1398,32 +1407,13 @@ export class SlotManager {
1398
1407
  const freeDisk = resources.freeDiskGb;
1399
1408
  const totalMem = resources.totalMemoryMb;
1400
1409
  const freeMem = resources.freeMemoryMb;
1401
- // Host tiering: proxmox-mini (Tier 1 Primary), primary lab/IBM64 (Tier 2 Secondary), ESXi (Tier 3 Fallback)
1402
- let tier = "secondary";
1403
- let tierBoost = 10000;
1404
- let recommendationReason = "Secondary placement: Proxmox Lab appliance cluster";
1405
- if (hid === "proxmox-mini") {
1406
- tier = "primary";
1407
- tierBoost = 20000;
1408
- recommendationReason = "Primary placement: Minisforum high-IOPS NVMe appliance host";
1409
- }
1410
- else if (hid === "proxmox-lab") {
1411
- tier = "secondary";
1412
- tierBoost = 10000;
1413
- recommendationReason = "Secondary placement: Proxmox Lab appliance cluster";
1414
- }
1415
- else if (hid === "proxmox-ibm64") {
1416
- tier = "secondary";
1417
- tierBoost = 10000;
1418
- recommendationReason = "Secondary placement: IBM64 Proxmox appliance host";
1419
- }
1420
- else if (hostConfig.hypervisorType === "esxi" || hid.startsWith("esxi")) {
1421
- tier = "fallback";
1422
- tierBoost = 0; // Least preferred host — contains CUCM/CUBE and testbed fixtures
1423
- recommendationReason = "Fallback placement: ESXi Intel host (reserved for fixtures / heavy spillover)";
1424
- }
1425
- // Available slots score with tier priority: Mini outranks the other Proxmox hosts, which outrank ESXi.
1426
- const score = (availCount > 0 ? tierBoost : 0) + availCount * 100 + Math.floor(freeMem / 1024) * 10 + Math.floor(freeDisk / 100);
1410
+ // Capacity ranking (REL-1746): live free RAM, then disk headroom. `tier` is a legacy label only.
1411
+ const isEsxi = hostConfig.hypervisorType === "esxi" || hid.startsWith("esxi");
1412
+ const tier = isEsxi ? "fallback" : "primary";
1413
+ const recommendationReason = isEsxi
1414
+ ? "Fallback placement: ESXi Intel host (retired; reserved for fixtures / heavy spillover)"
1415
+ : `Capacity placement: ${Math.floor(freeMem / 1024)} GB free RAM, ${Math.floor(freeDisk)} GB free disk`;
1416
+ const score = capacityScore({ hostId: hid, freeMemoryMb: freeMem, freeDiskGb: freeDisk });
1427
1417
  allCandidates.push({
1428
1418
  hostId: hid,
1429
1419
  name: hostConfig.name,
@@ -1443,8 +1433,13 @@ export class SlotManager {
1443
1433
  recommendationReason
1444
1434
  });
1445
1435
  }
1446
- // Sort candidates by score descending
1447
- allCandidates.sort((a, b) => b.score - a.score);
1436
+ // Rank by live free RAM then free disk headroom; hosts that cannot fit the guest sort last.
1437
+ const ranked = rankHostsByCapacity(allCandidates.map((candidate) => ({
1438
+ ...candidate, freeMemoryMb: candidate.freeMemoryMb, freeDiskGb: candidate.freeDiskGb,
1439
+ fallback: candidate.tier === "fallback", unavailable: candidate.availableSlots <= 0,
1440
+ })));
1441
+ const order = new Map(ranked.map((candidate, index) => [candidate.hostId, index]));
1442
+ allCandidates.sort((a, b) => order.get(a.hostId) - order.get(b.hostId));
1448
1443
  const availableSlotsTotal = allCandidates.reduce((sum, c) => sum + c.availableSlots, 0);
1449
1444
  // Check if Proxmox hosts have expired leases or disposable VMs
1450
1445
  const proxmoxReclaimableSlots = Array.from(this.slots.values()).filter((s) => (s.hostId === "proxmox-mini" || s.hostId === "proxmox-lab" || s.hostId === "proxmox-ibm64") &&