Expand description
Capability-gated bounded host-process execution for the SIM runtime.
This crate supplies a general host exec operation for libraries that need
to run an external process under explicit authority. The operation accepts a
structured argv vector, never inserts a shell, captures stdout and stderr,
enforces a mandatory timeout, and truncates captured output at a caller-set
byte cap. CommandSpec identifies exact installed checker commands,
including unchanged interpreter bytes, resources, output and cleanup policy;
LocalCheckPort keeps packet tooling outside the native process boundary.
It is a host operation, not SIM evaluation.
Structs§
- ArgAtom
- One whole, NUL-free native argument; it is never shell-split.
- Build
Source Ref - Stable sealed build-source reference.
- Capability
Grant Ref - Stable least-authority grant reference.
- Cleanup
Contract - Required cleanup proof for process descendants and writable scratch roots.
- Command
Id - Semantic identity of an exact trusted command specification.
- Command
Resource - One opaque, boot-resolved resource made available to an exact command.
- Command
Spec - Immutable allowlist entry pinning every local checker execution input.
- Dispatch
Evidence - Bounded evidence for an ambiguous post-spawn outcome.
- Exec
Options - Portable options used to create a sealed process request.
- Launcher
Registry - Boot-built launcher registry; callers select an identity, never a concrete OS type.
- Local
Check Lease - Explicit bounded lease request supplied to a local checker port.
- Local
Check Request - Capability-scoped request naming only an installed allowlist entry.
- Local
Check Result - Stable checker-facing response without native process or path values.
- Output
Contract - Semantic process result and filesystem postcondition.
- Output
Expectation - One independently observable path beneath a writable resource.
- Packet
Ref - Stable implementation packet reference.
- Private
Artifact Ref - Opaque, boot-trusted private-artifact reference.
- Proc
Result - Stable bounded process result; non-zero exit remains a result.
- Process
Budget - Bounded input, time, and output policy.
- Process
Cancellation - Cooperative cancellation token shared with the platform adapter.
- Process
Receipt - Privacy-safe completed-process receipt.
- Process
Request - Fully validated portable request passed to a platform capsule.
- Program
Ref - Opaque, boot-trusted program reference.
- Project
Root Ref - Opaque, boot-trusted project-root reference.
- Sandbox
Evidence - Evidence for one requested control; only launchers may assert
achieved. - Sandbox
Limits - Complete bounded resource policy. Zero is invalid for every limit.
- Sandbox
Mount - Opaque boot-resolved source mounted at a fixed absolute guest path.
- Sandbox
Policy - Validated portable sandbox policy, independent of any OS launcher.
- Sandbox
Refusal - A fail-closed refusal or unprovable launch outcome.
- Sandbox
Report - Requested-versus-achieved report plus every operational limit event.
- Sandbox
Request - Fully validated untrusted-process request. Arguments remain literal atoms.
- Sandbox
Result - Bounded process output paired with launcher-supplied sandbox evidence.
- Sealed
Bindings - Exact child bindings. No ambient inheritance is representable.
- Stop
Receipt - Proof that a dispatched process group was killed and reaped.
Enums§
- Binding
Value - A sealed literal or capsule-rendered resource reference.
- Command
Invocation - Exact executable invocation; no variant performs shell parsing of argv.
- Command
Replay Policy - Replay law bound into the local request without depending on the operation crate.
- Command
Route - Selected capsule execution boundary.
- Local
Check Status - Portable projection of the durable operation outcome.
- Mount
Access - Access granted to a declared mount.
- Network
Access - Network authority for one command.
- Output
State - Expected state of one declared output path after execution.
- Process
Attempt - Exact dispatch truth for one process attempt.
- Process
Refusal - Reason a process definitely did not cross the spawn boundary.
- Resource
Access - Read or write authority for one boot-resolved command resource.
- Sandbox
Attempt - Exhaustive result of asking a sandbox launcher to execute a request.
- Sandbox
Control - One independently provable sandbox control.
- Sandbox
Requirement - Whether absence of a control is fatal or may be reported as unavailable.
Statics§
- RECIPES
- Cookbook recipes for this lib, embedded at build time.
Traits§
- Local
Check Port - Portable checker seam; packet tooling never constructs a native command.
- Process
Port - Runtime-owned seam implemented only by model and physical capsules.
- Sandbox
Launcher - Replaceable object-safe untrusted-process authority boundary.
Functions§
- exec
- Checks capability and portable policy before invoking the port.
- exec_
capability - Capability required before a process request reaches its port.
- proc_
result_ symbol - Read-constructor symbol for process results.
- sandbox_
exec - Runs an untrusted request and rejects any completion lacking required proof.