Skip to content

OSEP-0011: Runtime Driver Plugin Interface#613

Draft
AlexandrePh wants to merge 1 commit intoalibaba:mainfrom
AlexandrePh:osep/0011-runtime-driver-plugin-interface
Draft

OSEP-0011: Runtime Driver Plugin Interface#613
AlexandrePh wants to merge 1 commit intoalibaba:mainfrom
AlexandrePh:osep/0011-runtime-driver-plugin-interface

Conversation

@AlexandrePh
Copy link
Copy Markdown

Summary

Proposes a formal RuntimeDriver interface for pluggable sandbox runtime backends.

Key design points:

  • Multi-driver routing: A single lifecycle server loads multiple drivers simultaneously (e.g., Linux K8s + Windows Hyper-V). CreateSandboxRequest gains an optional driver field; omitting it uses the configured default
  • External drivers via gRPC: Third-party backends (Windows, ACI, Wasm) run as separate processes and communicate via a standard gRPC protocol
  • Capability discovery: Drivers declare supported operations at registration; GET /v1/drivers exposes loaded drivers and capabilities
  • Zero breaking changes: Existing Docker/K8s backends become built-in drivers; all current configs continue to work

Motivation:

  • Issue Support Windows-based sandbox runtime #438 requests Windows sandbox support — current architecture has no path without core changes
  • OSEP-0007 (Fast Sandbox) already proposes a gRPC controller but as a one-off integration
  • Adding each new backend to factory.py doesn't scale

Relationship to other OSEPs:

  • Generalizes OSEP-0007 (Fast Sandbox) into a standard driver protocol
  • Complements OSEP-0004 (Secure Runtime) — runtime class selection operates within a driver
  • Enables future Windows, macOS (Apple Containerization), and cloud-managed backends

Looking for feedback on the multi-driver routing design and the gRPC external driver protocol before moving to provisional.

Closes #438 (partially — defines the interface; Windows driver is a separate effort)

Proposes a formal RuntimeDriver interface for pluggable sandbox backends,
enabling multi-driver routing (e.g., Linux + Windows from a single server),
external driver support via gRPC, and capability discovery.

Refactors existing Docker and Kubernetes backends as built-in drivers
with no breaking changes to the Lifecycle API or config format.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
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.

Support Windows-based sandbox runtime

1 participant