PRETTY_NAME="Ubuntu 24.04.5 LTS" NAME="Ubuntu" VERSION_ID="24.04" VERSION="24.04.5 LTS (Noble Numbat)" VERSION_CODENAME=noble ID=ubuntu ID_LIKE=debian HOME_URL="https://www.ubuntu.com/" SUPPORT_URL="https://help.ubuntu.com/" BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/" PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy" UBUNTU_CODENAME=noble LOGO=ubuntu-logo aarch64 Python 3.12.3 python3-numpy 1:1.26.4+ds-6ubuntu1 python3-yaml 6.0.1-2build2 ros-jazzy-fastrtps 2.14.6-1noble.20260902.013353 ros-jazzy-geometry-msgs 5.3.8-1noble.20260902.122255 ros-jazzy-nav-msgs 5.3.8-1noble.20260902.123754 ros-jazzy-rclpy 7.1.12-1noble.20260902.143245 ros-jazzy-rmw-fastrtps-cpp 8.4.4-1noble.20260902.140744 ros-jazzy-tf2-geometry-msgs 0.36.22-1noble.20260902.170215 ros-jazzy-tf2-py 0.36.22-1noble.20260902.150411 ros-jazzy-tf2-ros-py 0.36.22-1noble.20260902.150658 Validation date: 2026-10-12 Image: docker.io/library/ros:jazzy-ros-base Pinned image: ros:jazzy-ros-base@sha256:066420e07f60aa18262f2479981def87ebcfcec42eefb0c0c57c4a46098348ca Image OS/architecture: linux/arm64 Host: macOS ARM64, Docker Desktop Network: none (three nodes in one process inside a disposable container) Read-only mount: exercise directory -> /lesson ROS_DOMAIN_ID=72 RMW_IMPLEMENTATION=rmw_fastrtps_cpp Three script runs passed with identical output after the received buffer-tree and composed-transform checks were added. A fourth run also passed after all scalar comparisons were tightened to an absolute 1e-9 tolerance (rel_tol=0). sample-output.txt matches this output. The last two runs used the exact Docker arguments printed in the article, including the /lesson mount. The script keeps ROS callbacks running while waiting for subscription discovery and message delivery; each wait has a ten-second wall-clock deadline. These waits are not measurements of transport latency. The test uses exact synthetic pose samples stamped 10 and 12, queries at 11, and deliberate failure queries at 9 and 13. It publishes no /clock and does not use the host's current time as a data timestamp. No wheel odometry, SLAM, localization accuracy, hardware behavior, or network performance is measured. No dependency installation was needed; all packages were present in the image. Each verification container was removed automatically by Docker --rm.