AI Slop Code Risk Monitor

shiaho777/web-to-app

SlopCodeMonitor badge for shiaho777/web-to-app Adjusted legacy signal; badge bands: 25 / 50 / 75 (different from dashboard bands).

The most full featured web-to-app toolkit on Android, a complete APK workshop that runs entirely on your phone

17.0 Elevated pattern signal View on GitHub

Open-Source Code Quality, Security and Technical Debt Review

This report summarizes scanner evidence for shiaho777/web-to-app, a Kotlin project with 7,149 GitHub stars. SynthScan examined 399,839 lines of code across 1554 source files, recording 818 pattern matches distributed across 15 syntactic categories. The legacy adjusted pattern signal is 17.0 (Elevated 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.

17.0
Adjusted Signal
17.0
Raw Pattern Score
100%
Time Factor
2026-10-31
Last Push
7.1K
Stars
Kotlin
Language
399.8K
Lines of Code
1.6K
Files
818
Pattern Hits
2026-10-31
Scan Date
0.44
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? 38 finding(s).

Hallucinated Dependency & Supply Chain Risk 55.6/100 · HIGH

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

Agent Over-Engineering Ratio 3.0/100 · LOW

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

PR Review Velocity Impact 58.4/100 · HIGH

Which changes need focused human review? 818 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 666HIGH 14MEDIUM 68LOW 70

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 818 distinct pattern matches across 15 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 Indicators666 hits · 6451 pts
SeverityFileLineSnippetContext
CRITICAL…/com/webtoapp/core/privacy/FingerprintGeneratorTest.kt48 val hints = com.webtoapp.core.kernel.UserAgentProfileDeriver.derive(fp.userAgent)CODE
CRITICAL…va/com/webtoapp/core/webview/WebViewResumeStoreTest.kt55 com.google.common.truth.Truth.assertWithMessage("unexpectedly persisted $dead")CODE
CRITICAL…com/webtoapp/core/activation/ActivationRelaunchTest.kt230 timeLimitMs = java.util.concurrent.TimeUnit.DAYS.toMillis(3),CODE
CRITICAL…ebtoapp/core/agent/llm/ReasoningContentContractTest.kt71 val ev = com.webtoapp.core.agent.engine.AgentEvent.ThinkingDelta(CODE
CRITICALapp/src/main/java/com/webtoapp/WebToAppApplication.kt93 com.webtoapp.core.i18n.HostLanguage.applyBlocking(this)CODE
CRITICALapp/src/main/java/com/webtoapp/WebToAppApplication.kt170 com.webtoapp.core.crypto.AesCryptoEngine.clearKeyCache()CODE
CRITICALapp/src/main/java/com/webtoapp/ui/MainActivity.kt159 val lightSurface = com.webtoapp.ui.shared.WindowHelper.isColorLight(bg)CODE
CRITICAL…c/main/java/com/webtoapp/ui/viewmodel/MainViewModel.kt205 com.webtoapp.core.script.UserScriptStorage.deleteScriptsForApp(CODE
CRITICAL…c/main/java/com/webtoapp/ui/viewmodel/MainViewModel.kt209 com.webtoapp.core.app.ProjectDirCleaner.deleteForApp(getApplication(), webApp)CODE
CRITICAL…c/main/java/com/webtoapp/ui/viewmodel/MainViewModel.kt246 com.webtoapp.core.script.UserScriptStorage.isFileReference(it.code)CODE
CRITICAL…c/main/java/com/webtoapp/ui/viewmodel/MainViewModel.kt250 com.webtoapp.core.script.UserScriptStorage.internalizeScripts(CODE
CRITICAL…c/main/java/com/webtoapp/ui/viewmodel/MainViewModel.kt516 injectScripts = com.webtoapp.core.script.UserScriptStorage.externalizeScripts(CODE
CRITICAL…c/main/java/com/webtoapp/ui/viewmodel/MainViewModel.kt538 com.webtoapp.core.script.UserScriptStorage.deleteScriptsForApp(CODE
CRITICAL…c/main/java/com/webtoapp/ui/viewmodel/MainViewModel.kt543 com.webtoapp.core.app.ProjectDirCleaner.deleteForApp(getApplication(), webApp)CODE
CRITICAL…c/main/java/com/webtoapp/ui/viewmodel/MainViewModel.kt684 injectScripts = com.webtoapp.core.script.UserScriptStorage.externalizeScripts(CODE
CRITICAL…c/main/java/com/webtoapp/ui/viewmodel/MainViewModel.kt1510 val config = com.webtoapp.core.scraper.WebsiteScraper.ScrapeConfig(CODE
CRITICAL…/java/com/webtoapp/ui/splash/SplashLauncherActivity.kt59 if (!com.webtoapp.core.appmodifier.PayloadIntegrity.verify(CODE
CRITICAL…/java/com/webtoapp/ui/splash/SplashLauncherActivity.kt374 com.webtoapp.ui.components.announcement.AnnouncementDialog(CODE
CRITICAL…/java/com/webtoapp/ui/splash/SplashLauncherActivity.kt375 config = com.webtoapp.ui.components.announcement.AnnouncementConfig(CODE
CRITICAL…ava/com/webtoapp/ui/codepreview/HtmlPreviewActivity.kt366 view?.evaluateJavascript(com.webtoapp.core.webview.DownloadBridge.getInjectionScript(), null)CODE
CRITICAL…ava/com/webtoapp/ui/codepreview/HtmlPreviewActivity.kt367 view?.evaluateJavascript(com.webtoapp.core.webview.PrintBridge.getInjectionScript(), null)CODE
CRITICAL…rc/main/java/com/webtoapp/ui/shell/ShellServerModes.kt58 if (!com.webtoapp.core.wordpress.WordPressDependencyManager.isPhpReady(context)) {CODE
CRITICAL…rc/main/java/com/webtoapp/ui/shell/ShellServerModes.kt96 com.webtoapp.core.wordpress.WordPressManager.autoInstallIfNeeded(CODE
CRITICAL…rc/main/java/com/webtoapp/ui/shell/ShellServerModes.kt106 com.webtoapp.core.wordpress.WordPressManager.applyRuntimeConfig(CODE
CRITICAL…rc/main/java/com/webtoapp/ui/shell/ShellServerModes.kt213 com.webtoapp.core.webview.LocalHttpServer.stablePortForPackageName(portOwner)CODE
CRITICAL…rc/main/java/com/webtoapp/ui/shell/ShellServerModes.kt265 val memorySite = com.webtoapp.core.webview.LocalHttpServer.MemorySite(CODE
CRITICAL…rc/main/java/com/webtoapp/ui/shell/ShellServerModes.kt319 com.webtoapp.core.webview.LocalHttpServer.shouldEnableCrossOriginIsolation(siteDir)CODE
CRITICAL…rc/main/java/com/webtoapp/ui/shell/ShellServerModes.kt463 com.webtoapp.core.webview.LocalHttpServer.stablePortForPackageName(portOwner)CODE
CRITICAL⚡…rc/main/java/com/webtoapp/ui/shell/ShellServerModes.kt599 val nodePath = com.webtoapp.core.nodejs.NodeDependencyManager.getNodeLibraryPath(context)CODE
CRITICAL⚡…rc/main/java/com/webtoapp/ui/shell/ShellServerModes.kt601 com.webtoapp.core.shell.ShellLogger.i("NodeJsShell", "nativeLibraryDir: ${context.applicationInfo.nativeCODE
CRITICAL⚡…rc/main/java/com/webtoapp/ui/shell/ShellServerModes.kt605 com.webtoapp.core.shell.ShellLogger.e("NodeJsShell", "libnode.so 未找到")CODE
CRITICAL⚡…rc/main/java/com/webtoapp/ui/shell/ShellServerModes.kt612 com.webtoapp.core.shell.ShellLogger.i("NodeJsShell", "libnode.so 路径: $nodePath (size=${java.io.File(nodeCODE
CRITICAL…rc/main/java/com/webtoapp/ui/shell/ShellServerModes.kt625 com.webtoapp.core.shell.ShellLogger.i("NodeJsShell", "提取 Node.js 项目文件到 ${projectDir.absolutePath}")CODE
CRITICAL⚡…rc/main/java/com/webtoapp/ui/shell/ShellServerModes.kt651 com.webtoapp.core.shell.ShellLogger.i("NodeJsShell", "Node.js 就绪: $serverUrl")CODE
CRITICAL⚡…rc/main/java/com/webtoapp/ui/shell/ShellServerModes.kt657 com.webtoapp.core.shell.ShellLogger.e("NodeJsShell", "Node.js 服务器启动失败")CODE
CRITICAL⚡…rc/main/java/com/webtoapp/ui/shell/ShellServerModes.kt661 com.webtoapp.core.shell.ShellLogger.e("NodeJsShell", "Node.js Shell 启动失败", e)CODE
CRITICAL…rc/main/java/com/webtoapp/ui/shell/ShellServerModes.kt750 if (!com.webtoapp.core.wordpress.WordPressDependencyManager.isPhpReady(context)) {CODE
CRITICAL…rc/main/java/com/webtoapp/ui/shell/ShellServerModes.kt873 val pythonHome = com.webtoapp.core.python.PythonDependencyManager.getPythonDir(context)CODE
CRITICAL…rc/main/java/com/webtoapp/ui/shell/ShellServerModes.kt886 val abi = com.webtoapp.core.python.PythonDependencyManager.getDeviceAbi()CODE
CRITICAL…rc/main/java/com/webtoapp/ui/shell/ShellServerModes.kt1078 val elfInfo = com.webtoapp.core.golang.GoDependencyManager.parseElf(file)CODE
CRITICAL⚡…/java/com/webtoapp/ui/shell/ShellPermissionDelegate.kt90 if (com.webtoapp.core.webview.FileChooserLifetime.isOpen()) {CODE
CRITICAL⚡…/java/com/webtoapp/ui/shell/ShellPermissionDelegate.kt91 com.webtoapp.core.webview.FileChooserLifetime.holdCamera(uri)CODE
CRITICAL⚡…/java/com/webtoapp/ui/shell/ShellPermissionDelegate.kt95 com.webtoapp.core.webview.CameraCaptureIntents.revokeOutput(activity, uri)CODE
CRITICAL⚡…/java/com/webtoapp/ui/shell/ShellPermissionDelegate.kt103 ?: com.webtoapp.core.webview.FileChooserLifetime.cameraUri()CODE
CRITICAL⚡…/java/com/webtoapp/ui/shell/ShellPermissionDelegate.kt105 ?: com.webtoapp.core.webview.FileChooserLifetime.callback()CODE
CRITICAL⚡…/java/com/webtoapp/ui/shell/ShellPermissionDelegate.kt400 com.webtoapp.core.webview.CameraCaptureIntents.revokeOutput(activity, cameraPhotoUri)CODE
CRITICAL⚡…/java/com/webtoapp/ui/shell/ShellPermissionDelegate.kt408 com.webtoapp.core.webview.FileChooserLifetime.holdCamera(output)CODE
CRITICAL⚡…/java/com/webtoapp/ui/shell/ShellPermissionDelegate.kt411 com.webtoapp.core.webview.CameraCaptureIntents.attachOutput(CODE
CRITICAL…/java/com/webtoapp/ui/shell/ShellPermissionDelegate.kt56 com.webtoapp.data.model.DownloadLocationMode.valueOf(CODE
CRITICAL…/java/com/webtoapp/ui/shell/ShellPermissionDelegate.kt144 com.webtoapp.core.webview.CameraCaptureIntents.revokeOutput(activity, photoUri)CODE
CRITICAL…/java/com/webtoapp/ui/shell/ShellPermissionDelegate.kt147 com.webtoapp.core.webview.FileChooserLifetime.markClosed()CODE
CRITICAL…/java/com/webtoapp/ui/shell/ShellPermissionDelegate.kt167 com.webtoapp.core.webview.FileChooserLifetime.holdCallback(filePathCallback)CODE
CRITICAL…/java/com/webtoapp/ui/shell/ShellPermissionDelegate.kt189 com.webtoapp.core.webview.FileChooserLifetime.markOpen()CODE
CRITICAL…/java/com/webtoapp/ui/shell/ShellPermissionDelegate.kt228 com.webtoapp.data.model.ShareDeliveryMode.valueOf(wv.shareDeliveryMode)CODE
CRITICAL…/java/com/webtoapp/ui/shell/ShellPermissionDelegate.kt243 val item = com.webtoapp.core.share.SharedContentInbox.findForFileChooser(CODE
CRITICAL…/java/com/webtoapp/ui/shell/ShellPermissionDelegate.kt305 com.webtoapp.core.share.SharedContentInbox.claim(activity, item.id)CODE
CRITICAL…/java/com/webtoapp/ui/shell/ShellPermissionDelegate.kt376 com.webtoapp.core.webview.FileChooserLifetime.holdCamera(output)CODE
CRITICAL…/java/com/webtoapp/ui/shell/ShellPermissionDelegate.kt377 com.webtoapp.core.webview.CameraCaptureIntents.attachOutput(CODE
CRITICAL…/java/com/webtoapp/ui/shell/ShellPermissionDelegate.kt476 com.webtoapp.core.webview.FileChooserLifetime.markClosed()CODE
CRITICAL…/java/com/webtoapp/ui/shell/ShellPermissionDelegate.kt543 com.webtoapp.core.webview.FileChooserLifetime.endPermissionDialog()CODE
606 more matches not shown…
Decorative Section Separators60 hits · 180 pts
SeverityFileLineSnippetContext
MEDIUM…pp/core/apkbuilder/WebViewConfigBooleanCoverageTest.kt28 // ────────────────────────────────────────────────────────────COMMENT
MEDIUM…pp/core/apkbuilder/WebViewConfigBooleanCoverageTest.kt30 // ────────────────────────────────────────────────────────────COMMENT
MEDIUM…pp/core/apkbuilder/WebViewConfigBooleanCoverageTest.kt89 // ────────────────────────────────────────────────────────────COMMENT
MEDIUM…pp/core/apkbuilder/WebViewConfigBooleanCoverageTest.kt91 // ────────────────────────────────────────────────────────────COMMENT
MEDIUM…pp/core/apkbuilder/WebViewConfigBooleanCoverageTest.kt152 // ────────────────────────────────────────────────────────────COMMENT
MEDIUM…pp/core/apkbuilder/WebViewConfigBooleanCoverageTest.kt154 // ────────────────────────────────────────────────────────────COMMENT
MEDIUM…pp/core/apkbuilder/WebViewConfigBooleanCoverageTest.kt201 // ────────────────────────────────────────────────────────────COMMENT
MEDIUM…pp/core/apkbuilder/WebViewConfigBooleanCoverageTest.kt203 // ────────────────────────────────────────────────────────────COMMENT
MEDIUM…pp/core/apkbuilder/WebViewConfigBooleanCoverageTest.kt311 // ────────────────────────────────────────────────────────────COMMENT
MEDIUM…pp/core/apkbuilder/WebViewConfigBooleanCoverageTest.kt313 // ────────────────────────────────────────────────────────────COMMENT
MEDIUM…java/com/webtoapp/core/share/SharedContentInboxTest.kt52 // ── mime filter ─────────────────────────────────────────────────────────────COMMENT
MEDIUM…java/com/webtoapp/core/share/SharedContentInboxTest.kt85 // ── chooser matching ────────────────────────────────────────────────────────COMMENT
MEDIUM…java/com/webtoapp/core/share/SharedContentInboxTest.kt103 // ── filename sanitiser ──────────────────────────────────────────────────────COMMENT
MEDIUM…java/com/webtoapp/core/share/SharedContentInboxTest.kt141 // ── end-to-end round trip ───────────────────────────────────────────────────COMMENT
MEDIUM…java/com/webtoapp/core/share/SharedContentInboxTest.kt266 // ── history relaunch (issue #1029) ────────────────────────────────────────COMMENT
MEDIUM…java/com/webtoapp/core/share/SharedContentInboxTest.kt266 // ── history relaunch (issue #1029) ────────────────────────────────────────COMMENT
MEDIUM…java/com/webtoapp/core/share/SharedContentInboxTest.kt323 // ── consume (issue #1038) ───────────────────────────────────────────────────COMMENT
MEDIUM…java/com/webtoapp/core/share/SharedContentInboxTest.kt323 // ── consume (issue #1038) ───────────────────────────────────────────────────COMMENT
MEDIUM…java/com/webtoapp/core/share/SharedContentInboxTest.kt386 // ── on-demand byte reads (issue #1296) ─────────────────────────────────────COMMENT
MEDIUM…java/com/webtoapp/core/share/SharedContentInboxTest.kt386 // ── on-demand byte reads (issue #1296) ─────────────────────────────────────COMMENT
MEDIUM…java/com/webtoapp/ui/components/IsolationConfigCard.kt136 // ── 防护强度:一键预设 ─────────────────────────────COMMENT
MEDIUM…java/com/webtoapp/ui/components/IsolationConfigCard.kt176 // ── 当前指纹 ─────────────────────────────────────COMMENT
MEDIUM…java/com/webtoapp/ui/components/IsolationConfigCard.kt239 // ── 环境伪装:三个维度各一个紧凑选择器 ─────────────COMMENT
MEDIUM…java/com/webtoapp/ui/components/IsolationConfigCard.kt251 // ── 高级:逐项防护开关(折叠) ────────────────────COMMENT
MEDIUM…java/com/webtoapp/ui/components/IsolationConfigCard.kt336// ──────────────────────────── 伪装维度选择器 ────────────────────────────COMMENT
MEDIUM…java/com/webtoapp/ui/components/IsolationConfigCard.kt717// ──────────────────────────── 指纹展示辅助 ────────────────────────────COMMENT
MEDIUM…a/com/webtoapp/ui/components/NotificationConfigCard.kt63 // ── 头部 ────────────────────────────────────────────────COMMENT
MEDIUM…a/com/webtoapp/ui/components/NotificationConfigCard.kt128 // ── 推送通道 ─────────────────────────────────────COMMENT
MEDIUM…a/com/webtoapp/ui/components/NotificationConfigCard.kt199// ──────────────────────────── 轮询 ────────────────────────────COMMENT
MEDIUM…a/com/webtoapp/ui/components/NotificationConfigCard.kt329// ──────────────────────────── WebSocket ────────────────────────────COMMENT
MEDIUM…a/com/webtoapp/ui/components/NotificationConfigCard.kt403// ──────────────────────────── FCM ────────────────────────────COMMENT
MEDIUM…a/com/webtoapp/ui/components/NotificationConfigCard.kt516// ──────────────────────────── 共享小部件 ────────────────────────────COMMENT
MEDIUM…/com/webtoapp/ui/components/BackgroundRunConfigCard.kt46 // ── 头部:图标 + 标题 + 状态副标题 + 开关 ──────────────────COMMENT
MEDIUM…/com/webtoapp/ui/components/BackgroundRunConfigCard.kt111 // ── 保持唤醒 ─────────────────────────────────────COMMENT
MEDIUM…/com/webtoapp/ui/components/BackgroundRunConfigCard.kt151 // ── 常驻通知(前台服务必需,可自定义文案)───────────COMMENT
MEDIUM…webtoapp/core/appearance/BrowserDisguiseJsGenerator.kt46// ══════════════════════════════════════════════════════════════COMMENT
MEDIUM…webtoapp/core/appearance/BrowserDisguiseJsGenerator.kt49// ══════════════════════════════════════════════════════════════COMMENT
MEDIUM…webtoapp/core/appearance/BrowserDisguiseJsGenerator.kt67// ══════════════════════════════════════════════════════════════COMMENT
MEDIUM…webtoapp/core/appearance/BrowserDisguiseJsGenerator.kt69// ══════════════════════════════════════════════════════════════COMMENT
MEDIUM…webtoapp/core/appearance/BrowserDisguiseJsGenerator.kt679// ══════════════════════════════════════════════════════════════COMMENT
MEDIUM…webtoapp/core/appearance/BrowserDisguiseJsGenerator.kt681// ══════════════════════════════════════════════════════════════COMMENT
MEDIUM…webtoapp/core/appearance/BrowserDisguiseJsGenerator.kt769// ══════════════════════════════════════════════════════════════COMMENT
MEDIUM…webtoapp/core/appearance/BrowserDisguiseJsGenerator.kt771// ══════════════════════════════════════════════════════════════COMMENT
MEDIUM…webtoapp/core/appearance/BrowserDisguiseJsGenerator.kt800// ══════════════════════════════════════════════════════════════COMMENT
MEDIUM…webtoapp/core/appearance/BrowserDisguiseJsGenerator.kt802// ══════════════════════════════════════════════════════════════COMMENT
MEDIUMapp/src/main/java/com/webtoapp/core/i18n/Strings.kt5207 // ── Inbound share sheet (issue #943) ────────────────────────────────────────COMMENT
MEDIUMapp/src/main/java/com/webtoapp/core/i18n/Strings.kt5207 // ── Inbound share sheet (issue #943) ────────────────────────────────────────COMMENT
MEDIUM…ain/java/com/webtoapp/core/share/SharedContentInbox.kt296 // ──────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUM…ain/java/com/webtoapp/core/share/SharedContentInbox.kt298 // ──────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUM.github/scripts/ci/validate_modules.py34# ───────────────────────── enum values (must mirror the Kotlin source) ─COMMENT
MEDIUM.github/scripts/ci/validate_modules.py66# ───────────────────────── regex helpers ───────────────────────────────COMMENT
MEDIUM.github/scripts/ci/validate_modules.py123# ───────────────────────── primitive checks ────────────────────────────COMMENT
MEDIUM.github/scripts/ci/validate_modules.py182# ───────────────────────── registry checks ─────────────────────────────COMMENT
MEDIUM.github/scripts/ci/validate_modules.py274# ───────────────────────── cross-file consistency ─────────────────────COMMENT
MEDIUM.github/scripts/ci/validate_modules.py306# ───────────────────────── per-folder structural checks ───────────────COMMENT
MEDIUM.github/scripts/ci/validate_modules.py538# ───────────────────────── entry point ─────────────────────────────────COMMENT
MEDIUM.github/scripts/ci/generate_submissions.py66# ───────────────────────── git helpers ─────────────────────────────────COMMENT
MEDIUM.github/scripts/ci/generate_submissions.py134# ───────────────────────── GitHub API helpers ──────────────────────────COMMENT
MEDIUM.github/scripts/ci/generate_submissions.py214# ───────────────────────── core logic ──────────────────────────────────COMMENT
MEDIUM.github/scripts/ci/generate_submissions.py525# ───────────────────────── CLI entry ───────────────────────────────────COMMENT
Empty Error Handlers7 hits · 35 pts
SeverityFileLineSnippetContext
HIGH…src/main/assets/sample_projects/python-flask-en/app.py173except: passCODE
HIGHapp/src/main/assets/sample_projects/python-flask/app.py506except Exception:CODE
HIGH…src/main/assets/sample_projects/python-flask-ar/app.py158except: passCODE
HIGH.github/scripts/ci/validate_modules.py498except (json.JSONDecodeError, OSError):CODE
HIGH.github/scripts/ci/generate_submissions.py298except (json.JSONDecodeError, OSError):CODE
HIGH.github/scripts/ci/generate_submissions.py330except subprocess.CalledProcessError:CODE
HIGH.github/scripts/ci/generate_submissions.py424except (urllib.error.HTTPError, urllib.error.URLError):CODE
Unused Imports27 hits · 27 pts
SeverityFileLineSnippetContext
LOW…src/main/assets/sample_projects/python-flask-en/app.py8CODE
LOW…src/main/assets/sample_projects/python-flask-en/app.py10CODE
LOW…src/main/assets/sample_projects/python-flask-en/app.py11CODE
LOW…src/main/assets/sample_projects/python-flask-en/app.py12CODE
LOW…/main/assets/sample_projects/python-fastapi-en/main.py6CODE
LOW…/main/assets/sample_projects/python-fastapi-en/main.py7CODE
LOW…/main/assets/sample_projects/python-fastapi-en/main.py13CODE
LOW…src/main/assets/sample_projects/python-fastapi/main.py6CODE
LOW…src/main/assets/sample_projects/python-fastapi/main.py7CODE
LOW…src/main/assets/sample_projects/python-fastapi/main.py13CODE
LOWapp/src/main/assets/sample_projects/python-flask/app.py8CODE
LOWapp/src/main/assets/sample_projects/python-flask/app.py10CODE
LOWapp/src/main/assets/sample_projects/python-flask/app.py11CODE
LOWapp/src/main/assets/sample_projects/python-flask/app.py12CODE
LOW…n/assets/sample_projects/python-django/mysite/views.py5CODE
LOW…/main/assets/sample_projects/python-fastapi-ar/main.py6CODE
LOW…/main/assets/sample_projects/python-fastapi-ar/main.py7CODE
LOW…/main/assets/sample_projects/python-fastapi-ar/main.py13CODE
LOW…src/main/assets/sample_projects/python-flask-ar/app.py7CODE
LOW…ssets/sample_projects/python-django-en/mysite/views.py5CODE
LOW…ssets/sample_projects/python-django-ar/mysite/views.py4CODE
LOW…ssets/sample_projects/python-django-ar/mysite/views.py6CODE
LOW.github/scripts/audit_ui_design_system.py10CODE
LOW.github/scripts/ci/validate_modules.py23CODE
LOW.github/scripts/ci/validate_modules.py26CODE
LOW.github/scripts/ci/validate_modules.py31CODE
LOW.github/scripts/ci/generate_submissions.py43CODE
Over-Commented Block20 hits · 20 pts
SeverityFileLineSnippetContext
LOW…btoapp/data/model/WebViewConfigDefaultsContractTest.kt61 "enablePrintBridge",COMMENT
LOW…com/webtoapp/core/extension/ChromeExtensionPolyfill.kt1581 // (storage.get, sendMessage, tabs.create, etc.) and direct values for sync methodsCOMMENT
LOW…webtoapp/core/appearance/BrowserDisguiseJsGenerator.kt801// [FINAL] 最终封印 — 属性枚举顺序 & 冻结关键对象COMMENT
LOW…ain/java/com/webtoapp/core/apkbuilder/ApkBuildCache.kt401 parts += "openWith=${config.openWithEnabled}"COMMENT
LOW…ain/java/com/webtoapp/core/apkbuilder/AxmlRebuilder.kt1321 // each feature-stack bundle) into the binary AndroidManifest of the outputCOMMENT
LOWapp/src/main/cpp/sys_optimizer.c1#define _GNU_SOURCECOMMENT
LOWapp/src/main/cpp/perf_engine.c1#include <jni.h>COMMENT
LOWapp/src/main/cpp/static_exec_loader.c21 *COMMENT
LOWapp/src/main/cpp/static_exec_loader.c41COMMENT
LOWapp/src/main/cpp/static_exec_loader.c421COMMENT
LOWapp/src/main/cpp/node_bridge.cpp1#include <jni.h>COMMENT
LOWapp/src/main/cpp/go_exec_loader.c1#include <errno.h>COMMENT
LOWapp/src/main/cpp/go_exec_loader.c21#define ET_EXEC 2COMMENT
LOWapp/src/main/cpp/go_exec_loader.c41#endifCOMMENT
LOW…ets/web_extensions/wta_native_bridge/content_script.js1// WTA Native Bridge content script (GeckoView).COMMENT
LOWdocs/guide/more-features/share-receive.md21The app dispatches a `wta:share` DOM event on `window` and `document`, and also exposes a small API:COMMENT
LOWdocs/extensions/userscript.md1# UserscriptsCOMMENT
LOWdocs/zh/guide/more-features/share-receive.md21App 会在 `window` 和 `document` 上派发 `wta:share` DOM 事件,同时暴露一个小 API:COMMENT
LOWdocs/zh/extensions/userscript.md1# 油猴脚本COMMENT
LOW.github/workflows/modules-publish.yml1name: Module Market PublishCOMMENT
Cross-Language Confusion3 hits · 15 pts
SeverityFileLineSnippetContext
HIGH…/main/assets/sample_projects/python-fastapi-en/main.py134 document.getElementById('result').textContent=JSON.stringify(d,null,2)+'\\n\\n⏱️ '+ms+'ms';CODE
HIGH…src/main/assets/sample_projects/python-fastapi/main.py134 document.getElementById('result').textContent=JSON.stringify(d,null,2)+'\\n\\n⏱️ '+ms+'ms';CODE
HIGH…/main/assets/sample_projects/python-fastapi-ar/main.py134 document.getElementById('result').textContent=JSON.stringify(d,null,2)+'\\n\\n⏱️ '+ms+'ms';CODE
Cross-File Repetition3 hits · 15 pts
SeverityFileLineSnippetContext
HIGH…/main/assets/sample_projects/python-fastapi-en/main.py0fastapi api monitor — 精美的 api 监控仪表盘 展示 fastapi 的高性能异步能力,包含交互式 api 文档STRING
HIGH…src/main/assets/sample_projects/python-fastapi/main.py0fastapi api monitor — 精美的 api 监控仪表盘 展示 fastapi 的高性能异步能力,包含交互式 api 文档STRING
HIGH…/main/assets/sample_projects/python-fastapi-ar/main.py0fastapi api monitor — 精美的 api 监控仪表盘 展示 fastapi 的高性能异步能力,包含交互式 api 文档STRING
Excessive Try-Catch Wrapping10 hits · 10 pts
SeverityFileLineSnippetContext
LOW…rc/main/java/com/webtoapp/core/python/PythonRuntime.kt697except Exception:CODE
LOW…rc/main/java/com/webtoapp/core/python/PythonRuntime.kt716 except Exception:CODE
LOW…rc/main/java/com/webtoapp/core/python/PythonRuntime.kt740except Exception:CODE
LOW…rc/main/java/com/webtoapp/core/python/PythonRuntime.kt750except Exception:CODE
MEDIUM…rc/main/java/com/webtoapp/core/python/PythonRuntime.kt762 print(f"Error: Entry file not found: {entry_file}", file=sys.stderr)CODE
MEDIUM…rc/main/java/com/webtoapp/core/python/PythonRuntime.kt682def _patched_version(name):CODE
MEDIUM…c/main/java/com/webtoapp/core/apkbuilder/ApkBuilder.kt2933def _patched_version(name):CODE
LOW…c/main/java/com/webtoapp/core/apkbuilder/ApkBuilder.kt2946except Exception:CODE
LOW…c/main/java/com/webtoapp/core/apkbuilder/ApkBuilder.kt2965 except Exception:CODE
LOWapp/src/main/assets/sample_projects/python-flask/app.py506 except Exception:STRING
Modern AI Meta-Vocabulary3 hits · 9 pts
SeverityFileLineSnippetContext
MEDIUM…c/main/java/com/webtoapp/ui/shell/MultiWebShellMode.kt501 // The parent scaffold already reserves a solid status bar. A transparentCOMMENT
MEDIUM…c/main/java/com/webtoapp/ui/shell/MultiWebShellMode.kt605 // Fullscreen content padding is already applied by the parent scaffoldCOMMENT
MEDIUM…main/java/com/webtoapp/ui/shell/ShellScaffoldLayout.kt149 // Fullscreen already owns the system bars, so the scaffold must not addCOMMENT
Deep Nesting9 hits · 9 pts
SeverityFileLineSnippetContext
LOWscripts/generate_shell_strings.py41CODE
LOWscripts/generate_shell_strings.py155CODE
LOWscripts/generate_shell_strings.py184CODE
LOWscripts/generate_shell_strings.py214CODE
LOWscripts/generate_shell_strings.py261CODE
LOWscripts/generate_shell_strings.py282CODE
LOWscripts/generate_shell_strings.py348CODE
LOWscripts/generate_shell_strings.py394CODE
LOW.github/scripts/ci/validate_modules.py502CODE
Fake / Example Data4 hits · 4 pts
SeverityFileLineSnippetContext
LOW…/webtoapp/core/apkbuilder/AppTypePreflightSmokeTest.kt126 adminEmail = "admin@example.com",CODE
LOW…in/java/com/webtoapp/core/extension/ExtensionModule.kt178 @SerializedName("placeholder")CODE
LOW…btoapp/core/agent/export/SaveSessionAsModuleUseCase.kt149 placeholder = c.optString("placeholder")CODE
LOW…/com/webtoapp/core/agent/tool/builtin/PreviewScript.kt47 var name = (el.getAttribute('aria-label') || el.getAttribute('placeholder') || el.innerText || el.value || 'CODE
Hyper-Verbose Identifiers3 hits · 3 pts
SeverityFileLineSnippetContext
LOWscripts/check_config_field_drift.py69def extract_object_returned_keys(text: str) -> set[str]:CODE
LOW.github/scripts/ci/validate_modules.py276def _validate_plugin_registry_consistency(CODE
LOW.github/scripts/ci/generate_submissions.py278def _read_existing_submissions() -> dict[str, Any]:CODE
Self-Referential Comments1 hit · 3 pts
SeverityFileLineSnippetContext
MEDIUM.github/workflows/modules-publish.yml5# This file is what tells the in-app market who submitted each moduleCOMMENT
Synthetic Comment Markers1 hit · 2 pts
SeverityFileLineSnippetContext
HIGHapp/src/main/java/com/webtoapp/core/i18n/StringsA.kt12857 AppLanguage.ENGLISH -> "Icons generated by AI will be saved here automatically"STRING
AI Slop Vocabulary1 hit · 2 pts
SeverityFileLineSnippetContext
MEDIUM…c/main/java/com/webtoapp/core/apkbuilder/ApkBuilder.kt2289 // Re-parse and re-encode to canonical DER so the stored format is robust to theCOMMENT