Machine Inputs
The box contract captures independent VM and environment inputs, creation bindings, guest bootstrap and authenticated access.
Captured inputs
MachineInputs carries an optional parsed VM spec and an optional environment bundle. Each input records its content identity and whether it came from the caller, a saved reference or host policy. Environment files travel as captured content. Their original paths explain provenance and never instruct another machine to read the caller's filesystem.
Creation binding
PendingBox records creation intent before resolution. MachineBinding records the resolved VM request, plan, policy revision, lease, launch generation and control revision before execution. Lifetime distinguishes a guest created for one run, a borrowed machine and a deliberately retained box. The VM manager owns backend selection, resource admission and confirmed removal.
Access and bootstrap
SshAccess names caller-held identity files and a pinned guest host alias. Private key bytes remain local. GuestBootstrap declares target-compatible program artifacts by digest and size. VM readiness, authenticated SSH, Link availability, sandbox readiness and environment preparation remain separate observations.
Local protocol
HereCall and HereReply use protocol version 1, closed operation enums and unknown-field refusal. The box bridge reserves standard output for its JSON reply and sends nested guest progress to standard error. The local adapter implements creation, inventory, access, bootstrap and lifetime controls. This compute-layer protocol leaves the generic cloud contract free of VM dependencies.