Overview › Code Quality & Maintainability

Code Quality & Maintainability

197 TODO/FIXME hot-spots and Java/Kotlin split create maintenance drag.

37 findings in this category
65
SCORE

Summary

New Kotlin code is largely idiomatic, but the codebase carries significant technical debt: 197 TODO/FIXME/HACK markers across 88 files, ~9,000 Java files alongside ~4,300 Kotlin files, and uneven naming/structure between feature modules.

Findings

HIGH

197 TODO/FIXME/HACK markers across 88 files

Hot-spots include ProductAccordionProductDetailSheet (6 markers) and TieredOfferCardComponent (10 markers).
Recommendation: Triage every TODO into a tracked issue with an owner and due date; fail CI on unattributed TODO via Detekt rule ForbiddenComment.
MEDIUM

Likely duplication / similar utilities

Multiple shared modules with overlapping names (util, blankutil, common) suggest duplicated helpers.
Recommendation: Run jscpd or IDE Duplicate Code analyzer; consolidate into a single shared/util module.
MEDIUM

Mixed naming conventions across modules

Some modules use presentation/component, others ui/component; some files use *Component.kt for Composables, others *Screen.kt.
Recommendation: Adopt and document a naming convention (e.g. *Screen.kt for top-level Composables, *Component.kt for reusable Composables) and enforce via Ktlint rule.
LOW

Java/Kotlin file co-location

Most legacy Java sits under Costco/src/main/java/ alongside Kotlin. While Java/Kotlin can compile together, it makes refactor scope-of-impact harder to reason about.
Recommendation: Track conversion progress in a Java-to-Kotlin burn-down dashboard.
INFO

Test-progaurd-rules.pro typo

Costco/test-progaurd-rules.pro contains a typo (progaurd).
Costco/test-progaurd-rules.pro
Recommendation: Rename to test-proguard-rules.pro (and update Gradle reference).

Quality Tooling Suggested

ToolPurposeStatus
DetektKotlin static analysisConfirm presence; if absent, add
KtlintStyle/formatConfirm presence
Android Lint baselineExisting-issue freezeLikely present
SonarQube / SonarCloudCoverage + smell trendingRecommend integrating with Azure Pipelines
jscpdDuplicate detectionRecommended

Specific findings in this category

37 shown
Costco Android · Code Review Report · Generated 2026-05-07 · 626 machine-curated findings