ROS 2 업스트림 기여
ROS 2 코어 저장소(rclcpp, rclpy, rosbag2)에 PR 3건을 제출해 모두 머지되었다. 빌드 의존성, 콜백 데드락, 입력 검증과 관련된 실사용에서 발견한 문제들이다.
머지된 PR
-
rclcpp #3047 — CMake 의존성 수정. 특정 빌드 구성에서 누락된 의존성 때문에 발생하는 링크 오류를 해결.
github.com/ros2/rclcpp/pull/3047 -
rclpy #1492 — 콜백 내부에서 노드를 shutdown할 때 발생하는 deadlock 수정. 비동기 컨텍스트에서 안전하게 종료할 수 있도록 락 구조 변경.
github.com/ros2/rclpy/pull/1492 -
rosbag2 #2135 — Reader 생성자에서 null 입력에 대한 사전 검증 추가. 잘못된 인자가 들어왔을 때 크래시 대신 명확한 에러를 던지도록 수정.
github.com/ros2/rosbag2/pull/2135
접근
모두 실제 ROS 2 프로젝트를 개발하면서 마주친 문제에서 출발했다. 회피 코드로 막아두지 않고 원인을 끝까지 추적해 upstream에 PR로 제출한다는 것이 기준이다.
각 PR은 재현 시나리오와 함께 root cause를 정리해 두었고, 메인테이너 리뷰를 거치며 락 처리 방식과 테스트 범위에 대한 조정을 받았다.
관련 작업
위 PR들과 별개로, AI 코딩 에이전트에 ROS 2 베스트 프랙티스를 주입하는 ros2-engineering-skills 저장소를 운영 중이다. 두 작업이 같은 ROS 2 도메인 지식을 공유한다.