Repository Analysis

ros-navigation/navigation2

ROS 2 Navigation Framework and System

5.0 Low AI signal View on GitHub

Analysis Overview

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).

5.0
Adjusted Score
5.0
Raw Score
100%
Time Factor
2026-07-14
Last Push
4.5K
Stars
C++
Language
325.0K
Lines of Code
1.6K
Files
1.5K
Pattern Hits
2026-07-14
Scan Date
0.01
HC Hit Rate

What These Metrics Mean

Adjusted Score
Primary synthetic code indicator. Raw score normalised per 1,000 lines of code and multiplied by the temporal discount factor. This is the definitive comparative metric — use it to rank repositories by AI authorship density.
Raw Score
The unmodified sum of all severity-weighted, context-multiplied pattern match scores before temporal discounting. Reflects the absolute signal strength independent of when the repository was last active.
Time Factor
The temporal discount multiplier (0–100%) applied to the raw score. Repositories last updated before ChatGPT's launch (Nov 2022) receive a 5% factor. Full signal is only assigned to repositories active in the post-adoption era (Jan 2024+).
Pattern Hits
Total count of individual pattern matches across all files and categories. A high hit count with a low score may indicate a very large codebase with isolated AI snippets; a low count with a high score indicates dense, concentrated AI signatures.
HC Hit Rate
High+Critical pattern hits per file, averaged across the repository. This orthogonal signal catches repositories where a few files are densely packed with high-severity AI tells — a strong indicator even when the normalised score appears moderate due to codebase size.
Lines of Code / Files
Total lines and files analysed. The scanner examines 94 file extensions. These denominators are used to normalise the score, enabling fair comparison between repositories of vastly different sizes.

Score History

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.

No multi-scan history yet — run the scanner again to build trend data.

Severity Breakdown

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.

CRITICAL 0HIGH 11MEDIUM 40LOW 1449

Directory Score Breakdown

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.

Pattern Findings

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.

Over-Commented Block1166 hits · 1166 pts
SeverityFileLineSnippetContext
LOW.pre-commit-config.yaml1COMMENT
LOWnav2_map_server/test/unit/test_vector_object_shapes.cpp1// Copyright (c) 2023 Samsung R&D Institute RussiaCOMMENT
LOWnav2_map_server/test/unit/test_vector_object_shapes.cpp21#include <memory>COMMENT
LOW…p_server/test/unit/test_costmap_filter_info_server.cpp1// Copyright (c) 2020 Samsung Research RussiaCOMMENT
LOWnav2_map_server/test/unit/test_vector_object_server.cpp1// Copyright (c) 2023 Samsung R&D Institute RussiaCOMMENT
LOWnav2_map_server/test/unit/test_vector_object_server.cpp21#include <string>COMMENT
LOW…2_map_server/test/map_saver_cli/test_map_saver_cli.cpp1// Copyright (c) 2020 Samsung Research AmericaCOMMENT
LOWnav2_map_server/test/component/test_map_server_node.cpp1// Copyright (c) 2018 Intel CorporationCOMMENT
LOW…v2_map_server/test/component/test_map_server_launch.py1#!/usr/bin/env python3COMMENT
LOWnav2_map_server/test/component/test_map_saver_launch.py1#!/usr/bin/env python3COMMENT
LOW…map_server/test/component/test_map_saver_publisher.cpp1// Copyright (c) 2020 Samsung Research RussiaCOMMENT
LOWnav2_map_server/test/component/test_map_saver_node.cpp1// Copyright (c) 2020 Samsung Research RussiaCOMMENT
LOW…erver/test/test_launch_files/map_server_node.launch.py1#!/usr/bin/env python3COMMENT
LOW…server/test/test_launch_files/map_saver_node.launch.py1#!/usr/bin/env python3COMMENT
LOWnav2_map_server/launch/vector_object_server.launch.py1#!/usr/bin/env python3COMMENT
LOWnav2_map_server/launch/map_saver_server.launch.py1#!/usr/bin/env python3COMMENT
LOWnav2_map_server/include/nav2_map_server/map_mode.hpp1// Copyright (c) 2019 Rover RoboticsCOMMENT
LOW…erver/include/nav2_map_server/vector_object_shapes.hpp1// Copyright (c) 2023 Samsung R&D Institute RussiaCOMMENT
LOW…erver/include/nav2_map_server/vector_object_server.hpp1// Copyright (c) 2023 Samsung R&D Institute RussiaCOMMENT
LOW…erver/include/nav2_map_server/vector_object_server.hpp21COMMENT
LOWnav2_map_server/include/nav2_map_server/map_io.hpp1// Copyright (c) 2018 Intel CorporationCOMMENT
LOWnav2_map_server/include/nav2_map_server/map_saver.hpp1// Copyright (c) 2020 Samsung Research RussiaCOMMENT
LOW…include/nav2_map_server/costmap_filter_info_server.hpp1// Copyright (c) 2020 Samsung Research RussiaCOMMENT
LOW…server/include/nav2_map_server/vector_object_utils.hpp1// Copyright (c) 2023 Samsung R&D Institute RussiaCOMMENT
LOWnav2_map_server/include/nav2_map_server/map_server.hpp1// Copyright (c) 2018 Intel CorporationCOMMENT
LOWnav2_map_server/src/map_io.cpp41#include <iostream>COMMENT
LOWnav2_map_server/src/map_mode.cpp1// Copyright 2019 Rover RoboticsCOMMENT
LOW…src/costmap_filter_info/costmap_filter_info_server.cpp1// Copyright (c) 2020 Samsung Research RussiaCOMMENT
LOWnav2_map_server/src/costmap_filter_info/main.cpp1// Copyright (c) 2020 Samsung Research RussiaCOMMENT
LOWnav2_map_server/src/map_saver/main_server.cpp1// Copyright (c) 2020 Samsung Research RussiaCOMMENT
LOWnav2_map_server/src/map_saver/main_cli.cpp1// Copyright 2019 Rover RoboticsCOMMENT
LOWnav2_map_server/src/map_server/main.cpp1// Copyright (c) 2018 Intel CorporationCOMMENT
LOWnav2_map_server/src/vo_server/vector_object_shapes.cpp1// Copyright (c) 2023 Samsung R&D Institute RussiaCOMMENT
LOWnav2_map_server/src/vo_server/vector_object_server.cpp1// Copyright (c) 2023 Samsung R&D Institute RussiaCOMMENT
LOWnav2_map_server/src/vo_server/main.cpp1// Copyright (c) 2023 Samsung R&D Institute RussiaCOMMENT
LOWnav2_controller/test/test_controller_server.cpp1// Copyright (c) 2021, Samsung Research AmericaCOMMENT
LOWnav2_controller/plugins/pose_progress_checker.cpp1// Copyright (c) 2023 DexoryCOMMENT
LOWnav2_controller/plugins/position_goal_checker.cpp1// Copyright (c) 2025 Prabhav SaxenaCOMMENT
LOW…controller/plugins/adaptive_tolerance_goal_checker.cpp1// Copyright (c) 2026, David GrbacCOMMENT
LOWnav2_controller/plugins/simple_progress_checker.cpp1// Copyright (c) 2019 Intel CorporationCOMMENT
LOWnav2_controller/plugins/axis_goal_checker.cpp1// Copyright (c) 2025 DexoryCOMMENT
LOWnav2_controller/plugins/feasible_path_handler.cpp1// Copyright (c) 2022 Samsung Research America, @artofnothingness Alexey BudyakovCOMMENT
LOWnav2_controller/plugins/test/path_handler.cpp1// Copyright (c) 2022 Samsung Research America, @artofnothingness Alexey BudyakovCOMMENT
LOWnav2_controller/plugins/test/axis_goal_checker.cpp1// Copyright (c) 2025 DexoryCOMMENT
LOW…ntroller/include/nav2_controller/controller_server.hpp1// Copyright (c) 2019 Intel CorporationCOMMENT
LOW…ntroller/include/nav2_controller/controller_server.hpp21#include <unordered_map>COMMENT
LOW…ntroller/include/nav2_controller/parameter_handler.hpp1// Copyright (c) 2022 Samsung Research AmericaCOMMENT
LOW…lude/nav2_controller/plugins/feasible_path_handler.hpp1// Copyright (c) 2022 Samsung Research America, @artofnothingness Alexey BudyakovCOMMENT
LOW…de/nav2_controller/plugins/simple_progress_checker.hpp1// Copyright (c) 2019 Intel CorporationCOMMENT
LOW…/include/nav2_controller/plugins/axis_goal_checker.hpp1// Copyright (c) 2025 DexoryCOMMENT
LOW…lude/nav2_controller/plugins/position_goal_checker.hpp1// Copyright (c) 2025 Prabhav SaxenaCOMMENT
LOW…controller/plugins/adaptive_tolerance_goal_checker.hpp1// Copyright (c) 2026, David GrbacCOMMENT
LOW…lude/nav2_controller/plugins/pose_progress_checker.hpp1// Copyright (c) 2023 DexoryCOMMENT
LOWnav2_controller/src/parameter_handler.cpp1// Copyright (c) 2022 Samsung Research AmericaCOMMENT
LOWnav2_controller/src/controller_server.cpp1// Copyright (c) 2019 Intel CorporationCOMMENT
LOWnav2_controller/src/controller_server.cpp941#include "rclcpp_components/register_node_macro.hpp"COMMENT
LOWnav2_controller/src/main.cpp1// Copyright (c) 2019 Intel CorporationCOMMENT
LOWnav2_system_tests/src/system_failure/tester_node.py1#! /usr/bin/env python3COMMENT
LOW…tests/src/system_failure/test_system_failure_launch.py1#!/usr/bin/env python3COMMENT
LOWnav2_system_tests/src/route/test_route_launch.py1#!/usr/bin/env python3COMMENT
1106 more matches not shown…
Hyper-Verbose Identifiers149 hits · 145 pts
SeverityFileLineSnippetContext
LOW…erver/test/test_launch_files/map_server_node.launch.py23def generate_launch_description() -> LaunchDescription:CODE
LOW…server/test/test_launch_files/map_saver_node.launch.py24def generate_launch_description() -> LaunchDescription:CODE
LOWnav2_map_server/launch/vector_object_server.launch.py29def generate_launch_description() -> LaunchDescription:CODE
LOWnav2_map_server/launch/map_saver_server.launch.py21def generate_launch_description() -> LaunchDescription:CODE
LOW…tests/src/system_failure/test_system_failure_launch.py33def generate_launch_description():CODE
LOWnav2_system_tests/src/route/test_route_launch.py32def generate_launch_description():CODE
LOW…ystem_tests/src/costmap_filters/test_keepout_launch.py33def generate_launch_description():CODE
LOWnav2_system_tests/src/costmap_filters/tester_node.py314 def wait_for_pointcloud_subscribers(self, timeout: float) -> bool:CODE
LOW…_system_tests/src/costmap_filters/test_speed_launch.py33def generate_launch_description():CODE
LOWnav2_system_tests/src/system/test_system_launch.py33def generate_launch_description():CODE
LOWnav2_system_tests/src/system/test_multi_robot_launch.py40def generate_launch_description():CODE
LOW…m_tests/src/system/test_system_with_obstacle_launch.py33def generate_launch_description():CODE
LOW…system_tests/src/system/test_wrong_init_pose_launch.py33def generate_launch_description():CODE
LOWnav2_system_tests/src/updown/test_updown_launch.py23def generate_launch_description() -> launch.LaunchDescription:CODE
LOW…_tests/src/behaviors/wait/test_wait_behavior_launch.py30def generate_launch_description():CODE
LOW…ssisted_teleop/test_assisted_teleop_behavior_launch.py30def generate_launch_description():CODE
LOW…ve_on_heading/test_drive_on_heading_behavior.launch.py31def generate_launch_description():CODE
LOW…_tests/src/behaviors/spin/test_spin_behavior.launch.py31def generate_launch_description():CODE
LOW…ts/src/behaviors/backup/test_backup_behavior.launch.py31def generate_launch_description():CODE
LOW…system_tests/src/waypoint_follower/test_case_launch.py31def generate_launch_description():CODE
LOW…tem_tests/src/gps_navigation/dual_ekf_navsat.launch.py21def generate_launch_description() -> LaunchDescription:CODE
LOW…system_tests/src/gps_navigation/test_case_py.launch.py30def generate_launch_description():CODE
LOW…ystem_tests/src/error_codes/test_error_codes_launch.py25def generate_launch_description():CODE
LOW…v2_docking/opennav_docking/test/test_docking_server.py52def generate_test_description():CODE
LOW…v2_docking/opennav_docking/test/test_docking_server.py134 def wait_for_node_to_be_active(self, node_name, timeout_sec=30.0):CODE
LOW…v2_docking/opennav_docking/test/test_docking_server.py157 def command_velocity_callback(self, msg):CODE
LOW…lision_monitor/test/test_collision_monitor_node_bag.py29def generate_test_description():CODE
LOW…lision_monitor/launch/collision_monitor_node.launch.py29def generate_launch_description() -> LaunchDescription:CODE
LOW…ision_monitor/launch/collision_detector_node.launch.py29def generate_launch_description() -> LaunchDescription:CODE
LOW…2_smac_planner/lattice_primitives/lattice_generator.py115 def _get_heading_discretization(self, number_of_headings: int) -> List[float]:CODE
LOW…2_smac_planner/lattice_primitives/lattice_generator.py246 def _compute_min_trajectory_length(self) -> float:CODE
LOW…2_smac_planner/lattice_primitives/lattice_generator.py270 def _generate_minimal_spanning_set(self) -> Dict[float, List[Trajectory]]:CODE
LOW…2_smac_planner/lattice_primitives/lattice_generator.py306 def _compute_for_single_heading(self, start_heading: floatCODE
LOW…2_smac_planner/lattice_primitives/lattice_generator.py428 def _create_complete_minimal_spanning_set(CODE
LOW…anner/lattice_primitives/generate_motion_primitives.py76def create_heading_angle_list(minimal_set_trajectories: Dict[float, List[Trajectory]]CODE
LOW…mac_planner/lattice_primitives/trajectory_generator.py334 def _calculate_trajectory_params(CODE
LOW…/lattice_primitives/tests/test_trajectory_generator.py34 def test_generate_trajectory_only_arc(self):CODE
LOW…/lattice_primitives/tests/test_trajectory_generator.py83 def test_generate_trajectory_only_line(self):CODE
LOW…/lattice_primitives/tests/test_trajectory_generator.py132 def test_generate_trajectory_line_to_arc(self):CODE
LOW…/lattice_primitives/tests/test_trajectory_generator.py181 def test_generate_trajectory_line_to_end(self):CODE
LOW…/lattice_primitives/tests/test_trajectory_generator.py230 def test_generate_trajectory_radius_too_small(self):CODE
LOW…/lattice_primitives/tests/test_trajectory_generator.py263 def test_generate_trajectory_parallel_lines_coincident(self):CODE
LOW…/lattice_primitives/tests/test_trajectory_generator.py288 def test_generate_trajectory_parallel_lines_not_coincident(self):CODE
LOW…ner/lattice_primitives/tests/test_lattice_generator.py45 def test_minimal_set_lengths_are_positive(self):CODE
LOW…ner/lattice_primitives/tests/test_lattice_generator.py56 def test_minimal_set_end_points_lie_on_grid(self):CODE
LOW…ner/lattice_primitives/tests/test_lattice_generator.py71 def test_minimal_set_end_angle_is_correct(self):CODE
LOW…ner/lattice_primitives/tests/test_lattice_generator.py81 def test_output_angles_in_correct_range(self):CODE
LOWtools/bt_nodes_validation/validate_bt_xml_nodes.py141def update_paths_for_external_repos(config: dict, clone_dir: Path) -> None:CODE
LOWtools/bt_nodes_validation/validate_bt_xml_nodes.py341def validate_bt_xml_structure(root: ET.Element) -> ET.Element:CODE
LOWtools/bt_nodes_validation/validate_bt_xml_nodes.py403def extract_node_registration_data(content: str) -> dict[str, str]:CODE
LOWtools/bt_nodes_validation/validate_bt_xml_nodes.py464def extract_cpp_classes_and_ids(cpp_files: list[Path]) -> CPPData:CODE
LOWtools/bt_nodes_validation/validate_bt_xml_nodes.py499def extract_class_definitions(CODE
LOWtools/bt_nodes_validation/validate_bt_xml_nodes.py557def extract_hpp_classes_and_ports_data(CODE
LOWtools/bt_nodes_validation/validate_bt_xml_nodes.py665def 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.py10 def test_duplicated_cpp_classes_across_files(CODE
LOW…bt_nodes_validation/test/test_detect_duplicate_data.py59 def test_duplicated_node_ids_across_files(CODE
LOW…bt_nodes_validation/test/test_detect_duplicate_data.py103 def test_duplicated_hpp_classes_across_files(CODE
LOW…bt_nodes_validation/test/test_detect_duplicate_data.py147 def test_duplicated_ports_from_base_class(CODE
LOW…ols/bt_nodes_validation/test/test_validation_errors.py12 def test_node_in_code_missing_in_xml(CODE
LOW…ols/bt_nodes_validation/test/test_validation_errors.py57 def test_node_in_xml_missing_in_code(CODE
89 more matches not shown…
Self-Referential Comments32 hits · 96 pts
SeverityFileLineSnippetContext
MEDIUMnav2_system_tests/src/system/nav_to_pose_tester_node.py202 # Define the socket using the 'Context'COMMENT
MEDIUM…v2_docking/opennav_docking/test/test_docking_server.py116 # Create a ROS node for testsCOMMENT
MEDIUM…v2_docking/opennav_docking/test/test_docking_server.py232 # Create a timer to run "control loop" at 20hzCOMMENT
MEDIUM…2_smac_planner/lattice_primitives/lattice_generator.py214 # Create a bounding box search regionCOMMENT
MEDIUM…2_smac_planner/lattice_primitives/lattice_generator.py378 # Create a new bounding box in the RTreeCOMMENT
MEDIUM…2_smac_planner/lattice_primitives/lattice_generator.py742 # Create a new set of parameters that representsCOMMENT
MEDIUM…2_smac_planner/lattice_primitives/lattice_generator.py757 # Create a new set of parameters that representsCOMMENT
MEDIUM…anner/lattice_primitives/generate_motion_primitives.py229 # Create the directory if it doesn't existCOMMENT
MEDIUMtools/bt2img.py280 # Create a unique dot node for this SubTree elementCOMMENT
MEDIUMnav2_common/test/test_rewritten_yaml.py31 # Create a temporary YAML file for testingCOMMENT
MEDIUM…lowing/opennav_following/test/test_following_server.py101 # Create a dedicated node and executor so timers and clocks behave correctlyCOMMENT
MEDIUM…lowing/opennav_following/test/test_following_server.py185 # Create a ROS node for testsCOMMENT
MEDIUM…lowing/opennav_following/test/test_following_server.py298 # Create a timer to run "control loop" at 20hzCOMMENT
MEDIUM…lowing/opennav_following/test/test_following_server.py334 # Create the goalCOMMENT
MEDIUM…2_bringup/launch/unique_multi_tb3_simulation_launch.py243 # Create the launch description and populateCOMMENT
MEDIUMnav2_bringup/launch/tb3_simulation_launch.py38 # Create the launch configuration variablesCOMMENT
MEDIUMnav2_bringup/launch/tb3_simulation_launch.py256 # Create the launch description and populateCOMMENT
MEDIUMnav2_bringup/launch/rviz_launch.py31 # Create the launch configuration variablesCOMMENT
MEDIUMnav2_bringup/launch/rviz_launch.py78 # Create the launch description and populateCOMMENT
MEDIUMnav2_bringup/launch/localization_launch.py245 # Create the launch description and populateCOMMENT
MEDIUM…2_bringup/launch/cloned_multi_tb3_simulation_launch.py220 # Create the launch description and populateCOMMENT
MEDIUMnav2_bringup/launch/tb3_loopback_simulation_launch.py37 # Create the launch configuration variablesCOMMENT
MEDIUMnav2_bringup/launch/tb3_loopback_simulation_launch.py236 # Create the launch description and populateCOMMENT
MEDIUMnav2_bringup/launch/tb4_loopback_simulation_launch.py37 # Create the launch configuration variablesCOMMENT
MEDIUMnav2_bringup/launch/tb4_loopback_simulation_launch.py243 # Create the launch description and populateCOMMENT
MEDIUMnav2_bringup/launch/bringup_launch.py34 # Create the launch configuration variablesCOMMENT
MEDIUMnav2_bringup/launch/bringup_launch.py264 # Create the launch description and populateCOMMENT
MEDIUMnav2_bringup/launch/navigation_launch.py409 # Create the launch description and populateCOMMENT
MEDIUMnav2_bringup/launch/keepout_zone_launch.py219 # Create the launch description and populateCOMMENT
MEDIUMnav2_bringup/launch/speed_zone_launch.py219 # Create the launch description and populateCOMMENT
MEDIUMnav2_bringup/launch/tb4_simulation_launch.py54 # Create the launch configuration variablesCOMMENT
MEDIUMnav2_bringup/launch/tb4_simulation_launch.py302 # Create the launch description and populateCOMMENT
Unused Imports51 hits · 51 pts
SeverityFileLineSnippetContext
LOWtools/bt_nodes_validation/validate_bt_xml_nodes.py1CODE
LOW…es_validation/test/unit/test_extract_xml_nodes_data.py1CODE
LOWnav2_msgs/msg/__init__.py1CODE
LOWnav2_msgs/msg/__init__.py2CODE
LOWnav2_msgs/msg/__init__.py3CODE
LOWnav2_msgs/msg/__init__.py4CODE
LOWnav2_msgs/msg/__init__.py5CODE
LOWnav2_msgs/msg/__init__.py6CODE
LOWnav2_msgs/msg/__init__.py7CODE
LOWnav2_msgs/msg/__init__.py8CODE
LOWnav2_msgs/msg/__init__.py9CODE
LOWnav2_msgs/msg/__init__.py10CODE
LOWnav2_msgs/msg/__init__.py11CODE
LOWnav2_msgs/msg/__init__.py12CODE
LOWnav2_msgs/msg/__init__.py13CODE
LOWnav2_msgs/msg/__init__.py14CODE
LOWnav2_msgs/action/__init__.py1CODE
LOWnav2_msgs/action/__init__.py2CODE
LOWnav2_msgs/action/__init__.py3CODE
LOWnav2_msgs/action/__init__.py4CODE
LOWnav2_msgs/action/__init__.py5CODE
LOWnav2_msgs/action/__init__.py6CODE
LOWnav2_msgs/action/__init__.py7CODE
LOWnav2_msgs/action/__init__.py8CODE
LOWnav2_msgs/action/__init__.py9CODE
LOWnav2_msgs/action/__init__.py10CODE
LOWnav2_msgs/action/__init__.py11CODE
LOWnav2_msgs/action/__init__.py12CODE
LOWnav2_msgs/action/__init__.py13CODE
LOWnav2_msgs/action/__init__.py14CODE
LOWnav2_msgs/action/__init__.py15CODE
LOWnav2_msgs/action/__init__.py16CODE
LOWnav2_msgs/action/__init__.py17CODE
LOWnav2_msgs/action/__init__.py18CODE
LOWnav2_msgs/srv/__init__.py1CODE
LOWnav2_msgs/srv/__init__.py2CODE
LOWnav2_msgs/srv/__init__.py3CODE
LOWnav2_msgs/srv/__init__.py4CODE
LOWnav2_msgs/srv/__init__.py5CODE
LOWnav2_msgs/srv/__init__.py6CODE
LOWnav2_msgs/srv/__init__.py7CODE
LOWnav2_msgs/srv/__init__.py8CODE
LOWnav2_msgs/srv/__init__.py9CODE
LOWnav2_msgs/srv/__init__.py10CODE
LOWnav2_msgs/srv/__init__.py11CODE
LOWnav2_msgs/srv/__init__.py12CODE
LOWnav2_msgs/srv/__init__.py13CODE
LOWnav2_common/nav2_common/launch/__init__.py15CODE
LOWnav2_common/nav2_common/launch/__init__.py16CODE
LOWnav2_common/nav2_common/launch/__init__.py17CODE
LOWnav2_common/nav2_common/launch/__init__.py18CODE
Excessive Try-Catch Wrapping48 hits · 50 pts
SeverityFileLineSnippetContext
LOWnav2_system_tests/src/system_failure/tester_node.py194 except Exception as e: # noqa: B902CODE
LOWnav2_system_tests/src/system_failure/tester_node.py209 except Exception as e: # noqa: B902CODE
LOWnav2_system_tests/src/route/tester_node.py398 except Exception as e: # noqa: B902CODE
LOWnav2_system_tests/src/route/tester_node.py413 except Exception as e: # noqa: B902CODE
LOWnav2_system_tests/src/costmap_filters/tester_node.py400 except Exception as e: # noqa: B902CODE
LOWnav2_system_tests/src/costmap_filters/tester_node.py415 except Exception as e: # noqa: B902CODE
LOWnav2_system_tests/src/system/nav_to_pose_tester_node.py133 except Exception as e: # noqa: B902CODE
LOWnav2_system_tests/src/system/nav_to_pose_tester_node.py233 except Exception as e:CODE
LOWnav2_system_tests/src/system/nav_to_pose_tester_node.py355 except Exception as e: # noqa: B902CODE
LOWnav2_system_tests/src/system/nav_to_pose_tester_node.py370 except Exception as e: # noqa: B902CODE
LOW…stem_tests/src/system/nav_through_poses_tester_node.py249 except Exception as e: # noqa: B902CODE
LOW…stem_tests/src/system/nav_through_poses_tester_node.py264 except Exception as e: # noqa: B902CODE
LOW…/src/system/nav_through_poses_tester_error_msg_node.py227 except Exception as e: # noqa: B902CODE
LOW…/src/system/nav_through_poses_tester_error_msg_node.py242 except Exception as e: # noqa: B902CODE
LOW…m_tests/src/behaviors/drive_on_heading/drive_tester.py64 except Exception as e: # noqa: B902CODE
LOW…m_tests/src/behaviors/drive_on_heading/drive_tester.py80 except Exception as e: # noqa: B902CODE
LOW…m_tests/src/behaviors/drive_on_heading/drive_tester.py99 except Exception as e: # noqa: B902CODE
LOW…m_tests/src/behaviors/drive_on_heading/drive_tester.py117 except Exception as e: # noqa: B902CODE
LOW…m_tests/src/behaviors/drive_on_heading/drive_tester.py134 except Exception as e: # noqa: B902CODE
LOW…m_tests/src/behaviors/drive_on_heading/drive_tester.py152 except Exception as e: # noqa: B902CODE
LOW…m_tests/src/behaviors/drive_on_heading/drive_tester.py316 except Exception as e: # noqa: B902CODE
LOWnav2_system_tests/src/behaviors/spin/spin_tester.py61 except Exception as e: # noqa: B902CODE
LOWnav2_system_tests/src/behaviors/spin/spin_tester.py77 except Exception as e: # noqa: B902CODE
LOWnav2_system_tests/src/behaviors/spin/spin_tester.py96 except Exception as e: # noqa: B902CODE
LOWnav2_system_tests/src/behaviors/spin/spin_tester.py114 except Exception as e: # noqa: B902CODE
LOWnav2_system_tests/src/behaviors/spin/spin_tester.py131 except Exception as e: # noqa: B902CODE
LOWnav2_system_tests/src/behaviors/spin/spin_tester.py149 except Exception as e: # noqa: B902CODE
LOWnav2_system_tests/src/behaviors/spin/spin_tester.py297 except Exception as e: # noqa: B902CODE
LOWnav2_system_tests/src/behaviors/backup/backup_tester.py63 except Exception as e: # noqa: B902CODE
LOWnav2_system_tests/src/behaviors/backup/backup_tester.py79 except Exception as e: # noqa: B902CODE
LOWnav2_system_tests/src/behaviors/backup/backup_tester.py98 except Exception as e: # noqa: B902CODE
LOWnav2_system_tests/src/behaviors/backup/backup_tester.py116 except Exception as e: # noqa: B902CODE
LOWnav2_system_tests/src/behaviors/backup/backup_tester.py133 except Exception as e: # noqa: B902CODE
LOWnav2_system_tests/src/behaviors/backup/backup_tester.py151 except Exception as e: # noqa: B902CODE
LOWnav2_system_tests/src/behaviors/backup/backup_tester.py307 except Exception as e: # noqa: B902CODE
LOWnav2_system_tests/src/waypoint_follower/tester.py106 except Exception as e: # noqa: B902CODE
LOWnav2_system_tests/src/waypoint_follower/tester.py128 except Exception as e: # noqa: B902CODE
LOWnav2_system_tests/src/waypoint_follower/tester.py173 except Exception as e: # noqa: B902CODE
LOWnav2_system_tests/src/waypoint_follower/tester.py189 except Exception as e: # noqa: B902CODE
LOWnav2_system_tests/src/gps_navigation/tester.py81 except Exception as e: # noqa: B902CODE
LOWnav2_system_tests/src/gps_navigation/tester.py103 except Exception as e: # noqa: B902CODE
LOWnav2_system_tests/src/gps_navigation/tester.py145 except Exception as e: # noqa: B902CODE
LOWnav2_common/nav2_common/launch/replace_string.py73 except Exception as err: # noqa: B902CODE
LOWnav2_simple_commander/nav2_simple_commander/utils.py47 except Exception as e:CODE
LOW…lowing/opennav_following/test/test_following_server.py156 except Exception:CODE
LOW…lowing/opennav_following/test/test_following_server.py166 except Exception:CODE
LOW…lowing/opennav_following/test/test_following_server.py170 except Exception:CODE
LOWnav2_route/graphs/scripts/export_shapefiles.py26except Exception:CODE
Cross-File Repetition7 hits · 35 pts
SeverityFileLineSnippetContext
HIGHnav2_common/nav2_common/launch/rewritten_yaml.py0return a description of this substitution as a string.STRING
HIGHnav2_common/nav2_common/launch/replace_string.py0return a description of this substitution as a string.STRING
HIGHnav2_common/nav2_common/launch/has_node_params.py0return a description of this substitution as a string.STRING
HIGHnav2_bringup/launch/tb3_simulation_launch.py0this is all-in-one launch script intended for use by nav2 developers.STRING
HIGHnav2_bringup/launch/tb3_loopback_simulation_launch.py0this is all-in-one launch script intended for use by nav2 developers.STRING
HIGHnav2_bringup/launch/tb4_loopback_simulation_launch.py0this is all-in-one launch script intended for use by nav2 developers.STRING
HIGHnav2_bringup/launch/tb4_simulation_launch.py0this is all-in-one launch script intended for use by nav2 developers.STRING
Synthetic Comment Markers4 hits · 28 pts
SeverityFileLineSnippetContext
HIGHnav2_collision_monitor/src/polygon_source.cpp124 /* Full function generated by GPT */COMMENT
HIGHnav2_simple_commander/test/test_costmap2d.py22# Tests generated by AI and checked by humanCOMMENT
HIGHnav2_simple_commander/test/test_occupancy_grid.py22# Tests generated by AI and checked by humanCOMMENT
HIGH.github/PULL_REQUEST_TEMPLATE.md13| Was this PR description generated by AI software? | Out of respect for maintainers, AI for human-to-human communicatioCODE
Slop Phrases6 hits · 18 pts
SeverityFileLineSnippetContext
MEDIUM…der/nav2_simple_commander/example_nav_through_poses.py49 # If desired, you can change or load the map as wellCOMMENT
MEDIUM…der/nav2_simple_commander/example_waypoint_follower.py49 # If desired, you can change or load the map as wellCOMMENT
MEDIUM…ple_commander/nav2_simple_commander/demo_inspection.py70 # Simplification of angle handling for demonstration purposesCOMMENT
MEDIUM…imple_commander/nav2_simple_commander/example_route.py77 # If desired, you can change or load the map as wellCOMMENT
MEDIUM…commander/nav2_simple_commander/example_nav_to_pose.py49 # If desired, you can change or load the map as wellCOMMENT
MEDIUM…simple_commander/nav2_simple_commander/demo_picking.py75 # Simplification of angle handling for demonstration purposesCOMMENT
Deep Nesting16 hits · 16 pts
SeverityFileLineSnippetContext
LOWnav2_system_tests/src/system_failure/tester_node.py128CODE
LOWnav2_system_tests/src/route/tester_node.py171CODE
LOWnav2_system_tests/src/costmap_filters/tester_node.py334CODE
LOWnav2_system_tests/src/system/nav_to_pose_tester_node.py289CODE
LOW…2_smac_planner/lattice_primitives/lattice_generator.py306CODE
LOW…2_smac_planner/lattice_primitives/lattice_generator.py428CODE
LOWtools/bt2img.py102CODE
LOWtools/bt_nodes_validation/validate_bt_xml_nodes.py141CODE
LOWtools/bt_nodes_validation/validate_bt_xml_nodes.py499CODE
LOWtools/bt_nodes_validation/validate_bt_xml_nodes.py557CODE
LOWtools/bt_nodes_validation/validate_bt_xml_nodes.py609CODE
LOWnav2_common/nav2_common/launch/replace_string.py90CODE
LOW…imple_commander/nav2_simple_commander/demo_security.py30CODE
LOW…ple_commander/nav2_simple_commander/robot_navigator.py1003CODE
LOW…ple_commander/nav2_simple_commander/robot_navigator.py1178CODE
LOW…imple_commander/nav2_simple_commander/line_iterator.py98CODE
Redundant / Tautological Comments8 hits · 12 pts
SeverityFileLineSnippetContext
LOWnav2_system_tests/src/route/tester_node.py282 # Check if the feedback is valid, if changed (not for route operations)COMMENT
LOWnav2_system_tests/src/system/nav_to_pose_tester_node.py483 # Check if --expect_failure is True or FalseCOMMENT
LOW…2_smac_planner/lattice_primitives/lattice_generator.py363 # Check if path overlaps something in minimalCOMMENT
LOWtools/bt2img.py138 # Check if we already processed this file (prevent infinite loops)COMMENT
LOWtools/update_readme_table.py104 # Check if package isn't in a given distributionCOMMENT
LOWtools/planner_benchmarking/metrics.py107 # Set map to use, other options: 100by100_15, 100by100_10COMMENT
LOW.devcontainer/post-create-command.sh13# Check if srv folder existsCOMMENT
LOW…imple_commander/nav2_simple_commander/example_route.py140 # Check if followPath or WPF task is done (or failed),COMMENT
Modern Structural Boilerplate7 hits · 7 pts
SeverityFileLineSnippetContext
LOW…anner/lattice_primitives/generate_motion_primitives.py30logger = logging.getLogger(__name__)CODE
LOW…mac_planner/lattice_primitives/trajectory_generator.py22logger = logging.getLogger(__name__)CODE
LOWtools/bt_nodes_validation/validate_bt_xml_nodes.py141def update_paths_for_external_repos(config: dict, clone_dir: Path) -> None:CODE
LOWnav2_msgs/msg/__init__.py16__all__ = [CODE
LOWnav2_msgs/action/__init__.py20__all__ = [CODE
LOWnav2_msgs/srv/__init__.py15__all__ = [CODE
LOWnav2_common/nav2_common/launch/__init__.py20__all__ = [CODE
AI Slop Vocabulary2 hits · 6 pts
SeverityFileLineSnippetContext
MEDIUM…2_smac_planner/lattice_primitives/lattice_generator.py303 # we can leverage symmetry to create the complete minimal setCOMMENT
MEDIUM…_route/src/plugins/edge_cost_functions/time_scorer.cpp52 // We have a previous actual time to utilize for a refined estimateCOMMENT
Fake / Example Data2 hits · 2 pts
SeverityFileLineSnippetContext
LOWnav2_waypoint_follower/test/test_task_executors.cpp126 int fake_data = 0;CODE
LOWnav2_waypoint_follower/test/test_task_executors.cpp128 msg->data.push_back(fake_data++);CODE
Example Usage Blocks1 hit · 2 pts
SeverityFileLineSnippetContext
LOWnav2_navfn_planner/src/navfn.cpp55// Example usage:COMMENT
AI Structural Patterns1 hit · 1 pts
SeverityFileLineSnippetContext
LOWtools/bt_nodes_validation/test/conftest.py76CODE