Skip to content

Conversation

@sjmiller609
Copy link
Collaborator

@sjmiller609 sjmiller609 commented Dec 23, 2025

Note

Introduces a pluggable hypervisor layer and first-class QEMU support, while keeping Cloud Hypervisor working.

  • Adds lib/hypervisor abstraction: VMStarter (start/restore) and Hypervisor (control) interfaces; implements Cloud Hypervisor starter and full QEMU implementation (QMP client, args builder, vsock via AF_VSOCK)
  • Refactors guest gRPC conn to use VsockDialer (keyed pool), removing CH-specific socket handshake from guest client
  • Updates API (exec, cp, instances) to create hypervisor-specific dialers; maps hypervisor type in requests/responses; adds file stat via dialer
  • Enhances instances manager: constructor now takes default hypervisor, starts/restores via VMStarter, records hypervisor in logs/traces/metrics, and derives network allocation from stored metadata
  • Adds config DEFAULT_HYPERVISOR; warns at startup if QEMU binary not present
  • Middleware enriches traces/logs with instance hypervisor
  • Extensive tests: new QEMU E2E and unit tests; existing exec/cp/GPU/network/volumes tests updated to use dialers
  • go.mod: add QEMU/QMP deps; various imports/indirections adjusted

Written by Cursor Bugbot for commit 72c0d9d. This will update automatically on new commits. Configure here.

@github-actions
Copy link

github-actions bot commented Dec 23, 2025

✱ Stainless preview builds

This PR will update the hypeman SDKs with the following commit message.

feat: QEMU support
hypeman-typescript studio · code

Your SDK built successfully.
generate ✅build ✅lint ✅test ✅

hypeman-go studio · code

Your SDK built successfully.
generate ✅lint ✅test ✅

go get github.com/stainless-sdks/hypeman-go@d70809169d136df3f1efbf961f2a90084e1f9fa5
hypeman-cli studio · conflict

There was a conflict between your custom code and your generated changes.
You don't need to resolve this conflict right now, but you will need to resolve it for your changes to be released to your users. Read more about why this happened here.


This comment is auto-generated by GitHub Actions and is automatically kept up to date as you push.
Last updated: 2025-12-23 20:25:33 UTC

@sjmiller609 sjmiller609 requested a review from rgarcia December 23, 2025 16:17
@sjmiller609 sjmiller609 merged commit 5e522f2 into main Dec 23, 2025
4 checks passed
@sjmiller609 sjmiller609 deleted the qemu branch December 23, 2025 20:24
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.

3 participants