feat(mission_planner)!: introduce route_selector node #6363
CodeScene PR Check
❌ Code Health Quality Gates: FAILED
- Declining Code Health: 2 findings(s) 🚩
- Improving Code Health: 11 findings(s) ✅
- Affected Hotspots: 0 files(s) 🔥
Recommended Review Level: Lightweight sanity check
View detailed results in CodeScene
Details
🚩 Declining Code Health (highest to lowest):
- Excess Number of Function Arguments mission_planner.cpp: MissionPlanner::create_route
- Excess Number of Function Arguments mission_planner.cpp: MissionPlanner::create_route
✅ Improving Code Health:
- Overall Code Complexity mission_planner.cpp
- Bumpy Road Ahead mission_planner.cpp: MissionPlanner::on_modified_goal
- Complex Conditional mission_planner.cpp: MissionPlanner::on_clear_mrm_route
- Complex Method mission_planner.cpp: MissionPlanner::on_change_route_points
- Complex Method mission_planner.cpp: MissionPlanner::on_change_route
- Complex Method mission_planner.cpp: MissionPlanner::on_clear_mrm_route
- Complex Method mission_planner.cpp: MissionPlanner::on_set_mrm_route
- Complex Method mission_planner.cpp: MissionPlanner::on_set_route_points
- Complex Method mission_planner.cpp: MissionPlanner::on_set_route
- Complex Method mission_planner.cpp: MissionPlanner::on_modified_goal
- Code Duplication mission_planner.cpp
Annotations
Check notice on line 391 in planning/mission_planner/src/mission_planner/mission_planner.cpp
codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)
✅ No longer an issue: Complex Method
MissionPlanner::on_change_route_points is no longer above the threshold for cyclomatic complexity. This function has many conditional statements (e.g. if, for, while), leading to lower code health. Avoid adding more conditionals and code to it without refactoring.
Check notice on line 347 in planning/mission_planner/src/mission_planner/mission_planner.cpp
codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)
✅ No longer an issue: Complex Method
MissionPlanner::on_change_route is no longer above the threshold for cyclomatic complexity. This function has many conditional statements (e.g. if, for, while), leading to lower code health. Avoid adding more conditionals and code to it without refactoring.
Check notice on line 302 in planning/mission_planner/src/mission_planner/mission_planner.cpp
codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)
✅ No longer an issue: Complex Method
MissionPlanner::on_clear_mrm_route is no longer above the threshold for cyclomatic complexity. This function has many conditional statements (e.g. if, for, while), leading to lower code health. Avoid adding more conditionals and code to it without refactoring.
Check notice on line 291 in planning/mission_planner/src/mission_planner/mission_planner.cpp
codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)
✅ No longer an issue: Complex Method
MissionPlanner::on_set_mrm_route is no longer above the threshold for cyclomatic complexity. This function has many conditional statements (e.g. if, for, while), leading to lower code health. Avoid adding more conditionals and code to it without refactoring.
Check notice on line 245 in planning/mission_planner/src/mission_planner/mission_planner.cpp
codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)
✅ No longer an issue: Complex Method
MissionPlanner::on_set_route_points is no longer above the threshold for cyclomatic complexity. This function has many conditional statements (e.g. if, for, while), leading to lower code health. Avoid adding more conditionals and code to it without refactoring.
Check notice on line 200 in planning/mission_planner/src/mission_planner/mission_planner.cpp
codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)
✅ No longer an issue: Complex Method
MissionPlanner::on_set_route is no longer above the threshold for cyclomatic complexity. This function has many conditional statements (e.g. if, for, while), leading to lower code health. Avoid adding more conditionals and code to it without refactoring.
Check notice on line 317 in planning/mission_planner/src/mission_planner/mission_planner.cpp
codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)
✅ No longer an issue: Complex Method
MissionPlanner::on_modified_goal is no longer above the threshold for cyclomatic complexity. This function has many conditional statements (e.g. if, for, while), leading to lower code health. Avoid adding more conditionals and code to it without refactoring.
Check notice on line 291 in planning/mission_planner/src/mission_planner/mission_planner.cpp
codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)
ℹ New issue: Complex Method
MissionPlanner::on_set_waypoint_route has a cyclomatic complexity of 19, threshold = 9. This function has many conditional statements (e.g. if, for, while), leading to lower code health. Avoid adding more conditionals and code to it without refactoring.
Check notice on line 245 in planning/mission_planner/src/mission_planner/mission_planner.cpp
codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)
ℹ New issue: Complex Method
MissionPlanner::on_set_lanelet_route has a cyclomatic complexity of 19, threshold = 9. This function has many conditional statements (e.g. if, for, while), leading to lower code health. Avoid adding more conditionals and code to it without refactoring.
Check notice on line 296 in planning/mission_planner/src/mission_planner/mission_planner.cpp
codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)
✅ No longer an issue: Complex Conditional
MissionPlanner::on_clear_mrm_route no longer has a complex conditional. A complex conditional is an expression inside a branch (e.g. if, for, while) which consists of multiple, logical operators such as AND/OR. The more logical operators in an expression, the more severe the code smell.
Check notice on line 317 in planning/mission_planner/src/mission_planner/mission_planner.cpp
codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)
✅ No longer an issue: Bumpy Road Ahead
MissionPlanner::on_modified_goal is no longer above the threshold for logical blocks with deeply nested code. The Bumpy Road code smell is a function that contains multiple chunks of nested conditional logic. The deeper the nesting and the more bumps, the lower the code health.
Check notice on line 1 in planning/mission_planner/src/mission_planner/mission_planner.cpp
codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)
✅ Getting better: Overall Code Complexity
The mean cyclomatic complexity decreases from 5.52 to 4.65, threshold = 4. This file has many conditional statements (e.g. if, for, while) across its implementation, leading to lower code health. Avoid adding more conditionals.
Check warning on line 373 in planning/mission_planner/src/mission_planner/mission_planner.cpp
codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)
❌ New issue: Excess Number of Function Arguments
MissionPlanner::create_route has 5 arguments, threshold = 4. This function has too many arguments, indicating a lack of encapsulation. Avoid adding more arguments.
Check warning on line 391 in planning/mission_planner/src/mission_planner/mission_planner.cpp
codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)
❌ New issue: Excess Number of Function Arguments
MissionPlanner::create_route has 5 arguments, threshold = 4. This function has too many arguments, indicating a lack of encapsulation. Avoid adding more arguments.
Check notice on line 1 in planning/mission_planner/src/mission_planner/mission_planner.cpp
codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)
✅ No longer an issue: Code Duplication
The module no longer contains too many functions with similar structure