Member Junction
    Preparing search index...

    A provisioned workspace, and the means of running commands inside it.

    interface SandboxHandle {
        Ephemeral: boolean;
        Executor: SandboxExecutor;
        Key: WorkspaceKey;
        WorkspacePath: string;
    }
    Index

    Properties

    Ephemeral: boolean

    True when the workspace is discarded on finalize rather than retained for the next run.

    Executor: SandboxExecutor

    Runs harness processes inside this sandbox.

    The reason process placement lives on the HANDLE rather than in the adapter: an adapter that called spawn() directly would always run on the MJAPI host, which in production means an autonomous agent executing shell commands inside the API container with its network reach and cloud credentials. Routing every process through the provider's executor is what makes provider: 'docker' mean something.

    WorkspacePath: string

    Workspace path AS THE HARNESS SEES IT.

    For the local provider that is a host path. For a container provider it is the path inside the container, which is generally NOT the host path the workspace was created at — the two are connected by a mount the provider set up. Code that passes this to a harness process is correct; code that opens it with fs on the MJAPI host is only correct for the local provider, and that distinction is why the field is documented rather than just named.