From 922cffddedf1978a5a9d1cb81f0534bea857ddcb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Francisco=20Mart=C3=ADn=20Rico?= Date: Sun, 27 Sep 2026 00:20:42 +0200 Subject: [PATCH 1/3] Fix the cascade_lifecycle branch in thirdparty.repos The rolling branch no longer exists. main targets ROS 2 Humble, so use humble-devel. The CI now reads thirdparty.repos from the checked out commit instead of the main branch, so pull requests test their own version of the file. Co-Authored-By: Claude Opus 5.5 --- .github/workflows/main.yaml | 3 ++- robocup_bringup/thirdparty.repos | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/main.yaml b/.github/workflows/main.yaml index 4720e77..1995097 100644 --- a/.github/workflows/main.yaml +++ b/.github/workflows/main.yaml @@ -19,6 +19,7 @@ jobs: os: [ubuntu-22.04] fail-fast: false steps: + - uses: actions/checkout@v4 - name: Setup ROS 2 uses: ros-tooling/setup-ros@0.7.19 with: @@ -40,4 +41,4 @@ jobs: "parallel-workers" : 1 } } - vcs-repo-file-url: https://raw.githubusercontent.com/CoreSenseEU/CoreSense4Home/main/robocup_bringup/thirdparty.repos + vcs-repo-file-url: ${{ github.workspace }}/robocup_bringup/thirdparty.repos diff --git a/robocup_bringup/thirdparty.repos b/robocup_bringup/thirdparty.repos index acd8196..1306aa0 100644 --- a/robocup_bringup/thirdparty.repos +++ b/robocup_bringup/thirdparty.repos @@ -34,7 +34,7 @@ repositories: ThirdParty/rclcpp_cascade_lifecycle: type: git url: https://github.com/fmrico/cascade_lifecycle.git - version: rolling + version: humble-devel ThirdParty/tts_ros: type: git url: https://github.com/mgonzs13/tts_ros From a2b6277119cfb47992cd49eda30e27254a4d75ae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Francisco=20Mart=C3=ADn=20Rico?= Date: Sun, 27 Sep 2026 00:56:21 +0200 Subject: [PATCH 2/3] CI: do not request cs4home_core, it is not part of this workspace Co-Authored-By: Claude Opus 5.5 --- .github/workflows/main.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/main.yaml b/.github/workflows/main.yaml index 1995097..ecc05da 100644 --- a/.github/workflows/main.yaml +++ b/.github/workflows/main.yaml @@ -33,7 +33,7 @@ jobs: - name: build and test uses: ros-tooling/action-ros-ci@0.4.8 with: - package-name: arm bt_test hri motion perception robocup_bringup cs4home_core + package-name: arm bt_test hri motion perception robocup_bringup target-ros2-distro: humble colcon-defaults: | { From 295e9428651648012f6eca4f12e14301921956e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Francisco=20Mart=C3=ADn=20Rico?= Date: Sun, 27 Sep 2026 01:48:01 +0200 Subject: [PATCH 3/3] Pin third-party repositories and fix package dependencies - Pin the third-party repositories to the commits that match this code (2024). Their main branches changed their APIs since then (yolo_msgs, whisper_ros STT result, perception_system, slam_toolbox CMake). - Declare in package.xml the dependencies used in CMakeLists.txt, and fix the manipulation_interfaces typo in motion, so colcon builds in order. - Fix lint_cmake and flake8 issues. - CI runs in the ROS 2 Humble image of ros-tooling. Co-Authored-By: Claude Opus 5.5 --- .github/workflows/main.yaml | 28 ++++++--------- bt_nodes/arm/package.xml | 3 ++ bt_nodes/bt_test/CMakeLists.txt | 9 +++-- bt_nodes/bt_test/package.xml | 2 ++ bt_nodes/configuration/package.xml | 3 ++ bt_nodes/hri/package.xml | 2 ++ bt_nodes/motion/package.xml | 11 +++++- bt_nodes/perception/package.xml | 3 ++ robocup_bringup/launch/dialog.launch.py | 2 +- .../launch/storing_dependencies.launch.py | 6 ++-- robocup_bringup/package.xml | 3 ++ robocup_bringup/thirdparty.repos | 36 +++++++++---------- 12 files changed, 64 insertions(+), 44 deletions(-) diff --git a/.github/workflows/main.yaml b/.github/workflows/main.yaml index ecc05da..9590f9f 100644 --- a/.github/workflows/main.yaml +++ b/.github/workflows/main.yaml @@ -8,28 +8,20 @@ on: branches: - main workflow_dispatch: + jobs: build-and-test: - runs-on: ${{ matrix.os }} - env: - # Tests cannot create ~/.ros/log in the runner - ROS_LOG_DIR: /tmp/ros_log - strategy: - matrix: - os: [ubuntu-22.04] - fail-fast: false + runs-on: ubuntu-22.04 + # Run in the ROS 2 Humble image of ros-tooling + container: + image: rostooling/setup-ros-docker:ubuntu-jammy-ros-humble-ros-base-latest steps: - uses: actions/checkout@v4 - - name: Setup ROS 2 - uses: ros-tooling/setup-ros@0.7.19 - with: - required-ros-distributions: humble - - name: Install nlohmann - run: sudo apt -y install nlohmann-json3-dev - - name: Install ceres dependencies - run: sudo apt -y install libunwind-dev libgoogle-glog-dev libatlas-base-dev libsuitesparse-dev libgflags-dev - - name: Install ceres - run: sudo apt -y install libceres-dev + - name: Install system dependencies + run: | + sudo apt-get update + sudo apt-get install -y nlohmann-json3-dev libunwind-dev libgoogle-glog-dev \ + libatlas-base-dev libsuitesparse-dev libgflags-dev libceres-dev - name: build and test uses: ros-tooling/action-ros-ci@0.4.8 with: diff --git a/bt_nodes/arm/package.xml b/bt_nodes/arm/package.xml index c5e653b..6428758 100644 --- a/bt_nodes/arm/package.xml +++ b/bt_nodes/arm/package.xml @@ -13,6 +13,9 @@ rclcpp_action rclcpp_cascade_lifecycle manipulation_interfaces + geometry_msgs + sensor_msgs + tf2_ros ament_lint_auto ament_lint_common diff --git a/bt_nodes/bt_test/CMakeLists.txt b/bt_nodes/bt_test/CMakeLists.txt index 28aec6f..f00ae1d 100644 --- a/bt_nodes/bt_test/CMakeLists.txt +++ b/bt_nodes/bt_test/CMakeLists.txt @@ -175,7 +175,7 @@ target_link_libraries(set_perception_model_test # music tests add_executable(music_test src/music_test.cpp) ament_target_dependencies(music_test ${dependencies}) -target_link_libraries(music_test +target_link_libraries(music_test hri::start_music_bt_node hri::stop_music_bt_node configuration::sleep_bt_node @@ -202,7 +202,10 @@ target_link_libraries(filter_object_test perception::filter_object_bt_node) # extract the description of the person test add_executable(extract_person_description_test src/extract_person_description_test.cpp) ament_target_dependencies(extract_person_description_test ${dependecies}) -target_link_libraries(extract_person_description_test perception::extract_person_description_bt_node perception::is_detected_bt_node hri::speak_bt_node) +target_link_libraries(extract_person_description_test + perception::extract_person_description_bt_node + perception::is_detected_bt_node + hri::speak_bt_node) # gpsr test add_executable(gpsr_test src/gpsr_test.cpp) @@ -400,7 +403,7 @@ install(TARGETS extract_person_description_test music_test set_blackboard_test - + gpsr_test gpsr_answerquiz_test gpsr_countobject_test diff --git a/bt_nodes/bt_test/package.xml b/bt_nodes/bt_test/package.xml index e22299d..a797908 100644 --- a/bt_nodes/bt_test/package.xml +++ b/bt_nodes/bt_test/package.xml @@ -25,6 +25,8 @@ tf2_ros hri perception_system_interfaces + backward_ros + gpsr_msgs ament_lint_auto ament_lint_common diff --git a/bt_nodes/configuration/package.xml b/bt_nodes/configuration/package.xml index f96b1a3..3b025b0 100644 --- a/bt_nodes/configuration/package.xml +++ b/bt_nodes/configuration/package.xml @@ -16,6 +16,9 @@ behaviortree_cpp_v3 geometry_msgs tf2_geometry_msgs + tf2 + tf2_ros + yolov8_msgs ament_lint_auto ament_lint_common diff --git a/bt_nodes/hri/package.xml b/bt_nodes/hri/package.xml index 0a0a2c0..4689066 100644 --- a/bt_nodes/hri/package.xml +++ b/bt_nodes/hri/package.xml @@ -19,6 +19,8 @@ shape_msgs std_msgs gpsr_msgs + sensor_msgs + std_srvs ament_lint_auto ament_lint_common diff --git a/bt_nodes/motion/package.xml b/bt_nodes/motion/package.xml index 0c21133..9b5bf57 100644 --- a/bt_nodes/motion/package.xml +++ b/bt_nodes/motion/package.xml @@ -19,11 +19,20 @@ nav2_behavior_tree nav2_costmap_2d navigation_system_interfaces - manipultaion_interfaces + manipulation_interfaces slam_toolbox attention_system attention_system_msgs + action_msgs + ament_index_cpp + lifecycle_msgs + pluginlib + sensor_msgs + tf2 + tf2_geometry_msgs + tf2_ros + trajectory_msgs ament_lint_auto ament_lint_common diff --git a/bt_nodes/perception/package.xml b/bt_nodes/perception/package.xml index 49d279d..1da32e5 100644 --- a/bt_nodes/perception/package.xml +++ b/bt_nodes/perception/package.xml @@ -28,6 +28,9 @@ perception_system perception_system_interfaces sensor_msgs + backward_ros + libopencv-dev + std_srvs ament_lint_auto ament_lint_common diff --git a/robocup_bringup/launch/dialog.launch.py b/robocup_bringup/launch/dialog.launch.py index dae5514..d1061b5 100644 --- a/robocup_bringup/launch/dialog.launch.py +++ b/robocup_bringup/launch/dialog.launch.py @@ -59,7 +59,7 @@ def generate_launch_description(): prefix='\n\n### Instruction:\n', suffix='\n\n### Response:\n', - stopping_words=["\n\n\n\n"], + stopping_words=['\n\n\n\n'], ) whisper_cmd = IncludeLaunchDescription( diff --git a/robocup_bringup/launch/storing_dependencies.launch.py b/robocup_bringup/launch/storing_dependencies.launch.py index e5a072f..01a5bb1 100644 --- a/robocup_bringup/launch/storing_dependencies.launch.py +++ b/robocup_bringup/launch/storing_dependencies.launch.py @@ -97,17 +97,17 @@ def generate_launch_description(): prefix='\n\n### Instruction:\n', suffix='\n\n### Response:\n', - stopping_words=["\n\n\n\n"], + stopping_words=['\n\n\n\n'], ) - yolo_model = package_dir + "/config/storing_groceries/yolo_groceries.pt" + yolo_model = package_dir + '/config/storing_groceries/yolo_groceries.pt' # noqa: F841 yolo3d = IncludeLaunchDescription( PythonLaunchDescriptionSource( os.path.join(yolo3d_dir, 'launch', 'yolov8_3d.launch.py') ), launch_arguments={ # 'namespace': 'perception_system', - 'model': "yolov8x-seg.pt", # change to pretrained + 'model': 'yolov8x-seg.pt', # change to pretrained 'input_image_topic': '/head_front_camera/rgb/image_raw', 'input_depth_topic': '/head_front_camera/depth/image_raw', 'input_depth_info_topic': '/head_front_camera/depth/camera_info', diff --git a/robocup_bringup/package.xml b/robocup_bringup/package.xml index 2f5120a..6e43ee9 100644 --- a/robocup_bringup/package.xml +++ b/robocup_bringup/package.xml @@ -18,6 +18,9 @@ hri motion perception + attention_system + nav2_behavior_tree + perception_system ament_lint_auto ament_lint_common diff --git a/robocup_bringup/thirdparty.repos b/robocup_bringup/thirdparty.repos index 1306aa0..d98009c 100644 --- a/robocup_bringup/thirdparty.repos +++ b/robocup_bringup/thirdparty.repos @@ -2,75 +2,75 @@ repositories: ThirdParty/pointcloud_to_laserscan: type: git url: https://github.com/Juancams/pointcloud_to_laserscan.git - version: humble + version: fe51151f1b4cccbd136abd64b819ae95e8214be8 ThirdParty/small_objects_detector: type: git url: https://github.com/gentlebots/small_objects_detector.git - version: robocup + version: 9332a60cc388541c1281d4bf0fe602d262e76b5d ThirdParty/audio_common: type: git url: https://github.com/mgonzs13/audio_common.git - version: main + version: b3c67da12cdb52aba3ae6f7187ca5ca5f252be3b ThirdParty/whisper_ros: type: git url: https://github.com/mgonzs13/whisper_ros.git - version: main + version: d581098a772fdfcf77602fb955263ba3eb993eee ThirdParty/llama_ros: type: git url: https://github.com/mgonzs13/llama_ros.git - version: main + version: 4facfa54229b65e2938c335ccad7cc2235295c10 ThirdParty/moveit_task_constructor: type: git url: https://github.com/juandpenan/moveit_task_constructor.git - version: humble + version: d0a990071e00740e2b516406898cea076a073da1 ThirdParty/tiago_mtc_examples: type: git url: https://github.com/juandpenan/tiago_mtc_examples.git - version: main + version: 2e817246e6f70c6fe31cd157c3c1ea955c3f4fec ThirdParty/yolov8_ros: type: git url: https://github.com/jmguerreroh/yolov8_ros.git - version: main + version: 40f538bdcfe7435336193fa47ef23bdbddf769e8 ThirdParty/rclcpp_cascade_lifecycle: type: git url: https://github.com/fmrico/cascade_lifecycle.git - version: humble-devel + version: 29b2d9c8c6cff72f0f21f1e5552ff2c7b6c8a260 ThirdParty/tts_ros: type: git url: https://github.com/mgonzs13/tts_ros - version: main + version: fb372c092e5736d2077f5dc8b516085f339fb6f2 ThirdParty/slam_toolbox: type: git url: https://github.com/SteveMacenski/slam_toolbox.git - version: ros2 + version: 19a66904c648a174220be1a1b98e81a9ef0e6758 ThirdParty/tiago_robot: type: git url: https://github.com/juandpenan/tiago_robot.git - version: steamdeck + version: ae93c1b421506a5f1ed213b911e6558a99a0724d ThirdParty/gpd: type: git url: https://github.com/atenpas/gpd.git - version: master + version: 6327f20eabfcba41a05fdd2e2ba408153dc2e958 systems/manipulation_server: type: git url: https://github.com/rodperex/manipulation_server.git - version: main + version: 10304bff17e012ae9a37ea689b1e65f608eb18e3 systems/perception_system: type: git url: https://github.com/jmguerreroh/perception_system.git - version: main + version: dfbf2cfdb5d1c647290412b50789616ab92c3351 systems/attention_system: type: git url: https://github.com/aaggj/attention_system - version: humble + version: 4dd113b3d54f355f34e28ef340d7b8de81e44b99 systems/navigation_system: type: git url: https://github.com/Juancams/navigation_system.git - version: main + version: f10f0feeb8809b731ce5813a899e051b332250a2 ThirdParty/gpsr_planning: type: git url: https://github.com/igonzf/GPSR_planning - version: main + version: 1e482f31bedd569e244eeb1c2c6700d26b753a59