Simulator Support Matrix

RoboCI v0.1 is local-first. The mock simulator is turnkey. Other simulator surfaces are adapters that require local runtime setup.

Surface v0.1 Status Default Tests Require It Local Runtime Required Notes
Mock Turnkey supported No external dependency No Deterministic smoke/demo simulator for roboci demo and default benchmarks.
Python simulator Supported extension path No Project-specific Python file Load local Python simulator bindings explicitly.
Native C++/Rust simulator Supported example path No Local compiler/runtime or executable Example bindings exist, but default tests do not require native toolchains.
CARLA Adapter surface with Compose smoke path No CARLA server/image and CARLA Python API Use docker compose --profile carla up --build carla carla-roboci on a prepared Linux/GPU runner. Set ROBOCI_CARLA_PYTHON_PACKAGE to a matching CARLA Python API wheel/package for that runner, or point the adapter at an existing server with ROBOCI_CARLA_HOST and ROBOCI_CARLA_PORT.
Isaac Sim Adapter surface No Isaac Sim Python environment Run inside or against a configured Isaac environment.
Gazebo/ROS2 Reference bridge No Sourced ROS2 and Gazebo environment Uses ROS2 topics/services and project-specific launch setup.
Hardware-in-loop Not supported yet No N/A Planned future surface, not a v0.1 feature.

Stable v0.1 Behavior

  • Default Python tests run without CARLA, Isaac Sim, Gazebo, ROS2, Node, or internet.
  • External simulator SDK imports must remain lazy.
  • Mock-backed examples write the same artifacts as external simulator runs.
  • External simulator failures should fail explicitly with missing-runtime context.

Limitations

  • Passing mock benchmarks is not production safety validation.
  • External simulator manifests under examples/simulators/ are documentation examples and are not run by default tests. CARLA also has an opt-in Compose profile and suite smoke path.
  • Adapter configuration may need project-specific local paths, topics, maps, stages, controllers, and environment variables.

Example Manifests

  • examples/simulators/carla_town03.yaml
  • examples/simulators/isaac_manipulator.yaml
  • examples/simulators/gazebo_turtlebot.yaml