Skip to content

Skip the SSHReady TCP probe for fc (Firecracker boots too fast to need it) - #1108

Merged
cdalar merged 1 commit into
mainfrom
fix/fc-skip-ssh-probe
Sep 9, 2026
Merged

cdalar merged 1 commit into
mainfrom
fix/fc-skip-ssh-probe

Conversation

@cdalar

@cdalar cdalar commented Sep 9, 2026

Copy link
Copy Markdown
Owner

Summary

  • Add a real SSH-reachability signal to fc/ch's List() #1105 added a real TCP-probe for Vm.SSHReady to both fc and ch's List().
  • Reported live: unnecessary added latency on the Linux/fc side, where the whole "still booting" gap this exists for basically doesn't happen -- a Firecracker microVM boots in milliseconds.
  • fc's List() no longer probes at all; Vm.SSHReady is derived straight from Status in mapFCVM instead.
  • ch (Cloud Hypervisor/Windows, where boots genuinely can take minutes) is unchanged -- still does the real probe from Add a real SSH-reachability signal to fc/ch's List() #1105.

Test plan

  • go build ./..., go vet ./pkg/cloud/..., gofmt -l clean, go test ./pkg/cloud/... passes
  • New regression test (TestProviderFC_List_SSHReadyMirrorsStatus) deploys a VM with no real reachable IP and confirms List() still reports SSHReady: true -- proving the probe path is actually gone, not just untested

🤖 Generated with Claude Code

Reported live as unnecessary added latency: fc's List() was probing
every not-yet-confirmed VM's SSH port the same way ch's now does, but a
Firecracker microVM boots in milliseconds (the whole point of the
technology) -- by the time any caller sees it in List() at all,
Status=="running" is already an accurate-enough proxy for "the guest
is reachable." Probing anyway only added needless latency to every
List() call (and, via boxctl-vms-agent.sh's periodic poll, to every
dashboard refresh) for a distinction that isn't real for this provider.

fc's Vm.SSHReady is now derived straight from Status (mapFCVM) instead
of a real probe -- ch (a genuinely slow-booting Windows guest) keeps
the real TCP probe from #1105 unchanged.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012iVNj3mykz8m7QfuxWN3ae
@cdalar
cdalar merged commit b855519 into main Sep 9, 2026
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

⌂ 换网址