ROS 2 Navigation Framework and System
This report presents the forensic synthetic code analysis of ros-navigation/navigation2, a C++ project with 4,460 GitHub stars. SynthScan v2.0 examined 324,951 lines of code across 1555 source files, recording 1500 pattern matches distributed across 15 syntactic categories. The overall adjusted score of 5.0 places this repository in the Low AI signal band.
The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).
Longitudinal tracking requires multiple scan runs. Once this repository is re-scanned after new commits land, this chart will visualise how the synthetic code signal evolves over time — enabling you to detect whether AI authorship is growing, stabilising, or being actively corrected by human engineers.
Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.
This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.
The scanner identified 1500 distinct pattern matches across 15 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. 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 diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.
| 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 | …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 | …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_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 | #include <iostream> | 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_shapes.cpp | 1 | // Copyright (c) 2023 Samsung R&D Institute Russia | 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/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 |
| LOW | nav2_controller/src/controller_server.cpp | 1 | // Copyright (c) 2019 Intel Corporation | COMMENT |
| LOW | nav2_controller/src/controller_server.cpp | 941 | #include "rclcpp_components/register_node_macro.hpp" | COMMENT |
| LOW | nav2_controller/src/main.cpp | 1 | // Copyright (c) 2019 Intel Corporation | COMMENT |
| LOW | nav2_system_tests/src/system_failure/tester_node.py | 1 | #! /usr/bin/env python3 | COMMENT |
| LOW | …tests/src/system_failure/test_system_failure_launch.py | 1 | #!/usr/bin/env python3 | COMMENT |
| LOW | nav2_system_tests/src/route/test_route_launch.py | 1 | #!/usr/bin/env python3 | COMMENT |
| 1106 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 | 30 | 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 |
| 89 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 | 256 | # 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 | 245 | # 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 | 37 | # Create the launch configuration variables | COMMENT |
| MEDIUM | nav2_bringup/launch/tb3_loopback_simulation_launch.py | 236 | # Create the launch description and populate | COMMENT |
| MEDIUM | nav2_bringup/launch/tb4_loopback_simulation_launch.py | 37 | # Create the launch configuration variables | COMMENT |
| MEDIUM | nav2_bringup/launch/tb4_loopback_simulation_launch.py | 243 | # Create the launch description and populate | COMMENT |
| MEDIUM | nav2_bringup/launch/bringup_launch.py | 34 | # Create the launch configuration variables | COMMENT |
| MEDIUM | nav2_bringup/launch/bringup_launch.py | 264 | # Create the launch description and populate | COMMENT |
| MEDIUM | nav2_bringup/launch/navigation_launch.py | 409 | # Create the launch description and populate | COMMENT |
| MEDIUM | nav2_bringup/launch/keepout_zone_launch.py | 219 | # Create the launch description and populate | COMMENT |
| MEDIUM | nav2_bringup/launch/speed_zone_launch.py | 219 | # 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 | 302 | # Create the launch description and populate | 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/system_failure/tester_node.py | 209 | 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/route/tester_node.py | 413 | 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/costmap_filters/tester_node.py | 415 | 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 | nav2_system_tests/src/system/nav_to_pose_tester_node.py | 370 | 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 | …stem_tests/src/system/nav_through_poses_tester_node.py | 264 | 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 | …/src/system/nav_through_poses_tester_error_msg_node.py | 242 | 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/waypoint_follower/tester.py | 189 | 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_collision_monitor/src/polygon_source.cpp | 124 | /* 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 |
| 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/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/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 | …imple_commander/nav2_simple_commander/demo_security.py | 30 | CODE | |
| LOW | …ple_commander/nav2_simple_commander/robot_navigator.py | 1003 | CODE | |
| LOW | …ple_commander/nav2_simple_commander/robot_navigator.py | 1178 | CODE | |
| LOW | …imple_commander/nav2_simple_commander/line_iterator.py | 98 | CODE |
| 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 | 483 | # 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 | 104 | # Check if package isn't in a given distribution | 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 | 52 | // 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 | 126 | int fake_data = 0; | CODE |
| LOW | nav2_waypoint_follower/test/test_task_executors.cpp | 128 | msg->data.push_back(fake_data++); | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | nav2_navfn_planner/src/navfn.cpp | 55 | // Example usage: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/bt_nodes_validation/test/conftest.py | 76 | CODE |