Examples

RoboCI examples are designed to run from the repository root with no private data. For installed-package smoke checks without a checkout, use roboci demo, roboci demo --openloop, or roboci benchmarks run smoke; those commands resolve packaged demo assets automatically.

Closed-Loop Passing Run

roboci run \
  --suite examples/suites/smoke.yaml \
  --agent examples/agents/rule_based_agent.py \
  --sim mock

Expected output: a passing run with local artifacts under runs/<run_id>/.

Closed-Loop Failure Run

roboci run \
  --suite examples/suites/failing_collision.yaml \
  --agent examples/agents/collision_test_agent.py \
  --sim mock

Expected output: a non-zero exit after RoboCI writes collision metrics, replay artifacts, failures.json, and static reports. The non-zero exit is intentional because this suite demonstrates failure analysis.

Open-Loop Dataset Run

roboci openloop run \
  --dataset examples/datasets/sample_openloop \
  --model examples/agents/rule_based_agent.py \
  --task trajectory_prediction

Expected output: aggregate and per-sample open-loop metrics under runs/<run_id>/.

Reports

roboci report --run runs/latest
roboci report --run runs/latest --format markdown

Expected output: report.html and report.md in the selected run directory.

Baselines And Regression Gates

roboci baseline create smoke --from runs/latest --description "Known-good smoke run"
roboci compare --current runs/latest --baseline-name smoke --max-regression-percent 5

Expected output: a regression summary and a CI-friendly exit code. The compare command exits non-zero when regressions exceed the configured threshold.

Example Inventory

  • examples/agents/: Python, C++, and Rust agent examples.
  • examples/simulators/: Python, C++, Rust, and YAML simulator examples.
  • examples/suites/: runnable suite definitions for smoke tests, failures, marketplace packs, and simulator adapter examples.
  • examples/scenarios/: individual scenario YAML files.
  • examples/datasets/sample_openloop/: minimal open-loop dataset.
  • examples/ros2_bridge/: reference ROS2 bridge files.