AI Slop Code Risk Monitor

d4rken-org/sdmaid-se

SlopCodeMonitor badge for d4rken-org/sdmaid-se Adjusted legacy signal; badge bands: 25 / 50 / 75 (different from dashboard bands).

SD Maid 2/SE is Android's most thorough cleaning tool.

2.9 Low pattern signal View on GitHub

Open-Source Code Quality, Security and Technical Debt Review

This report summarizes scanner evidence for d4rken-org/sdmaid-se, a Kotlin project with 7,941 GitHub stars. SynthScan examined 524,866 lines of code across 4571 source files, recording 317 pattern matches distributed across 13 syntactic categories. The legacy adjusted pattern signal is 2.9 (Low pattern signal); it is not an authorship estimate.

Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.

2.9
Adjusted Signal
2.9
Raw Pattern Score
100%
Time Factor
2026-10-28
Last Push
7.9K
Stars
Kotlin
Language
524.9K
Lines of Code
4.6K
Files
317
Pattern Hits
2026-10-31
Scan Date
0.02
HC Hit Rate

Risk Review · Payload v1

Use each vector to guide manual verification of the underlying findings.

Payload schema: 1.0.0 · Engine: 2.0.0 · Scoring: heuristic-density-v1 · Scan date: 2026-10-31.

Cognitive Ownership Risk 0.6/100 · LOW

Can maintainers explain intent, assumptions, and trade-offs? 55 finding(s).

Hallucinated Dependency & Supply Chain Risk 8.6/100 · LOW

Are imports declared and package/API names verified? 101 finding(s).

Agent Over-Engineering Ratio 4.8/100 · LOW

Are wrappers, guards, and repeated structures necessary? 173 finding(s).

PR Review Velocity Impact 13.4/100 · LOW

Which changes need focused human review? 317 finding(s).

What These Metrics Mean

Adjusted Signal
Legacy pattern score normalized per 1,000 scanned lines and multiplied by the repository-level time factor. It is not an estimate of AI authorship.
Raw Pattern Score
Sum of severity- and context-weighted pattern findings before applying the time factor.
Time Factor
A coarse multiplier based on repository last-push metadata. It does not identify when individual code was written.
Pattern Hits
Count of configured pattern findings. Review each location and surrounding code before acting.
HC Hit Rate
High- and critical-severity findings per scanned file. Severity is a configured detector weight, not proof of a vulnerability or authorship.
Lines / Files
Scan coverage denominators used by the legacy normalized score.

Pattern-Signal History

This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.

Severity Breakdown

Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.

CRITICAL 94HIGH 8MEDIUM 155LOW 60

Directory Score Breakdown

This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.

Pattern Findings

The scanner identified 317 distinct pattern matches across 13 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. 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 configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.

Hallucination Indicators94 hits · 940 pts
SeverityFileLineSnippetContext
CRITICAL…n/sdmse/stats/ui/spacehistory/SpaceHistoryViewModel.kt108 val state: StateFlow<State> = eu.darken.sdmse.common.flow.combine(CODE
CRITICAL…/src/main/java/eu/darken/sdmse/stats/core/StatsRepo.kt53 val state = eu.darken.sdmse.common.flow.combine(CODE
CRITICAL…/eu/darken/sdmse/appcontrol/core/AppControlScanTask.kt23 get() = eu.darken.sdmse.common.R.string.general_result_success_message.toCaString()CODE
CRITICAL…c/main/java/eu/darken/sdmse/appcontrol/core/AppScan.kt217 primary = eu.darken.sdmse.common.R.string.general_progress_loading_app_data.toCaString(),CODE
CRITICAL…ain/java/eu/darken/sdmse/appcontrol/core/AppControl.kt104 override val state: Flow<State> = eu.darken.sdmse.common.flow.combine(CODE
CRITICAL…mse/appcontrol/core/automation/AppControlAutomation.kt124 controlPanelTitle = eu.darken.sdmse.appcontrol.R.string.appcontrol_automation_title.toCaString(),CODE
CRITICAL…e/appcontrol/core/automation/specs/oneui/OneUISpecs.kt96 label = eu.darken.sdmse.appcontrol.R.string.appcontrol_automation_progress_find_force_stop.toCaString(foCODE
CRITICAL…e/appcontrol/core/automation/specs/oneui/OneUISpecs.kt137 label = eu.darken.sdmse.automation.R.string.automation_progress_find_ok_confirmation.toCaString(titleLblCODE
CRITICAL…mse/appcontrol/core/automation/specs/aosp/AOSPSpecs.kt140 label = eu.darken.sdmse.appcontrol.R.string.appcontrol_automation_progress_find_force_stop.toCaString(foCODE
CRITICAL…mse/appcontrol/core/automation/specs/aosp/AOSPSpecs.kt178 label = eu.darken.sdmse.automation.R.string.automation_progress_find_ok_confirmation.toCaString(titleLblCODE
CRITICAL…mse/appcontrol/core/automation/specs/aosp/AOSPSpecs.kt245 label = eu.darken.sdmse.appcontrol.R.string.appcontrol_automation_progress_find_archive.toCaString(archiCODE
CRITICAL…mse/appcontrol/core/automation/specs/aosp/AOSPSpecs.kt303 label = eu.darken.sdmse.appcontrol.R.string.appcontrol_automation_progress_find_restore.toCaString(restoCODE
CRITICAL…mse/appcontrol/core/automation/specs/miui/MIUISpecs.kt96 label = eu.darken.sdmse.appcontrol.R.string.appcontrol_automation_progress_find_force_stop.toCaString(foCODE
CRITICAL…mse/appcontrol/core/automation/specs/miui/MIUISpecs.kt134 label = eu.darken.sdmse.automation.R.string.automation_progress_find_ok_confirmation.toCaString(titleLblCODE
CRITICAL…ontrol/core/automation/specs/oxygenos/OxygenOSSpecs.kt131 label = eu.darken.sdmse.appcontrol.R.string.appcontrol_automation_progress_find_force_stop.toCaString(foCODE
CRITICAL…ontrol/core/automation/specs/oxygenos/OxygenOSSpecs.kt181 label = eu.darken.sdmse.automation.R.string.automation_progress_find_ok_confirmation.toCaString(titleLblCODE
CRITICAL…pcontrol/core/automation/specs/hyperos/HyperOsSpecs.kt96 label = eu.darken.sdmse.appcontrol.R.string.appcontrol_automation_progress_find_force_stop.toCaString(foCODE
CRITICAL…pcontrol/core/automation/specs/hyperos/HyperOsSpecs.kt134 label = eu.darken.sdmse.automation.R.string.automation_progress_find_ok_confirmation.toCaString(titleLblCODE
CRITICAL…pcontrol/core/automation/specs/oukitel/OukitelSpecs.kt113 label = eu.darken.sdmse.appcontrol.R.string.appcontrol_automation_progress_find_force_stop.toCaString(foCODE
CRITICAL…pcontrol/core/automation/specs/oukitel/OukitelSpecs.kt151 label = eu.darken.sdmse.automation.R.string.automation_progress_find_ok_confirmation.toCaString(titleLblCODE
CRITICAL…pcontrol/core/automation/specs/coloros/ColorOSSpecs.kt130 label = eu.darken.sdmse.appcontrol.R.string.appcontrol_automation_progress_find_force_stop.toCaString(foCODE
CRITICAL…pcontrol/core/automation/specs/coloros/ColorOSSpecs.kt175 label = eu.darken.sdmse.automation.R.string.automation_progress_find_ok_confirmation.toCaString(titleLblCODE
CRITICAL…trol/core/automation/specs/androidtv/AndroidTVSpecs.kt97 label = eu.darken.sdmse.appcontrol.R.string.appcontrol_automation_progress_find_force_stop.toCaString(foCODE
CRITICAL…trol/core/automation/specs/androidtv/AndroidTVSpecs.kt136 label = eu.darken.sdmse.automation.R.string.automation_progress_find_ok_confirmation.toCaString(okLbl),CODE
CRITICAL…ontrol/core/automation/specs/originos/OriginOSSpecs.kt112 label = eu.darken.sdmse.appcontrol.R.string.appcontrol_automation_progress_find_force_stop.toCaString(foCODE
CRITICAL…ontrol/core/automation/specs/originos/OriginOSSpecs.kt159 label = eu.darken.sdmse.automation.R.string.automation_progress_find_ok_confirmation.toCaString(titleLblCODE
CRITICAL…est/java/eu/darken/sdmse/squeezer/core/SqueezerTest.kt584 val imagePhasePrimary = eu.darken.sdmse.common.R.string.general_progress_preparing.toCaString()CODE
CRITICAL…est/java/eu/darken/sdmse/squeezer/core/SqueezerTest.kt585 val videoPhasePrimary = eu.darken.sdmse.common.R.string.general_progress_preparing.toCaString()CODE
CRITICAL…rc/main/java/eu/darken/sdmse/squeezer/core/Squeezer.kt83 Progress.Data(primary = eu.darken.sdmse.common.R.string.general_progress_preparing.toCaString())CODE
CRITICAL…darken/sdmse/squeezer/core/processor/VideoProcessor.kt45 Progress.Data(primary = eu.darken.sdmse.common.R.string.general_progress_preparing.toCaString())CODE
CRITICAL…darken/sdmse/squeezer/core/processor/VideoProcessor.kt75 primary = eu.darken.sdmse.common.R.string.general_progress_preparing.toCaString(),CODE
CRITICAL…darken/sdmse/squeezer/core/processor/ImageProcessor.kt48 Progress.Data(primary = eu.darken.sdmse.common.R.string.general_progress_preparing.toCaString())CODE
CRITICAL…darken/sdmse/squeezer/core/processor/ImageProcessor.kt87 primary = eu.darken.sdmse.common.R.string.general_progress_preparing.toCaString(),CODE
CRITICAL…java/eu/darken/sdmse/appcleaner/core/AppCleanerTest.kt569 val result = rebuilt.cleaner.submit(eu.darken.sdmse.appcleaner.core.tasks.AppCleanerOneClickTask())CODE
CRITICAL…java/eu/darken/sdmse/appcleaner/core/AppCleanerTest.kt589 eu.darken.sdmse.appcleaner.core.tasks.AppCleanerSchedulerTask(CODE
CRITICAL…java/eu/darken/sdmse/appcleaner/core/AppCleanerTest.kt1172 val result = rebuilt.cleaner.submit(eu.darken.sdmse.appcleaner.core.tasks.AppCleanerOneClickTask())CODE
CRITICAL…java/eu/darken/sdmse/appcleaner/core/AppCleanerTest.kt1187 eu.darken.sdmse.appcleaner.core.tasks.AppCleanerSchedulerTask(CODE
CRITICAL…n/sdmse/appcleaner/ui/preview/AppCleanerPreviewData.kt76 identifier = eu.darken.sdmse.common.pkgs.features.InstallId(CODE
CRITICAL…sdmse/appcleaner/core/InaccessibleDeletionException.kt17 label = eu.darken.sdmse.appcleaner.R.string.appcleaner_automation_unavailable_title.toCaString(),CODE
CRITICAL…sdmse/appcleaner/core/InaccessibleDeletionException.kt27 fixActionLabel = eu.darken.sdmse.common.R.string.setup_title.toCaString(),CODE
CRITICAL…eu/darken/sdmse/appcleaner/core/InaccessibleDeleter.kt76 Progress.Data(primary = eu.darken.sdmse.common.R.string.general_progress_preparing.toCaString())CODE
CRITICAL…mse/appcleaner/core/automation/specs/miui/MIUISpecs.kt399 label = eu.darken.sdmse.automation.R.string.automation_progress_find_ok_confirmation.toCaString(""),CODE
CRITICAL…cs/hyperos/SecurityCenterMissingPermissionException.kt23 fixActionLabel = eu.darken.sdmse.common.R.string.general_grant_access_action.toCaString(),CODE
CRITICAL…cs/hyperos/SecurityCenterMissingPermissionException.kt31 infoActionLabel = eu.darken.sdmse.common.R.string.general_help_action.toCaString(),CODE
CRITICAL…pcleaner/core/automation/specs/hyperos/HyperOsSpecs.kt421 label = eu.darken.sdmse.automation.R.string.automation_progress_find_ok_confirmation.toCaString(""),CODE
CRITICAL…aner/core/automation/specs/androidtv/AndroidTVSpecs.kt149 label = eu.darken.sdmse.automation.R.string.automation_progress_find_ok_confirmation.toCaString(buttonLaCODE
CRITICAL…/eu/darken/sdmse/appcleaner/core/scanner/AppScanner.kt98 Progress.Data(primary = eu.darken.sdmse.common.R.string.general_progress_preparing.toCaString())CODE
CRITICALapp/src/main/java/eu/darken/sdmse/setup/SetupScreen.kt110 contract = eu.darken.sdmse.setup.saf.SafGrantPrimaryContract(),CODE
CRITICAL…/java/eu/darken/sdmse/common/error/ErrorDialogSetup.kt40 fixActionLabel = eu.darken.sdmse.common.R.string.setup_title.toCaString(),CODE
CRITICAL…/java/eu/darken/sdmse/common/error/ErrorDialogSetup.kt52 fixActionLabel = eu.darken.sdmse.common.R.string.general_upgrade_action.toCaString(),CODE
CRITICAL…/java/eu/darken/sdmse/common/error/ErrorDialogSetup.kt59 infoActionLabel = eu.darken.sdmse.common.exclusion.R.string.exclusion_create_action.toCaString(),CODE
CRITICAL…n/sdmse/main/ui/dashboard/DashboardMainActionEngine.kt300 eu.darken.sdmse.common.flow.combine(CODE
CRITICAL…a/eu/darken/sdmse/main/ui/dashboard/DashboardScreen.kt164 onPreviewDeduplicator = { options -> vm.navTo(eu.darken.sdmse.common.previews.PreviewRoute(options = options)) }CODE
CRITICAL…u/darken/sdmse/main/ui/dashboard/DashboardCardFlows.kt495internal fun DashboardViewModel.buildStatsItem(): Flow<StatsDashboardCardItem?> = eu.darken.sdmse.common.flow.combine(CODE
CRITICAL…u/darken/sdmse/main/ui/dashboard/DashboardViewModel.kt312 val listState: StateFlow<ListState?> = eu.darken.sdmse.common.flow.combine(CODE
CRITICAL…a/eu/darken/sdmse/main/core/taskmanager/TaskManager.kt178 primary = eu.darken.sdmse.common.R.string.general_progress_queued.toCaString(),CODE
CRITICAL…rken/sdmse/exclusion/ui/list/ExclusionListViewModel.kt319 initial = eu.darken.sdmse.exclusion.ui.editor.segment.SegmentExclusionEditorOptions(),CODE
CRITICAL…/sdmse/common/compose/tour/GuidedTourControllerTest.kt516 eu.darken.sdmse.common.compose.tour.TourSession(def, index)CODE
CRITICAL…/eu/darken/sdmse/corpsefinder/core/CorpseFinderTest.kt102 eu.darken.sdmse.common.forensics.Owner(pkgId = ownerPkgId, userHandle = userHandle),CODE
CRITICAL…/eu/darken/sdmse/corpsefinder/core/CorpseFinderTest.kt190 defaultProgress = eu.darken.sdmse.common.progress.Progress.Data(),CODE
34 more matches not shown…
Decorative Section Separators151 hits · 453 pts
SeverityFileLineSnippetContext
MEDIUM…control/ui/settings/AppControlSettingsViewModelTest.kt38 // ─────────────────────────── helpers ───────────────────────────COMMENT
MEDIUM…control/ui/settings/AppControlSettingsViewModelTest.kt156 // ─────────────────────────── state surface ───────────────────────────COMMENT
MEDIUM…control/ui/settings/AppControlSettingsViewModelTest.kt192 // ─────────────────────────── toggle writes ───────────────────────────COMMENT
MEDIUM…control/ui/settings/AppControlSettingsViewModelTest.kt246 // ─────────────────────────── badge navigation ───────────────────────────COMMENT
MEDIUM…control/ui/settings/AppControlSettingsViewModelTest.kt307 // ─────────────────────────── flow side-effects ───────────────────────────COMMENT
MEDIUM…dmse/appcontrol/ui/list/AppControlListViewModelTest.kt65 // ─────────────────────────── helpers ───────────────────────────COMMENT
MEDIUM…dmse/appcontrol/ui/list/AppControlListViewModelTest.kt369 // ─────────────────────────── init / scan ───────────────────────────COMMENT
MEDIUM…dmse/appcontrol/ui/list/AppControlListViewModelTest.kt400 // ─────────────────────────── filtering ───────────────────────────COMMENT
MEDIUM…dmse/appcontrol/ui/list/AppControlListViewModelTest.kt514 // ─────────────────────────── search ───────────────────────────COMMENT
MEDIUM…dmse/appcontrol/ui/list/AppControlListViewModelTest.kt556 // ─────────────────────────── sorting ───────────────────────────COMMENT
MEDIUM…dmse/appcontrol/ui/list/AppControlListViewModelTest.kt622 // ─────────────────────────── tap navigation ───────────────────────────COMMENT
MEDIUM…dmse/appcontrol/ui/list/AppControlListViewModelTest.kt639 // ─────────────────────────── selection actions ───────────────────────────COMMENT
MEDIUM…dmse/appcontrol/ui/list/AppControlListViewModelTest.kt832 // ─────────────────────────── exclude ───────────────────────────COMMENT
MEDIUM…dmse/appcontrol/ui/list/AppControlListViewModelTest.kt884 // ─────────────────────────── share ───────────────────────────COMMENT
MEDIUM…dmse/appcontrol/ui/list/AppControlListViewModelTest.kt898 // ─────────────────────────── settings actions ───────────────────────────COMMENT
MEDIUM…dmse/appcontrol/ui/list/AppControlListViewModelTest.kt1021 // ─────────────────────────── state capability flags ───────────────────────────COMMENT
MEDIUM…dmse/appcontrol/ui/list/AppControlListViewModelTest.kt1083 // ─────────────────────────── setup-gated sort modes ───────────────────────────COMMENT
MEDIUM…e/appcontrol/ui/list/actions/AppActionViewModelTest.kt221 // ─────────────────────────── state binding ───────────────────────────COMMENT
MEDIUM…e/appcontrol/ui/list/actions/AppActionViewModelTest.kt262 // ─────────────────────────── confirmation events ───────────────────────────COMMENT
MEDIUM…e/appcontrol/ui/list/actions/AppActionViewModelTest.kt312 // ─────────────────────────── task submission ───────────────────────────COMMENT
MEDIUM…e/appcontrol/ui/list/actions/AppActionViewModelTest.kt539 // ─────────────────────────── exclude handling ───────────────────────────COMMENT
MEDIUM…e/appcontrol/ui/list/actions/AppActionViewModelTest.kt567 // ─────────────────────────── dismiss-on-data-gone ───────────────────────────COMMENT
MEDIUM…java/eu/darken/sdmse/appcontrol/core/AppControlTest.kt218 // ─────────────────────────── hasInfoActive regression ───────────────────────────COMMENT
MEDIUM…java/eu/darken/sdmse/appcontrol/core/AppControlTest.kt281 // ─────────────────────────── neighbour fields ───────────────────────────COMMENT
MEDIUM…java/eu/darken/sdmse/appcontrol/core/AppControlTest.kt316 // ─────────────────────────── scan returns Result with item count ───────────────────────────COMMENT
MEDIUM…java/eu/darken/sdmse/appcontrol/core/AppControlTest.kt333 // ─────────────────────────── scan delegates to AppScan with computed flags ───────────────────────────COMMENT
MEDIUM…java/eu/darken/sdmse/appcontrol/core/AppControlTest.kt358 // ─────────────────────────── cancelled scan ───────────────────────────COMMENT
MEDIUM…java/eu/darken/sdmse/appcontrol/core/AppControlTest.kt383 // ─────────────────────────── export batch resilience ───────────────────────────COMMENT
MEDIUM…java/eu/darken/sdmse/appcontrol/core/AppControlTest.kt450 // ─────────────────────────── performToggle ───────────────────────────COMMENT
MEDIUM…java/eu/darken/sdmse/appcontrol/core/AppControlTest.kt652 // ─────────────────────────── archive & restore give-up ───────────────────────────COMMENT
MEDIUM…java/eu/darken/sdmse/appcontrol/core/AppControlTest.kt832 // ─────────────────────────── archive & restore unavailable ───────────────────────────COMMENT
MEDIUM…java/eu/darken/sdmse/appcontrol/core/AppControlTest.kt932 // ─────────────────────────── accessibility-backed action gates ───────────────────────────COMMENT
MEDIUM…java/eu/darken/sdmse/appcontrol/core/AppControlTest.kt948 // ─────────────────────────── missingSetup derivation ───────────────────────────COMMENT
MEDIUM…/squeezer/ui/settings/SqueezerSettingsViewModelTest.kt104 // ─────────────────────────── state ───────────────────────────COMMENT
MEDIUM…/squeezer/ui/settings/SqueezerSettingsViewModelTest.kt161 // ─────────────────────────── setters ───────────────────────────COMMENT
MEDIUM…/squeezer/ui/settings/SqueezerSettingsViewModelTest.kt283 // ─────────────────────────── history actions ───────────────────────────COMMENT
MEDIUM…/sdmse/squeezer/ui/setup/SqueezerSetupViewModelTest.kt184 // ─────────────────────────── state ───────────────────────────COMMENT
MEDIUM…/sdmse/squeezer/ui/setup/SqueezerSetupViewModelTest.kt237 // ─────────────────────────── processResult ───────────────────────────COMMENT
MEDIUM…/sdmse/squeezer/ui/setup/SqueezerSetupViewModelTest.kt296 // ─────────────────────────── updateQuality / updateMinAge ───────────────────────────COMMENT
MEDIUM…/sdmse/squeezer/ui/setup/SqueezerSetupViewModelTest.kt322 // ─────────────────────────── updatePaths normalization ───────────────────────────COMMENT
MEDIUM…/sdmse/squeezer/ui/setup/SqueezerSetupViewModelTest.kt375 // ─────────────────────────── openPathPicker ───────────────────────────COMMENT
MEDIUM…/sdmse/squeezer/ui/setup/SqueezerSetupViewModelTest.kt391 // ─────────────────────────── startScan ───────────────────────────COMMENT
MEDIUM…/sdmse/squeezer/ui/setup/SqueezerSetupViewModelTest.kt440 // ─────────────────────────── showExample ───────────────────────────COMMENT
MEDIUM…/sdmse/squeezer/ui/setup/SqueezerSetupViewModelTest.kt455 // ─────────────────────────── init picker bridge ───────────────────────────COMMENT
MEDIUM…en/sdmse/squeezer/ui/list/SqueezerListViewModelTest.kt160 // ─────────────────────────── state ───────────────────────────COMMENT
MEDIUM…en/sdmse/squeezer/ui/list/SqueezerListViewModelTest.kt204 // ─────────────────────────── compress confirmation flow ───────────────────────────COMMENT
MEDIUM…en/sdmse/squeezer/ui/list/SqueezerListViewModelTest.kt304 // ─────────────────────────── compressAll ───────────────────────────COMMENT
MEDIUM…en/sdmse/squeezer/ui/list/SqueezerListViewModelTest.kt350 // ─────────────────────────── exclude ───────────────────────────COMMENT
MEDIUM…en/sdmse/squeezer/ui/list/SqueezerListViewModelTest.kt404 // ─────────────────────────── toggleLayoutMode ───────────────────────────COMMENT
MEDIUM…en/sdmse/squeezer/ui/list/SqueezerListViewModelTest.kt430 // ─────────────────────────── navigation ───────────────────────────COMMENT
MEDIUM…en/sdmse/squeezer/ui/list/SqueezerListViewModelTest.kt459 // ─────────────────────────── init data-drain auto-navUp ───────────────────────────COMMENT
MEDIUM…est/java/eu/darken/sdmse/squeezer/core/SqueezerTest.kt50 // ─────────────────────────── data / model helpers ───────────────────────────COMMENT
MEDIUM…est/java/eu/darken/sdmse/squeezer/core/SqueezerTest.kt232 // ─────────────────────────── workflow harness ───────────────────────────COMMENT
MEDIUM…est/java/eu/darken/sdmse/squeezer/core/SqueezerTest.kt331 // ─────────────────────────── scan ───────────────────────────COMMENT
MEDIUM…est/java/eu/darken/sdmse/squeezer/core/SqueezerTest.kt482 // ─────────────────────────── process ───────────────────────────COMMENT
MEDIUM…est/java/eu/darken/sdmse/squeezer/core/SqueezerTest.kt869 // ─────────────────────────── exclude ───────────────────────────COMMENT
MEDIUM…dmse/appcleaner/ui/list/AppCleanerListViewModelTest.kt429 // ──────────────────────────── entry / cold scan ────────────────────────────COMMENT
MEDIUM…arken/sdmse/appcleaner/core/InaccessibleDeleterTest.kt840 // ─────────────────────────── freed-byte measurement ───────────────────────────COMMENT
MEDIUM…dmse/appcleaner/core/ExclusionLimitedRegressionTest.kt255 // ─────────────────────────── fixture control ───────────────────────────COMMENT
MEDIUM…dmse/appcleaner/core/ExclusionLimitedRegressionTest.kt288 // ─────────────────── accessible deletion vs. the trim ───────────────────COMMENT
91 more matches not shown…
Cross-File Repetition7 hits · 35 pts
SeverityFileLineSnippetContext
HIGH…leaner/core/automation/specs/huawei/HuaweiSpecsTest.kt0acs-debug: 0: text='null', class=android.widget.framelayout, clickable=false, checkable=false enabled=true, id=null pkg=STRING
HIGH…er/core/automation/specs/oxygenos/OxygenOSSpecsTest.kt0acs-debug: 0: text='null', class=android.widget.framelayout, clickable=false, checkable=false enabled=true, id=null pkg=STRING
HIGH…aner/core/automation/specs/coloros/ColorOSSpecsTest.kt0acs-debug: 0: text='null', class=android.widget.framelayout, clickable=false, checkable=false enabled=true, id=null pkg=STRING
HIGH…leaner/core/automation/specs/realme/RealmeSpecsTest.kt0acs-debug: 0: text='null', class=android.widget.framelayout, clickable=false, checkable=false enabled=true, id=null pkg=STRING
HIGH…er/core/automation/specs/oxygenos/OxygenOSSpecsTest.kt0acs-debug: 0: text='null', class=android.widget.framelayout, clickable=false, checkable=false enabled=true, id=null pkg=STRING
HIGH…aner/core/automation/specs/coloros/ColorOSSpecsTest.kt0acs-debug: 0: text='null', class=android.widget.framelayout, clickable=false, checkable=false enabled=true, id=null pkg=STRING
HIGH…leaner/core/automation/specs/realme/RealmeSpecsTest.kt0acs-debug: 0: text='null', class=android.widget.framelayout, clickable=false, checkable=false enabled=true, id=null pkg=STRING
Over-Commented Block30 hits · 30 pts
SeverityFileLineSnippetContext
LOW…dmse/appcleaner/ui/details/AppJunkDetailsScreenTest.kt161 // brittle under Robolectric + HorizontalPager + ScrollableTabRow — the tab row's measurementCOMMENT
LOW…en/sdmse/appcleaner/ui/list/AppCleanerListViewModel.kt61 private val entryScanFailed = MutableStateFlow(false)COMMENT
LOW…dmse/main/ui/dashboard/bottom/DashboardHeroCardTest.kt721 timestamp = freedAt,COMMENT
LOW…/eu/darken/sdmse/common/upgrade/ui/UpgradeViewModel.kt401 if (!acquireOp(BusyOp.SUBSCRIPTION)) return@launchCOMMENT
LOW…u/darken/sdmse/common/upgrade/core/UpgradeRepoGplay.kt81 // ViewModel that started it, so a VM-level guard alone lets a rotation (or a second screen)COMMENT
LOW…u/darken/sdmse/common/upgrade/core/UpgradeRepoGplay.kt141 .launchIn(scope)COMMENT
LOW…u/darken/sdmse/common/upgrade/core/UpgradeRepoGplay.kt261 // Persistent ack safety net, launch trigger: armed and AWAITED before the Play sheetCOMMENT
LOW…u/darken/sdmse/common/upgrade/core/UpgradeRepoGplay.kt501 proStateLock.withLock { recordProUnconfirmedLocked(occurredAt) }COMMENT
LOW…en/sdmse/common/upgrade/core/billing/BillingManager.kt41COMMENT
LOW…en/sdmse/common/upgrade/core/billing/BillingManager.kt61 private val servedDemand = MutableStateFlow(0)COMMENT
LOW…en/sdmse/common/upgrade/core/billing/BillingManager.kt81 // Fires once per reconciliation that couldn't confirm Pro: a failed connect-loop iterationCOMMENT
LOW…en/sdmse/common/upgrade/core/billing/BillingManager.kt201 trueCOMMENT
LOW…en/sdmse/common/upgrade/core/billing/BillingManager.kt241 // (whose shareIn replay re-serves old data to late subscribers), every emission hereCOMMENT
LOW…en/sdmse/common/upgrade/core/billing/BillingManager.kt261 .shareIn(scope, SharingStarted.Eagerly, replay = 1)COMMENT
LOW…mmon/upgrade/core/billing/work/PurchaseAckScheduler.kt41COMMENT
LOW…ommon/upgrade/core/billing/client/BillingConnection.kt121 }COMMENT
LOW…ommon/upgrade/core/billing/client/BillingConnection.kt201 // need to fail closed, or to feed the grace episode clock, get the provenance instead of havingCOMMENT
LOW…ommon/upgrade/core/billing/client/BillingConnection.kt261 // A surviving OWNED overlay entry (purchase event newer than the query start,COMMENT
LOW…c/main/java/eu/darken/sdmse/widget/ui/WidgetContent.kt61// height and the freed-text branch becomes dead code.COMMENT
LOW…/darken/sdmse/automation/core/debug/DebugTaskModule.kt61 val eventJob = host.eventsCOMMENT
LOW…/darken/sdmse/automation/core/debug/DebugTaskModule.kt81//COMMENT
LOW…n/sdmse/main/ui/dashboard/DashboardMainActionEngine.kt621 // [batchState] is published *last*, after this branch wrote everything it produces.COMMENT
LOW…n/sdmse/main/ui/dashboard/DashboardMainActionEngine.kt681 */COMMENT
LOW…a/eu/darken/sdmse/main/ui/dashboard/DashboardScreen.kt401 // routes to the upgrade screen instead of the delete-confirmation dialog.COMMENT
LOW…/eu/darken/sdmse/corpsefinder/core/CorpseFinderTest.kt761 // non-empty targets, UninstallWatcherTask with autoDelete=true, OneClick/Scheduler withCOMMENT
LOW…e/common/clutter/manual/DebugManualMarkerSourceTest.kt61// pos().pkgs("eu.thedarken.sdm.test.corpse").loc(SDCARD)COMMENT
LOW…a/eu/darken/sdmse/common/flow/FlowCombineExtensions.kt1package eu.darken.sdmse.common.flowCOMMENT
LOW…u/darken/sdmse/swiper/ui/swipe/SwiperSwipeViewModel.kt61) : ViewModel4(dispatcherProvider, tag = TAG) {COMMENT
LOWfastlane/generate_screenshots.sh1#!/usr/bin/env bashCOMMENT
LOWfastlane/copy_screenshots.sh1#!/usr/bin/env bashCOMMENT
Hyper-Verbose Identifiers12 hits · 15 pts
SeverityFileLineSnippetContext
LOWtooling/translation/ai_translate.py229 def extract_missing_translations(self) -> None:CODE
LOW⚡tools/ci/test_install_sdk.py62 def test_success_on_first_attempt(self):CODE
LOW⚡tools/ci/test_install_sdk.py69 def test_retry_after_transient_failure(self):CODE
LOW⚡tools/ci/test_install_sdk.py76 def test_exhaustion_reports_failure(self):CODE
LOW⚡tools/ci/test_install_sdk.py87 def test_timeout_is_a_failed_attempt(self):CODE
LOW⚡tools/ci/test_install_sdk.py95 def test_timeouts_exhaust_attempts(self):CODE
LOW⚡tools/ci/test_install_sdk.py101 def test_cleanup_only_clears_new_operations(self):CODE
LOWtools/ci/test_install_sdk.py116 def test_cleanup_failure_does_not_mask_result(self):CODE
LOWtools/ci/test_install_sdk.py137 def test_prefers_sdkmanager_over_android(self):CODE
LOWtools/ci/test_install_sdk.py143 def test_falls_back_to_android_cli(self):CODE
LOWtools/ci/test_install_sdk.py158 def test_missing_cli_fails_loudly(self):CODE
LOWtools/ci/test_install_sdk.py167 def test_missing_sdk_root_fails_loudly(self):CODE
Deep Nesting8 hits · 8 pts
SeverityFileLineSnippetContext
LOWtooling/translation/ai_translate.py368CODE
LOWtooling/translation/ai_translate.py105CODE
LOWtooling/translation/ai_translate.py229CODE
LOWtooling/translation/ai_translate.py308CODE
LOWtooling/docs/check_links.py51CODE
LOWtooling/docs/check_translations.py73CODE
LOWtooling/docs/check_translations.py159CODE
LOWtooling/docs/check_translations.py214CODE
Modern AI Meta-Vocabulary2 hits · 6 pts
SeverityFileLineSnippetContext
MEDIUM…eaner/ui/customfilter/editor/LiveSearchSheetContent.kt42 // The scaffold's sheet container draws the background edge-to-edge (incl. behind the nav bar);COMMENT
MEDIUM…ain/java/eu/darken/sdmse/common/picker/PickerScreen.kt302 // The scaffold's sheet container draws the background edge-to-edge (incl. behind the nav bar);COMMENT
Unused Imports5 hits · 5 pts
SeverityFileLineSnippetContext
LOWtooling/translation/ai_translate.py18CODE
LOWtooling/translation/ai_translate.py22CODE
LOWtooling/translation/ai_translate.py22CODE
LOWtooling/translation/ai_translate.py22CODE
LOWtooling/translation/ai_translate.py23CODE
Empty Error Handlers1 hit · 5 pts
SeverityFileLineSnippetContext
HIGHtooling/translation/ai_translate.py140except ValueError:CODE
Excessive Try-Catch Wrapping2 hits · 3 pts
SeverityFileLineSnippetContext
LOWtooling/translation/ai_translate.py400 except Exception as e:CODE
MEDIUMtooling/translation/ai_translate.py401 print(f"Error: {e}", file=sys.stderr)CODE
Fake / Example Data2 hits · 3 pts
SeverityFileLineSnippetContext
LOW…appcleaner/core/automation/specs/StorageEntryFinder.kt55 // OK: "80 MB lorem ipsum", "lorem 80 MB ipsum"COMMENT
LOW…appcleaner/core/automation/specs/StorageEntryFinder.kt56 // NOT OKAY: "1.80 MB lorem ipsum", "lorem 1.80 MB ipsum"COMMENT
Example Usage Blocks2 hits · 3 pts
SeverityFileLineSnippetContext
LOWfastlane/generate_screenshots.sh6# Usage:COMMENT
LOWfastlane/copy_screenshots.sh13# Usage:COMMENT
AI Slop Vocabulary1 hit · 3 pts
SeverityFileLineSnippetContext
MEDIUM…mse/deduplicator/ui/list/DeduplicatorListScreenTest.kt133 // at-least-once to stay robust to dispatcher changes.COMMENT