AI Slop Code Risk Monitor

zerx-lab/FluxDown

SlopCodeMonitor badge for zerx-lab/FluxDown Adjusted legacy signal; badge bands: 25 / 50 / 75 (different from dashboard bands).
3.0 Low pattern signal View on GitHub

Open-Source Code Quality, Security and Technical Debt Review

This report summarizes scanner evidence for zerx-lab/FluxDown. SynthScan examined 858,450 lines of code across 2646 source files, recording 1539 pattern matches distributed across 13 syntactic categories. The legacy adjusted pattern signal is 3.0 (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.

3.0
Adjusted Signal
3.0
Raw Pattern Score
100%
Time Factor
—
Last Push
—
Stars
—
Language
858.5K
Lines of Code
2.6K
Files
1.5K
Pattern Hits
2026-10-31
Scan Date
0.01
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 5.3/100 · LOW

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

Hallucinated Dependency & Supply Chain Risk 1.2/100 · LOW

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

Agent Over-Engineering Ratio 8.3/100 · LOW

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

PR Review Velocity Impact 14.3/100 · LOW

Which changes need focused human review? 1539 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

Run additional scans to build a history of the legacy pattern signal. Score changes are not a measure of AI adoption or code quality.

No multi-scan history yet — run the scanner again to build trend data.

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 18HIGH 3MEDIUM 468LOW 1050

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 1539 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.

Decorative Section Separators467 hits · 1422 pts
SeverityFileLineSnippetContext
MEDIUMwebsite-v2/docker-build-save.sh2# ─────────────────────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/docker-build-save.sh17# ─────────────────────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/docker-build-save.sh35# ── 1. 构建镜像 ──────────────────────────────COMMENT
MEDIUMwebsite-v2/docker-build-save.sh45# ── 2. 保存镜像到文件 ────────────────────────COMMENT
MEDIUMwebsite-v2/deploy.sh2# ─────────────────────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/deploy.sh17# ─────────────────────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/deploy.sh31# ── Docker 调用自适应 sudo ────────────────────COMMENT
MEDIUMwebsite-v2/deploy.sh47# ── 1. 拉取最新代码 ──────────────────────────COMMENT
MEDIUMwebsite-v2/deploy.sh66# ── 2. 重建镜像 ──────────────────────────────COMMENT
MEDIUMwebsite-v2/deploy.sh70# ── 3. 重启容器 ──────────────────────────────COMMENT
MEDIUMwebsite-v2/deploy.sh81# ── 4. 清理悬空镜像 ──────────────────────────COMMENT
MEDIUMwebsite-v2/src/lib/pay.ts162// ── Paid-order store (ephemeral, for frontend success signal) ──────COMMENT
MEDIUMwebsite-v2/src/pages/api/feature-vote.ts8// ─────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/src/pages/api/feature-vote.ts18// ─────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/src/pages/api/feature-vote.ts34// ─────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/src/pages/api/feature-vote.ts36// ─────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/src/pages/api/feature-vote.ts270// ─────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/src/pages/api/feature-vote.ts272// ─────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/src/pages/api/feature-vote.ts326// ─────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/src/pages/api/feature-vote.ts334// ─────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/src/pages/api/feature-vote.ts359// ─────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/src/pages/api/feature-vote.ts361// ─────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/src/pages/api/feature-vote.ts394// ─────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/src/pages/api/feature-vote.ts396// ─────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/src/pages/api/feature-vote.ts450// ─────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/src/pages/api/feature-vote.ts452// ─────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/src/pages/api/feature-vote.ts487// ─────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/src/pages/api/feature-vote.ts489// ─────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/src/pages/api/feature-vote.ts548// ─────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/src/pages/api/feature-vote.ts550// ─────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/src/pages/api/feature-vote.ts774// ─────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/src/pages/api/feature-vote.ts776// ─────────────────────────────────────────────COMMENT
MEDIUM⚡website-v2/src/pages/api/logo-vote.ts394// ─────────────────────────────────────────────COMMENT
MEDIUM⚡website-v2/src/pages/api/logo-vote.ts396// ─────────────────────────────────────────────COMMENT
MEDIUM⚡website-v2/src/pages/api/logo-vote.ts405// ─────────────────────────────────────────────COMMENT
MEDIUM⚡website-v2/src/pages/api/logo-vote.ts407// ─────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/src/pages/api/logo-vote.ts8// ─────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/src/pages/api/logo-vote.ts11// ─────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/src/pages/api/logo-vote.ts61// ─────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/src/pages/api/logo-vote.ts63// ─────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/src/pages/api/logo-vote.ts79// ─────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/src/pages/api/logo-vote.ts81// ─────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/src/pages/api/logo-vote.ts268// ─────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/src/pages/api/logo-vote.ts270// ─────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/src/pages/api/logo-vote.ts327// ─────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/src/pages/api/logo-vote.ts329// ─────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/src/pages/api/logo-vote.ts363// ─────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/src/pages/api/logo-vote.ts365// ─────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/src/pages/api/logo-vote.ts429// ─────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/src/pages/api/logo-vote.ts436// ─────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/src/pages/api/logo-vote.ts508// ─────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/src/pages/api/logo-vote.ts510// ─────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/src/pages/api/logo-vote.ts636// ─────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/src/pages/api/logo-vote.ts638// ─────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/src/pages/api/roadmap.ts6// ─────────────────────────────────────────────COMMENT
MEDIUM⚡website-v2/src/pages/api/roadmap.ts24// ─────────────────────────────────────────────COMMENT
MEDIUM⚡website-v2/src/pages/api/roadmap.ts34// ─────────────────────────────────────────────COMMENT
MEDIUM⚡website-v2/src/pages/api/roadmap.ts36// ─────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/src/pages/api/roadmap.ts134// ─────────────────────────────────────────────COMMENT
MEDIUMwebsite-v2/src/pages/api/roadmap.ts136// ─────────────────────────────────────────────COMMENT
407 more matches not shown…
Over-Commented Block921 hits · 822 pts
SeverityFileLineSnippetContext
LOWCargo.toml81# 全部 release 产物(GPUI 桌面端、agent、fluxdownd、CLI、原生移动端核心、nmh、COMMENT
LOWpackaging/synology/build_spk.sh1#!/bin/shCOMMENT
LOWpackaging/openwrt/build.sh1#!/bin/shCOMMENT
LOWwebsite-v2/docker-build-save.sh1#!/usr/bin/env bashCOMMENT
LOWwebsite-v2/deploy.sh1#!/usr/bin/env bashCOMMENT
LOWwebsite-v2/src/pages/api/feature-vote.ts1import type { APIRoute } from "astro";COMMENT
LOWwebsite-v2/src/pages/api/roadmap.ts1import type { APIRoute } from "astro";COMMENT
LOWcrates/settings/src/ui.rs1//! 设置页的自有布局原语:分类页 → 子 Tab → 分组卡片 → 设置行。COMMENT
LOWcrates/plugin_ui/src/lib.rs1//! 插件界面 capability,两层:COMMENT
LOWcrates/app/src/app_icon.rs1//! 应用图标(Dock / Cmd-Tab / 任务栏 / 窗口管理器 / 标题栏):默认、内置「闪电」或用户导入的图片,COMMENT
LOWcrates/app/src/app_icon.rs41/// `_NET_WM_ICON` 按 u32 逐像素塞进窗口属性,256² 足够任务栏 / 切换器使用。COMMENT
LOWcrates/app/src/preference_writes.rs1//! 单条 agent 连接上在途的 `agent.preferences.patch` 写入覆盖层。COMMENT
LOWcrates/app/src/logging.rs1//! 界面进程诊断日志:`<agent 数据目录>/logs/desktop.log`(与 `agent.log` 同目录,DoctorCOMMENT
LOWcrates/app/src/lifecycle.rs1//! 桌面进程的两种退出,与 agent 驻留策略(`AgentSnapshot.shell.resident`)配合:COMMENT
LOWcrates/shell/src/window_controls.rs1//! 固定尺寸辅助窗口的自绘标题栏:Windows / Linux 上只提供最小化与关闭,不画最大化。COMMENT
LOWcrates/components/src/kit.rs1//! 全应用共用的控件规格:按钮 / 输入框统一高度与字号、分段标签、复选行。COMMENT
LOWcrates/components/src/busy.rs1//! 手动触发的异步动作的「进行中」最短可见时长。COMMENT
LOWcrates/components/src/motion.rs1//! 交互动效原语:按钮状态层(悬停 / 按下 / 选中的底色过渡)、随选中项滑动的高亮底块与COMMENT
LOWcrates/theme/src/cjk.rs1//! 汉字字体:按界面语言(简 / 繁)选主字体与缺字回退链。COMMENT
LOWcrates/theme/src/extended.rs1//! FluxDown 自有的扩展语义 token。COMMENT
LOWcrates/downloads/src/deletion.rs1//! 大批量删除本地任务:分块 `daemon.task.deleteMany`、进度、取消与结果汇总。COMMENT
LOWcrates/downloads/src/components/task_table.rs801 /// queue_id → 名称(列 / 分组标签)。COMMENT
LOWcrates/downloads/src/components/task_table.rs3821/// 表格指针事件监听:只记录活动时刻,不写表格 entity、不触发重绘。COMMENT
LOWcrates/downloads/src/model/shutdown.rs1//! 完成后关机:跨 `downloads` / `app` 边界的最小共享契约。COMMENT
LOWcrates/downloads/src/model/refresh_gate.rs1//! 事件驱动刷新的合并:任务进度 / 运行态事件频繁(每个活跃任务约 500ms 一条,session 一批COMMENT
LOWcrates/downloads/src/model/aria2c.rs1//! aria2c 命令行解析(#299):粘贴 `aria2c ...` 命令文本即可建任务。COMMENT
LOWcrates/downloads/src/model/new_download.rs81/// `scheme://host/a/b.zip?x#y` → `b.zip`;无路径或以 `/` 结尾时为 `None`。COMMENT
LOWcrates/downloads/src/model/save_dir_category.rs1//! 「新建下载」保存目录的分类下拉:预测目录、选项列表与「自动」模式的跟随判定。COMMENT
LOWcrates/downloads/src/model/progress_window.rs1//! 独立下载进度 / 完成窗口的开关决策(纯状态机,不碰窗口与会话)。COMMENT
LOWcrates/downloads/src/pages/new_download/category.rs1//! 保存目录的分类下拉:按识别出的文件名预测分类目录并让目录框自动跟随,COMMENT
LOWcrates/command_palette/src/matcher.rs1//! 查询匹配与打分:模糊子序列 + 拼音(全拼 / 首字母 / 混拼,含多音字)。COMMENT
LOWdocker/docker-compose.yml1# FluxDown Server 部署(fluxdown-agent --server + fluxdownd;Web UI + /rpc JSON-RPC + 兼容 HTTP API)COMMENT
LOWdocker/docker-compose.yml21 # NAS 硬盘休眠:/data 会承载 SQLite、日志与 BT 会话状态,建议映射到 SSD / 缓存池COMMENT
LOWnative/agent/Cargo.toml61[target.'cfg(windows)'.dependencies]COMMENT
LOWnative/agent/build.rs1//! 构建期把 Web SPA 产物嵌入服务器二进制,实现单文件分发(下载即运行,COMMENT
LOWnative/agent/src/category_dir.rs1//! 外部捕获的分类保存目录:由 `custom_categories` 偏好构建随建任务交给 daemon 的路由规则COMMENT
LOWnative/agent/src/remote.rs2421 #[error("daemon remote command failed: {0:?}")]COMMENT
LOWnative/agent/src/remote.rs2821 #[derive(Clone, Copy, Default, Eq, PartialEq)]COMMENT
LOWnative/agent/src/device_identity.rs1//! 本机设备身份探测:真实主机名,以及 Flutter 时代 `cloud_device_id` 的一次性沿用。COMMENT
LOWnative/agent/src/system_proxy.rs1//! agent 自身外网客户端「跟随系统代理」的显式装配。COMMENT
LOWnative/agent/src/server_mode.rs1//! `fluxdown-agent --server`:headless(NAS / 服务器)宿主形态。COMMENT
LOWnative/agent/src/permission.rs1//! Doctor 权限修复的执行层。COMMENT
LOWnative/agent/src/task_events.rs1//! 兼容 API 的任务生命周期事件(aria2 WS 通知源)与实时速率。COMMENT
LOWnative/agent/src/event_pump.rs1//! WebSocket 事件转发:广播接收与套接字写入解耦,落后的订阅者靠合并而非断线追赶。COMMENT
LOWnative/agent/src/sync.rs1//! 配置同步:目录 ownership、pull-before-push、dirty/tombstone、self-echo 与「本机专属」状态机。COMMENT
LOWnative/agent/src/sync.rs961 })COMMENT
LOWnative/agent/src/sync.rs1301COMMENT
LOWnative/agent/src/embedded.rs61 #[error("agent data directory {} is owned by another fluxdown-agent", .0.display())]COMMENT
LOWnative/agent/src/web_assets.rs1//! 嵌入式 Web SPA 托管 —— 构建期由 `build.rs` 把 `web/dist` 全量 `include_bytes!`COMMENT
LOWnative/agent/src/bundle_watch.rs1//! 桌面宿主:自身程序文件消失后完全退出。COMMENT
LOWnative/agent/src/nmh.rs921 }COMMENT
LOWnative/agent/src/nmh.rs1001 /// 中继可执行文件绝对路径;空表示未找到。COMMENT
LOWnative/agent/src/update/mod.rs1//! 应用内更新:检查 → 后台下载并校验 → 一键安装并重启。COMMENT
LOWnative/agent/src/update/restart.rs1//! 重启计划:登记后,agent 运行期**完全结束**(daemon 已退出、`agent.lock` 已释放)再由COMMENT
LOWnative/agent/src/update/install/macos.rs1//! macOS:整体替换外层 `FluxDown.app`。COMMENT
LOWnative/agent/src/update/install/detect.rs1//! 安装形态检测:把「环境事实」([`Facts`])纯函数式地映射为 [`InstallTarget`]。COMMENT
LOWnative/agent/src/update/install/mod.rs1//! 更新安装:按安装形态检测 → 预检 → 替换程序文件 → 返回重启计划。COMMENT
LOWnative/agent/src/update/install/mod.rs121 #[error("{context}: {source}")]COMMENT
LOWnative/agent/src/shell/mod.rs1//! agent 系统外壳:托盘可用性、关闭全部 UI 后的驻留策略、按需拉起桌面程序。COMMENT
LOWnative/agent/src/shell/prompt_launch.rs1//! agent 为待确认交互(外部捕获 / 引擎选择)、下载提示窗口与新版本提醒拉起官方 UI 的记账。COMMENT
861 more matches not shown…
Hallucination Indicators18 hits · 180 pts
SeverityFileLineSnippetContext
CRITICALcrates/extensions/src/pages/market_favorites.rs311 self.plugins.market.favorites.load_failed.then(|| {CODE
CRITICALcrates/theme/src/manager.rs362 let theme_body_size = theme.base.typography.sm.size.as_f32() / appearance.ui_scale();CODE
CRITICALweb/src/pages/settings/sections/bt/guard/GuardBans.tsx131 const feed = useGuardFeed<BtGuardEntryDto>((offset, limit) => rpc.daemon.bt.guard.entries.list({ ...entriesQuery(filteCODE
CRITICALweb/src/pages/settings/sections/bt/guard/GuardBans.tsx176 for (const chunk of chunkIds(targets)) removed += (await rpc.daemon.bt.guard.entries.remove({ ids: chunk })).remCODE
CRITICALweb/src/pages/settings/sections/bt/guard/GuardBans.tsx190 await rpc.daemon.bt.guard.entries.add({ cidr: entry.cidr, action: 'allow', reason: '' })CODE
CRITICAL…rc/pages/settings/sections/bt/guard/AddEntryDialog.tsx38 await rpc.daemon.bt.guard.entries.add({CODE
CRITICAL…b/src/pages/settings/sections/bt/guard/GuardEvents.tsx53 const feed = useGuardFeed<BtGuardEventDto>((offset, limit) => rpc.daemon.bt.guard.events.list({ ...eventsQuery(filter,CODE
CRITICALweb/src/pages/downloads/detail/BtPeerGuard.tsx121 Promise.all([rpc.daemon.bt.guard.entries.list(entriesQuery), rpc.daemon.bt.guard.events.list(eventsQuery)]).then(CODE
CRITICALweb/src/pages/downloads/detail/peerGuardActions.ts31 await rpc.daemon.bt.guard.entries.add(peerCommandParams(group, command))CODE
CRITICAL…n/FluxDown/Features/Settings/NotificationService.swift624 let info = response.notification.request.content.userInfo.reduce(into: [String: String]()) { result, pair inCODE
CRITICAL…/src/main/java/com/fluxdown/app/actions/TaskActions.kt295 task.status == TaskStatus.Completed -> nav.push(com.fluxdown.app.nav.Route.TaskDetail(task.taskId))CODE
CRITICAL…down/app/feature/settings/extensions/ExtensionsPage.kt194 yanked = com.fluxdown.core.protocol.PluginMarket.installedVersionYanked(model.maCODE
CRITICAL…/com/fluxdown/app/feature/settings/bt/BtGuardSheets.kt355private fun com.fluxdown.fluxui.controls.GlassSectionScope.detailRow(title: String, value: String) {CODE
CRITICAL…m/fluxdown/app/feature/settings/service/WebhookPage.kt131 val log = remember(rawLog) { WebhookDelivery.parseList(com.fluxdown.core.protocol.Json.parseOrNull(rawLog)) }CODE
CRITICAL…m/fluxdown/app/feature/settings/service/WebhookPage.kt965 com.fluxdown.core.protocol.Json.parseOrNull(ctx.state.sections[HostSection.daemonWebhookDeliveries]),CODE
CRITICAL…java/com/fluxdown/app/feature/devices/DevicesScreen.kt262private fun com.fluxdown.core.store.HostState.toFacts(): HostFacts {CODE
CRITICAL…c/main/java/com/fluxdown/fluxui/controls/FluxSlider.kt215 drawCircle(Color.Black.copy(alpha = 0.12f), tr - 0.25.dp.toPx(), Offset(tx, cy), style = androidx.compose.uiCODE
CRITICAL…uxui/src/main/java/com/fluxdown/fluxui/data/TaskRow.kt410 horizontalArrangement = androidx.compose.foundation.layout.Arrangement.spacedBy(8.dp),CODE
Hyper-Verbose Identifiers46 hits · 46 pts
SeverityFileLineSnippetContext
LOWweb/src/shell/useVisibleActivityEntries.ts19export function useVisibleActivityEntries(): ActivityEntry[] {CODE
LOWweb/src/lib/saveDirHistory.ts36export function readCategorySaveDirHistory(value: unknown): Record<string, string[]> {CODE
LOWweb/src/lib/rpc/apply.ts860export function serviceEventReloadsTables(event: ServiceEvent): boolean {CODE
LOWweb/src/lib/rpc/reload.ts13export function shouldReloadForVersionChange(previous: string | null, next: string): boolean {CODE
LOWweb/src/lib/rpc/reload.ts18export function shouldReloadOnIncompatible(lastReloadAt: number | null, now: number): boolean {CODE
LOWweb/src/pages/downloads/model/actions.ts355export async function confirmDeleteGroupWithFiles(groupId: string, groupName: string): Promise<boolean> {CODE
LOWweb/src/pages/downloads/dialogs/fileConflict.ts79export function useDismissedFileConflicts(): ReadonlySet<string> {CODE
LOWweb/src/pages/downloads/dialogs/manifest.ts320export function manifestInvertVisibleSelection(CODE
LOWweb/src/pages/downloads/dialogs/manifest.ts411export function manifestAdvancedOptionsDirty(options: ManifestAdvancedOptions): boolean {CODE
LOWfluxDown/background/menus.ts58export function extractSelectionDownloadUrl(raw: string | undefined): string | null {CODE
LOWfluxDown/background/settings-cache.ts80export function installSettingsCacheListener(): void {CODE
LOWfluxDown/background/android-handoff.ts76export function androidSendDownloadRequest(request: DownloadRequest): Promise<ApiResponse> {CODE
LOWfluxDown/background/android-handoff.ts81export async function androidSendBatchDownloadRequest(items: BatchDownloadItem[]): Promise<ApiResponse> {CODE
LOWfluxDown/background/browser-downloads.ts149export function installBrowserDownloadNotices(): void {CODE
LOWfluxDown/background/intercept.ts102async function decodeDispositionWithPageCharset(CODE
LOWfluxDown/background/intercept.ts120export function resolveResponseDispositionFilename(CODE
LOWfluxDown/background/intercept.ts267async function startFallbackInterception(CODE
LOWfluxDown/background/intercept.ts890function isFirefoxInlineViewableType(contentType: string): boolean {CODE
LOWfluxDown/background/intercept.ts1148export function setInterceptListenersActive(active: boolean): void {CODE
LOWfluxDown/background/index.ts65function broadcastPageConfigChanged(): void {CODE
LOWfluxDown/background/sw-scopes.ts49export function rememberServiceWorkerScope(scope: string): void {CODE
LOWfluxDown/background/tasks.ts54export function maybeArmTaskPollForChannel(channel?: "local" | "remote"): void {CODE
LOWfluxDown/background/tasks.ts108function extractTaskIdFromNotificationId(CODE
LOWfluxDown/background/tasks.ts153async function processTasksPollResultInner(CODE
LOWfluxDown/background/sender.ts312export async function fallbackToBrowserDownload(CODE
LOWfluxDown/utils/filename.ts59export function dispositionNeedsPageCharset(CODE
LOWfluxDown/utils/filename.ts531export function parseContentDispositionFilename(CODE
LOWfluxDown/utils/connection-diagnostics.ts12export function recordConnectionDiagnostic(event: ConnectionDiagnostic): void {CODE
LOWfluxDown/utils/connection-diagnostics.ts30export async function exportConnectionDiagnostics(): Promise<void> {CODE
LOWfluxDown/utils/media-candidates.ts134function isCompleteFragmentResource(resource: DetectedResource): boolean {CODE
LOWfluxDown/utils/remote-server.ts127export async function remoteSendDownloadRequest(CODE
LOWfluxDown/utils/remote-server.ts135export async function remoteSendBatchDownloadRequest(CODE
LOWfluxDown/utils/settings.ts491export async function ensureRemoteSettingsVerified(CODE
LOWfluxDown/utils/error-log-background.ts13export function installBackgroundErrorLog(): void {CODE
LOWfluxDown/utils/native-messaging.ts329async function nmhSendBatchDownloadLegacy(CODE
LOWfluxDown/utils/native-messaging.ts399export async function nmhSendBatchDownloadRequest(CODE
LOWfluxDown/utils/native-messaging.ts524export async function nmhCheckFluxDownAvailable(): Promise<boolean> {CODE
LOWfluxDown/utils/native-messaging.ts537export async function nmhCheckFluxDownAvailableWithRetry(): Promise<boolean> {CODE
LOWfluxDown/utils/download-dispatch.ts261async function remoteSendBatchPreservingAudio(CODE
LOWfluxDown/utils/download-dispatch.ts420export async function checkFluxDownAvailableWithRetry(): Promise<boolean> {CODE
LOWfluxDown/utils/sniff-limit.ts12export function normalizeSniffMaxResources(value: unknown): number {CODE
LOWfluxDown/utils/download-cancellation.ts22export async function cancelBeforeFilenameResolution(CODE
LOWfluxDown/utils/connection-diagnostics-background.ts13export function installConnectionDiagnostics() {CODE
LOWfluxDown/utils/resource-debug-log.ts350export function stringifyResourceDebugLog(log: ResourceDebugLog): string {CODE
LOWuserscript/fluxdown.user.js336 function isDownloadableContentType(ct) {CODE
LOWuserscript/fluxdown.user.js774 function scanPerformanceForStreams() {CODE
Verbosity Indicators19 hits · 30 pts
SeverityFileLineSnippetContext
LOWnative/engine/src/download_manager.rs1811 // Step 1: DB 复读;存储故障不能被当成「尚无名字」继续落盘。COMMENT
LOWnative/engine/src/download_manager.rs1828 // Step 2: probe(名称仍未知时)。hint 任务(浏览器扩展 / 插件给了大小)不探测:COMMENT
LOWnative/engine/src/download_manager.rs1890 // Step 3: HLS 归一化为 .ts。force_ts_extension 幂等;HLS 下载器内仍保留COMMENT
LOWnative/engine/src/download_manager.rs2119 // Step 4: dedup + 预订。磁盘探测在锁外(阻塞池)完成,锁内只核对 / 插入预订集合,COMMENT
LOWnative/engine/src/download_manager.rs2140 // Step 5: dedup 改名落库。COMMENT
LOW⚡native/engine/src/proxy_config.rs1318 // Step 1: Greeting — tell proxy which auth methods we supportCOMMENT
LOW⚡native/engine/src/proxy_config.rs1328 // Step 2: Read method selectionCOMMENT
LOWnative/engine/src/proxy_config.rs1365 // Step 3: CONNECT requestCOMMENT
LOWnative/engine/src/proxy_config.rs1388 // Step 4: Read CONNECT responseCOMMENT
LOWnative/engine/src/segment_coordinator.rs4292 // Step 0: sparse 标记必须先于任何 set_len / 写入。失败只记日志,COMMENT
LOWnative/engine/src/segment_coordinator.rs4306 // Step 1: sparse 不可用时尽量预留物理簇;失败记日志后继续设置 EOF,COMMENT
LOWnative/engine/src/segment_coordinator.rs4335 // Step 2: 设置逻辑 EOF——后续 seek+write 依赖此值COMMENT
LOWnative/engine/src/download_manager/boost.rs69 // Step 1: If the target task is currently waiting in pending_queue, extract itCOMMENT
LOWnative/engine/src/download_manager/boost.rs82 // Step 2: Auto-pause all currently active tasks (except the target itself,COMMENT
LOWnative/engine/src/download_manager/boost.rs107 // Step 3: Pause all remaining tasks in the pending queue (excluding the target).COMMENT
LOWnative/engine/src/download_manager/boost.rs119 // Step 4: Mop up — drain_queue() calls in step 2/3 may have promoted additionalCOMMENT
LOWnative/engine/src/download_manager/boost.rs134 // Step 5: Ensure the target task is downloading.COMMENT
LOW.github/workflows/release.yml675 # Step 1: 提交 AMO 市场版本(X.Y.Z),continue-on-error 不阻塞 ReleaseCOMMENT
LOW.github/workflows/release.yml688 # Step 2: 将 manifest 版本改为 X.Y.Z.1,unlisted 签名产出 GitHub Release 用 XPICOMMENT
Structural Annotation Overuse19 hits · 30 pts
SeverityFileLineSnippetContext
LOWnative/engine/src/download_manager.rs1811 // Step 1: DB 复读;存储故障不能被当成「尚无名字」继续落盘。COMMENT
LOWnative/engine/src/download_manager.rs1828 // Step 2: probe(名称仍未知时)。hint 任务(浏览器扩展 / 插件给了大小)不探测:COMMENT
LOWnative/engine/src/download_manager.rs1890 // Step 3: HLS 归一化为 .ts。force_ts_extension 幂等;HLS 下载器内仍保留COMMENT
LOWnative/engine/src/download_manager.rs2119 // Step 4: dedup + 预订。磁盘探测在锁外(阻塞池)完成,锁内只核对 / 插入预订集合,COMMENT
LOWnative/engine/src/download_manager.rs2140 // Step 5: dedup 改名落库。COMMENT
LOW⚡native/engine/src/proxy_config.rs1318 // Step 1: Greeting — tell proxy which auth methods we supportCOMMENT
LOW⚡native/engine/src/proxy_config.rs1328 // Step 2: Read method selectionCOMMENT
LOWnative/engine/src/proxy_config.rs1365 // Step 3: CONNECT requestCOMMENT
LOWnative/engine/src/proxy_config.rs1388 // Step 4: Read CONNECT responseCOMMENT
LOWnative/engine/src/segment_coordinator.rs4292 // Step 0: sparse 标记必须先于任何 set_len / 写入。失败只记日志,COMMENT
LOWnative/engine/src/segment_coordinator.rs4306 // Step 1: sparse 不可用时尽量预留物理簇;失败记日志后继续设置 EOF,COMMENT
LOWnative/engine/src/segment_coordinator.rs4335 // Step 2: 设置逻辑 EOF——后续 seek+write 依赖此值COMMENT
LOWnative/engine/src/download_manager/boost.rs69 // Step 1: If the target task is currently waiting in pending_queue, extract itCOMMENT
LOWnative/engine/src/download_manager/boost.rs82 // Step 2: Auto-pause all currently active tasks (except the target itself,COMMENT
LOWnative/engine/src/download_manager/boost.rs107 // Step 3: Pause all remaining tasks in the pending queue (excluding the target).COMMENT
LOWnative/engine/src/download_manager/boost.rs119 // Step 4: Mop up — drain_queue() calls in step 2/3 may have promoted additionalCOMMENT
LOWnative/engine/src/download_manager/boost.rs134 // Step 5: Ensure the target task is downloading.COMMENT
LOW.github/workflows/release.yml675 # Step 1: 提交 AMO 市场版本(X.Y.Z),continue-on-error 不阻塞 ReleaseCOMMENT
LOW.github/workflows/release.yml688 # Step 2: 将 manifest 版本改为 X.Y.Z.1,unlisted 签名产出 GitHub Release 用 XPICOMMENT
Fake / Example Data25 hits · 25 pts
SeverityFileLineSnippetContext
LOWcrates/plugin_ui/src/portable/render.rs879 .when_some(opt_str_prop(node, "placeholder"), |this, text| {CODE
LOWcrates/plugin_ui/src/portable/render.rs957 let placeholder = opt_str_prop(node, "placeholder").map(str::to_owned);CODE
LOWcrates/plugin_ui/src/portable/render.rs1022 let placeholder = opt_str_prop(node, "placeholder").map(str::to_owned);CODE
LOWcrates/account/src/dialogs/email.rs549 email_error(" USER@example.com ", "user@example.com"),CODE
LOWnative/agent/src/remote.rs3541 "id": "u1", "email": "user@example.com", "nickname": "User",CODE
LOWnative/agent/src/device_meta.rs239 "user": { "id": "u1", "email": "user@example.com" },CODE
LOWnative/agent/src/sync.rs1913 "user": { "id": "u1", "email": "user@example.com" },CODE
LOWnative/agent/src/sync.rs2362 "user": { "id": "u1", "email": "user@example.com" },CODE
LOWnative/agent/src/cloud/client.rs1352 "email": "user@example.com",CODE
LOWnative/agent/src/cloud/client.rs1635 "user": { "id": "u1", "email": "user@example.com" },CODE
LOWnative/agent/src/cloud/client.rs1669 "user": { "id": "u1", "email": "user@example.com" },CODE
LOWnative/agent/src/cloud/client.rs1986 "user": { "id": user_id, "email": "user@example.com" },CODE
LOWnative/agent/src/cloud/client.rs2007 "user": { "id": "u1", "email": "user@example.com" },CODE
LOWnative/agent/src/cloud/auth.rs182 "email": "user@example.com",CODE
LOWnative/agent/src/cloud/auth.rs229 .login(&json!({ "account": "user@example.com", "password": "secret" }))CODE
LOWnative/agent/src/cloud/auth.rs235 assert_eq!(session.user.email, "user@example.com");CODE
LOWnative/protocol/tests/protocol/agent_wire_safety.rs43 email: "user@example.com".to_owned(),CODE
LOWnative/protocol/src/plugin_view_schema.json186 "placeholder": { "type": "string" },CODE
LOWnative/protocol/src/plugin_view_schema.json195 "placeholder": { "type": "string" },CODE
LOWnative/protocol/src/plugin_view_schema.json208 "placeholder": { "type": "string" },CODE
LOWnative/protocol/src/agent.rs1757 "email": "user@example.com",CODE
LOWnative/protocol/src/agent.rs1767 assert_eq!(profile.user.email, "user@example.com");CODE
LOWweb/src/pages/plugins/view/nodes/controls.tsx64 placeholder={optStr(node.p, 'placeholder')}CODE
LOWweb/src/pages/plugins/view/nodes/controls.tsx79 placeholder={optStr(node.p, 'placeholder')}CODE
LOWweb/src/pages/plugins/view/nodes/controls.tsx100 placeholder={optStr(node.p, 'placeholder')}CODE
Empty Error Handlers3 hits · 15 pts
SeverityFileLineSnippetContext
HIGHscripts/test_file_server.py107except (BrokenPipeError, ConnectionResetError):CODE
HIGHscripts/send_notify.py328except Exception:CODE
HIGHscripts/send_notify.py189except Exception:CODE
Deep Nesting10 hits · 10 pts
SeverityFileLineSnippetContext
LOWscripts/test_file_server.py86CODE
LOWscripts/lint-changed.py106CODE
LOWscripts/lint-changed.py162CODE
LOWscripts/lint-changed.py231CODE
LOW.github/scripts/cws_crx.py105CODE
LOW.github/scripts/release_notify_qq.py58CODE
LOW.github/scripts/release_gate.py34CODE
LOW.github/scripts/check_ci_paths.py71CODE
LOW.github/scripts/check_ci_paths.py108CODE
LOW.github/scripts/check_ci_paths.py157CODE
Unused Imports7 hits · 7 pts
SeverityFileLineSnippetContext
LOWmobile/FluxDown/scripts/asc.py18CODE
LOWscripts/test_file_server.py39CODE
LOWscripts/test_file_server.py40CODE
LOWscripts/lint-changed.py35CODE
LOW.github/scripts/cws_crx.py21CODE
LOW.github/scripts/release_publish.py25CODE
LOW.github/scripts/check_ci_paths.py18CODE
Self-Referential Comments1 hit · 3 pts
SeverityFileLineSnippetContext
MEDIUMCargo.toml1# This file is used for telling Rust-related toolsCOMMENT
Excessive Try-Catch Wrapping2 hits · 2 pts
SeverityFileLineSnippetContext
LOWscripts/send_notify.py189 except Exception:CODE
LOWscripts/send_notify.py328 except Exception:CODE
Modern Structural Boilerplate1 hit · 1 pts
SeverityFileLineSnippetContext
LOWmobile/FluxDown/scripts/asc.py141def set_whats_new(client: Client, build_id: str, text: str) -> None:CODE