Repository navigation
Start only Sandbox I/O in the sandbox - #557
Merged
Merged
Conversation
Every Provider now starts oac-sandbox-io as the only process in a hosted sandbox, and the Core-Sandbox Provider protocol shrinks to match. - Bootstrap carries the Reference and the Sandbox I/O input only; RunCommand, RunCommandCompute, ErrCommandUnconfirmed and runtime_bootstrap.go go. - The node wire, the E2B helper and the microsandbox helper lose the command operations and their 72 MiB input bound (now 1 MiB). - Docker runs oac-sandbox-io as the container's entry point and writes only its bootstrap file; the nested_sandbox node option goes. - E2B managed_init starts only oac-sandbox-io and records a sandbox_io_started receipt; the application-managed example goes. - microsandbox's bootstrap starts only oac-sandbox-io. - Core stops deriving a Runtime API URL for sandboxes.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Every Provider now starts only
oac-sandbox-ioin a sandbox. Nothing inside the sandbox talks to Core except Sandbox I/O over the Link.Bootstrapis{Reference, SandboxIO}, andValidatechecks thatSandboxIOserves the Reference's allocation.RunCommandandRunCommandCompute(withErrCommandUnconfirmed) are gone from the interface, from the operation lists and from every implementation and wire.RunCommandCompute.Bootstrap, drops the command operations and lowers the frame limit to 1 MiB.ProtocolVersionstays 5.oac-sandbox-io --bootstrap-file …, so Sandbox I/O is PID 1. The bootstrap writes only its file. The guest env, the runtime bootstrap file andnested_sandboxare deleted, and the-homevolume stays.managed_init.pystarts only Sandbox I/O. The new receipt is{identity, status: "sandbox_io_started", sandbox_io_pid}, andprovider.pychecks it.init.py,launch.py,init_test.py) is deleted.CoreURL,runtimeAPIandRuntimeAPI()are deleted.sandbox-provider,node-generation-protocol,configuration,architecture,machine-api,environments(en and zh), plus the E2B and microsandbox READMEs.Checks:
go build ./...andgo vet ./....sandbox/...,cmd/server,executionanddeployment.sandboximage, and earlier against a Codex Runtime image too.make check-e2b-provider,deploy/nodetests, the microsandbox tool tests,-raceon the changed packages.make check-names check-docs check-ci.Need help on this PR? Tag
@codesmith-botwith what you need. Autofix is disabled.