GCP Windows launch vanishes silently

Task 8884 · Done · Coder · created · updated

Found by the Dev oracle run (Task 8781, report artifact 8129), Operator org, (default) plan Windows switch ON. Supersedes draft #8880. Observed: 1. Your Cloud › GCP connection › OS Windows offered e2-standard-2/4; Create refused "Windows needs an x86 instance type with nested virtualization or metal." 2. With n2-standard-2 the order was accepted (audit "Create node order" 201, 00:09 UTC 2026-10-22); node t8781-gcpwin (01a160f0-73d9-7837-b48d-8f7fb131b024) showed status "?", its page said "Hidden by the org filter (Operator)", and within ~25 min the row disappeared with no error, notification or audit entry. A GCP VM may be left behind. 3. Products › Instance types: "Allowed (N)" stayed stale after Allow; GCP rows show no on-demand price; no Cloud column. Cause (picker): apps/api/app/gcp/catalog.py:97 sets `windows_capable = arch == "x86_64"`, ignoring `nested_capable` (catalog.py:81-87), while the API refuses at apps/api/app/routes/nodes/cloud.py:200-201 using the AWS-style rule (apps/api/app/instance_types.py:70-76). Check Azure's catalog for the same mismatch. Vanishing node: cause unknown — trace the durable cloud-node flow (apps/api/app/durable/cloud_node.py) for the failed/cleanup path that deletes the row without recording why. Requirements: - windows_capable for GCP (and Azure) matches the server's Windows rule, so the picker lists only types the API accepts. - A Windows GCP launch reaches online (Jaah service connected) or fails with a readable reason kept on the node/order and an audit entry; a failed launch never deletes the row silently and never leaves a billed VM. - A node just created in the current org opens without the "Hidden by the org filter" screen. - Instance types › Allowed shows each type's cloud and an on-demand price for GCP/Azure; the Allowed count updates after Allow. Out of scope: macOS, Jaah Hosted, Linux launch path (works). Done means: - On dev, a GCP Windows node launches, its service connects and it runs a task (screenshot); with the switch OFF no OS control is shown. - Unit tests pin GCP windows_capable and the failed-launch record; quick gate green. - Any test VM is deleted through the console.

Outcome

PR #6591 merged (c5d4d3e67) and deployed to dev; quick gate green, lane full gate green. Live on dev: the picker offers only Windows-capable types, a failed launch keeps its reason and an audit entry, and Allowed shows cloud and prices. The GCP Windows node never connected (unverified, operator skipped) — draft #8929; GCP second-region subnet bug — draft #8894. Memory: none applied.

Pull request

Artifacts

Activity

  • Ready
  • Runner started
  • Awaiting response
  • Awaiting response
  • Runner resumed
  • Runner ended (done)