[WIP] Initial multiple queues support #865
CodeScene PR Check
Quality Gate Failed
Gates Failed
Prevent hotspot decline
(2 hotspots with Global Conditionals, Primitive Obsession, Complex Method)
New code is healthy
(1 new file with code health below 9.00)
Enforce critical code health rules
(1 file with Bumpy Road Ahead)
See analysis details in CodeScene
Reason for failure
| Prevent hotspot decline | Violations | Code Health Impact | |
|---|---|---|---|
| GramophoneExtensions.kt | 2 rules in this hotspot | 8.28 → 7.79 | Suppress |
| GramophonePlaybackService.kt | 1 rule in this hotspot | 4.82 → 4.69 | Suppress |
| New code is healthy | Violations | Code Health Impact | |
|---|---|---|---|
| QueueBoard.kt | 4 rules | 8.95 | Suppress |
| Enforce critical code health rules | Violations | Code Health Impact | |
|---|---|---|---|
| QueueBoard.kt | 1 critical rule | 8.95 | Suppress |
Quality Gate Profile: The Bare Minimum
Install CodeScene MCP: safeguard and uplift AI-generated code. Catch issues early with our IDE extension and CLI tool.
Details
🚩 Declining Code Health (highest to lowest):
- Complex Method GramophonePlaybackService.kt: GramophonePlaybackService.onCreate 🔥
- Global Conditionals GramophoneExtensions.kt 🔥
- Complex Method QueueBoard.kt: QueueBoard.setCurrQueue
- Complex Method GramophonePlaybackService.kt: GramophonePlaybackService.onCustomCommand 🔥
- Primitive Obsession GramophoneExtensions.kt 🔥
- Primitive Obsession QueueBoard.kt
- Bumpy Road Ahead QueueBoard.kt: QueueBoard.renameQueue
- Bumpy Road Ahead QueueBoard.kt: QueueBoard.setCurrQueue
- Global Conditionals QueueBoard.kt
Annotations
Check warning on line 1 in app/src/main/java/org/akanework/gramophone/logic/GramophoneExtensions.kt
codescene-delta-analysis / CodeScene Code Health Review (beta)
❌ Getting worse: Global Conditionals
The global code outside of functions increases in cyclomatic complexity from 31 to 37, threshold = 10. The code has become too complex as it contains many conditional statements (e.g. if, for, while) across its implementation, leading to lower code health. Avoid adding more.
Check warning on line 1 in app/src/main/java/org/akanework/gramophone/logic/GramophoneExtensions.kt
codescene-delta-analysis / CodeScene Code Health Review (beta)
❌ New issue: Primitive Obsession
In this module, 50.0% 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.
codescene-delta-analysis / CodeScene Code Health Review (beta)
❌ Getting worse: Complex Method
GramophonePlaybackService.onCreate already has high cyclomatic complexity, and now it increases in Lines of Code from 311 to 313. 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.
codescene-delta-analysis / CodeScene Code Health Review (beta)
❌ Getting worse: Complex Method
GramophonePlaybackService.onCustomCommand increases in cyclomatic complexity from 9 to 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 426 in app/src/main/java/org/akanework/gramophone/logic/QueueBoard.kt
codescene-delta-analysis / CodeScene Code Health Review (beta)
❌ New issue: Complex Method
QueueBoard.setCurrQueue has a cyclomatic complexity of 17, 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 328 in app/src/main/java/org/akanework/gramophone/logic/QueueBoard.kt
codescene-delta-analysis / CodeScene Code Health Review (beta)
❌ New issue: Bumpy Road Ahead
QueueBoard.renameQueue has 3 blocks with nested conditional logic. Any nesting of 2 or deeper is considered. Threshold is 2 blocks 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 426 in app/src/main/java/org/akanework/gramophone/logic/QueueBoard.kt
codescene-delta-analysis / CodeScene Code Health Review (beta)
❌ New issue: Bumpy Road Ahead
QueueBoard.setCurrQueue has 2 blocks with nested conditional logic. Any nesting of 2 or deeper is considered. Threshold is 2 blocks 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 app/src/main/java/org/akanework/gramophone/logic/QueueBoard.kt
codescene-delta-analysis / CodeScene Code Health Review (beta)
❌ New issue: Global Conditionals
There's global code outside of functions with a cyclomatic complexity of 13, threshold = 10. The code has become too complex as it contains many conditional statements (e.g. if, for, while) across its implementation, leading to lower code health. Avoid adding more.
Check warning on line 1 in app/src/main/java/org/akanework/gramophone/logic/QueueBoard.kt
codescene-delta-analysis / CodeScene Code Health Review (beta)
❌ New issue: Primitive Obsession
In this module, 69.6% 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.