Skip to content

Commands and exit codes

Two binaries share the disk workspace. Every workspace command takes -w / --workspace DIR; use --format json for structured output.

Binary Commands Purpose
rusteda init, import Create the workspace and compile design inputs
rusteda show, log, diff, export Inspect revisions and export a netlist
rusteda revert Commit a revision restoring earlier content
ruststa run, update Compute and persist timing
ruststa path, inspect, report Query a saved timing result
ruststa check Verify saved timing and commit a check artifact
Both completions Generate shell completions without a workspace

Updates to an existing workspace take --base-rev revN and reject HEAD. Queries take --rev REV, defaulting to HEAD. rusteda init creates rev0 without a base revision.

Common timing controls

ruststa run --help
ruststa path --help
ruststa report --help
ruststa check --help
Control Use
--corner NAME Select analysis/report corner; repeatable on run
--backend cpu\|cuda\|gpu Select propagation backend
--precision f64\|f32 Select propagation precision
--threads N Set worker count
--max-paths N Bound ranked paths stored per corner
--max-state-gib GIB Bound estimated per-corner propagation state
--sta-store full\|summary Select timing persistence detail
--max-limit-rows N Bound kept pulse-width, period and design-rule rows per corner and kind
--require-wire-model MODEL Fail unless every corner uses spef_rc, ideal or wireload_lumped
--pulse-groups worst\|last Choose a pin's pulse constraint: the largest of its groups and attributes (default), or the last listed group that states it
--pulse-pins all\|clock-ends Check pulse constraints on every clocked pin (default), or only where a clock ends (clock-gater inputs are counted, not checked)
--clock-limits paths\|domain Map a clock's design-rule limits: -clock_path to its network and -data_path to its data pins (default), or the data-path limit to the whole domain (-clock_path alone is counted, not applied)
--section NAME Select summary, paths, endpoints, pins, clocks, checks, unconstrained, notes, limits, pulse_width, min_period, drv, max_transition, max_capacitance, max_fanout or hold_fix
--target-margin NS Hold slack target of the hold_fix section
--filter EXPR, --sort KEY, --limit N Restrict report tables
--method independent\|full\|both Choose verification method

Exit status

Status Meaning
0 Operation completed successfully; inspect timing/check status separately
1 Rejected input, unsupported operation or unavailable backend
2 Internal error or corrupt artifact
3 Verification mismatch
4 Revision conflict
5 Inconclusive / undecided verification
130 Cancelled

The complete CLI manual and protocol specification define the detailed envelopes, error codes and handle resolution rules.