Skip to content

feat(runtime): fill MicroVMRuntime lifecycle methods (RIG-2493) - #719

Open
rigel-mintaka wants to merge 1 commit into
compass-runner/rig-2493-u3-host-execfrom
compass-runner/rig-2493-u4-microvm-lifecycle
Open

feat(runtime): fill MicroVMRuntime lifecycle methods (RIG-2493)#719
rigel-mintaka wants to merge 1 commit into
compass-runner/rig-2493-u3-host-execfrom
compass-runner/rig-2493-u4-microvm-lifecycle

Conversation

@rigel-mintaka

@rigel-mintaka rigel-mintaka commented Aug 28, 2026

Copy link
Copy Markdown
Contributor

This PR is part of a stack containing 5 PRs:

  1. main
  2. feat(guest_control): grow GuestControl with the V2b exec surface (RIG-2493) #696
  3. feat(guestd): replace the Health-only stub with the V2b in-guest supervisor (RIG-2493) #701
  4. feat(runtime): host GuestExec layer + portable exit-signal error type (RIG-2493) #702
  5. "feat(runtime): fill MicroVMRuntime lifecycle methods (RIG-2493)" (this PR)
  6. test(runtime): shared ContainerRuntime contract suite across both backends (RIG-2493) #720

U4 of the frozen microVM Runner V2b plan (docs/designs/infra/runtime/compass-elastic-session-runtime/microvm-v2b-guest-supervisor-exec.md, Plan U4 / (c)/(d)/(e)). Fills the eight typed-error MicroVMRuntime stubs behind their frozen ContainerRuntime signatures against the V2a boot harness + the U3 GuestExec layer.

Refs RIG-2493

Co-authored-by: Matt Wilkinson matt@rigel.build

@linear-code

linear-code Bot commented Aug 28, 2026

Copy link
Copy Markdown

RIG-2493

@github-actions

github-actions Bot commented Aug 28, 2026

Copy link
Copy Markdown

Compass engineering docs preview: https://compass-runner-rig-2493-u4-m.compass-eng-docs.pages.dev

Deployed from compass-runner/rig-2493-u4-microvm-lifecycle at 9f07047.

@rigel-mintaka
rigel-mintaka force-pushed the compass-runner/rig-2493-u4-microvm-lifecycle branch 2 times, most recently from c4480be to 56eed91 Compare August 28, 2026 07:15
@rigel-mintaka
rigel-mintaka force-pushed the compass-runner/rig-2493-u3-host-exec branch from 869399a to 81856f8 Compare August 28, 2026 10:09
@rigel-mintaka
rigel-mintaka force-pushed the compass-runner/rig-2493-u4-microvm-lifecycle branch from 56eed91 to b95a89a Compare August 28, 2026 10:11
U4 of the frozen microVM Runner V2b plan (docs/designs/infra/runtime/compass-elastic-session-runtime/microvm-v2b-guest-supervisor-exec.md, Plan U4 / (c)/(d)/(e)). Fills the eight typed-error MicroVMRuntime stubs behind their frozen ContainerRuntime signatures against the V2a boot harness + the U3 GuestExec layer.

### Socket-path budget (CI fix, folded)

`e2eConfig` built its runroot with `t.TempDir()`, whose path embeds the test-function name. Under the 39-char `TestMicroVMExecStreamingKillSignalsExit` the widest per-session socket path — `<RunRoot>/microvm/<32-hex id>/virtiofsd.sock`, a 56-byte tail — reached 114 bytes, over the 107-byte Linux AF_UNIX `sun_path` cap, so virtiofsd's `bind(2)` failed EINVAL, the socket never appeared, and the boot timed out (`… did not appear within 10s`). `TestMicroVMLifecycleEndToEnd` (28-char name, 103 bytes) fit and booted. Production runroots are short and startup-budget-checked (`run.go` validateRuntimeDir); this is a pure harness artifact. Fix: `e2eConfig` uses a short `os.MkdirTemp("", "cvm")` runroot (cleaned via `t.Cleanup`), keeping the worst-case path well under the cap.

Refs RIG-2493

Co-authored-by: Matt Wilkinson <matt@rigel.build>
@rigel-mintaka
rigel-mintaka force-pushed the compass-runner/rig-2493-u3-host-exec branch from 81856f8 to 417292b Compare August 28, 2026 11:09
@rigel-mintaka
rigel-mintaka force-pushed the compass-runner/rig-2493-u4-microvm-lifecycle branch from b95a89a to 9f07047 Compare August 28, 2026 11:11
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