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. It is a host operation, not SIM evaluation.
Structs§
- ArgAtom
- One whole, NUL-free native argument; it is never shell-split.
- 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.
- 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.
- Mount
Access - Access granted to a declared mount.
- Process
Attempt - Exact dispatch truth for one process attempt.
- Process
Refusal - Reason a process definitely did not cross the spawn boundary.
- 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§
- 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.