Conversation
Co-Authored-By: mecatl <noreply@stacklok.com>
Co-Authored-By: mecatl <noreply@stacklok.com>
Co-Authored-By: mecatl <noreply@stacklok.com>
Move source-checkout validation into the microVM placement adapter and cover generic remote composition context and fail-closed behavior. Co-Authored-By: mecatl <noreply@stacklok.com>
Preserve microVM execution configuration alongside provider unification, restore microVM vet coverage, align release guards, and resolve the proposed ADR numbering collision. Co-Authored-By: mecatl <noreply@stacklok.com>
Persist schedule-owned and borrowed placements, retain first-claim worktrees, and clean up lifecycle state atomically with pending-recovery metadata. Co-Authored-By: mecatl <noreply@stacklok.com>
Co-Authored-By: mecatl <noreply@stacklok.com>
Co-Authored-By: mecatl <noreply@stacklok.com>
Co-Authored-By: OpenAI Codex <codex@openai.com>
Co-Authored-By: OpenAI Codex <codex@openai.com>
Co-Authored-By: mecatl <noreply@stacklok.com>
Co-Authored-By: OpenAI Codex <codex@openai.com>
Co-Authored-By: mecatl <noreply@stacklok.com>
zozo123
changed the base branch from
acc/microvm-execution-environments
to
main
September 15, 2026 19:10
Author
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.
Summary
Adds an Ascii Box-backed Mecatl execution-environment / placement-provider adapter directly on
main.What it provides
server.PlacementProvider+ exactPlacementReattacherbacked by the Box APIEnvironmentRef{Kind: "box", ID: <box-id>, Revision: "box-api-v1"}CommandRunnerbound to the same Box workspace namespaceReadDir,Remove,Rename,CopyFile)noEnv: trueby default so account/model/GitHub/SSH secrets are not injected into agent sandboxesbox_liveThe API key is host-side configuration only and is never placed in
EnvironmentRef, the Box environment, tests, or repository state.Live verification
The live contract test is opt-in and excluded from normal CI:
BOX_API_KEY=... go test -tags=box_live ./internal/adapter/boxenv -run TestLiveBoxEnvironment -vIt exercises:
Why Box fits this seam
Mecatl's environment identity is already provider-open and the placement layer owns environment construction/reattachment. Box maps directly onto that contract: opaque Box ID for durable placement identity, remote file operations for
Workspace, and remote command execution for the boundCommandRunner.Scope
This PR intentionally keeps Box isolated in
internal/adapter/boxenv; it does not add a parallel sandbox abstraction or leak Box concepts intoengine/. Operator-facing execution-placement selection can be wired separately once the provider-registration surface is finalized.