# OpenSandbox Flux installs the upstream all-in-one OpenSandbox chart pinned to `helm/opensandbox/0.2.2` (`8f01e935`). The API is cluster-internal and intentionally runs a single replica until shared server state and HA behaviour have been validated. `ci-pod` uses `runc`; `ci-vm` uses the separately managed `kata-clh-runtime-rs` RuntimeClass. Both Pools start at zero and create capacity on demand. They currently use the upstream interpreter image to validate the Lifecycle API and Pool allocation independently of the CI scheduler cutover. The dynamic runner worker, runner image, guest-local SPIRE Agent and Docker sidecar are introduced only after this layer is Ready. In particular, do not mount the host SPIFFE CSI socket into `ci-vm`: Unix sockets do not cross the Kata VM boundary. Smoke test both backends through the same API by creating sandboxes with `extensions.poolRef` set to `ci-pod` and `ci-vm`, then confirm their BatchSandboxes, Pods and VMMs disappear after deletion.