ROS 2 Navigation Framework and System
This report summarizes scanner evidence for ros-navigation/navigation2, a C++ project with 4,788 GitHub stars. SynthScan examined 338,670 lines of code across 1577 source files, recording 1585 pattern matches distributed across 16 syntactic categories. The legacy adjusted pattern signal is 5.2 (Moderate pattern signal); it is not an authorship estimate.
Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.
Use each vector to guide manual verification of the underlying findings.
Can maintainers explain intent, assumptions, and trade-offs? 1473 finding(s).
Are imports declared and package/API names verified? 53 finding(s).
Are wrappers, guards, and repeated structures necessary? 214 finding(s).
Which changes need focused human review? 1585 finding(s).
This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.
Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.
This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.
The scanner identified 1585 distinct pattern matches across 16 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .pre-commit-config.yaml | 1 | COMMENT | |
| LOW | nav2_map_server/test/unit/test_vector_object_shapes.cpp | 1 | // Copyright (c) 2023 Samsung R&D Institute Russia | COMMENT |
| LOW | nav2_map_server/test/unit/test_vector_object_shapes.cpp | 21 | #include <memory> | COMMENT |
| LOW | …p_server/test/unit/test_costmap_filter_info_server.cpp | 1 | // Copyright (c) 2020 Samsung Research Russia | COMMENT |
| LOW | nav2_map_server/test/unit/test_vector_object_server.cpp | 1 | // Copyright (c) 2023 Samsung R&D Institute Russia | COMMENT |
| LOW | nav2_map_server/test/unit/test_vector_object_server.cpp | 21 | #include <string> | COMMENT |
| LOW | …2_map_server/test/map_saver_cli/test_map_saver_cli.cpp | 1 | // Copyright (c) 2020 Samsung Research America | COMMENT |
| LOW | nav2_map_server/test/component/test_map_server_node.cpp | 1 | // Copyright (c) 2018 Intel Corporation | COMMENT |
| LOW | nav2_map_server/test/component/test_map_server_node.cpp | 21 | #include "rclcpp/client.hpp" | COMMENT |
| LOW | …v2_map_server/test/component/test_map_server_launch.py | 1 | #!/usr/bin/env python3 | COMMENT |
| LOW | nav2_map_server/test/component/test_map_saver_launch.py | 1 | #!/usr/bin/env python3 | COMMENT |
| LOW | …map_server/test/component/test_map_saver_publisher.cpp | 1 | // Copyright (c) 2020 Samsung Research Russia | COMMENT |
| LOW | nav2_map_server/test/component/test_map_saver_node.cpp | 1 | // Copyright (c) 2020 Samsung Research Russia | COMMENT |
| LOW | nav2_map_server/test/component/test_map_saver_node.cpp | 21 | #include <filesystem> | COMMENT |
| LOW | …erver/test/test_launch_files/map_server_node.launch.py | 1 | #!/usr/bin/env python3 | COMMENT |
| LOW | …server/test/test_launch_files/map_saver_node.launch.py | 1 | #!/usr/bin/env python3 | COMMENT |
| LOW | nav2_map_server/launch/vector_object_server.launch.py | 1 | #!/usr/bin/env python3 | COMMENT |
| LOW | nav2_map_server/launch/map_saver_server.launch.py | 1 | #!/usr/bin/env python3 | COMMENT |
| LOW | nav2_map_server/include/nav2_map_server/map_mode.hpp | 1 | // Copyright (c) 2019 Rover Robotics | COMMENT |
| LOW | …erver/include/nav2_map_server/vector_object_shapes.hpp | 1 | // Copyright (c) 2023 Samsung R&D Institute Russia | COMMENT |
| LOW | …erver/include/nav2_map_server/vector_object_shapes.hpp | 21 | #include <utility> | COMMENT |
| LOW | …erver/include/nav2_map_server/vector_object_server.hpp | 1 | // Copyright (c) 2023 Samsung R&D Institute Russia | COMMENT |
| LOW | …erver/include/nav2_map_server/vector_object_server.hpp | 21 | COMMENT | |
| LOW | nav2_map_server/include/nav2_map_server/map_io.hpp | 1 | // Copyright (c) 2018 Intel Corporation | COMMENT |
| LOW | nav2_map_server/include/nav2_map_server/map_saver.hpp | 1 | // Copyright (c) 2020 Samsung Research Russia | COMMENT |
| LOW | …include/nav2_map_server/costmap_filter_info_server.hpp | 1 | // Copyright (c) 2020 Samsung Research Russia | COMMENT |
| LOW | …server/include/nav2_map_server/vector_object_utils.hpp | 1 | // Copyright (c) 2023 Samsung R&D Institute Russia | COMMENT |
| LOW | nav2_map_server/include/nav2_map_server/map_server.hpp | 1 | // Copyright (c) 2018 Intel Corporation | COMMENT |
| LOW | nav2_map_server/src/map_io.cpp | 41 | COMMENT | |
| LOW | nav2_map_server/src/map_mode.cpp | 1 | // Copyright 2019 Rover Robotics | COMMENT |
| LOW | …src/costmap_filter_info/costmap_filter_info_server.cpp | 1 | // Copyright (c) 2020 Samsung Research Russia | COMMENT |
| LOW | nav2_map_server/src/costmap_filter_info/main.cpp | 1 | // Copyright (c) 2020 Samsung Research Russia | COMMENT |
| LOW | nav2_map_server/src/map_saver/main_server.cpp | 1 | // Copyright (c) 2020 Samsung Research Russia | COMMENT |
| LOW | nav2_map_server/src/map_saver/main_cli.cpp | 1 | // Copyright 2019 Rover Robotics | COMMENT |
| LOW | nav2_map_server/src/map_server/main.cpp | 1 | // Copyright (c) 2018 Intel Corporation | COMMENT |
| LOW | nav2_map_server/src/vo_server/vector_object_utils.cpp | 1 | // Copyright (c) 2023 Samsung R&D Institute Russia | COMMENT |
| LOW | nav2_map_server/src/vo_server/vector_object_shapes.cpp | 1 | // Copyright (c) 2023 Samsung R&D Institute Russia | COMMENT |
| LOW | nav2_map_server/src/vo_server/vector_object_shapes.cpp | 21 | #include <limits> | COMMENT |
| LOW | nav2_map_server/src/vo_server/vector_object_server.cpp | 1 | // Copyright (c) 2023 Samsung R&D Institute Russia | COMMENT |
| LOW | nav2_map_server/src/vo_server/main.cpp | 1 | // Copyright (c) 2023 Samsung R&D Institute Russia | COMMENT |
| LOW | nav2_controller/test/test_controller_server.cpp | 1 | // Copyright (c) 2021, Samsung Research America | COMMENT |
| LOW | nav2_controller/test/test_controller_server.cpp | 21 | #include "gtest/gtest.h" | COMMENT |
| LOW | nav2_controller/plugins/pose_progress_checker.cpp | 1 | // Copyright (c) 2023 Dexory | COMMENT |
| LOW | nav2_controller/plugins/position_goal_checker.cpp | 1 | // Copyright (c) 2025 Prabhav Saxena | COMMENT |
| LOW | …controller/plugins/adaptive_tolerance_goal_checker.cpp | 1 | // Copyright (c) 2026, David Grbac | COMMENT |
| LOW | nav2_controller/plugins/simple_progress_checker.cpp | 1 | // Copyright (c) 2019 Intel Corporation | COMMENT |
| LOW | nav2_controller/plugins/axis_goal_checker.cpp | 1 | // Copyright (c) 2025 Dexory | COMMENT |
| LOW | nav2_controller/plugins/feasible_path_handler.cpp | 1 | // Copyright (c) 2022 Samsung Research America, @artofnothingness Alexey Budyakov | COMMENT |
| LOW | nav2_controller/plugins/test/path_handler.cpp | 1 | // Copyright (c) 2022 Samsung Research America, @artofnothingness Alexey Budyakov | COMMENT |
| LOW | nav2_controller/plugins/test/axis_goal_checker.cpp | 1 | // Copyright (c) 2025 Dexory | COMMENT |
| LOW | …ntroller/include/nav2_controller/controller_server.hpp | 1 | // Copyright (c) 2019 Intel Corporation | COMMENT |
| LOW | …ntroller/include/nav2_controller/controller_server.hpp | 21 | #include <unordered_map> | COMMENT |
| LOW | …ntroller/include/nav2_controller/parameter_handler.hpp | 1 | // Copyright (c) 2022 Samsung Research America | COMMENT |
| LOW | …lude/nav2_controller/plugins/feasible_path_handler.hpp | 1 | // Copyright (c) 2022 Samsung Research America, @artofnothingness Alexey Budyakov | COMMENT |
| LOW | …de/nav2_controller/plugins/simple_progress_checker.hpp | 1 | // Copyright (c) 2019 Intel Corporation | COMMENT |
| LOW | …/include/nav2_controller/plugins/axis_goal_checker.hpp | 1 | // Copyright (c) 2025 Dexory | COMMENT |
| LOW | …lude/nav2_controller/plugins/position_goal_checker.hpp | 1 | // Copyright (c) 2025 Prabhav Saxena | COMMENT |
| LOW | …controller/plugins/adaptive_tolerance_goal_checker.hpp | 1 | // Copyright (c) 2026, David Grbac | COMMENT |
| LOW | …lude/nav2_controller/plugins/pose_progress_checker.hpp | 1 | // Copyright (c) 2023 Dexory | COMMENT |
| LOW | nav2_controller/src/parameter_handler.cpp | 1 | // Copyright (c) 2022 Samsung Research America | COMMENT |
| 1181 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …erver/test/test_launch_files/map_server_node.launch.py | 23 | def generate_launch_description() -> LaunchDescription: | CODE |
| LOW | …server/test/test_launch_files/map_saver_node.launch.py | 24 | def generate_launch_description() -> LaunchDescription: | CODE |
| LOW | nav2_map_server/launch/vector_object_server.launch.py | 29 | def generate_launch_description() -> LaunchDescription: | CODE |
| LOW | nav2_map_server/launch/map_saver_server.launch.py | 21 | def generate_launch_description() -> LaunchDescription: | CODE |
| LOW | …tests/src/system_failure/test_system_failure_launch.py | 33 | def generate_launch_description(): | CODE |
| LOW | nav2_system_tests/src/route/test_route_launch.py | 32 | def generate_launch_description(): | CODE |
| LOW | …ystem_tests/src/costmap_filters/test_keepout_launch.py | 33 | def generate_launch_description(): | CODE |
| LOW | nav2_system_tests/src/costmap_filters/tester_node.py | 314 | def wait_for_pointcloud_subscribers(self, timeout: float) -> bool: | CODE |
| LOW | …_system_tests/src/costmap_filters/test_speed_launch.py | 33 | def generate_launch_description(): | CODE |
| LOW | nav2_system_tests/src/system/test_system_launch.py | 33 | def generate_launch_description(): | CODE |
| LOW | nav2_system_tests/src/system/test_multi_robot_launch.py | 40 | def generate_launch_description(): | CODE |
| LOW | …m_tests/src/system/test_system_with_obstacle_launch.py | 33 | def generate_launch_description(): | CODE |
| LOW | …system_tests/src/system/test_wrong_init_pose_launch.py | 33 | def generate_launch_description(): | CODE |
| LOW | nav2_system_tests/src/updown/test_updown_launch.py | 23 | def generate_launch_description() -> launch.LaunchDescription: | CODE |
| LOW | …_tests/src/behaviors/wait/test_wait_behavior_launch.py | 30 | def generate_launch_description(): | CODE |
| LOW | …ssisted_teleop/test_assisted_teleop_behavior_launch.py | 30 | def generate_launch_description(): | CODE |
| LOW | …ve_on_heading/test_drive_on_heading_behavior.launch.py | 31 | def generate_launch_description(): | CODE |
| LOW | …_tests/src/behaviors/spin/test_spin_behavior.launch.py | 31 | def generate_launch_description(): | CODE |
| LOW | …ts/src/behaviors/backup/test_backup_behavior.launch.py | 31 | def generate_launch_description(): | CODE |
| LOW | …system_tests/src/waypoint_follower/test_case_launch.py | 31 | def generate_launch_description(): | CODE |
| LOW | …tem_tests/src/gps_navigation/dual_ekf_navsat.launch.py | 21 | def generate_launch_description() -> LaunchDescription: | CODE |
| LOW | …system_tests/src/gps_navigation/test_case_py.launch.py | 31 | def generate_launch_description(): | CODE |
| LOW | …ystem_tests/src/error_codes/test_error_codes_launch.py | 25 | def generate_launch_description(): | CODE |
| LOW | …v2_docking/opennav_docking/test/test_docking_server.py | 52 | def generate_test_description(): | CODE |
| LOW | …v2_docking/opennav_docking/test/test_docking_server.py | 134 | def wait_for_node_to_be_active(self, node_name, timeout_sec=30.0): | CODE |
| LOW | …v2_docking/opennav_docking/test/test_docking_server.py | 157 | def command_velocity_callback(self, msg): | CODE |
| LOW | …lision_monitor/test/test_collision_monitor_node_bag.py | 29 | def generate_test_description(): | CODE |
| LOW | …lision_monitor/launch/collision_monitor_node.launch.py | 29 | def generate_launch_description() -> LaunchDescription: | CODE |
| LOW | …ision_monitor/launch/collision_detector_node.launch.py | 29 | def generate_launch_description() -> LaunchDescription: | CODE |
| LOW | …2_smac_planner/lattice_primitives/lattice_generator.py | 115 | def _get_heading_discretization(self, number_of_headings: int) -> List[float]: | CODE |
| LOW | …2_smac_planner/lattice_primitives/lattice_generator.py | 246 | def _compute_min_trajectory_length(self) -> float: | CODE |
| LOW | …2_smac_planner/lattice_primitives/lattice_generator.py | 270 | def _generate_minimal_spanning_set(self) -> Dict[float, List[Trajectory]]: | CODE |
| LOW | …2_smac_planner/lattice_primitives/lattice_generator.py | 306 | def _compute_for_single_heading(self, start_heading: float | CODE |
| LOW | …2_smac_planner/lattice_primitives/lattice_generator.py | 428 | def _create_complete_minimal_spanning_set( | CODE |
| LOW | …anner/lattice_primitives/generate_motion_primitives.py | 76 | def create_heading_angle_list(minimal_set_trajectories: Dict[float, List[Trajectory]] | CODE |
| LOW | …mac_planner/lattice_primitives/trajectory_generator.py | 334 | def _calculate_trajectory_params( | CODE |
| LOW | …/lattice_primitives/tests/test_trajectory_generator.py | 34 | def test_generate_trajectory_only_arc(self): | CODE |
| LOW | …/lattice_primitives/tests/test_trajectory_generator.py | 83 | def test_generate_trajectory_only_line(self): | CODE |
| LOW | …/lattice_primitives/tests/test_trajectory_generator.py | 132 | def test_generate_trajectory_line_to_arc(self): | CODE |
| LOW | …/lattice_primitives/tests/test_trajectory_generator.py | 181 | def test_generate_trajectory_line_to_end(self): | CODE |
| LOW | …/lattice_primitives/tests/test_trajectory_generator.py | 230 | def test_generate_trajectory_radius_too_small(self): | CODE |
| LOW | …/lattice_primitives/tests/test_trajectory_generator.py | 263 | def test_generate_trajectory_parallel_lines_coincident(self): | CODE |
| LOW | …/lattice_primitives/tests/test_trajectory_generator.py | 288 | def test_generate_trajectory_parallel_lines_not_coincident(self): | CODE |
| LOW | …ner/lattice_primitives/tests/test_lattice_generator.py | 45 | def test_minimal_set_lengths_are_positive(self): | CODE |
| LOW | …ner/lattice_primitives/tests/test_lattice_generator.py | 56 | def test_minimal_set_end_points_lie_on_grid(self): | CODE |
| LOW | …ner/lattice_primitives/tests/test_lattice_generator.py | 71 | def test_minimal_set_end_angle_is_correct(self): | CODE |
| LOW | …ner/lattice_primitives/tests/test_lattice_generator.py | 81 | def test_output_angles_in_correct_range(self): | CODE |
| LOW | tools/bt_nodes_validation/validate_bt_xml_nodes.py | 141 | def update_paths_for_external_repos(config: dict, clone_dir: Path) -> None: | CODE |
| LOW | tools/bt_nodes_validation/validate_bt_xml_nodes.py | 341 | def validate_bt_xml_structure(root: ET.Element) -> ET.Element: | CODE |
| LOW | tools/bt_nodes_validation/validate_bt_xml_nodes.py | 403 | def extract_node_registration_data(content: str) -> dict[str, str]: | CODE |
| LOW | tools/bt_nodes_validation/validate_bt_xml_nodes.py | 464 | def extract_cpp_classes_and_ids(cpp_files: list[Path]) -> CPPData: | CODE |
| LOW | tools/bt_nodes_validation/validate_bt_xml_nodes.py | 499 | def extract_class_definitions( | CODE |
| LOW | tools/bt_nodes_validation/validate_bt_xml_nodes.py | 557 | def extract_hpp_classes_and_ports_data( | CODE |
| LOW | tools/bt_nodes_validation/validate_bt_xml_nodes.py | 665 | def detect_bt_nodes_mismatches(bt_node_ids_code: BTNodes, bt_node_ids_xml: BTNodes) -> bool: | CODE |
| LOW | …bt_nodes_validation/test/test_detect_duplicate_data.py | 10 | def test_duplicated_cpp_classes_across_files( | CODE |
| LOW | …bt_nodes_validation/test/test_detect_duplicate_data.py | 59 | def test_duplicated_node_ids_across_files( | CODE |
| LOW | …bt_nodes_validation/test/test_detect_duplicate_data.py | 103 | def test_duplicated_hpp_classes_across_files( | CODE |
| LOW | …bt_nodes_validation/test/test_detect_duplicate_data.py | 147 | def test_duplicated_ports_from_base_class( | CODE |
| LOW | …ols/bt_nodes_validation/test/test_validation_errors.py | 12 | def test_node_in_code_missing_in_xml( | CODE |
| LOW | …ols/bt_nodes_validation/test/test_validation_errors.py | 57 | def test_node_in_xml_missing_in_code( | CODE |
| 94 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | nav2_system_tests/src/system/nav_to_pose_tester_node.py | 202 | # Define the socket using the 'Context' | COMMENT |
| MEDIUM | …v2_docking/opennav_docking/test/test_docking_server.py | 116 | # Create a ROS node for tests | COMMENT |
| MEDIUM | …v2_docking/opennav_docking/test/test_docking_server.py | 232 | # Create a timer to run "control loop" at 20hz | COMMENT |
| MEDIUM | …2_smac_planner/lattice_primitives/lattice_generator.py | 214 | # Create a bounding box search region | COMMENT |
| MEDIUM | …2_smac_planner/lattice_primitives/lattice_generator.py | 378 | # Create a new bounding box in the RTree | COMMENT |
| MEDIUM | …2_smac_planner/lattice_primitives/lattice_generator.py | 742 | # Create a new set of parameters that represents | COMMENT |
| MEDIUM | …2_smac_planner/lattice_primitives/lattice_generator.py | 757 | # Create a new set of parameters that represents | COMMENT |
| MEDIUM | …anner/lattice_primitives/generate_motion_primitives.py | 229 | # Create the directory if it doesn't exist | COMMENT |
| MEDIUM | tools/bt2img.py | 280 | # Create a unique dot node for this SubTree element | COMMENT |
| MEDIUM | nav2_common/test/test_rewritten_yaml.py | 31 | # Create a temporary YAML file for testing | COMMENT |
| MEDIUM | …lowing/opennav_following/test/test_following_server.py | 101 | # Create a dedicated node and executor so timers and clocks behave correctly | COMMENT |
| MEDIUM | …lowing/opennav_following/test/test_following_server.py | 185 | # Create a ROS node for tests | COMMENT |
| MEDIUM | …lowing/opennav_following/test/test_following_server.py | 298 | # Create a timer to run "control loop" at 20hz | COMMENT |
| MEDIUM | …lowing/opennav_following/test/test_following_server.py | 334 | # Create the goal | COMMENT |
| MEDIUM | …2_bringup/launch/unique_multi_tb3_simulation_launch.py | 243 | # Create the launch description and populate | COMMENT |
| MEDIUM | nav2_bringup/launch/tb3_simulation_launch.py | 38 | # Create the launch configuration variables | COMMENT |
| MEDIUM | nav2_bringup/launch/tb3_simulation_launch.py | 258 | # Create the launch description and populate | COMMENT |
| MEDIUM | nav2_bringup/launch/rviz_launch.py | 31 | # Create the launch configuration variables | COMMENT |
| MEDIUM | nav2_bringup/launch/rviz_launch.py | 78 | # Create the launch description and populate | COMMENT |
| MEDIUM | nav2_bringup/launch/localization_launch.py | 252 | # Create the launch description and populate | COMMENT |
| MEDIUM | …2_bringup/launch/cloned_multi_tb3_simulation_launch.py | 220 | # Create the launch description and populate | COMMENT |
| MEDIUM | nav2_bringup/launch/tb3_loopback_simulation_launch.py | 36 | # Create the launch configuration variables | COMMENT |
| MEDIUM | nav2_bringup/launch/tb3_loopback_simulation_launch.py | 169 | # Create the launch description and populate | COMMENT |
| MEDIUM | nav2_bringup/launch/tb4_loopback_simulation_launch.py | 36 | # Create the launch configuration variables | COMMENT |
| MEDIUM | nav2_bringup/launch/tb4_loopback_simulation_launch.py | 177 | # Create the launch description and populate | COMMENT |
| MEDIUM | nav2_bringup/launch/bringup_launch.py | 38 | # Create the launch configuration variables | COMMENT |
| MEDIUM | nav2_bringup/launch/bringup_launch.py | 335 | # Create the launch description and populate | COMMENT |
| MEDIUM | nav2_bringup/launch/navigation_launch.py | 390 | # Create the launch description and populate | COMMENT |
| MEDIUM | nav2_bringup/launch/keepout_zone_launch.py | 194 | # Create the launch description and populate | COMMENT |
| MEDIUM | nav2_bringup/launch/speed_zone_launch.py | 194 | # Create the launch description and populate | COMMENT |
| MEDIUM | nav2_bringup/launch/tb4_simulation_launch.py | 54 | # Create the launch configuration variables | COMMENT |
| MEDIUM | nav2_bringup/launch/tb4_simulation_launch.py | 304 | # Create the launch description and populate | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | nav2_collision_monitor/src/polygon_source.cpp | 122 | /* Full function generated by GPT */ | COMMENT |
| HIGH | nav2_simple_commander/test/test_costmap2d.py | 22 | # Tests generated by AI and checked by human | COMMENT |
| HIGH | nav2_simple_commander/test/test_occupancy_grid.py | 22 | # Tests generated by AI and checked by human | COMMENT |
| HIGH | .github/PULL_REQUEST_TEMPLATE.md | 13 | | Was this PR description generated by AI software? | Out of respect for maintainers, AI for human-to-human communicatio | CODE |
| HIGH | …_costmap_2d/include/nav2_costmap_2d/costmap_2d_ros.hpp | 386 | std::atomic<bool> map_update_thread_shutdown_{false}; // [AI generated] | CODE |
| HIGH | …_graceful_controller/test/test_graceful_controller.cpp | 489 | // [AI generated] This test and the getSpeedAngularMax() accessor | COMMENT |
| HIGH | …_graceful_controller/test/test_graceful_controller.cpp | 490 | // were generated by AI and reviewed by the author | COMMENT |
| HIGH | nav2_ros_common/test/test_actions.cpp | 573 | // [AI generated] This test and the allow/reject publisher and subscriber | COMMENT |
| HIGH | nav2_ros_common/test/test_actions.cpp | 574 | // were generated by AI and reviewed by the author | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/bt_nodes_validation/validate_bt_xml_nodes.py | 1 | CODE | |
| LOW | …es_validation/test/unit/test_extract_xml_nodes_data.py | 1 | CODE | |
| LOW | nav2_msgs/msg/__init__.py | 1 | CODE | |
| LOW | nav2_msgs/msg/__init__.py | 2 | CODE | |
| LOW | nav2_msgs/msg/__init__.py | 3 | CODE | |
| LOW | nav2_msgs/msg/__init__.py | 4 | CODE | |
| LOW | nav2_msgs/msg/__init__.py | 5 | CODE | |
| LOW | nav2_msgs/msg/__init__.py | 6 | CODE | |
| LOW | nav2_msgs/msg/__init__.py | 7 | CODE | |
| LOW | nav2_msgs/msg/__init__.py | 8 | CODE | |
| LOW | nav2_msgs/msg/__init__.py | 9 | CODE | |
| LOW | nav2_msgs/msg/__init__.py | 10 | CODE | |
| LOW | nav2_msgs/msg/__init__.py | 11 | CODE | |
| LOW | nav2_msgs/msg/__init__.py | 12 | CODE | |
| LOW | nav2_msgs/msg/__init__.py | 13 | CODE | |
| LOW | nav2_msgs/msg/__init__.py | 14 | CODE | |
| LOW | nav2_msgs/action/__init__.py | 1 | CODE | |
| LOW | nav2_msgs/action/__init__.py | 2 | CODE | |
| LOW | nav2_msgs/action/__init__.py | 3 | CODE | |
| LOW | nav2_msgs/action/__init__.py | 4 | CODE | |
| LOW | nav2_msgs/action/__init__.py | 5 | CODE | |
| LOW | nav2_msgs/action/__init__.py | 6 | CODE | |
| LOW | nav2_msgs/action/__init__.py | 7 | CODE | |
| LOW | nav2_msgs/action/__init__.py | 8 | CODE | |
| LOW | nav2_msgs/action/__init__.py | 9 | CODE | |
| LOW | nav2_msgs/action/__init__.py | 10 | CODE | |
| LOW | nav2_msgs/action/__init__.py | 11 | CODE | |
| LOW | nav2_msgs/action/__init__.py | 12 | CODE | |
| LOW | nav2_msgs/action/__init__.py | 13 | CODE | |
| LOW | nav2_msgs/action/__init__.py | 14 | CODE | |
| LOW | nav2_msgs/action/__init__.py | 15 | CODE | |
| LOW | nav2_msgs/action/__init__.py | 16 | CODE | |
| LOW | nav2_msgs/action/__init__.py | 17 | CODE | |
| LOW | nav2_msgs/action/__init__.py | 18 | CODE | |
| LOW | nav2_msgs/srv/__init__.py | 1 | CODE | |
| LOW | nav2_msgs/srv/__init__.py | 2 | CODE | |
| LOW | nav2_msgs/srv/__init__.py | 3 | CODE | |
| LOW | nav2_msgs/srv/__init__.py | 4 | CODE | |
| LOW | nav2_msgs/srv/__init__.py | 5 | CODE | |
| LOW | nav2_msgs/srv/__init__.py | 6 | CODE | |
| LOW | nav2_msgs/srv/__init__.py | 7 | CODE | |
| LOW | nav2_msgs/srv/__init__.py | 8 | CODE | |
| LOW | nav2_msgs/srv/__init__.py | 9 | CODE | |
| LOW | nav2_msgs/srv/__init__.py | 10 | CODE | |
| LOW | nav2_msgs/srv/__init__.py | 11 | CODE | |
| LOW | nav2_msgs/srv/__init__.py | 12 | CODE | |
| LOW | nav2_msgs/srv/__init__.py | 13 | CODE | |
| LOW | nav2_common/nav2_common/launch/__init__.py | 15 | CODE | |
| LOW | nav2_common/nav2_common/launch/__init__.py | 16 | CODE | |
| LOW | nav2_common/nav2_common/launch/__init__.py | 17 | CODE | |
| LOW | nav2_common/nav2_common/launch/__init__.py | 18 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | nav2_system_tests/src/system_failure/tester_node.py | 194 | except Exception as e: # noqa: B902 | CODE |
| LOW | nav2_system_tests/src/route/tester_node.py | 398 | except Exception as e: # noqa: B902 | CODE |
| LOW | nav2_system_tests/src/costmap_filters/tester_node.py | 400 | except Exception as e: # noqa: B902 | CODE |
| LOW | nav2_system_tests/src/system/nav_to_pose_tester_node.py | 133 | except Exception as e: # noqa: B902 | CODE |
| LOW | nav2_system_tests/src/system/nav_to_pose_tester_node.py | 233 | except Exception as e: | CODE |
| LOW | nav2_system_tests/src/system/nav_to_pose_tester_node.py | 355 | except Exception as e: # noqa: B902 | CODE |
| LOW | …stem_tests/src/system/nav_through_poses_tester_node.py | 249 | except Exception as e: # noqa: B902 | CODE |
| LOW | …/src/system/nav_through_poses_tester_error_msg_node.py | 227 | except Exception as e: # noqa: B902 | CODE |
| LOW | …m_tests/src/behaviors/drive_on_heading/drive_tester.py | 64 | except Exception as e: # noqa: B902 | CODE |
| LOW | …m_tests/src/behaviors/drive_on_heading/drive_tester.py | 80 | except Exception as e: # noqa: B902 | CODE |
| LOW | …m_tests/src/behaviors/drive_on_heading/drive_tester.py | 99 | except Exception as e: # noqa: B902 | CODE |
| LOW | …m_tests/src/behaviors/drive_on_heading/drive_tester.py | 117 | except Exception as e: # noqa: B902 | CODE |
| LOW | …m_tests/src/behaviors/drive_on_heading/drive_tester.py | 134 | except Exception as e: # noqa: B902 | CODE |
| LOW | …m_tests/src/behaviors/drive_on_heading/drive_tester.py | 152 | except Exception as e: # noqa: B902 | CODE |
| LOW | …m_tests/src/behaviors/drive_on_heading/drive_tester.py | 316 | except Exception as e: # noqa: B902 | CODE |
| LOW | nav2_system_tests/src/behaviors/spin/spin_tester.py | 61 | except Exception as e: # noqa: B902 | CODE |
| LOW | nav2_system_tests/src/behaviors/spin/spin_tester.py | 77 | except Exception as e: # noqa: B902 | CODE |
| LOW | nav2_system_tests/src/behaviors/spin/spin_tester.py | 96 | except Exception as e: # noqa: B902 | CODE |
| LOW | nav2_system_tests/src/behaviors/spin/spin_tester.py | 114 | except Exception as e: # noqa: B902 | CODE |
| LOW | nav2_system_tests/src/behaviors/spin/spin_tester.py | 131 | except Exception as e: # noqa: B902 | CODE |
| LOW | nav2_system_tests/src/behaviors/spin/spin_tester.py | 149 | except Exception as e: # noqa: B902 | CODE |
| LOW | nav2_system_tests/src/behaviors/spin/spin_tester.py | 297 | except Exception as e: # noqa: B902 | CODE |
| LOW | nav2_system_tests/src/behaviors/backup/backup_tester.py | 63 | except Exception as e: # noqa: B902 | CODE |
| LOW | nav2_system_tests/src/behaviors/backup/backup_tester.py | 79 | except Exception as e: # noqa: B902 | CODE |
| LOW | nav2_system_tests/src/behaviors/backup/backup_tester.py | 98 | except Exception as e: # noqa: B902 | CODE |
| LOW | nav2_system_tests/src/behaviors/backup/backup_tester.py | 116 | except Exception as e: # noqa: B902 | CODE |
| LOW | nav2_system_tests/src/behaviors/backup/backup_tester.py | 133 | except Exception as e: # noqa: B902 | CODE |
| LOW | nav2_system_tests/src/behaviors/backup/backup_tester.py | 151 | except Exception as e: # noqa: B902 | CODE |
| LOW | nav2_system_tests/src/behaviors/backup/backup_tester.py | 307 | except Exception as e: # noqa: B902 | CODE |
| LOW | nav2_system_tests/src/waypoint_follower/tester.py | 106 | except Exception as e: # noqa: B902 | CODE |
| LOW | nav2_system_tests/src/waypoint_follower/tester.py | 128 | except Exception as e: # noqa: B902 | CODE |
| LOW | nav2_system_tests/src/waypoint_follower/tester.py | 173 | except Exception as e: # noqa: B902 | CODE |
| LOW | nav2_system_tests/src/gps_navigation/tester.py | 81 | except Exception as e: # noqa: B902 | CODE |
| LOW | nav2_system_tests/src/gps_navigation/tester.py | 103 | except Exception as e: # noqa: B902 | CODE |
| LOW | nav2_system_tests/src/gps_navigation/tester.py | 145 | except Exception as e: # noqa: B902 | CODE |
| LOW | nav2_common/nav2_common/launch/replace_string.py | 73 | except Exception as err: # noqa: B902 | CODE |
| LOW | nav2_simple_commander/nav2_simple_commander/utils.py | 47 | except Exception as e: | CODE |
| LOW⚡ | …lowing/opennav_following/test/test_following_server.py | 156 | except Exception: | CODE |
| LOW⚡ | …lowing/opennav_following/test/test_following_server.py | 166 | except Exception: | CODE |
| LOW⚡ | …lowing/opennav_following/test/test_following_server.py | 170 | except Exception: | CODE |
| LOW | nav2_route/graphs/scripts/export_shapefiles.py | 26 | except Exception: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | nav2_common/nav2_common/launch/rewritten_yaml.py | 0 | return a description of this substitution as a string. | STRING |
| HIGH | nav2_common/nav2_common/launch/replace_string.py | 0 | return a description of this substitution as a string. | STRING |
| HIGH | nav2_common/nav2_common/launch/has_node_params.py | 0 | return a description of this substitution as a string. | STRING |
| HIGH | nav2_bringup/launch/tb3_simulation_launch.py | 0 | this is all-in-one launch script intended for use by nav2 developers. | STRING |
| HIGH | nav2_bringup/launch/tb3_loopback_simulation_launch.py | 0 | this is all-in-one launch script intended for use by nav2 developers. | STRING |
| HIGH | nav2_bringup/launch/tb4_loopback_simulation_launch.py | 0 | this is all-in-one launch script intended for use by nav2 developers. | STRING |
| HIGH | nav2_bringup/launch/tb4_simulation_launch.py | 0 | this is all-in-one launch script intended for use by nav2 developers. | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | nav2_common/nav2_common/launch/rewritten_yaml.py | 276 | except ValueError: | CODE |
| HIGH | …lowing/opennav_following/test/test_following_server.py | 156 | except Exception: | CODE |
| HIGH | …lowing/opennav_following/test/test_following_server.py | 166 | except Exception: | CODE |
| HIGH | …lowing/opennav_following/test/test_following_server.py | 170 | except Exception: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | nav2_system_tests/src/system_failure/tester_node.py | 128 | CODE | |
| LOW | nav2_system_tests/src/route/tester_node.py | 171 | CODE | |
| LOW | nav2_system_tests/src/costmap_filters/tester_node.py | 334 | CODE | |
| LOW | nav2_system_tests/src/system/nav_to_pose_tester_node.py | 289 | CODE | |
| LOW | …2_smac_planner/lattice_primitives/lattice_generator.py | 306 | CODE | |
| LOW | …2_smac_planner/lattice_primitives/lattice_generator.py | 428 | CODE | |
| LOW | tools/bt2img.py | 102 | CODE | |
| LOW | tools/update_readme_table.py | 96 | CODE | |
| LOW | tools/bt_nodes_validation/validate_bt_xml_nodes.py | 141 | CODE | |
| LOW | tools/bt_nodes_validation/validate_bt_xml_nodes.py | 499 | CODE | |
| LOW | tools/bt_nodes_validation/validate_bt_xml_nodes.py | 557 | CODE | |
| LOW | tools/bt_nodes_validation/validate_bt_xml_nodes.py | 609 | CODE | |
| LOW | nav2_common/nav2_common/launch/replace_string.py | 90 | CODE | |
| LOW | nav2_simple_commander/test/test_line_iterator.py | 96 | CODE | |
| LOW | nav2_simple_commander/test/test_line_iterator.py | 147 | CODE | |
| LOW | nav2_simple_commander/test/test_line_iterator.py | 160 | CODE | |
| LOW | …imple_commander/nav2_simple_commander/demo_security.py | 30 | CODE | |
| LOW | …ple_commander/nav2_simple_commander/robot_navigator.py | 1007 | CODE | |
| LOW | …ple_commander/nav2_simple_commander/robot_navigator.py | 1182 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | …der/nav2_simple_commander/example_nav_through_poses.py | 49 | # If desired, you can change or load the map as well | COMMENT |
| MEDIUM | …der/nav2_simple_commander/example_waypoint_follower.py | 49 | # If desired, you can change or load the map as well | COMMENT |
| MEDIUM | …ple_commander/nav2_simple_commander/demo_inspection.py | 70 | # Simplification of angle handling for demonstration purposes | COMMENT |
| MEDIUM | …imple_commander/nav2_simple_commander/example_route.py | 77 | # If desired, you can change or load the map as well | COMMENT |
| MEDIUM | …commander/nav2_simple_commander/example_nav_to_pose.py | 49 | # If desired, you can change or load the map as well | COMMENT |
| MEDIUM | …simple_commander/nav2_simple_commander/demo_picking.py | 75 | # Simplification of angle handling for demonstration purposes | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | nav2_system_tests/src/route/tester_node.py | 282 | # Check if the feedback is valid, if changed (not for route operations) | COMMENT |
| LOW | nav2_system_tests/src/system/nav_to_pose_tester_node.py | 468 | # Check if --expect_failure is True or False | COMMENT |
| LOW | …2_smac_planner/lattice_primitives/lattice_generator.py | 363 | # Check if path overlaps something in minimal | COMMENT |
| LOW | tools/bt2img.py | 138 | # Check if we already processed this file (prevent infinite loops) | COMMENT |
| LOW | tools/update_readme_table.py | 108 | # Check if package exists in this distribution with retries | COMMENT |
| LOW | tools/planner_benchmarking/metrics.py | 107 | # Set map to use, other options: 100by100_15, 100by100_10 | COMMENT |
| LOW | .devcontainer/post-create-command.sh | 13 | # Check if srv folder exists | COMMENT |
| LOW | …imple_commander/nav2_simple_commander/example_route.py | 140 | # Check if followPath or WPF task is done (or failed), | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …anner/lattice_primitives/generate_motion_primitives.py | 30 | logger = logging.getLogger(__name__) | CODE |
| LOW | …mac_planner/lattice_primitives/trajectory_generator.py | 22 | logger = logging.getLogger(__name__) | CODE |
| LOW | tools/bt_nodes_validation/validate_bt_xml_nodes.py | 141 | def update_paths_for_external_repos(config: dict, clone_dir: Path) -> None: | CODE |
| LOW | nav2_msgs/msg/__init__.py | 16 | __all__ = [ | CODE |
| LOW | nav2_msgs/action/__init__.py | 20 | __all__ = [ | CODE |
| LOW | nav2_msgs/srv/__init__.py | 15 | __all__ = [ | CODE |
| LOW | nav2_common/nav2_common/launch/__init__.py | 20 | __all__ = [ | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | …2_smac_planner/lattice_primitives/lattice_generator.py | 303 | # we can leverage symmetry to create the complete minimal set | COMMENT |
| MEDIUM | …_route/src/plugins/edge_cost_functions/time_scorer.cpp | 53 | // We have a previous actual time to utilize for a refined estimate | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | nav2_waypoint_follower/test/test_task_executors.cpp | 130 | int fake_data = 0; | CODE |
| LOW | nav2_waypoint_follower/test/test_task_executors.cpp | 132 | msg->data.push_back(fake_data++); | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | nav2_navfn_planner/src/navfn.cpp | 56 | // Example usage: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/bt_nodes_validation/test/conftest.py | 76 | CODE |