Skip to content

Update planning/autoware_planning_validator/src/utils.cpp

CodeScene Delta Analysis / CodeScene Cloud Delta Analysis (main) failed Nov 18, 2024 in 40s

CodeScene PR Check

❌ Code Health Quality Gates: FAILED

Change in average Code Health of affected files: -0.38 (8.72 -> 8.34)

  • Declining Code Health: 4 findings(s) 🚩

View detailed results in CodeScene

Details

🚩 Declining Code Health (highest to lowest):

  • Primitive Obsession utils.cpp
  • Excess Number of Function Arguments utils.cpp: check_collision
  • Complex Method utils.cpp: check_collision
  • Bumpy Road Ahead utils.cpp: check_collision

Annotations

Check warning on line 359 in planning/autoware_planning_validator/src/utils.cpp

See this annotation in the file changed.

@codescene-delta-analysis codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)

❌ New issue: Complex Method

check_collision has a cyclomatic complexity of 10, 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 warning on line 359 in planning/autoware_planning_validator/src/utils.cpp

See this annotation in the file changed.

@codescene-delta-analysis codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)

❌ New issue: Bumpy Road Ahead

check_collision has 2 blocks with nested conditional logic. Any nesting of 2 or deeper is considered. Threshold is one single, nested block per function. 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 warning on line 1 in planning/autoware_planning_validator/src/utils.cpp

See this annotation in the file changed.

@codescene-delta-analysis codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)

❌ New issue: Primitive Obsession

In this module, 33.3% of all function arguments are primitive types, threshold = 30.0%. The functions in this file have too many primitive types (e.g. int, double, float) in their function argument lists. Using many primitive types lead to the code smell Primitive Obsession. Avoid adding more primitive arguments.

Check warning on line 359 in planning/autoware_planning_validator/src/utils.cpp

See this annotation in the file changed.

@codescene-delta-analysis codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)

❌ New issue: Excess Number of Function Arguments

check_collision has 7 arguments, threshold = 4. This function has too many arguments, indicating a lack of encapsulation. Avoid adding more arguments.