MooTool

Handy tool set for developers

View on GitHub

验收标准、进度与证据

更新:2026-09-18。对照 Electron 的缺口见 docs/evidence/2026-09-14-parity-gap/。本轮补上 DIFF-065~632(626–630 F05/A01 运行台 Wiring;628–631 A03 Git 冲突期守卫;632 commit 钮 + F05 历史恢复)。完整产品与三平台发行仍未验收。

1. 状态规则

状态只使用:未开始、开发中、待验收、已验收、明确差异。已验收必须有具体证据;明确差异必须有 DIFF 记录并说明它影响哪些用例,不能用它隐藏尚未完成的编码。

功能拆分验收至少包括:控件/入口、正常流程、错误/取消、状态/持久化、语义 fixture、视觉/键盘、平台能力。某工具只有格式化或默认路径完成,应在备注列写具体范围,不能将整行设为已验收。

2. 当前进度

条目 目标 当前状态 证据/差异
P0 工具链/编辑器/窗口/动态 proto 等实验 开发中 本机 Wrapper/JDK21/Compose1.12 构建与 app-image 启动见 docs/evidence/2026-09-09-p0-p1/。RSTA 已接入;列编辑引擎、Alt 拖选(EditorColumnEditPresentation.columnGestureActive)、换行切换清列选、IME 提交写入列选择、预编辑不落盘已落地(见 DIFF-557);JFrame 派发单测已过(含列选后键入 x 写入每一行);产品主窗列选高亮已拍,列选写入/系统 IME 窗口手势仍未手工验收。5 MiB 中英混排 setText 单测已过。protoc 4.29.3 已随 F07 按 OS/arch 捆绑。ADR-001/002/003
P1 桌面壳/搜索/设置基础 开发中 分离占位/首页布局/收藏搜索/SettingsNavPresentationDIFF-552;设置行 SettingsRowPresentation/mooSettingsSettingRow、列编辑/IME 命令盘关键词与证据 hint 见 DIFF-553。26 入口、侧栏搜索按钮 + Cmd/Ctrl+K 命令盘(分组名/方向键/Tab 搜索→关闭→选中结果见 DIFF-492DIFF-491 搜索↔结果;非空查询可深链设置 12 类mcp/integration→AI、language→常规、export→工具默认值等,见 DIFF-516DIFF-517);Tab 走查链单测见 DIFF-512;Compose 搜索行帧 151DIFF-510)、六风格 token+装饰、折叠导航 tooltip、线性图标、语言、基础设置、JSON 分离窗口、AWT 托盘(不支持时说明)、工具栏密度 token 已有;侧栏紧凑导航行高/字号与分组底分隔线见 DIFF-496;工具页 p5 按钮高度跟 controlHeight、modern/quiet 13sp Medium 见 DIFF-501;非 p5 MooButton modern/quiet 13sp Medium(含 editor-toolbar)见 DIFF-502;modern 非 p5 工具栏 7dp 圆角见 DIFF-503MooIconButton modern 9dp/controlHeight 方钮与浅阴影见 DIFF-504MooGhostButton modern 9dp/默认 8dp(.icon-ghost)见 DIFF-505;侧栏 ⧉/▣ 与右键分离/收回,打开已分离工具聚焦既有窗口并显示占位;窗口管理器压到 960×640 以下显示最小尺寸提示;启动时按显示器工作区夹紧已保存坐标,标题条不可见则夹回最近屏。关闭确认为主窗内 overlay(隐藏到后台/退出/取消),见 DIFF-060。视觉窗口截图与完整键盘流程待验收。见 DIFF-042DIFF-044DIFF-056;Java 迁移提示见 DIFF-259
P2 完整 JSON 基础工作流 开发中 格式化/压缩/查找/历史搜索删除/Vault CRUD/转换 + Git + 检查器/JSONPath filter-slice-union + 树拖放 + 分栏持久化;大输入与原文重复键单测见 DIFF-1433 MiB JsonEngine.format 单测见 DIFF-146。运行窗口见 30-json.png / 浅色 65-json-light.png。产品窗 Alt 拖选见 115-json-column-edit-product.png;列选写入/系统 IME 未手工验收,不能标 F04 已验收
P3 文本与本地算法 开发中 F02/F03/F06/F07/F12/F13/F15/F16/F18/F21 已有引擎单测与 UI
P4 媒体/加密 开发中 F14/F17/F19/F22/F23/F24 已有引擎单测与 UI;macOS 录屏用途已写入 Info.plist,TCC 对话框手工、WebP、安装镜像未测
P5 网络/系统 开发中 F25 HardwareWiringPresentation、F08 EnvWiringPresentation、F11 NetWiringPresentation ping/resolve/whois 目标校验与按钮守卫(见 DIFF-557);F25 系统信息、F11 网络/IP、F08 环境变量、F10 Host、F09 HTTP、F20 翻译已有引擎单测与 UI;HTTP/翻译发送走 NetworkSettings.toHttpProxyConfig()(trim + 合法端口,见 DIFF-515);运行窗口已取,真实联网/提权对话框未测
P6 文档/Git/运行台/备份 开发中 F05 待验收;F01 文档库工作流已落地;Git 含 pull/push/丢弃/冲突/继续 merge·rebase 与自动检查点/自动 pull(Vault Git merge 产品窗 §B GitMergeProductFlowPresentation + 面板自动选中冲突文件见 DIFF-551;rebase 产品窗 §C prepare-git-rebase-conflict-evidence.sh + GitRebaseProductEvidenceFlowTest + git.rebaseProductFlow*DIFF-612(自动选中冲突文件后 git.rebaseProductFlowResolve、merge/rebase 完成后 pull 恢复见 DIFF-617);merge/rebase 进行中面板状态胶囊 + push 引擎守卫 + F09/F20 代理运行时映射见 DIFF-515;merge/rebase/pull 冲突单测见 DIFF-135DIFF-137;merge 中 pull 守卫见 DIFF-447DIFF-448;未解决冲突禁止 continue 见 DIFF-493;rebase 冲突期 pull/commit/continue/abort 守卫见 DIFF-494;remote URL 校验见 DIFF-138);Vault 外部删除冲突另存副本会话流见 DIFF-493(补充 DIFF-440);IME/窗口手势未做手工验收
P7 完整产品/平台安装发行验收 开发中 代码已声明 DMG/MSI/DEB/RPM、Windows per-user 与 UpgradeCode、macOS Developer Tools 类别与 Info.plist(含 NSScreenCaptureUsageDescription)、卸载隔离名单,见 DIFF-030DIFF-033DIFF-052。本机 macOS MOOTOOL_P7_BUILD_DIST=1 烟雾产出 DMG 见 DIFF-511results.md Win/Linux 安装验收)。Win/Linux 构建 checklist 见 DIFF-565results.md在本机构建 MSI/DEB)。三平台安装/升级/卸载/公证未测,不可标已支持
F00 首页 待验收 已实现 Compose 品牌/0.1.0/链接;分区为顶线+12sp 标题,贡献者字头、作品 56dp 行,felixnan168/Lyp 走 Gitee,见 DIFF-079。运行窗口见 docs/evidence/2026-09-15-inspector-screencapture/windows/21-home.png,浅色见 64-home-light.png(旧帧仍是卡片分区)。DIFF-052。首页外链/logo 可 Tab 且有外描边,见 DIFF-064;产品窗 Tab 帧见 126-home-tab-focus.png
F01 随手记 待验收 左库/中编辑或预览/右快速替换、保存与切换写入、查找替换、历史搜索删除与分离窗口。工具栏/Vault 导入导出 FileDialog 初始目录与 tools.exportDirectoryDIFF-195;250ms 空闲自动保存见 DIFF-199;文档库树选中/目录清空与状态栏路径见 DIFF-200;目录单击先 saveIfNeeded 再切换见 DIFF-360;打开/拖移保存失败写 errorDIFF-362saveIfNeeded/prepareJsonVaultContext 失败统一状态栏见 DIFF-363(JSON prepare 提取/单测见 DIFF-364;随手记 QuickNoteVaultContext 提取/单测见 DIFF-365);Vault Git onFlush 跳过干净文档见 DIFF-366;无打开笔记时保存打开新建对话框见 DIFF-372;250ms 空闲自动保存失败刷新状态栏见 DIFF-373prepareQuickNoteVaultContext 保存失败回滚树选中见 DIFF-377;Vault 树目录/打开统一 prepare + 失败回滚当前打开文件见 DIFF-378;Vault 树键盘 Enter 选中目录见 DIFF-381;文档库刷新重载当前笔记见 DIFF-383;目录选中/清空编辑器 metadata 默认 UntitledDIFF-385;Vault Git onVaultRefreshpersistFilterDIFF-387;磁盘变更干净时总重载打开文件见 DIFF-389;外部变更删除/重载单测见 DIFF-390;自定义 Vault 根变更重置树 UI 见 DIFF-391;Vault 根切换关闭 Git/冲突等 overlay 见 DIFF-392;Vault Git 调度识别 metadata 脏见 DIFF-201;Git 面板打开状态会话级见 DIFF-246;切工具再回随手记保留 Git/历史/Vault 对话框等见 DIFF-261;文档信息 overlay 会话级见 DIFF-247;Vault 外部冲突对话框会话级见 DIFF-248;Vault 树右键菜单会话级见 DIFF-249;Vault 树展开状态会话级见 DIFF-250;Vault 树滚动位置会话级见 DIFF-251;选中路径滚入视口见 DIFF-255;宽布局折叠文档库 vaultTreeOpenDIFF-253;窗口激活聚焦编辑器见 DIFF-254;新建笔记/文件夹落在当前选中目录见 DIFF-203、新建笔记 parentPathDIFF-361;新建笔记为空文档见 DIFF-204;树按选中路径展开祖先见 DIFF-205;collapseAll 保留选中祖先见 DIFF-476;树拖入目标目录与底栏选中路径见 DIFF-207;Vault 右键文档信息见 DIFF-208、打开前 prepare 见 DIFF-348;Vault 删除确认见 DIFF-209(JSON);随手记删除 Action 对话框见 DIFF-211;移动目标文件夹下拉见 DIFF-212;Action 对话框按钮与重命名预填见 DIFF-213;树右键重命名/移动/删除前保存与 Vault 移动目标过滤见 DIFF-214;拖放/移动/重命名对话框影响当前打开文件时先保存见 DIFF-333DIFF-334;干净文档不因旧 error 阻塞 Vault/Git 见 DIFF-335;用户编辑清空状态栏 error 见 DIFF-336(notice 见 DIFF-230);Vault 路径重定向见 DIFF-216;删除后清除选中见 DIFF-217;复制前脏保存见 DIFF-219;Vault 导出当前打开文件用编辑器缓冲见 DIFF-339;Vault 导出前 prepareQuickNoteVaultContextDIFF-340;外部导出纯正文与 标题.txt 默认名见 DIFF-349;Vault 导入/拖放打开前 saveIfNeededDIFF-342、「更多」菜单导入见 DIFF-343;工具栏导入目标目录与相对路径见 DIFF-350;树拖放同目录解析见 DIFF-355;Vault 树多文件拖放导入前保存见 DIFF-351;复制前 prepareQuickNoteVaultContextDIFF-345;新建文件夹路径解析见 DIFF-220;底栏操作针对树选中见 DIFF-222;新建笔记保存守卫见 DIFF-223;新建文件夹保存守卫见 DIFF-347;用户编辑清空状态栏 notice 见 DIFF-230;状态栏 notice 非空才展示见 DIFF-231;切页关闭模态遮罩见 DIFF-232;JSON 新建文件保存守卫见 DIFF-224。编辑/分栏/预览三模式;commonmark 预览;附件;逻辑行列编辑(Alt+拖动或闩锁);Vault Git;外部冲突;YAML frontmatter;路径/标题/正文检索;目录 CRUD/复制/移动;树拖放到目录;拖入编辑器;分栏宽度按工具保存;按语法格式化(含 SQL 方言)。工具栏可改当前笔记字体/字号/语法/颜色/行距,以及无序/有序列表前缀;颜色会着色文件树;行距改变编辑器行高。文档库可按最近修改(默认)/创建时间/名称排序并写入会话;展开模式与 JSON 库分开,侧栏可展开/折叠全部;方向键展开折叠并打开文件。右键菜单对目标节点执行重命名/移动/复制/导出/删除/在文件管理器显示/Git。搜索关键字过滤内存索引,不在每个字同步扫盘。内容宽 < 960 时文档库与快速替换按需互斥切换;内容宽 < 1440 时字号/行距/列编辑/图片/导入导出/历史/Git/分离收入「更多」。Cmd/Ctrl+F 打开查找,完整 FindReplaceBar 与 RSTA 导航见 DIFF-281(键盘见 DIFF-280、命中高亮见 DIFF-282、切页清除高亮见 DIFF-284、已替换计数见 DIFF-287、查找条「共找到」见 DIFF-288、查找按钮见 DIFF-289、全部替换成功不写 matches notice 见 DIFF-301、Host 单次替换清空 notice 见 DIFF-306、历史恢复不写 restored notice 见 DIFF-302、查找替换成功 notice 见 DIFF-305),Cmd/Ctrl+S 保存,Cmd/Ctrl+Shift+F 格式化(编辑器焦点下走 RSTA InputMap)。默认 data/vaults/quick-note。差异见 DIFF-021DIFF-044;Vault 树拖入笔记与导入/导出 toast 见 DIFF-118DIFF-121、Vault 操作 toast 见 DIFF-122;metadata 脏状态与自动重载见 DIFF-130;工作区/编辑预览分栏键与 Electron 迁入见 DIFF-171。运行窗口见 docs/evidence/2026-09-15-inspector-screencapture/windows/23-quicknote.png;闩锁列选写入见 125-quicknote-column-latch.png(ASCII x,不是系统 IME)。系统 IME 仍未手工验收,不能标完整 F01
F02 文本对比 待验收 行/字符 Myers 差异、三种高亮、忽略空白、独立滚动同步(短侧夹紧不回拉长侧)、统一补丁、上/下差异、导入/复制/清空/交换、历史与分离窗口。历史 DiffHistoryMetadata/DiffHistoryRestore(ignoreWhitespace + highlightMode)见 DIFF-535TextDiffPresentation 160ms 自动比较 debounce/差异导航索引见 DIFF-551。工具栏比较/上/下差异/复制补丁 manualCompareActionEnabled/navigateDiffActionEnabled/copyPatchActionEnabledDIFF-648。左右导入 tools.exportDirectoryDIFF-651TextDiffPresentation.runReadImportFile 左右导入接线 + mooDiffToolbarOptions/mooDiffEditorPane + Compose 帧 168DIFF-573mooDiffEditorGrid/mooDiffEditorSeam + Compose 帧 169DIFF-574mooDiffImportCluster 左右导入簇 + Compose 帧 174DIFF-579。导入失败 error toast 见 DIFF-577。并排模式左栏 VerticalPaneHandle + layout.paneSizes[textDiff] 持久化见 DIFF-164。内容宽 < 1440 时清空/交换/复制/导入/历史/分离收入「更多」。与 Electron diff 样本对齐。见 DIFF-043;导入 toast 见 DIFF-120。编辑区中缝与 11/600 标题见 DIFF-085;工具栏/模式条 p5ToolbarDIFF-103。运行窗口见 docs/evidence/2026-09-15-inspector-screencapture/windows/01-diff.png;同步滚动窗口手势未手工验收
F03 格式化 待验收 历史 ReformatHistoryMetadata/ReformatHistoryRestore| 管道 options)见 DIFF-537fixtures/electron-next-hostUaReformatRuntime-history-vitest.mdReformatWiringPresentation.defaultSaveFileNameDIFF-551。工具栏格式化/复制/另存 formatActionEnabled/copyResultActionEnabled/saveResultActionEnabledDIFF-649ReformatWiringPresentation.runReadSourceFile/runWriteResult/inferTypeFromFileName 文件 Tab 导入/另存接线 + mooFileDropRowDIFF-572。文件 Tab 导入/另存失败 reformat.error.* + error toast 见 DIFF-578。文件 Tab 导入/另存走 tools.exportDirectorychooseFileWithExportDirectory + persistToolsExportDirectory,见 DIFF-540)。文件 Tab 原文/结果分栏可拖并持久化见 DIFF-165。文本/文件 Tab,Nginx/Java/XML/HTML 与缩进 2–6 用下拉(对照 Electron compact select),真实解析格式化、语法错误定位、另存不覆盖原文件、历史与分离窗口、Cmd/Ctrl+Shift+F。内容宽 < 1440 时复制/保存/清空收入「更多」,标题栏历史/分离同样收入「更多」;复制按钮短暂反馈。引擎差异见 DIFF-005DIFF-045DIFF-051。文件 Tab FileDropRow(11 muted 省略)见 DIFF-086DIFF-094;类型/缩进/格式化与复制保存清空 p5ToolbarDIFF-103。文件 Tab 系统拖放见 DIFF-105;导入/另存 toast 见 DIFF-119DIFF-121。Compose 文件 Tab file-drop-row 焦点帧 167-compose-reformat-file-drop-tab-focus.pngDIFF-572。运行窗口见 docs/evidence/2026-09-15-inspector-screencapture/windows/40-reformat.png
F04 JSON 开发中 listPaths 路径枚举单测对齐 Electron jsonTools.test.ts(path/label/preview,含 books[0]/books[1],见 DIFF-516DIFF-518fixtures/electron-next-jsonTools-vitest.md)。有效 JSON 状态栏/检查器回退文案含结构摘要(节点数、最大深度,对照 next-tauri analyzeJson)见 DIFF-487。检查器「结构」面板(根类型/节点/键/深度/重复键计数与路径/UTF-8 字节,对齐 Tauri json-analysis)见 DIFF-488。检查器 Schema 推断/路径复制/快捷路径与弹层选中同步见 DIFF-489;JSONPath 复制/查询钮 pathCopyActionEnabled/pathQueryActionEnabledDIFF-638(复制 toast 链见 DIFF-600);「应用自定义格式」/「选择 JSONPath」钮见 DIFF-639(Schema 推断守卫见 DIFF-529);转换九动作网格 *ConvertActionEnabledDIFF-641;「生成 JSON Schema」/结果复制/重复键路径 inferSchemaActionEnabled/resultCopyActionEnabled/duplicatePathClickActionEnabledDIFF-642(A03 UpdateAutoCheckSchedulerTest 轮询 waitUntil 同 DIFF)。检查器侧栏对照 Electron:顶栏关闭、缩进 2/4 分段(会话恢复规范化非法 spacesDIFF-483;写盘/内存校正见 DIFF-484)、格式开关、转换两列网格、类名在转换区、JSONPath 后再到结果(查询写入 pathResultDIFF-194;结果区优先展示 pathResultDIFF-225;Vault 等 notice 不被旧 pathResult 遮挡见 DIFF-226;用户编辑清空检查器状态见 DIFF-227;JSONPath 选择器布局对齐 Electron 见 DIFF-228;内联路径树与弹层共用行样式及 80 条截断提示见 DIFF-229、截断逻辑单测见 DIFF-454;内联路径树双击查询见 DIFF-455、Compose 帧 147DIFF-456;JSONPath 弹层提取 JsonPathPickerDialog、「使用」/双击选路径交互单测与帧 148DIFF-457DIFF-458;路径节点预览对齐 Electron formatPreviewDIFF-329DIFF-331;JSONPath 框 Enter 查询见 DIFF-231;手改 JSONPath 清空旧 pathResultDIFF-240;切页关闭其它工具模态见 DIFF-232DIFF-234;JSON/随手记切页保留 Git·历史·JSONPath·Vault 对话框见 DIFF-261;检查器 XML/Bean 转换 conversionMode/conversionInput 与 Vault 对话框分离见 DIFF-263;转换/结果对话框 json.dialog.* 文案见 DIFF-264;XML/Bean 转换成功写入通用历史见 DIFF-265;打开查找预填选区见 DIFF-266;查找条 ↑/↓/Enter/Esc 见 DIFF-280;RSTA 替换选区/下一处见 DIFF-281;RSTA 查找命中高亮见 DIFF-282;查找无匹配 info toast(不写 notice)见 DIFF-308;文案键 find.noMatchesDIFF-307(原 DIFF-283 状态栏反馈已替换);切页清除 RSTA 查找高亮见 DIFF-284;JSONPath 弹层「使用」/双击仅选路径见 DIFF-319(内联树单击预览/双击查询;DIFF-285 弹层双击查询已收回);查找条已替换计数见 DIFF-287、「共找到」文案见 DIFF-288、查找按钮见 DIFF-289、工具栏快速格式化 2 空格与查找折叠保留已替换计数见 DIFF-291、检查器转义/高级格式化历史摘要见 DIFF-293transform 历史摘要见 DIFF-294、结果弹层复制 notice 见 DIFF-295、工具栏复制反馈见 DIFF-296、检查器侧栏标题见 DIFF-297showOutput 成功无 toast 见 DIFF-298、检查器顶栏图标关闭见 DIFF-298;工具栏清空不写 noticeDIFF-299(格式化/编码/配置/UA 清空见 DIFF-304);历史恢复不写 notice、替换成功重置复制反馈见 DIFF-300Cmd/Ctrl+R 同 F 打开查找见 DIFF-267(JSON/随手记/Host);RSTA 编辑器内 Cmd/Ctrl+RDIFF-268;HTTP 响应查找预填选区见 DIFF-269;请求 Body 聚焦时壳层不打开响应查找见 DIFF-270;Vault Git 面板会话级见 DIFF-246;Vault 删除确认 overlay 会话级见 DIFF-247;Vault 外部冲突对话框会话级见 DIFF-248;Vault 树右键菜单会话级见 DIFF-249;Vault 树展开状态会话级见 DIFF-250;Vault 树滚动位置会话级见 DIFF-251;选中路径滚入视口见 DIFF-255;JSONPath 选择器高亮会话级见 DIFF-252className/pathResult 写入会话快照见 DIFF-195;工具栏/Vault 导入导出对话框初始目录与 tools.exportDirectoryDIFF-195;Vault 底栏选中路径与未保存 DIFF-196;250ms 空闲自动保存/树选中与脏标记见 DIFF-197;新建文件/文件夹落在当前选中目录见 DIFF-202、父路径辅助见 DIFF-361;「新建」路径对话框见 DIFF-210;建文件夹后树选中路径见 DIFF-204;树按选中路径展开祖先见 DIFF-205;collapseAll 保留选中祖先见 DIFF-476;树拖入目标目录见 DIFF-207;Vault 删除确认见 DIFF-209;路径树保留为额外能力)+ JSONPath 弹层(单击预览/双击查询)+ filter/slice/union/$../转义键单测 + 转换结果对话框 + Vault Git + 目录 CRUD/重命名/复制/内容检索 + 树拖放/展开全部按钮 + 名称(默认)/修改时间排序写入会话 + 搜索走内存索引 + 文档库方向键 + 右键菜单(重命名/移动/复制/导出/删除/显示/Git)+ 分栏持久化 + 列编辑 + 历史搜索删除 + JSON 工具栏字体选择(系统字体列表写入 editor.jsonFontName)。复制成功按钮短暂显示「已复制」,失败显示「复制失败」,约 1400ms 后恢复。Cmd/Ctrl+F 查找、Cmd/Ctrl+Shift+F 格式化、Cmd/Ctrl+S 保存当前 Vault 文件(编辑器焦点下走 RSTA InputMap)。内容宽 < 960 时 Vault/检查器按需互斥切换;960–1320 检查器默认关、跨越 1321dp 与 Electron 同步开合见 DIFF-159;内容宽 < 1440 时换行/列编辑/导入导出/历史/Git/检查器/分离收入「更多」,≥ 1440 仍用「更多工具」开关检查器。运行窗口见 docs/evidence/2026-09-15-inspector-screencapture/windows/30-json.png,拆出窗见 31-json-detached.png,浅色见 65-json-light.png,JSONPath 全宽见 45-json-path-fullwidth.png。产品主窗 Alt 拖选见 115-json-column-edit-product.png;列选后键入 ASCII x122-json-column-type.png(不是系统 IME)。列编辑获焦见 DIFF-061。检查器分区顺序(JSONPath → 结果 → 路径浏览)见 DIFF-173;检查器关闭/格式化/转换网格/JSONPath p5ToolbarDIFF-106;Vault Git 远程删除与 ahead/behind 见 DIFF-107;中止合并确认见 DIFF-108;丢弃确认与 pull/工作区刷新见 DIFF-109;Git 面板 P5/flush 语义见 DIFF-110;打开/刷新不隐式 flush 见 DIFF-198;提交/推送前保存编辑器见 DIFF-184;已保存文件 Git flush 跳过写盘见 DIFF-332jsonGitFlushBeforeAction 提取/单测见 DIFF-367;Vault flush 失败 notice 统一见 DIFF-368;新建文件夹/复制片段 flush 见 DIFF-369;250ms 空闲自动保存失败 noticeDIFF-370;无 Vault 选中时保存打开新建对话框见 DIFF-371;目录选中/prepare 前 flush 脏片段见 DIFF-374;目录 prepare flush 失败回滚树选中见 DIFF-375;切换片段 prepare flush 失败回滚见 DIFF-376;prepare 失败回滚优先 currentFileDIFF-378;Vault 树 openJsonVaultTreeFile 打开失败回滚选中见 DIFF-379;Vault 树目录单击 prepareJsonVaultContextDIFF-380;Vault 树键盘 Enter 选中目录见 DIFF-381;键盘 Enter 打开文件先 onSelectDIFF-386;Vault Git onVaultRefreshpersistFilterDIFF-387;Vault 刷新干净时重载打开文件见 DIFF-382;Vault 搜索/排序 persistFilter 重载打开文件见 DIFF-384;移动/重命名影响当前打开文件时先 flush 见 DIFF-333DIFF-334;变更数角标见 DIFF-111、Git 面板操作后立即刷新见 DIFF-337DIFF-338;Vault 树刷新/磁盘变更立即刷新角标见 DIFF-388;磁盘变更干净时总重载打开文件见 DIFF-389;外部变更删除/重载单测见 DIFF-390;自定义 Vault 根变更重置树 UI 见 DIFF-391;Vault 根切换关闭 Git/冲突等 overlay 见 DIFF-392;Vault Git 面板文案/标题/Diff 头/布局/不可用态/toast 反馈见 DIFF-313DIFF-332;Vault 打开目录/刷新见 DIFF-112;Vault 菜单文案与复制 toast 见 DIFF-113;Vault 更多菜单与溢出 Git 计数见 DIFF-114;移动目标文件夹下拉见 DIFF-115、移动默认父路径见 DIFF-353(排除源目录子树见 DIFF-214);JSON Vault 对话框字段/创建按钮见 DIFF-214;树右键前置保存与重命名预填见 DIFF-215;重命名/移动后 vaultSelectedPath 同步见 DIFF-216;删除后清除选中路径见 DIFF-217;删除后打开文件脏状态见 DIFF-221;底栏操作针对树选中见 DIFF-222;复制片段选中与脏保存见 DIFF-218;Vault 导出当前打开文件用编辑器缓冲见 DIFF-339;对话框单段路径见 DIFF-219;JSON 更多菜单前置保存见 DIFF-220;JSON Vault 更多菜单绑定树选中见 DIFF-344;底栏复制 prepare 见 DIFF-346;编辑器拖入 JSON/文本见 DIFF-116.json 入库目录对齐树选中见 DIFF-354;非 JSON 覆盖前 flush 见 DIFF-355;工具栏导入前 flush 见 DIFF-356;历史恢复前 flush 见 DIFF-357;转换弹层写入编辑器前 flush 见 DIFF-358;Vault 树打开前 flush 见 DIFF-359prepareJsonVaultContext flush 失败写 noticeDIFF-363prepareJsonVaultContext 提取与冲突单测见 DIFF-364);Vault 树区域拖入 .jsonDIFF-117;拖入打开 Vault 文件前 flush 脏片段见 DIFF-341、Vault 树多文件拖放导入前 flush 见 DIFF-352;导入/导出 toast 与随手记 Vault 树拖放见 DIFF-118DIFF-121。窗口激活聚焦编辑器见 DIFF-254JsonWiringPresentation.runValidate/runQuickFormat/runCompress/runFormatAdvanced/runQueryPath/runTransform 格式化·压缩·转换·JSONPath 链 + mooJsonInspectorSectionResult/mooJsonInspectorPathActionsDIFF-571JsonWiringPresentation.runReadImportFile/runWriteExportFile 工具栏导入·导出接线见 DIFF-576。工具栏导入·导出失败 reformat.error.* + error toast + mooJsonToolbarIoCluster + Compose 帧 173DIFF-578。Compose 检查器 JSONPath「复制」焦点帧 166-compose-json-inspector-copy-path-tab-focus.png 见同 DIFF。系统 IME 预编辑仍未手工验收,不能标 F04 已验收。见 DIFF-025DIFF-061
F05 代码运行 待验收 历史无 options 时 Java/Python 摘要 Tab(见 DIFF-633)。历史恢复摘要前缀走 CodeRunWiringPresentation.displayName(见 DIFF-632)。SessionManager.cancelCodeRunCodeRunWiringPresentation.cancelAllRuns(见 DIFF-630)。CodeRunWiringPresentation.displayName/cancelRun 接线 UI 文案与停止(见 DIFF-629)。CodeRunWiringPresentation.formatSource 接线运行台格式化/Cmd/Ctrl+Shift+F(见 DIFF-627)。CodeRunEngine.formatSource(Node) 对齐 Electron formatRuntimeSource('node')CodeEditorSurfaceFormatEngine.formatJavascript)+ runtimeTools.test.ts fixture 见 DIFF-626fixtures/electron-next-runtimeTools-vitest.md。历史 CodeRunHistoryMetadata/CodeRunHistoryRestore(JSON runOption + runtime Tab)见 DIFF-537。三 Tab + Java/Groovy、独立草稿、检测/手动路径、真运行停止与流式输出、参数 argv、超时/取消/截断、历史与分离窗口。输出增长默认跟随尾部,用户上翻后暂停,新一次运行重新跟尾。源码/输出左右分栏可拖见 DIFF-172。运行时不可用横幅与直达运行环境设置见 DIFF-258。内容宽 < 1440 时检测/选项/格式化/清空/历史/分离收入「更多」,保留运行/停止。本机 Java/Python/Node 打印 42;Groovy 未安装标明不可用。Electron 跨产品导入合并 runtime.drafts/options 到会话见 DIFF-151;运行参数/工作目录长度规范化(2000/1000 字符、草稿 1 MiB)见 DIFF-506。运行选项工作目录 DesktopFileDialogs.chooseDirectory(初始为当前 runtime 工作目录,见 DIFF-661)。差异见 DIFF-020DIFF-040DIFF-048。Tab 行运行/停止/溢出 p5ToolbarDIFF-104;运行结束退出码/失败 toast 见 DIFF-128;主窗切页取消在途运行见 DIFF-242;源码编辑器 Cmd/Ctrl+Shift+F 格式化见 DIFF-273Cmd/Ctrl+Enter 运行见 DIFF-275。运行窗口见 docs/evidence/2026-09-15-inspector-screencapture/windows/41-code-run.png;安装镜像与关闭应用杀树手工未测
F06 配置转换 待验收 Properties ↔ YAML、点路径/[index]、标量列表逗号合并、YAML 校验/格式化、导入导出、历史与分离窗口。历史 ConfigHistoryRestoreDIFF-536ConfigWiringPresentation.runToYaml/runToProperties/runValidate/runFormat 转换/校验/格式化链 + mooConfigValidateLayout/mooConfigValidateActionsDIFF-570ConfigWiringPresentation.runReadImportFile/runWriteExportFile 导入·导出接线见 DIFF-575;转换/校验/导出 *ActionEnabled + 导入/导出 tools.exportDirectoryDIFF-650;导入失败 reformat.error.read 可见 + mooConfigConvertActions + Compose 转换 Tab 帧 171DIFF-576;导出失败 reformat.error.write + error toast 见 DIFF-578。转换/校验 Tab 三列分栏可拖并持久化见 DIFF-168。类型冲突显式报错。内容宽 < 1440 时历史/清空/分离收入「更多」。差异见 DIFF-006DIFF-048。导入导出与中栏转换/校验 p5ToolbarDIFF-103;导入/导出 toast 见 DIFF-119DIFF-121。Compose 校验 Tab 按钮焦点帧 165-compose-config-validate-tab-focus.png 见同 DIFF。运行窗口见 docs/evidence/2026-09-15-inspector-screencapture/windows/42-yml.png
F07 Protobuf 待验收 捆绑 protoc 4.29.3 + DynamicMessage;JSON↔Hex/Base64、Wire 无 schema、定义格式化、nested/map/oneof/int64 单测、历史与分离窗口。历史 ProtobufHistoryMetadata(JSON + 旧 |)/ProtobufHistoryRestoreDIFF-535ProtobufHistoryRestoreTestDIFF-543。三 Tab 分栏可拖并持久化见 DIFF-170。内容宽 < 1440 时历史/复制/分离收入「更多」。各 Tab/复制 *ActionEnabledDIFF-655。差异见 DIFF-007DIFF-048。Wire/转换中栏见 DIFF-085。定义区 0.34/0.66 与 11/600 头见 DIFF-086;各 Tab 操作钮 p5ToolbarDIFF-099。运行窗口见 docs/evidence/2026-09-15-inspector-screencapture/windows/43-protobuf.png;Electron protobufTools.test.ts fixture 见 DIFF-523fixtures/electron-next-protobuf-vitest.md;安装镜像内解出未测
F08 环境变量 待验收 用户/系统/进程作用域、JVM 运行时 Tab、搜索/刷新/复制/导出、改前 diff 与备份、无权限保持原文件、无通用历史、分离窗口。会话 EnvSessionMetadata/EnvSessionRestoreDIFF-535。导出四段标题/previewDiff 对齐 Electron formatEnvironmentDIFF-534fixtures/electron-next-envTools-vitest.mdEnvWiringPresentation.runWriteExport 导出接线 + mooEnvWorkspaceHeader/mooEnvScopeCluster + Compose 帧 170DIFF-575。导出菜单 exportActionEnabled + tools.exportDirectoryDIFF-653。用户路径为本产品 data/environment。内容宽 < 1440 时导出/分离收入「更多」,保留新增/刷新。差异见 DIFF-016DIFF-049。紧凑搜索与 34/36 环境表见 DIFF-083;Tab 进工具栏、搜索 140–260、脚 30/10sp 见 DIFF-088;编辑值 11 等宽见 DIFF-089;值编辑最小 120 见 DIFF-090;工作区 P5 壳见 DIFF-091;作用域下拉见 DIFF-092、26 dense 触发见 DIFF-093;标题栏新增/刷新 p5ToolbarDIFF-099。运行窗口见 docs/evidence/2026-09-15-inspector-screencapture/windows/44-env.png;系统提权对话框、Windows 注册表、新终端读取未测
F09 HTTP 待验收 URL 栏发送钮 HttpRequestPresentation.sendActionEnabled(空 URL/发送中禁用,见 DIFF-636);发送中停止 stopSendActionEnabled + 集合/cURL/保存对话框 HttpCollectionPresentation.*ActionEnabled(见 DIFF-643);响应区复制/另存 HttpResponsePresentation.copyResponseActionEnabled/saveResponseActionEnabled(见 DIFF-637);响应查找 responseFindOpenActionEnabled/findQueryActionEnabled/findStepActionEnabled(见 DIFF-640)。左集合/右 Method 下拉+URL+发送取消,Params/Headers/Cookies/Body(Body MIME 下拉),响应 Body/Headers/Cookies,冻结 GET/表单语义,cURL 只解析,4xx 真实正文,10 MiB 上限,超时/取消,集合 JSON,历史搜索删除与分离窗口,当前响应 Tab 可另存文件。HttpResponsePresentation.runWriteResponseText/runWriteResponseBytes + 另存失败 reformat.error.write toast 见 DIFF-579。响应另存 tools.exportDirectorychooseFileWithExportDirectory + persistToolsExportDirectory,见 DIFF-659)。历史 HttpHistoryMetadata/HttpHistoryRestore(方法 + 状态码 options、兼容旧 summary 解析)见 DIFF-536。二进制响应保留原始字节,Body 页另存写出这些字节(预览为十六进制摘要);multipart/* 响应按文本预览见 DIFF-523。NUL/octet-stream 正文 POST 与 cURL --data-binary 单测见同 DIFF;cURL --data-urlencode URL 解码与默认 form Content-Type 见 DIFF-524fixtures/electron-next-httpTools-vitest.md;本机 Cookie/Set-Cookie 往返见 DIFF-525;手工 multipart/form-data Body + 已有 Content-Type 时 prepare 原样发送见 DIFF-527HttpEngine.buildMultipartFormData 程序化 text/文件字段 + 可选 httpbin POST smoke 见 DIFF-528(Electron 亦无 multipart 文件 Tab)。发送中以及取消/超时/网络失败时保留上次可用响应并标明「上次响应」。请求区与响应区可拖动分隔条并写入分栏高度。请求 Body 与响应正文为 EditorHost 语法高亮(JSON/XML/HTML/JS,响应只读);Cmd/Ctrl+Enter 发送;Cmd/Ctrl+F 打开响应查找(只查找不替换,不搜占位文案,命中落到 RSTA 选区;打开时预填响应编辑器选区见 DIFF-269;请求 .http-request-pane 内(Tabs/键值表与 Body RSTA,URL 行除外)壳层不打开响应查找见 DIFF-270DIFF-271;超时 blur/Enter/发送写入 network.requestTimeoutMs、URL Enter 发送见 DIFF-272;超时 tooltip http.timeoutHintDIFF-274;响应查找条 ↑/↓/Enter/Esc 见 DIFF-280;响应查找高亮切页清除见 DIFF-286、查找按钮见 DIFF-289、无匹配 info toast 见 DIFF-308、按选区跳转见 DIFF-309、打开查找不自动选中首条见 DIFF-310、查找索引重置见 DIFF-292);Cmd/Ctrl+Shift+F 在 Body 页格式化正文;Escape 关闭查找。复制按钮 1400ms 反馈。内容宽 < 1440 时另存/历史/分离收入「更多」。历史只存 URL(basic-auth 密码遮蔽)与响应正文摘要,不存 Header。差异见 DIFF-018DIFF-050。集合默认 210、头 44/脚 40 与 URL dense 30/11 见 DIFF-087;Body 37 控制条见 DIFF-089;响应正文 11 等宽见 DIFF-090;请求区 P5 壳见 DIFF-091;请求/响应/集合操作钮 p5ToolbarDIFF-100;切页关闭模态遮罩见 DIFF-233;主窗切页取消在途发送见 DIFF-241;Compose「发送」Tab 焦点帧 129-compose-http-send-tab-focus.pngDIFF-107。cURL round-trip 单测登记 Electron httpTools.test.tsDIFF-520fixtures/electron-next-httpTools-vitest.md。运行窗口见 docs/evidence/2026-09-15-inspector-screencapture/windows/24-http.png;httpbin/localhost 公网 smoke 白名单与可选单测见 DIFF-526;本机 2026-09-17 MOOTOOL_HTTP_PUBLIC_SMOKE=1 跑通 optionalHttpBinPublicGetSmoke(见 DIFF-527);外网大走查、自签证书、代理对话框、multipart 文件上传、安装镜像未测
F10 Host 待验收 左方案列表/右编辑,方案 CRUD 与导入导出;方案列表搜索走 HostEngine.matchesProfileSearch(id ROOT + 名称/正文 locale,见 DIFF-516HostProfileStoreTestDIFF-517);Host 方案增删改/复制后托盘菜单刷新见 DIFF-524;查找替换(打开查找预填正文选区见 DIFF-276;查找条上/下条与选项见 DIFF-277;单次替换后选中下一处见 DIFF-278;正文查找命中高亮见 DIFF-279;查找条 ↑/↓/Enter/Esc 与打开聚焦见 DIFF-280、已替换计数与「共找到」见 DIFF-288、查找按钮见 DIFF-289、全部替换成功不写 matches notice 见 DIFF-301、正则捕获组/\\n 替换见 DIFF-477)、查看系统 hosts、应用前 diff/备份/指纹冲突、无权限保持原文件、备份恢复、历史与分离窗口。历史 HostHistoryMetadata/HostHistoryRestore(apply + 备份路径 options)见 DIFF-537HostWiringPresentation.runRestoreBackup 恢复备份接线见 DIFF-573HostWiringPresentation.runReadImportProfile/runWriteExportProfile 方案导入/导出接线见 DIFF-574。方案/查找/重命名/系统 hosts 复制 *ActionEnabledDIFF-644。方案列表右键可重命名/导出/删除(菜单会话态与首项焦点见 DIFF-256);底栏仍可复制。方案在本产品 data/hosts/profiles.json。内容宽 < 1440 时历史/分离/当前 hosts/查找收入「更多」,保留名称/保存/应用。差异见 DIFF-017DIFF-041DIFF-049。方案默认 220 与编辑条 46 见 DIFF-087;查找/替换 dense 见 DIFF-088;名称 130–300 与系统 hosts 11 等宽见 DIFF-089;方案正文 12/16–18 垫见 DIFF-090;编辑列 P5 壳见 DIFF-091;编辑条保存/应用/恢复 p5ToolbarDIFF-095。运行窗口见 docs/evidence/2026-09-15-inspector-screencapture/windows/45-host.png;真实 /etc/hosts、管理员对话框、Windows hosts、安装镜像未测
F11 网络/IP 待验收 左输出/右功能区,IPv4↔Long fixture、IPv4/Long 转换 ipv4ToLongActionEnabled/longToIpv4ActionEnabled(见 DIFF-662);flush DNS / 刷新本机地址 flushDnsActionEnabled/refreshLocalAddressesActionEnabledDIFF-668;ping/网段/端口扫描/DNS/WHOIS/本机地址、argv 进程、流式输出可停止并默认跟尾(上翻暂停),历史与分离窗口。通用历史 NetHistoryMetadata/NetHistoryRestore(wire operation + 端口 options、兼容旧枚举 options)见 DIFF-533fixtures/electron-next-netTools-vitest.md。输出/工具区 VerticalPaneHandle + layout.paneSizes[net](默认 1.15:0.85、最小 340/300)见 DIFF-164。失败显示真原因。内容宽 < 1440 时历史/分离/复制/清空收入「更多」,保留 ifconfig/netstat 与停止。差异见 DIFF-015DIFF-040DIFF-049。输出条与分区密度见 DIFF-084;命令/端口 dense 输入见 DIFF-088;本机地址 10sp 与 360/320 最小列见 DIFF-089;整页双栏 P5 壳见 DIFF-091;输出区 ifconfig/netstat/停止 p5ToolbarDIFF-094;右侧 PING/扫描/转换等 p5ToolbarDIFF-098;命令完成成功/失败 toast 见 DIFF-128。运行窗口见 docs/evidence/2026-09-15-inspector-screencapture/windows/46-net.png;WHOIS 在线、中文 Windows ping 编码、安装镜像未测
F12 UA 待验收 预设 Chrome/Safari/Firefox/iPhone/Android、Googlebot、空/未知;版本与设备字段有单测。历史 UaHistoryMetadata/UaHistoryRestoreUaParse marker + 结果 JSON)见 DIFF-537。内容宽 < 1440 时历史/分离收入「更多」。引擎推断见 DIFF-002DIFF-049。0.9 无边输入与 1dp 中缝见 DIFF-088;两列最小 360 与结果 22 垫见 DIFF-089;工作区 P5 壳与列最小 300 见 DIFF-093VerticalPaneHandle + layout.paneSizes[uaParse]DIFF-095;操作条 p5ToolbarDIFF-096;解析/复制 parseActionEnabled/copyResultActionEnabledDIFF-669;解析成功/失败 toast 见 DIFF-128。运行窗口见 docs/evidence/2026-09-15-inspector-screencapture/windows/47-ua.png
F13 编码解码 待验收 引擎覆盖 Unicode/emoji、URL UTF-8 与 GB2312 往返、Hex/ASCII、非法 Hex、截断字节、GB2312 不可映射拒绝问号。UI 含四分区、历史、分离窗口。历史 EncodeHistoryMetadata/EncodeHistoryRestoreDIFF-535。正/反向转换 forwardConvertActionEnabled/reverseConvertActionEnabledDIFF-652。左/中/右三列可拖并持久化见 DIFF-167。URL 字符集与 ASCII 进制为下拉(对照 Electron compact select);内容宽 < 1440 时历史/清空/分离收入「更多」。见 DIFF-047。三栏中栏与 11/600 标签见 DIFF-084;中栏正向/反向与字符集/ASCII 切换 p5ToolbarDIFF-101。运行窗口见 docs/evidence/2026-09-15-inspector-screencapture/windows/48-encode.png。安装镜像需 jdk.charsets(已加入 jlink modules)
F14 加解密/随机 待验收 AES/DES/SM4 ECB PKCS7 Hex、RSA/SM2 加解密签名、Electron 样本可消费、摘要/Base64/随机、历史与分离窗口。历史 CryptoHistoryMetadata/CryptoHistoryRestoreDIFF-535。对称/Base 三列与公私钥两列分栏可拖见 DIFF-170。对称/非对称/摘要/Base 算法为下拉。私钥操作输入与生成密码输出写入历史时遮蔽。非 ASCII 密钥拒绝;对称 Tab 实时 {current}/{required} UTF-8 字节提示见 DIFF-524DIFF-008;非对称 Tab 公钥还原/密钥状态行见 DIFF-525。内容宽 < 1440 时历史/分离收入「更多」。差异见 DIFF-033DIFF-047。IO 三栏与摘要复制见 DIFF-084;密钥两列与随机行见 DIFF-085。摘要 SelectedFileNameDIFF-086DIFF-096;文件 digest tools.exportDirectory(见 DIFF-660);随机 Tab 复制/生成 randomCopyActionEnabled/randomGenerateActionEnabled + MooGhostButton.enabledDIFF-665;对称/非对称/摘要/Base 密文复制 cipherCopyActionEnabledDIFF-666;非对称/Base 操作 *ActionEnabled(密钥就绪 + 验签输入)见 DIFF-667;各 Tab 操作钮与算法下拉 p5ToolbarDIFF-102;摘要工具栏文件拖放见 DIFF-105。运行窗口见 docs/evidence/2026-09-15-inspector-screencapture/windows/49-crypto.png;Electron cryptoTools.test.ts fixture 见 DIFF-523fixtures/electron-next-cryptoTools-vitest.md;超大文件与哈希中途取消未测
F15 正则 待验收 Java Pattern + 独立 worker(2s/10000 上限);子进程 RegexWorkerRegexWiringPresentation.runMatch 同源引擎路径(UI 仍 worker 隔离),见 DIFF-565;测试/取消 runTestActionEnabled/cancelTestActionEnabledDIFF-656;21 条常用模式、flags、捕获/命名组、零宽前进、非法模式保留原文、收藏 JSON 重启恢复(命名/分组/查询)、历史搜索删除与分离窗口。历史 options 恢复 pattern/source/flags 见 DIFF-532fixtures/electron-next-regexTools-vitest.md;测试 Tab 源码/结果分栏可拖并持久化见 DIFF-165。内容宽 < 1440 时收藏/历史/分离收入「更多」。引擎差异见 DIFF-003DIFF-048。测试区控件通栏 + 可拖结果列、flags 勾选 10sp 见 DIFF-086;测试/取消/复制 p5ToolbarDIFF-101;匹配成功/失败 toast 见 DIFF-128;主窗切页取消在途匹配见 DIFF-242。运行窗口见 docs/evidence/2026-09-15-inspector-screencapture/windows/50-regex.png
F16 Cron 待验收 Quartz 6/7 字段、预设、IANA 时区、未来 10 次、年过滤、闰日、收藏(命名/分组/查询)与历史搜索、分离窗口。历史恢复 CronHistoryRestoreDIFF-535CronWiringPresentation 时区菜单 dedupe 见 DIFF-551。构建器/表达式侧栏分栏可拖并持久化见 DIFF-166。内容宽 < 1440 时收藏/历史/分离收入「更多」。与 Electron cron-parser 差异见 DIFF-004DIFF-048WED#2/美东 DST 春令时单测、历史 options JSON 时区与 Electron extraData 互认、运行行 xxx 偏移见 DIFF-519fixtures/electron-next-cronTools-vitest.md。七字段横排、340 表达式栏与通栏运行格见 DIFF-086;下次运行复制 copyRunsActionEnabledDIFF-664;表达式解析 parseActionEnabledDIFF-668;解析/复制/预设/时区 p5ToolbarDIFF-101;解析成功/失败 toast 见 DIFF-128。运行窗口见 docs/evidence/2026-09-15-inspector-screencapture/windows/51-cron.png
F17 二维码 待验收 ZXing 生成/识别 PNG,纠错 L/M/Q/H 为下拉、尺寸 120–2000、Logo、文件与剪贴板、中文往返、History Tab 搜索/删除/清空与分离窗口。历史 QrHistoryMetadata/QrHistoryRestoreextraData JSON + output PNG data URL,恢复生成预览;见 DIFF-538fixtures/electron-next-jsonQuickNoteQr-history-vitest.md)。内容宽 < 1440 时分离收入「更多」。差异见 DIFF-009DIFF-032DIFF-051。字段标签密度见 DIFF-084。Logo/识别选图 FileDropRowDIFF-086DIFF-095DIFF-097;生成/识别区操作钮 p5ToolbarDIFF-103;Logo/识别 FileDropRow 系统拖放见 DIFF-105。Logo/识图/保存 PNG tools.exportDirectoryDIFF-657。生成/识别双列分栏可拖见 DIFF-171。运行窗口见 docs/evidence/2026-09-15-inspector-screencapture/windows/52-qr.png;Electron qrTools.test.ts 尺寸边界 fixture 见 DIFF-526fixtures/electron-next-qrTools-vitest.md;剪贴板与拖放手势手工未测
F18 时间 待验收 引擎单测覆盖 epoch/负值/毫秒/DST/闰年/显式单位;UI 含双向转换、时区、秒/毫秒下拉、历史、大屏时钟、分离窗口。TimeHistoryMetadata/TimeHistoryRestore 与 Luxon 式本地时间 round-trip 拒绝见 DIFF-532fixtures/electron-next-timeTools-vitest.mdTimeWiringPresentation.runTimestampToLocal/runLocalToTimestamp 转换链 + mooTimeQuickZonesDIFF-569。转换/复制 timestampToLocalActionEnabled/localToTimestampActionEnabled/copyFieldActionEnabledDIFF-654。内容宽 < 1440 时历史/分离收入「更多」,保留时钟。运行窗口见 docs/evidence/2026-09-15-inspector-screencapture/windows/53-time.png。单位语义见 DIFF-001DIFF-051。当前带 104 高/18 等宽与时区分段底见 DIFF-086;操作钮 p5ToolbarDIFF-100
F19 留言板 待验收 80 字 UTF-16、8 预设、6 主题、左/居中对齐下拉、字号 70–130 自动适配、会话恢复、沉浸展示 Esc 退出、唤醒 token。无通用历史。内容宽 < 1440 时分离收入「更多」。差异见 DIFF-011DIFF-049。两列 34 高预设芯片与 7dp 主题点见 DIFF-083;对齐/展示 p5ToolbarDIFF-104。运行窗口见 docs/evidence/2026-09-15-inspector-screencapture/windows/54-message.png;显示器熄屏未测
F20 翻译 待验收 翻译/单词本/历史 Tab,源/目标语言、Google/Bing 下拉、交换、自动 500ms debounce 与手动立即发,过期响应丢弃,回填不重复请求,分段/并发保序、fallback 与 10 分钟冷却、取消/超时,单词本 CRUD/搜索/重译,历史最多 500 条 JSON,无通用历史、分离窗口。历史 Tab TranslationHistoryRestorerestoredSource 抑制自动重译、同步 translatorType)见 DIFF-533。工具栏/单词本/历史 TranslationWiringPresentation.*ActionEnabledDIFF-646(清空历史确认见 DIFF-647)。翻译 Tab 源/目标分栏可拖(translation-editor)见 DIFF-169。设置/Electron 迁入 translationSourceLang/translationTargetLang 加载规范化(本地化旧名→代码、源目标相同→auto)见 DIFF-481。内容宽 < 1440 时复制/存单词/清空/分离收入「更多」,保留语言/交换/自动/立即。差异见 DIFF-019DIFF-049。语言条 46/10sp、两列无边编辑与单词本 220 见 DIFF-087;P5 工作区壳与列最小 280 见 DIFF-092;工具栏 30dp p5ToolbarDIFF-094;Compose「翻译」Tab 焦点帧 130-compose-translation-now-tab-focus.pngDIFF-107;主窗切页取消在途翻译见 DIFF-241。运行窗口见 docs/evidence/2026-09-15-inspector-screencapture/windows/55-translation.png;真实 Google/Bing 联网、代理对话框、安装镜像未测
F21 计算器 待验收 引擎单测覆盖 2*(3+4)=14、负数、进制、GCD/LCM、排列组合与非法输入;UI 含等号计算、结果复制、会话与历史。进制四向 convertBaseActionEnabled、溢出复制 canCopyResultDIFF-663;等号/结果复制 evaluateActionEnabled/copyResultActionEnabledDIFF-669。历史 CalculatorHistoryRestoreDIFF-536CalculatorHistoryRestoreTestDIFF-543。输入/结果分栏可拖并持久化见 DIFF-166。内容宽 < 1440 时历史/复制/分离收入「更多」。运行窗口见 docs/evidence/2026-09-15-inspector-screencapture/windows/56-calculator.png。表达式按 IEEE Double 再按 14 位有效数字展示,与 Electron 一致,未改用任意精度小数。见 DIFF-048。结果 56 高 26 等宽 accent 见 DIFF-086;等号/进制/排列组合操作 p5ToolbarDIFF-103
F22 调色板 待验收 HEX/RGB 往返、7 主题 + 10 标准色 SHA-256、五运算、主色/对比色、Shift 选对比色、Robot 冻结截图取色、JColorChooser、文件夹收藏、历史与分离窗口。历史 ColorHistoryMetadata/ColorHistoryRestore(格式 JSON + 旧 plain options、swap 主辅色对)见 DIFF-536fixtures/electron-next-colorPdfImage-history-vitest.md。当前色/色板分栏可拖并持久化见 DIFF-169。内容宽 < 1440 时复制/收藏/收藏夹/历史/分离收入「更多」;复制按钮短暂反馈。macOS plist 已声明录屏用途,权限失败触发 TCC/screencapture 与系统设置,见 DIFF-010DIFF-045DIFF-051DIFF-052。切页取消屏幕取色 overlay 与 pickingDIFF-235;分离窗不误杀取色/协程见 DIFF-243。色片悬停 accent 外描边见 DIFF-083;0.34/0.66 分栏与 136 色码见 DIFF-085;工具条/运算/主题 p5ToolbarDIFF-104。运行窗口见 docs/evidence/2026-09-15-inspector-screencapture/windows/57-color.png;多屏/录屏权限对话框手工未测
F23 图片 待验收 图片库文件持久化、导入/剪贴板/Base64、压缩与水印、ImageTracer SVG path、区域截图拒绝全黑、缩放/适应、历史搜索删除与分离窗口。历史 ImageHistoryMetadata/ImageHistoryRestoreDIFF-536。库/溢出菜单/对话框 ImageWiringPresentation.*ActionEnabledDIFF-647。导入/批量导出/SVG 另存 tools.exportDirectory(见 DIFF-659)。内容宽 < 1440 时剪贴板/Base64/SVG/压缩/水印/历史/分离收入「更多」,保留列表开关/截图/导入/保存/复制。macOS 录屏用途声明与权限失败路径见 DIFF-013DIFF-032DIFF-044DIFF-052。区域截图选区 move/resize 几何对齐 Electron captureSelectionDIFF-511;overlay 二次调整(move/resize、Enter/确认钮)见 DIFF-512;切页取消区域截图 overlay 与 busyDIFF-236;切页取消压缩/水印/SVG 后台任务见 DIFF-237;分离窗不误杀批处理见 DIFF-243。水印对角线勾选 10sp 见 DIFF-084;压缩/水印 11 字号选项见 DIFF-085;主工具栏/列表/缩放 p5ToolbarDIFF-104;工作区多图拖放见 DIFF-106。运行窗口见 docs/evidence/2026-09-15-inspector-screencapture/windows/58-image.png;多屏权限对话框手工、WebP、超 16MP、安装镜像未测
F24 PDF 待验收 拆分/合并 Tab、最多 20 项、奇偶/自定义页码、token 顺序去重、_split.pdf 覆盖写出、合并保存对话框、历史搜索删除与分离窗口、取消删除半成品;历史 PdfHistoryMetadata/PdfHistoryRestoreDIFF-536。主窗切页协作 cancelledDIFF-243。内容宽 < 1440 时历史/帮助/分离收入「更多」。差异见 DIFF-012DIFF-032DIFF-048。36 高表头、紧凑字段与 28dp 删除见 DIFF-083;Tab 行添加/开始/规则 p5ToolbarDIFF-104;表区 PDF 多文件拖放见 DIFF-106。添加 PDF/合并另存 tools.exportDirectorychooseFilesWithExportDirectory/chooseFileWithExportDirectory + persistToolsExportDirectory,见 DIFF-658)。运行窗口见 docs/evidence/2026-09-15-inspector-screencapture/windows/59-pdf.pngPdfEngine.MAX_TASKS 引擎 too-many 单测见 DIFF-523;Tab 限制文案、加密 PDF inspect/toastError 与 PDFBox 加密样本单测见 DIFF-524;表单/书签/签名字段计数与导入提示见 DIFF-525;合并/拆分后页级表单/签名字段保留单测见 DIFF-526(文档书签仍不复制,安装镜像大走查未测)
F25 系统信息 待验收 系统/CPU/内存/存储/网络 Tab、OSHI 真机采集、序列号默认遮蔽、JVM 与 OS 分区、复制当前 Tab、切走取消采集(主窗/分离守卫见 DIFF-242)、无通用历史、分离窗口。Tab/序列号显示 HardwareSessionMetadata/HardwareSessionRestoreDIFF-535HardwareSessionRestoreTest)。内容宽 < 1440 时复制/分离收入「更多」,保留刷新。差异见 DIFF-014DIFF-049。硬件组两列 dt/dd 见 DIFF-083;序列号勾选 10sp 见 DIFF-084;Tab 并入标题栏见 DIFF-088;结果区 P5 壳见 DIFF-091;刷新 p5ToolbarDIFF-099;刷新/复制报告 refreshActionEnabled/copyReportActionEnabledDIFF-669;刷新/复制 toast 见 DIFF-130。运行窗口见 docs/evidence/2026-09-15-inspector-screencapture/windows/60-hardware.png;安装镜像 JNA 未测
A01 12 类设置(含 AI 接入) 开发中 设置加载/Electron 迁入规范化未知 interfaceStyle、非法 accentColor(六色预设 + orange/teal 别名,见 DIFF-490)、appearance.fontFamily 修剪与 system-uisystem(见 DIFF-495)、非法 general.language/closeBehavior(见 DIFF-500)、非法 navigationStyle、自定义侧栏分组与 paneSizes 键名(对齐 Electron settings.test.ts,见 DIFF-486);网络代理字段 trim/非法端口清空、代理与 HTTP/翻译超时失焦提交(SettingsNetworkNormalize,见 DIFF-514);工具默认值翻译源/目标语言失焦提交与语言对规范化(SettingsToolsTranslationNormalize,见 DIFF-518);Vault 自动提交空闲/失焦与自动 pull 间隔失焦提交(SettingsVaultNumericNormalize,见 DIFF-520);工具默认值 QR 尺寸/随机串长度与编辑器 JSON/随手记字号失焦提交(SettingsToolsNumericNormalize / SettingsEditorNumericNormalize,见 DIFF-521);F17/F14 工具默认值变更后 QR/加解密随机长度会话即时同步(ToolsSettingsLiveApply,见 DIFF-531);界面字号 appearance.fontSize 12–18 range 拖动即时提交(见 DIFF-522);F04 JSON 全局 editor.softWrap 切换即时同步主编辑器 wrap(见 DIFF-528);editor.sqlDialect 非法/legacy 加载与 Electron 迁入规范化(EditorFontSettings.normalizeSqlDialect,见 DIFF-530);F04/F05/F09 JSON 系 EditorHost 字号随 jsonFontSize 即时生效(含 HTTP 响应区,见 DIFF-530);命令盘 sql→编辑器(见 DIFF-530);命令盘 Vault Git 增 merge/rebase/push/pull、tools 增 qr/random(见 DIFF-531);布局「紧凑导航/分组分隔线」运行时见 DIFF-496;设置页左侧导航分栏可拖并持久化(settings-page)见 DIFF-168;切工具再回设置保持当前分类见 DIFF-257openSettings(categoryId) 深链分类见 DIFF-258;命令盘 CommandSearchCatalog 覆盖 12 类设置导航见 DIFF-516DIFF-517DIFF-518tools 增翻译/Google/Bing 关键词);布局 hidden/分组、关于 upgrade/版本关键词见 DIFF-540;Java 版迁移提示对话框见 DIFF-259;提示叠层守卫与导入后自动关闭见 DIFF-260。导航工具 全部显示/全部隐藏DIFF-174;按分组+图标显隐见 DIFF-175;显隐 ID 单测见 DIFF-176;隐藏列表规范化见 DIFF-177、保存时写回见 DIFF-178。文档库自定义路径须绝对路径见 DIFF-139;加载时清除相对路径并运行期回退默认见 DIFF-141;自定义 Vault 根变更撤销 MCP 数据授权见 DIFF-391;设置 data.directory 运行时有效 dataRootDIFF-393、有效路径展示见 DIFF-402、配置根见 DIFF-403data.directory 变更后 Host/HTTP/图片/环境变量重载见 DIFF-394;设置备份路径预览见 DIFF-395、打开目录见 DIFF-396、备份 ZIP 导出/预览·恢复选文件 tools.exportDirectory(见 DIFF-661)、config/data 区分见 DIFF-398;恢复备份后重绑 dataRootDIFF-397、重载工具会话见 DIFF-399、分离窗原地重载见 DIFF-400;磁盘列表/Vault 快照随 sessionGeneration 刷新见 DIFF-401;跨产品导入后重载工具会话见 DIFF-404;默认导出目录绝对路径见 DIFF-142;Vault/导出目录「选择目录」见 DIFF-143;运行环境检测与可执行文件选择见 DIFF-145; general/appearance/layout/editor/data/about/runtime/ai/network/tools/shortcuts 均有真实字段;AI 接入(MCP 安装/测试/只读授权)见 DIFF-131;Vault MCP 搜索/读取见 DIFF-132;安装 receipt + manageServerDIFF-133;JSON 重复键与 MCP 工具清单校验见 DIFF-134;receipt .json 后缀、getStatus 幂等与安装闭环单测见 DIFF-140、用户改 MCP 配置冲突见 DIFF-435;预览不写盘/安装 stale/连接失败/符号链接/Cursor 仅 MCP/Claude 独立 Skill 单测见 DIFF-449;安装写盘失败回滚见 DIFF-450;Codex TOML MCP/Skill 安装闭环见 DIFF-451NeedsRepair/卸载保留用户 Skill 见 DIFF-452;预览隐私与安装备份见 DIFF-453;并发安装守卫见 DIFF-454testConnection 真 MCP stdio 子进程见 DIFF-459;MCP 工具边界对齐 server.test.tsDIFF-460;Vault 只读 MCP 对齐 vaultAccess.test.tsDIFF-461access.json 大小/符号链接校验、冲突产品窗准备脚本见 DIFF-462;Vault MCP stdio 子进程端到端见 DIFF-463access.json version:1 与 JSON Vault MCP stdio、IME 产品窗准备脚本见 DIFF-464access.json strictObject(拒绝未知字段)与产品窗脚本 README 见 DIFF-466;Vault MCP 授权 realpath 与拒绝符号链接根见 DIFF-467;拒绝相对路径授权见 DIFF-468;Vault MCP 工具参数 Zod 边界见 DIFF-469;MooTool MCP strictObject 入参见 DIFF-470;MCP listTools 描述/schema/readOnlyHintDIFF-471;设置页按 Electron 分组/分段/下拉/开关/色板布局,见 DIFF-051;设置分组行块背景对齐 Electron --surfacesettingsGroupRowsFill)见 DIFF-510;统一背景、界面字体、SQL 方言、JSON/随手记字体字号(设置页与 JSON 工具栏同一系统字体列表)、JSON 与随手记 Vault 树展开各自独立、托盘开关、软换行默认会改变运行结果;自定义分组 CRUD 与侧栏拖宽已落地;管理器为独立弹层(草稿/保存/取消、开关勾选、空名/空组校验、删除确认),见 DIFF-053DIFF-055;六风格含渐变/inset/选中条、工作区径向高光与侧栏过渡与对比度单测,hero/miui/claude/smartisan 的 borderSoft/borderControl/surfaceCard 对齐 Electron 各风格 CSS 变量,modern 改走风格块并补 hover/shadow,见 DIFF-062DIFF-063;强调色对齐 yellow/coral/blue/green/red/purple;桌面控件高/圆角/主按钮 prominent/禁用 0.42/工具标题 SemiBold 见 DIFF-069;侧栏/命令盘/弹层/分段按风格选择器见 DIFF-070;开关/tooltip/状态栏/遮罩见 DIFF-071;输入框表面/悬停边见 DIFF-072;菜单 Material 色、smartisan/miui 触觉按钮与命令盘搜索条见 DIFF-073;导航选中边/图标色与查找条见 DIFF-074;工具壳圆角/Tab 下划线与设置标题见 DIFF-075;复制/保存 toast、HTTP 请求响应 Tab 与侧栏 icon-ghost 见 DIFF-076;文本复制统一 copyTextDIFF-077;Vault 树行/分栏手柄/检查器卡片表面见 DIFF-078;首页分区/常用正则/状态胶囊见 DIFF-079;历史行/色板/集合/快速替换/kbd/YAML 校验见 DIFF-080;上下文菜单/收藏行/Cron 运行格/正则命中卡见 DIFF-081;紧凑搜索/HTTP 表/剩余下拉/翻译·图片·UA 列表见 DIFF-082、硬件组/环境表/PDF 表/留言板预设/色片悬停见 DIFF-083、加密/编码/网络/二维码/勾选密度见 DIFF-084、加密密钥网/随机行/Protobuf Wire/色板分栏/对比中缝见 DIFF-085、时间当前带/正则分栏/Cron 七字段/file-drop/计算器结果见 DIFF-086、翻译工具栏/单词本/P5 输入密度见 DIFF-087、Net/环境/硬件 P5 密度见 DIFF-088、本机地址/HTTP Body 控制条见 DIFF-089、P5 壳/Host 正文/响应 11sp 见 DIFF-090、P5 工作区壳见 DIFF-091、翻译壳/环境作用域见 DIFF-092、UA 壳/MooButton.denseDIFF-093FileDropRow/MooButton.p5ToolbarDIFF-094、Host/UA 分栏与二维码 Logo 见 DIFF-095、UA 操作条/SelectedFileNameDIFF-096、Compose Tab 焦点回归帧见 DIFF-097,仍非逐选择器 CSS 皮肤;chrome 增加 borderSoft/borderControl/surfaceCard 并用于侧栏右边线、按钮输入与卡片,见 DIFF-060;线性图标已替换字形;折叠导航有完整名称 tooltip;About 展示安装身份与卸载隔离路径;Shortcuts 冲突时字段旁显示原因且不写入;帮助列出 JSON/随手记查找格式化保存、HTTP 发送/查找与 Body 格式化;主窗口与拆出窗口最小 960×640,窗口管理器强制更小时显示提示且不截掉保存/退出;启动时夹紧已保存窗口坐标;内容宽 < 1440 时 JSON/随手记/文本对比/图片/格式化/调色板/HTTP 另存/编码/加解密/正则/Cron/PDF/运行台/计算器/配置/Protobuf/Host/网络/UA/翻译/环境/系统/留言板/二维码/时间低频工具栏收入「更多」;拆出窗口跟随当前风格;编辑器使用主题 workspace 与语法色;工具栏使用 dimens.toolbar。见 DIFF-032DIFF-060。运行窗口见 docs/evidence/2026-09-15-inspector-screencapture/windows/25-settings.png,布局/自定义分组见 62-settings-layout.png66-settings-custom-groups.png,浅色外观见 63-settings-light.png / 87-settings-light.png;焦点环产品主窗见 75-settings-tab-focus.png(语言下拉)与 85-settings-appearance.png(外观导航),compact-960-focus-ring.png 是 Compose 测试场景图不能代替其余页面 Tab;六套 CSS 皮肤未验收
A02 历史/收藏/搜索 开发中 命令盘 history/favorite/收藏→布局设置见 DIFF-535。多工具主输入编辑清空状态栏 notice 见 DIFF-238DIFF-239(JSON/随手记见 DIFF-227/230)。声明通用历史的工具均接到 HistoryBrowser(搜索/恢复/删除/清空;恢复不写 json.notice.restoredDIFF-303、JSON/随手记恢复前 flush/save 见 DIFF-357、F01/F04/F19 历史 metadata/restore 域模块见 DIFF-538、图片/PDF 不写 summary notice 见 DIFF-305);历史行 13/10/11 字号、28dp 删除与底部分隔见 DIFF-080;二维码 History Tab 可搜可删;图片/PDF 有历史入口。环境变量/系统信息/留言板/翻译无通用历史(翻译用自有单词本与历史);正则/Cron 收藏含分组查询,调色板收藏可搜索;命令搜索可从侧栏 或 Cmd/Ctrl+K 打开,结果显示分组名,输入框内方向键有效,Tab 序为搜索→关闭→选中结果见 DIFF-492DIFF-491);Tab 走查链单测见 DIFF-512;遮罩点空白关闭(应用内 overlay,非系统半透明 Dialog),已分离工具走占位并聚焦既有窗口,首页不进入最近使用;切离工具页关闭历史/收藏/确认等模态遮罩(JSON/随手记模态会话保留见 DIFF-261;HTTP 见 DIFF-233,其余 F02–F25 见 DIFF-234;分离占位不误关模态见 DIFF-244;切页取消在途任务统一 OnToolLeaveUnlessDetachedDIFF-245)。加解密私钥操作与生成密码、HTTP basic-auth 密码默认遮蔽。见 DIFF-031DIFF-032DIFF-033DIFF-042DIFF-056DIFF-057DIFF-058DIFF-059
A03 桌面/存储/备份/Git/更新 开发中 Vault Git refresh/discard/abort/resolve *ActionEnabled 顶栏与变更区接线(见 DIFF-635)。Vault Git fetch/init 顶栏 GitVaultRemotePresentation.fetchActionEnabled / GitOperationPresentation.initActionEnabled(冲突期 fetch 仍可用,帧 214;见 DIFF-634)。Vault Git continue 钮 GitOperationPresentation.continueActionEnabled(busy, …)GitMergeProductFlowPresentation.mergeContinueActionEnabled 委托;产品证据流 commit 断言同 commitActionEnabled,见 DIFF-633)。Vault Git 提交钮 GitOperationPresentation.commitActionEnabled(busy, …)VaultGitDialog/帧 212/213 一致(见 DIFF-632)。Vault Git automaticCheckpoint 在 merge/冲突期跳过且不写提交(GitAutomaticCheckpointGuardTestDIFF-631)。Vault Git commitmerging || conflicts > 0 时 UI/引擎拒绝(GitOperationPresentation.commitEnabled + GitEngine.commit;独立单测 GitCommitGuardTestDIFF-628;冲突期 commit 禁用帧 212/213DIFF-618)。Vault Git 顶栏 push/pullconflicts > 0 时禁用(GitVaultRemotePresentation.pushActionEnabled/pullActionEnabled(..., conflicts),帧 216/217,见 DIFF-623DIFF-624);GitEngine.push/pull 未解决冲突同样拒绝(push 见 DIFF-516;pull 见 DIFF-625);冲突期 fetch 仍可用(见 DIFF-619);merge/rebase 引擎守卫见 DIFF-515;Vault Git 面板 merge/rebase 中止/确认文案见 DIFF-520;continue/counts/resolve/pull 显隐与 busy 集中到 GitOperationPresentation(merge/rebase 进行中 pull 仍按 !merging 禁用,见 DIFF-539);顶栏布局/线性图标对齐 Electron VaultGitDialogDIFF-540)。JSON/随手记 Vault 外部冲突 VaultConflictPresentation + JsonVaultConflictOverlay/QuickNoteVaultConflictOverlayDIFF-540)。设置 Vault Git 字段失焦提交、非法 remote toast(见 DIFF-509);JSON/随手记 Vault Git 面板保存 remote 同样走 commitGitRemote 前置校验(见 DIFF-514);走查说明 docs/evidence/2026-09-17-vault-git-settings/results.md;备份 zip 见 DIFF-022;Git CLI 含远程与自动检查点见 DIFF-025DIFF-028DIFF-029;Git 差异为变更前/后分栏预览,提交记录可切换该提交全部文件见 DIFF-043DIFF-044;Vault Git 面板 remote 删除与 ahead/behind 见 DIFF-107DIFF-325DIFF-326DIFF-327DIFF-328、中止合并确认见 DIFF-108、丢弃确认与 Git 后工作区刷新见 DIFF-109、手动 Git/刷新 Vault 重载 snapshot 见 DIFF-415、磁盘监视见 DIFF-416、导入/备份 reloadToolSessionsFromStore 刷新 Vault 树见 DIFF-418、监视器 rebaseline 见 DIFF-419DIFF-420、Git 面板 P5/flush 语义见 DIFF-110、变更数角标见 DIFF-111、Git 面板打开状态会话级见 DIFF-246、操作 toast 见 DIFF-120;跨产品导入见 DIFF-029;扫描/预览/确认流程见 DIFF-144;导入成功后 reloadToolSessionsFromStoreDIFF-404;Host/文本对比 TextFieldValuesessionGeneration 同步见 DIFF-405sessionGeneration/Vault overlay 重载单测见 DIFF-406;Vault 自动 pull 须工作区干净见 DIFF-407;自动 pull 后 JSON/随手记 Vault UI 刷新 tick 见 DIFF-408autoCheckUpdates 2.5s/每小时调度见 DIFF-409;后台检查仅 Available 刷新关于页见 DIFF-410;打开自动下载时续传可用更新见 DIFF-411;定时检查每次 tick 读取最新 autoDownloadUpdatesDIFF-523;托盘 Host 方案列表变更刷新菜单见 DIFF-524;Vault CRUD/附件/导入 recordVaultActivityDIFF-412DIFF-414autoPullMinutes/Vault 根变更重置 pull 计时见 DIFF-413;Java SQLite 迁入见 DIFF-146DIFF-148;Java config.setting 设置补丁见 DIFF-149;Electron mootool-next.json 设置合并见 DIFF-150;迁入 schemaVersion < 11 自动关闭 Java 迁移首启提示见 DIFF-262;Electron 运行台草稿/参数见 DIFF-151;SQLite t_func_content 草稿写入工具会话见 DIFF-152DIFF-153;Java 时间转换日志草稿迁入历史见 DIFF-179;计算器/二维码 ConsoleUtil 草稿见 DIFF-180;Java regexText/计算器表达式会话补丁见 DIFF-181;Host currentHostName 方案选中见 DIFF-182;二维码 Logo/识别图路径见 DIFF-183;加解密 digestFilePath 与随机长度见 DIFF-185;Vault 列表排序/树展开见 DIFF-186;非法 jsonTreeExpandMode/quickNoteTreeExpandMode 加载规范化见 DIFF-480editor.jsonFontName/quickNoteFontName trim 与空值回退见 DIFF-482;数值字段边界加载规范化见 DIFF-485;调色板 func.colorBoardDIFF-187;HTTP 超时与 Host 导出目录见 DIFF-188;二维码 qrCodeSaveAsPath 与保存对话框见 DIFF-189;侧栏样式/强调色见 DIFF-190;绝对 Vault 根见 DIFF-191;自动下载更新见 DIFF-192;相对 Vault 迁后根目录见 DIFF-193;Vault Git 提交/推送前 flush 见 DIFF-184;历史/草稿 importDedupeKey 幂等见 DIFF-154import_migration_row 逐行登记见 DIFF-155;源库 t_next_migration_row 过滤见 DIFF-156t_next_migration_runsource_path / fingerprint 整包跳过见 DIFF-157DIFF-158DIFF-160DIFF-161DIFF-162DIFF-163DIFF-164DIFF-165DIFF-166DIFF-167DIFF-168DIFF-169DIFF-170DIFF-171DIFF-172DIFF-174;compose 内容 fingerprint 仍独立用于导入幂等;Electron safeStorage 密文仍不可解密更新通道见 DIFF-027;安装身份、RPM、macOS 类别与产物命名见 DIFF-030DIFF-033;AWT 托盘见 DIFF-034;窗口恢复夹紧见 DIFF-044;自动安装与三平台发行未做

3. 工程检查入口

P0 已核实下列任务存在,并在本机执行部分命令。Windows 使用 gradlew.bat。各 OS 打包任务在该 OS 执行。

cd /path/to/next-compose
export JAVA_HOME="$(/usr/libexec/java_home -v 21)"   # macOS 示例
./gradlew --version
./gradlew :composeApp:printTooling
./gradlew :composeApp:desktopTest --offline --no-daemon   # macOS 若 daemon 下 exit 134,保留 --no-daemon
./gradlew :composeApp:run
./gradlew :composeApp:createDistributable
./gradlew :composeApp:runDistributable
./gradlew :composeApp:packageDistributionForCurrentOS

本机 2026-09-18 结果:DIFF-669(F12/F21/F25 *ActionEnabled 命名与 UI 接线;见 DIFF-669:composeApp:desktopTest 1342/1344(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1344 tests);verify-product-evidence-prep.sh 通过;DIFF-668(F11 flush DNS/本机地址刷新 + F16 parseActionEnabled;见 DIFF-668:composeApp:desktopTest 1342/1344(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1344 tests);verify-product-evidence-prep.sh 通过;DIFF-667(F14 非对称/Base 操作 *ActionEnabled;见 DIFF-667:composeApp:desktopTest 1341/1343(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1343 tests);verify-product-evidence-prep.sh 通过;DIFF-666(F14 对称/非对称/摘要/Base 密文复制 cipherCopyActionEnabled;见 DIFF-666:composeApp:desktopTest 1340/1342(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1342 tests);verify-product-evidence-prep.sh 通过;DIFF-665(F14 随机 Tab 复制/生成 randomCopyActionEnabled/randomGenerateActionEnabled + MooGhostButton.enabled;见 DIFF-665:composeApp:desktopTest 1339/1341(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1341 tests);verify-product-evidence-prep.sh 通过;DIFF-664(F16 Cron 复制下次运行 copyRunsActionEnabled;见 DIFF-664:composeApp:desktopTest 1338/1340(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1340 tests);verify-product-evidence-prep.sh 通过;DIFF-663(F21 计算器进制/复制 *ActionEnabled;见 DIFF-663:composeApp:desktopTest 1338/1340(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1340 tests);verify-product-evidence-prep.sh 通过;DIFF-662(F11 IPv4/Long 转换 *ActionEnabled;见 DIFF-662:composeApp:desktopTest 1337/1339(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1339 tests);verify-product-evidence-prep.sh 通过;DIFF-661(F05 运行工作目录 / A01 备份 IO;见 DIFF-661:composeApp:desktopTest 1336/1338(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1338 tests;全量曾 1 次 JsonVaultMonitorConflictTest 失败,隔离重跑通过后再跑全量通过);verify-product-evidence-prep.sh 通过;DIFF-660(F14 摘要文件 digest tools.exportDirectory;见 DIFF-660:composeApp:desktopTest 1336/1338(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1338 tests);verify-product-evidence-prep.sh 通过;DIFF-659(F23 图片 / F09 响应另存 tools.exportDirectory;见 DIFF-659:composeApp:desktopTest 1336/1338(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1338 tests);verify-product-evidence-prep.sh 通过;DIFF-658(F24 PDF 添加/合并另存 tools.exportDirectory;见 DIFF-658:composeApp:desktopTest 1336/1338(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1338 tests);verify-product-evidence-prep.sh 通过;DIFF-657(F17 二维码 Logo/识图/保存 tools.exportDirectory;见 DIFF-657:composeApp:desktopTest 1335/1338(JDK 21,--offline--no-daemon,3 skipped,合计 1338 tests);verify-product-evidence-prep.sh 通过;DIFF-656(F15 正则 runTestActionEnabled/cancelTestActionEnabled;见 DIFF-656)+ DIFF-655(F07 Protobuf 各 Tab/复制 *ActionEnabled;见 DIFF-655:composeApp:desktopTest 1336/1338(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1338 tests);verify-product-evidence-prep.sh 通过;DIFF-654 补记(F18 TimeValue 当前时间带复制 copyFieldActionEnabled + F08/F18 acceptance 登记;见 DIFF-654:composeApp:desktopTest 1334/1336(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1336 tests);verify-product-evidence-prep.sh 通过;DIFF-652(F13 编码 forwardConvertActionEnabled/reverseConvertActionEnabled;见 DIFF-652)+ DIFF-651(F02 导入 tools.exportDirectory;见 DIFF-651:composeApp:desktopTest 1333/1335(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1335 tests);verify-product-evidence-prep.sh 通过;DIFF-650(F06 配置 ConfigWiringPresentation.*ActionEnabled + 导入/导出 tools.exportDirectory;见 DIFF-650:composeApp:desktopTest 1332/1334(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1334 tests);verify-product-evidence-prep.sh 通过;DIFF-649(F03 格式化 ReformatWiringPresentation.*ActionEnabled;见 DIFF-649:composeApp:desktopTest 1330/1333(JDK 21,--offline--no-daemon,3 skipped,合计 1333 tests);verify-product-evidence-prep.sh 通过;DIFF-648(F02 文本对比 TextDiffPresentation.*ActionEnabled;见 DIFF-648:composeApp:desktopTest 1330/1332(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1332 tests);verify-product-evidence-prep.sh 通过;DIFF-647(F20 清空历史确认 + F23 图片 ImageWiringPresentation.*ActionEnabled;见 DIFF-647:composeApp:desktopTest 1329/1331(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1331 tests);verify-product-evidence-prep.sh 通过;DIFF-646(F20 翻译 TranslationWiringPresentation.*ActionEnabled;见 DIFF-646:composeApp:desktopTest 1329/1331(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1331 tests);verify-product-evidence-prep.sh 通过;DIFF-645(F01/F04/F10/F09 查找条 EditorFindBarPresentation + JSON/随手记/Host 步进钮接线;见 DIFF-645:composeApp:desktopTest 1328/1330(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1330 tests);verify-product-evidence-prep.sh 通过;DIFF-644(F10 Host 方案/查找/对话框 HostWiringPresentation.*ActionEnabled;见 DIFF-644:composeApp:desktopTest 1327/1329(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1329 tests);verify-product-evidence-prep.sh 通过;DIFF-643(F09 集合/cURL/保存/停止 HttpCollectionPresentation.*ActionEnabled/stopSendActionEnabled;见 DIFF-643:composeApp:desktopTest 1326/1328(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1328 tests);verify-product-evidence-prep.sh 通过;DIFF-642(F04 检查器 Schema/结果/重复键 inferSchemaActionEnabled/resultCopyActionEnabled/duplicatePathClickActionEnabled + A03 调度单测 waitUntil;见 DIFF-642:composeApp:desktopTest 1323/1325(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1325 tests);verify-product-evidence-prep.sh 通过;DIFF-641(F04 检查器转换九动作 jsonStructureConvertActionEnabled/editorTextConvertActionEnabled/conversionDialogActionEnabled;见 DIFF-641:composeApp:desktopTest 1322/1324(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1324 tests);verify-product-evidence-prep.sh 通过;DIFF-640(F09 响应查找 responseFindOpenActionEnabled/findQueryActionEnabled/findStepActionEnabled;见 DIFF-640:composeApp:desktopTest 1321/1323(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1323 tests);verify-product-evidence-prep.sh 通过;DIFF-639(F04 检查器「应用格式」/「选择路径」formatAdvancedActionEnabled/pathPickerOpenActionEnabled;见 DIFF-639:composeApp:desktopTest 1320/1322(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1322 tests);verify-product-evidence-prep.sh 通过;DIFF-638(F04 JSONPath 复制/查询 pathCopyActionEnabled/pathQueryActionEnabled;见 DIFF-638:composeApp:desktopTest 1319/1321(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1321 tests);verify-product-evidence-prep.sh 通过;DIFF-636(F09 HTTP 发送钮 sendActionEnabled;见 DIFF-636:composeApp:desktopTest 1317/1319(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1319 tests);verify-product-evidence-prep.sh 通过;DIFF-637(F09 响应复制/另存 copyResponseActionEnabled/saveResponseActionEnabled;见 DIFF-637:composeApp:desktopTest 1318/1320(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1320 tests);verify-product-evidence-prep.sh 通过;DIFF-635(A03 refresh/discard/abort/resolve *ActionEnabled;见 DIFF-635:composeApp:desktopTest 1317/1319(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1319 tests);verify-product-evidence-prep.sh 通过;DIFF-634(A03 fetch/init *ActionEnabled;见 DIFF-634:composeApp:desktopTest 1317/1319(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1319 tests);verify-product-evidence-prep.sh 通过;DIFF-633(A03 continueActionEnabled + 产品证据流 commitActionEnabled + F05 历史 Java/Python;见 DIFF-633:composeApp:desktopTest 1314/1317(JDK 21,--offline--no-daemon,3 skipped,合计 1317 tests);verify-product-evidence-prep.sh 通过;DIFF-632(A03 commitActionEnabled + F05 CodeRunHistoryRestore 显示名;见 DIFF-632:composeApp:desktopTest 1313/1315(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1315 tests);verify-product-evidence-prep.sh 通过;DIFF-631(A03 GitAutomaticCheckpointGuardTest 冲突期检查点跳过;见 DIFF-631:composeApp:desktopTest 1312/1314(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1314 tests);verify-product-evidence-prep.sh 通过;DIFF-630(A01 RuntimeSettingsPanelCodeRunWiringPresentation 检测/显示名 + F05 cancelAllRuns;见 DIFF-630:composeApp:desktopTest 1311/1313(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1313 tests);verify-product-evidence-prep.sh 通过;DIFF-629(F05 CodeRunWiringPresentation.displayName/cancelRun + CodeRunScreen 接线;见 DIFF-629:composeApp:desktopTest 1309/1311(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1311 tests);verify-product-evidence-prep.sh 通过;DIFF-628(A03 GitCommitGuardTest.commitBlockedWhileMergeConflictsRemain + GitOperationPresentationTest 冲突期 commit 禁用;见 DIFF-628:composeApp:desktopTest 1307/1309(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1309 tests);verify-product-evidence-prep.sh 通过;DIFF-627(F05 CodeRunWiringPresentation.formatSource + CodeRunScreen 格式化接线 + CodeRunWiringPresentationTest.formatSourceDelegatesToEngineForNodeSample;见 DIFF-627:composeApp:desktopTest 1306/1308(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1308 tests);verify-product-evidence-prep.sh 通过;DIFF-626(F05 runtimeTools.test.ts fixture + CodeRunEngine.formatSource(Node)CodeEditorSurfaceFormatEngine.formatJavascript + CodeRunEngineTest.displayNameMatchesElectronRuntimeTools/Node 格式化样本;见 DIFF-626:composeApp:desktopTest 1305/1307(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1307 tests);verify-product-evidence-prep.sh 通过;DIFF-625(A03 GitEngine.pull 未解决冲突引擎守卫 + GitPullGuardTest;见 DIFF-625:composeApp:desktopTest 1304/1306(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1306 tests);verify-product-evidence-prep.sh 通过;DIFF-624(A03 未解决冲突期 pullActionEnabled(..., conflicts) + 帧 217;见 DIFF-624:composeApp:desktopTest 1303/1305(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1305 tests);verify-product-evidence-prep.sh 通过;DIFF-623(A03 未解决冲突期 GitVaultRemotePresentation.pushActionEnabled(..., conflicts) + 帧 216;见 DIFF-623:composeApp:desktopTest 1301/1303(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1303 tests);verify-product-evidence-prep.sh 通过;DIFF-622(F04 重复键路径 Tab 焦点帧 215 + JsonInspectorDuplicatePathTestjsonInspectorDuplicatePathClick;见 DIFF-622:composeApp:desktopTest 1299/1301(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1301 tests);verify-product-evidence-prep.sh 通过;DIFF-621(A03 UpdateAutoCheckSchedulerTest 调度单测相对 startupDelayMs/intervalMs 缓冲,消除全量偶发失败;见 DIFF-621:composeApp:desktopTest 1300/1302(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1302 tests);verify-product-evidence-prep.sh 通过;DIFF-620(F04 检查器重复键路径 jsonInspectorDuplicatePathClick 同步 JSONPath/预览并复制;见 DIFF-620:composeApp:desktopTest 1300/1302(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1302 tests);verify-product-evidence-prep.sh 通过;DIFF-619(A03 merge/rebase §B/§C 冲突期 fetchEnabled + GitEngine.fetch 成功 + 帧 214不重复 618 链,见 DIFF-619:composeApp:desktopTest 1299/1301(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1301 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 214 登记);DIFF-618(A03 merge/rebase §B/§C 冲突期 commitEnabled 断言 + GitVaultCommitDisabledCaptureTest212/213不重复 617 链,见 DIFF-618:composeApp:desktopTest 1298/1300(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1300 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 212/213 登记);DIFF-617(A03 rebase §C GitRebaseProductEvidenceFlowTest 自动选中后 git.rebaseProductFlowResolve + merge/rebase 完成后 pullActionEnabled 恢复;不重复 616 帧链,见 DIFF-617:composeApp:desktopTest 1296/1298(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1298 tests);verify-product-evidence-prep.sh 通过;DIFF-616(A03 rebase §C GitRebaseProductEvidenceFlowTest pull 禁用 + GitRebasePushPullDisabledCaptureTest211不重复 615 链,见 DIFF-616:composeApp:desktopTest 1296/1298(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1298 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 211 登记);DIFF-615(A03 rebase §C GitRebaseResolveCaptureTest + 帧 210不重复 614 链,见 DIFF-615:composeApp:desktopTest 1295/1297(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1297 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 210 登记);DIFF-614(A03 rebase §C GitRebaseFlowOverlayCaptureTest + 帧 209不重复 613 链,见 DIFF-614:composeApp:desktopTest 1294/1296(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1296 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 209 登记);DIFF-613(F04 检查器结果区 JsonInspectorPresentation.runCopyResultText + jsonInspectorCopyResult + 帧 208不重复 612 链,见 DIFF-613:composeApp:desktopTest 1293/1295(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1295 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 208 登记);DIFF-612(A03 rebase §C prepare-git-rebase-conflict-evidence.sh + GitRebaseProductEvidenceFlowTest + git.rebaseProductFlow* + 帧 207不重复 611 链,见 DIFF-612:composeApp:desktopTest 1289/1291(JDK 21,--offline--no-daemon,2 skipped 公网 smoke,合计 1291 tests);verify-product-evidence-prep.sh 通过(含 rebase 冲突 prep);其余证据 PNG 已 git restore(新增 207 登记);DIFF-611(F01 §A QuickNoteVaultConflictDeletedProductEvidenceFlowTest + 证据脚本 3c + 帧 206不重复 610 链,见 DIFF-611:composeApp:desktopTest 1286/1288(JDK 21,--offline--no-daemon 规避 macOS daemon 下 executor exit 134,2 skipped 公网 smoke,合计 1288 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 206 登记);DIFF-610(F04 §A 外部删除 + 帧 205,见 DIFF-610)已含于上述全量计数;DIFF-609(A03 merge §B GitVaultRemotePresentation.pushActionEnabled/pullActionEnabled + VaultGitDialog 接线 + GitMergeProductEvidenceFlowTest push 禁用/恢复 + 帧 204不重复 608 链,见 DIFF-609:composeApp:desktopTest 1282/1284(JDK 21,--offline,2 skipped 公网 smoke,合计 1284 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 204 登记);DIFF-608(F01 列编辑闩锁 QuickNoteColumnEditLatchCaptureTest + 证据 hint + Compose 帧 203不重复 607/606 链,见 DIFF-608:composeApp:desktopTest 1280/1282(JDK 21,--offline,2 skipped 公网 smoke,合计 1282 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 203 登记);DIFF-607(F01 §A VaultConflictProductEvidencePresentation 随手记样本 + QuickNoteVaultConflictProductEvidenceFlowTest + 证据 hint + Compose 帧 202不重复 606 P0/帧 201 链,见 DIFF-607:composeApp:desktopTest 1277/1279(JDK 21,--offline,2 skipped 公网 smoke,合计 1279 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 202 登记);DIFF-606(P0/F04 EditorColumnEditPresentation IME 证据正文/matchesEvidence* + 证据 hint + Compose 帧 201不重复 605 F04/帧 200 链,见 DIFF-606:composeApp:desktopTest 1274/1277(JDK 21,--offline,3 skipped,合计 1277 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 201 登记);DIFF-605(F04 §A VaultConflictProductEvidencePresentation + VaultConflictProductEvidenceFlowTest + 证据 hint + Compose 帧 200不重复 604 A03/帧 199 链,见 DIFF-605:composeApp:desktopTest 1274/1276(JDK 21,--offline,2 skipped 公网 smoke,合计 1276 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 200 登记);DIFF-604(A03 GitMergeProductFlowPresentation.preferredConflictSelectionPath + GitMergeProductEvidenceFlowTest + 证据 hint + Compose 帧 199不重复 603 F04/帧 198 链,见 DIFF-604:composeApp:desktopTest 1271/1273(JDK 21,--offline,2 skipped 公网 smoke,合计 1273 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 199 登记);DIFF-603(F04 notifyJsonInspectorPathQueryFailure/shouldToastPathQueryFailure + 路径复制 notifyJsonInspectorPathCopy* + 证据 hint + Compose 帧 198不重复 602 F14/帧 197 链,见 DIFF-603:composeApp:desktopTest 1268/1270(JDK 21,--offline,2 skipped 公网 smoke,合计 1270 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 198 登记);DIFF-602(F14 notifyCryptoVerifyFailure + 证据 hint + Compose 帧 197不重复 601 A01/帧 196 链,见 DIFF-602:composeApp:desktopTest 1266/1268(JDK 21,--offline,2 skipped 公网 smoke,合计 1268 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 197 登记);DIFF-601(A01 SettingsValidationToastPresentation + notifySettingsValidationFailure + 证据 hint + Compose 帧 196不重复 600 F04/帧 195 链,见 DIFF-601:composeApp:desktopTest 1265/1267(JDK 21,--offline,2 skipped 公网 smoke,合计 1267 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 196 登记);DIFF-600(F04 JsonInspectorPresentation.runCopyJsonPath + shouldToastPathCopy* + 证据 hint + Compose 帧 195不重复 599 F08/F17/F22/帧 194 链,见 DIFF-600:composeApp:desktopTest 1263/1265(JDK 21,--offline,2 skipped 公网 smoke,合计 1265 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 195 登记);DIFF-599(F08 notifyEnvIoFailure + F17 notifyQrIoFailure/shouldToastErrorMessage + F22 shouldToastErrorMessage + 证据 hint + Compose 帧 194不重复 598 F18/F11/A03/帧 193 链,见 DIFF-599:composeApp:desktopTest 1259/1261(JDK 21,--offline,2 skipped 公网 smoke,合计 1261 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 194 登记);DIFF-598(F18 notifyTimeConvertFailure + F11 notifyNetActionResult + A03 VaultGitToastPresentation/notifyVaultGit* + 证据 hint + Compose 帧 193不重复 597 F01/F09/帧 192 链,见 DIFF-598:composeApp:desktopTest 1255/1257(JDK 21,--offline,2 skipped 公网 smoke,合计 1257 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 193 登记);DIFF-597(F01 notifyQuickNoteIoFailure/notifyQuickNoteSaveGuardFailure + F09 notifyHttpResponseFailure/notifyHttpWriteFailure/notifyHttpCopyFailure + shouldToast* + 证据 hint + Compose 帧 192不重复 596 F23/F24/帧 191 链,见 DIFF-597:composeApp:desktopTest 1251/1253(JDK 21,--offline,2 skipped 公网 smoke,合计 1253 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 192 登记);DIFF-596(F23 notifyImageFailure 批处理·矢量化 IO 路径 + F24 notifyPdfJobFailure/notifyPdfImportFailure + 证据 hint + Compose 帧 191不重复 595 F03/F04/F20/帧 190 链,见 DIFF-596:composeApp:desktopTest 1247/1249(JDK 21,--offline,2 skipped 公网 smoke,合计 1249 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 191 登记);DIFF-595(F03 notifyReformatFailure + F04 notifyJsonFailure + F20 notifyTranslationFailure + shouldToast* + 证据 hint + Compose 帧 190不重复 594 F02/F10/F21/帧 189 链,见 DIFF-595:composeApp:desktopTest 1246/1248(JDK 21,--offline,2 skipped 公网 smoke,合计 1248 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 190 登记);DIFF-594(F02 notifyDiffImportFailure + F10 notifyHostFailure/shouldToastIo* + F21 notifyCalculatorFailure + 证据 hint + Compose 帧 189不重复 593 F14/F15/F16/F19/帧 188 链,见 DIFF-594:composeApp:desktopTest 1242/1244(JDK 21,--offline,2 skipped 公网 smoke,合计 1244 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 189 登记);DIFF-593(F14 notifyCryptoFailure + F15 notifyRegexFailure + F16 notifyCronFailure + F19 notifyMessageBoardWakeFailure + shouldToast* + 证据 hint + Compose 帧 188不重复 592 F05/F13/F12/帧 187 链,见 DIFF-593:composeApp:desktopTest 1238/1240(JDK 21,--offline,2 skipped 公网 smoke,合计 1240 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 188 登记);DIFF-592(F05 notifyCodeRunFailure + F13 notifyEncodeFailure + F12 notifyUaFailure + shouldToast* + 证据 hint + Compose 帧 187不重复 591 F06/F07/F25/帧 186 链,见 DIFF-592:composeApp:desktopTest 1232/1234(JDK 21,--offline,2 skipped 公网 smoke,合计 1234 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 187 登记);DIFF-591(F06 notifyConfigFailure + F07 notifyProtobufFailure + F25 notifyHardwareFailure + shouldToast* + 证据 hint + Compose 帧 186不重复 590 F11/帧 185 链,见 DIFF-591:composeApp:desktopTest 1226/1228(JDK 21,--offline,2 skipped 公网 smoke,合计 1228 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 186 登记);DIFF-590(F11 notifyNetFailure + 地址/命令/转换失败 toast + 证据 hint + Compose 帧 185不重复 589 链,见 DIFF-590:composeApp:desktopTest 1222/1224(JDK 21,--offline,2 skipped 公网 smoke,合计 1224 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 185 登记);DIFF-589(F17 notifyQrFailure + F09 notifyHttpFailure + 发送/校验失败 toast + 证据 hint + Compose 帧 184不重复 588 F22/帧 183 链,见 DIFF-589:composeApp:desktopTest 1221/1223(JDK 21,--offline,2 skipped 公网 smoke,合计 1223 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 184 登记);DIFF-588(F22 notifyColorFailure + 取色/解析/收藏夹失败 toast + 证据 hint + Compose 帧 183不重复 587 F08/F03/帧 182 链,见 DIFF-588:composeApp:desktopTest 1216/1218(JDK 21,--offline,2 skipped 公网 smoke,合计 1218 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 183 登记);DIFF-587(F08 notifyEnvFailure + F03 格式化失败 toast + 证据 hint + Compose 帧 182不重复 586 F01/帧 181 链,见 DIFF-587:composeApp:desktopTest 1215/1217(JDK 21,--offline,2 skipped 公网 smoke,合计 1217 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 182 登记);DIFF-586(F01 notifyQuickNoteOperationFailure + Vault/树/附件/格式化失败 toast + QuickNoteVaultMutationAborted + 证据 hint + Compose 帧 181不重复 585 时间/Host/帧 180 链,见 DIFF-586:composeApp:desktopTest 1212/1214(JDK 21,--offline,2 skipped 公网 smoke,合计 1214 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 181 登记);DIFF-585(F18 转换失败 toast + F10 notifyHostFailure + F01 Vault 保存失败 toast + mooTimeConvertActions + 证据 hint + Compose 帧 180不重复 584 翻译/帧 179 链,见 DIFF-585:composeApp:desktopTest 1210/1212(JDK 21,--offline,2 skipped 公网 smoke,合计 1212 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 180 登记);DIFF-584(F20 TranslationWiringPresentation.runSaveWord + 翻译/保存失败 toast + F12 密钥生成失败 toast + mooTranslationWordBookAsideFooter + 证据 hint + Compose 帧 179不重复 583 图片导出/帧 178 链,见 DIFF-584:composeApp:desktopTest 1208/1210(JDK 21,--offline,2 skipped 公网 smoke,合计 1210 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 179 登记);DIFF-583(F23 ImageWiringPresentation.runExportAssets + IO/批处理失败 toast + mooImageLibraryFooterActions + 证据 hint + Compose 帧 178不重复 582 SVG 写出/帧 177 链,见 DIFF-583:composeApp:desktopTest 1205/1207(JDK 21,--offline,2 skipped 公网 smoke,合计 1207 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 178 登记);DIFF-582(F23 ImageSvgWiringPresentation.runWriteSvgFile + 矢量化写出失败 toast + F24 拆分/合并失败 shouldToastJobFailure + error toast + 证据 hint + Compose 帧 177不重复 581 QR/notes read→notes search/帧 176 链,见 DIFF-582:composeApp:desktopTest 1202/1204(JDK 21,--offline,2 skipped 公网 smoke,合计 1204 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 177 登记);DIFF-581(F17 QrWiringPresentation.runWritePngFile + 保存失败 reformat.error.write + error toast + mooQrPreviewActions + Vault MCP 双库 notes read→notes search body offset + 证据 hint + Compose 帧 176不重复 580 F01 IO/帧 175 链,见 DIFF-581:composeApp:desktopTest 1197/1199(JDK 21,--offline,2 skipped 公网 smoke,合计 1199 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 176 登记);DIFF-580(F01 QuickNoteWiringPresentation.runWriteExportText + 导入/导出失败 reformat.error.* + error toast + mooQuickNoteToolbarIoCluster + Vault MCP 双库 json read→json search body offset + 证据 hint + Compose 帧 175不重复 579 F09 响应另存/mooDiffImportCluster/json search→notes search/帧 174 链,见 DIFF-580:composeApp:desktopTest 1194/1196(JDK 21,--offline,2 skipped 公网 smoke,合计 1196 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 175 登记);DIFF-579(F09 HttpResponsePresentation.runWriteResponseText/runWriteResponseBytes + 响应另存失败 reformat.error.write + error toast + F02 mooDiffImportCluster + Vault MCP 双库 json search→notes search body offset + 证据 hint + Compose 帧 174不重复 578 F04/F06/F03 IO toast/mooJsonToolbarIoCluster/双库 json read→notes read/帧 173 链,见 DIFF-579:composeApp:desktopTest 1188/1191(JDK 21,--offline,3 skipped 公网 smoke,合计 1191 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 174 登记);DIFF-578(F04 工具栏导入·导出失败 reformat.error.* + error toast + F06 导出失败 toast + F03 文件 Tab 导入·另存失败 toast + mooJsonToolbarIoCluster + Vault MCP 双库 json read→notes read body offset + 证据 hint + Compose 帧 173不重复 577 Host/Env/Diff IO toast/双库 notes read→json read/帧 172 链,见 DIFF-578:composeApp:desktopTest 1185/1187(JDK 21,--offline,2 skipped 公网 smoke,合计 1187 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 173 登记);DIFF-577(F10 Host 导入·导出失败 reformat.error.* + error toast + F08 导出失败 toast + F02 导入失败 toast + Vault MCP 双库 notes read→json read body offset + 证据 hint + Compose 帧 172不重复 576 F04 runReadImport/runWriteExport/Config 导入 toast/mooConfigConvert/双库 notes read→json search/帧 171 链,见 DIFF-577:composeApp:desktopTest 1182/1184(JDK 21,--offline,2 skipped 公网 smoke,合计 1184 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 172 登记);DIFF-576(F04 JsonWiringPresentation.runReadImportFile/runWriteExportFile + F06 导入失败 reformat.error.read 可见 + mooConfigConvertActions + Vault MCP 双库 notes read→json search body offset + 证据 hint + Compose 帧 171不重复 575 F08 runWriteExport/Config runReadImport/mooEnvHeader/双库 json read→notes search/帧 170 链,见 DIFF-576:composeApp:desktopTest 1180/1182(JDK 21,--offline,2 skipped 公网 smoke,合计 1182 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 171 登记);DIFF-575(F08 EnvWiringPresentation.runWriteExport + F06 ConfigWiringPresentation.runReadImportFile/runWriteExportFile + mooEnvWorkspaceHeader/mooEnvScopeCluster + Vault MCP 双库 json read→notes search body offset + 证据 hint + Compose 帧 170不重复 574 F10 runReadImportProfile/mooDiffEditorGrid/双库 notes search→json read/帧 169 链,见 DIFF-575:composeApp:desktopTest 1176/1178(JDK 21,--offline,2 skipped 公网 smoke,合计 1178 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 170 登记);DIFF-574(F10 HostWiringPresentation.runReadImportProfile/runWriteExportProfile + F02 mooDiffEditorGrid/mooDiffEditorSeam + Vault MCP 双库 notes search→json read body offset + 证据 hint + Compose 帧 169不重复 573 F02 runReadImportFile/mooDiffToolbarOptions/双库 json search→notes read/帧 168 链,见 DIFF-574:composeApp:desktopTest 1172/1174(JDK 21,--offline,2 skipped 公网 smoke,合计 1174 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 169 登记);DIFF-573(F02 TextDiffPresentation.runReadImportFile + mooDiffToolbarOptions/mooDiffEditorPane + F10 HostWiringPresentation.runRestoreBackup + Vault MCP 双库 json search→notes read body offset + 证据 hint + Compose 帧 168不重复 572 F03 run/mooFileDropRow/双库 notes search→read/帧 167 链,见 DIFF-573:composeApp:desktopTest 1168/1170(JDK 21,--offline,2 skipped 公网 smoke,合计 1170 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 168 登记);DIFF-572(F03 ReformatWiringPresentation.runReadSourceFile/runWriteResult/inferTypeFromFileName + mooFileDropRow + Vault MCP 双库 notes search→read body offset + 证据 hint + Compose 帧 167不重复 571 F04 run/json inspector CSS/双库 json search→read/帧 166 链,见 DIFF-572:composeApp:desktopTest 1164/1166(JDK 21,--offline,2 skipped 公网 smoke,合计 1166 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 167 登记);DIFF-571(F04 JsonWiringPresentation.runValidate/runQuickFormat/runCompress/runFormatAdvanced/runQueryPath/runTransform + mooJsonInspectorSectionResult/mooJsonInspectorPathActions + Vault MCP 双库 json search→read body offset + 证据 hint + Compose 帧 166不重复 570 Config run/mooConfigValidate/双库 notes read/帧 165 链,见 DIFF-571:composeApp:desktopTest 1160/1162(JDK 21,--offline,2 skipped 公网 smoke,合计 1162 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 166 登记);DIFF-570(F06 ConfigWiringPresentation.runToYaml/runToProperties/runValidate/runFormat + mooConfigValidateLayout/mooConfigValidateActions + Vault MCP 双库 notes read offset + 证据 hint + Compose 帧 165不重复 569 Time run/mooTimeQuickZones/双库 json read offset/帧 164 链,见 DIFF-570:composeApp:desktopTest 1154/1154(JDK 21,--offline,2 skipped 公网 smoke,合计 1156 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 165 登记);DIFF-569(F18 TimeWiringPresentation.runTimestampToLocal/runLocalToTimestamp + mooTimeQuickZones + Vault MCP 双库 json read offset + Host 方案行证据 hint + Compose 帧 164不重复 568 saved item/canRunTranslate/双库 json search offset/帧 163 链,见 DIFF-569:composeApp:desktopTest 1150/1150(JDK 21,--offline,2 skipped 公网 smoke,合计 1152 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 164 登记);DIFF-568(F09/F10 mooHttpSavedList + mooHttpSavedItem 内边距/Method accent + F20 TranslationWiringPresentation.canRunTranslate 立即翻译禁用 + Vault MCP 双库 json search offset + 证据 hint + Compose 帧 163不重复 567 响应头 bar/随手记 Git flush/双库 notes offset/帧 162 链,见 DIFF-568:composeApp:desktopTest 1147/1147(JDK 21,--offline,2 skipped 公网 smoke,合计 1149 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 163 登记);DIFF-567(F09 mooHttpResponseHeadBar/mooHttpResponseCodeEditor/mooHttpStatusMeta + HttpResponsePresentation.statusMetaSuccess + F01 QuickNoteVaultFooterPresentation Git flush 守卫 + Vault MCP 双库 notes search offset + 证据 hint + Compose 帧 162不重复 566 六套 CSS/JSON flush/merge continue/更新/MCP 单库 offset/帧 160–161 链,见 DIFF-567:composeApp:desktopTest 1142/1142(JDK 21,--offline,2 skipped 公网 smoke,合计 1144 tests);verify-product-evidence-prep.sh 通过;其余证据 PNG 已 git restore(新增 162 登记);DIFF-566(六套 CSS:mooDiffNavCluster/mooHttpResponseHead/mooHttpPreviousResponseHead/mooTranslationResultPane/mooTranslationResultFooter/mooSettingsOpenInstallerButton/mooQuickNoteVaultFooterActions/mooCryptoRandomRow + JSON Vault Git flush JsonVaultFooterPresentation + GitMergeProductFlowPresentation.mergeContinueActionEnabled + F09/F20 边界 UI + UpdateInstallApplyPresentation/UpdateCoordinator.openInstaller + Vault MCP notes search offset/双库 read + Compose 帧 160/161不重复 565 F15 worker/runMatch / regex-messageboard CSS / notes read offset / 帧 159 / P7 脚本链,见 DIFF-566:composeApp:desktopTest 1137/1137(JDK 21,--offline,2 skipped 公网 smoke,合计 1139 tests);prepare-tray-screencapture-evidence.sh 已恢复 57-color-baseline.png;其余证据 PNG 已 git restore(新增 160/161 登记);DIFF-565(F15 RegexWorkerRegexWiringPresentation.runMatch 同源 + mooRegexResultsPane/mooRegexMatchCard/mooMessageBoardFormatRow CSS + Vault MCP stdio notes read 分页(nextOffset)+ list/read 联调 + Compose 帧 159 + Win/Linux 构建说明脚本;不重复 564 run* 批量 / listTools 四项 / json search offset / 帧 158 链,见 DIFF-565:composeApp:desktopTest 1127/1127(JDK 21,--offline,2 skipped 公网 smoke,合计 1129 tests);prepare-tray-screencapture-evidence.sh 已恢复 57-color-baseline.png;其余证据 PNG 已 git restore(新增 159 登记);DIFF-564(F05/F07/F10/F12/F15/F17/F19/F21/F22/F23/F24 runDetect/runCode/protobuf/host/ua/regex/qr/calc/color/message/image/pdf run* + Vault MCP listTools vault 四项 + search offset + mooRuntimeDetectBar/mooHostApplyButton/mooQrGenerateButton/mooGitMergeResolveRow + Compose 帧 158不重复 563 encode/crypto/cron/diff/env/net run* / vault unified preview / json inspector / read offset / 帧 157 链,见 DIFF-564:composeApp:desktopTest 1122/1122(JDK 21,--offline,2 skipped 公网 smoke,合计 1124 tests);prepare-tray-screencapture-evidence.sh 已恢复 57-color-baseline.png;其余证据 PNG 已 git restore(新增 158 登记);DIFF-563(F13/F14/F16/F02/F08/F11 runConvert/runDigestText/runPreview/runCompare/runSnapshot/runPreviewDiff/runLocalAddresses + Vault 冲突 buildUnifiedPreview + JSON 检查器路径守卫 + MCP stdio read offset/length + mooEncodeConvertButton/mooJsonInspectorDuplicatePath/mooVaultConflictHintRow CSS + Compose 帧 157不重复 562 双库 search/F09/F20/F24/F25 run* / git remote 帧 156 链,见 DIFF-563:composeApp:desktopTest 1112/1112(JDK 21,--offline,2 skipped 公网 smoke,合计 1114 tests);prepare-tray-screencapture-evidence.sh 已恢复 57-color-baseline.png;其余证据 PNG 已 git restore(新增 157 登记);DIFF-562(Vault MCP stdio 双库 notes+json + F09/F20/F24/F25 runSend/runTranslate/inspectFile/runCollect 引擎路径 + mooGitVaultRemoteRow + Compose 帧 156不重复 561 MCP 核心工具/runFormat/更新下载/env-net-vault 底栏/帧 155 链,见 DIFF-562:composeApp:desktopTest 1103/1103(JDK 21,--offline,2 skipped 公网 smoke,合计 1105 tests);prepare-tray-screencapture-evidence.sh 已恢复 57-color-baseline.png;其余证据 PNG 已 git restore(新增 156 登记);DIFF-561(MCP stdio mootool_hash/diff/json_query/timestamp/uuid + ReformatWiringPresentation.runFormat F03 引擎 + UpdateCoordinatorDownloadFlowTest + env/net/vault 底栏/删除守卫 + mooSettingsUpdateActionsRow/mooJsonVaultFooterActions CSS + Compose 帧 155不重复 560 qr/reformat enabled/git saveRemote/settings nav 154/mcp encode 链,见 DIFF-561:composeApp:desktopTest 1097/1097(JDK 21,--offline,2 skipped 公网 smoke,合计 1099 tests);prepare-tray-screencapture-evidence.sh 已恢复 57-color-baseline.png;其余证据 PNG 已 git restore(新增 155 登记);DIFF-560(QrWiringPresentation/ReformatWiringPresentation F17/F03 引擎 enabled + GitVaultRemotePresentation.saveRemoteEnabled + mooSettingsNavItem CSS + AiIntegrationMcpEncodeTest stdio + Compose 帧 154 + 命令盘 saveremote/coderun;不重复 559 JSON/Host 搜索/分组/翻译边界/merge hint 帧 153 链,见 DIFF-560:composeApp:desktopTest 1086/1086(JDK 21,--offline,2 skipped 公网 smoke,合计 1088 tests);prepare-tray-screencapture-evidence.sh 已恢复 57-color-baseline.png;其余证据 PNG 已 git restore(新增 154 登记);DIFF-559(JsonVaultSearchPresentation 路径/内容匹配 + HostWiringPresentation 搜内容守卫 + WorkbenchNavPresentation 分组标题 + F12/F19/F23 引擎 enabled + mooJsonVaultSearch/mooHostProfilesPane CSS + TranslationEngineTest 离线边界 + GitMergeFlowOverlayCaptureTest153 + 命令盘 vaultsearch/profilesearch;不重复 558 关于/更新/Vault 冲突 savecopy/MCP wire 链,见 DIFF-559:composeApp:desktopTest 1079/1079(JDK 21,--offline,2 skipped 公网 smoke,合计 1081 tests);prepare-tray-screencapture-evidence.sh 已恢复 57-color-baseline.png;其余证据 PNG 已 git restore(新增 153 登记);DIFF-558(SettingsAboutPanel/SettingsUpdateResultCard 对齐 Electron .settings-update-result + UpdateAboutPresentation 目标平台/缺包/错误行 + VaultConflictPresentation 删除态主按钮/diff 预览 + mooSettingsAboutHero/mooSettingsUpdateResult*/mooVaultConflict* CSS + 命令盘 external/savecopy + AiIntegrationMcpProtobufWireTest + Compose 帧 152不重复 557 列选/env/hardware/merge 链,见 DIFF-558:composeApp:desktopTest 1066/1066(JDK 21,--offline,2 skipped 公网 smoke,合计 1068 tests);prepare-tray-screencapture-evidence.sh 已恢复 57-color-baseline.png;其余证据 PNG 已 git restore(新增 152 登记);DIFF-557(EditorColumnEditPresentation 列选手势/换行清选 + F08/F25/F11 EnvWiringPresentation/HardwareWiringPresentation/NetWiringPresentation 扩展 + JsonInspectorPresentation 结构/重复键显隐 + GitMergeProductFlowPresentation.resolveActionsEnabled + mooJsonInspectorStructureRow/mooGitMergeFlowHint/mooEnvStatusFooter/mooHardwareToolbarMeta CSS + 命令盘 mergeflow/logical/envsections;不重复 556 F 工具批量 Wiring/CSS,见 DIFF-557:composeApp:desktopTest 1063/1063(JDK 21,--offline,2 skipped 公网 smoke,合计 1065 tests);prepare-tray-screencapture-evidence.sh 已恢复 57-color-baseline.png;DIFF-556(F22/F21/F06/F12/F15/F18/F23 *WiringPresentation 引擎接线 + F02/F16 TextDiffPresentation/CronWiringPresentation 扩展 + F01 QuickNoteVaultFooterPresentation + mooQuickNoteVaultFooter/mooColorFormatRow/mooUaParseBar/mooConfigTabsRow CSS 批次 + CommandSearchCatalog/ToolRegistry 导航关键词;Electron MCP 仍 11 项无新增 handler,见 DIFF-556:composeApp:desktopTest 1052/1052(JDK 21,--offline,2 skipped 公网 smoke,合计 1054 tests);prepare-tray-screencapture-evidence.sh 已恢复 57-color-baseline.png;DIFF-555(CryptoWiringPresentation/EncodeWiringPresentation/HostWiringPresentation/MessageBoardWiringPresentation;F04 JSON 列编辑 notice 随 session.wrapJsonVaultFooterPresentation + mooJsonVaultFooter/mooCryptoAsymActions CSS;UpdateAboutPresentation/TraySyncPresentation 更新·托盘;MCP catalog protobuf_wire 非幂等登记 + 命令盘 aes/autocheck 关键词,见 DIFF-555:composeApp:desktopTest 1034/1034(JDK 21,--offline,2 skipped 公网 smoke,合计 1036 tests);prepare-tray-screencapture-evidence.sh 已恢复 57-color-baseline.png;DIFF-554(PdfWiringPresentation/ProtobufWiringPresentation/TranslationWiringPresentation.languagePairFromSettingsGitVaultRemotePresentation + git.remoteUnsavedHintEditorColumnEditPresentation.columnNoticeKeymooPdfToolbarActions/mooPdfEmptyState/mooProtobufConvertGrid/mooTranslationAutoRow CSS;MCP mootool_protobuf_wire + 命令盘 protobuf_wire/fetch/pdfsplit 关键词,见 DIFF-554:composeApp:desktopTest 1023/1023(JDK 21,--offline,2 skipped 公网 smoke,合计 1025 tests);prepare-tray-screencapture-evidence.sh 已恢复 57-color-baseline.png;DIFF-553(CodeRunWiringPresentation/NetWiringPresentation/ImageSvgWiringPresentationJsonVaultSearchPresentation + VaultSearchIndexSettingsRowPresentation/mooSettingsSettingRowEditorColumnEditPresentation + 列编辑/IME 证据 hint;mooRuntimeOutputPane/mooJsonVaultSearch/mooNetOutputMonospace/mooImageToolToolbar CSS;命令盘 column/json_query/detect + ToolRegistry F04/F05 关键词,见 DIFF-553:composeApp:desktopTest 1011/1011(JDK 21,--offline,2 skipped 为默认跳过的公网 GET/multipart smoke,合计 1013 tests);DIFF-552(HomePresentation/DetachedToolPresentation/FavoritePresentation/WorkbenchNavPresentation/SettingsNavPresentationToolsExportWiringPresentation F10/F22/F24 tools.exportDirectorymooHomeContent/mooDetachedPlaceholder/mooFavoriteRow/mooSettingsNavHeader CSS;命令盘 layout detach/home、托盘/P7 证据脚本,见 DIFF-552:composeApp:desktopTest 1001/1001(JDK 21,--offline,2 skipped 为默认跳过的公网 GET/multipart smoke,合计 1003 tests);DIFF-551(GitMergeProductFlowPresentation + VaultGitDialog merge §B 自动选中冲突文件/走查 hint;F02/F03/F16 TextDiffPresentation/ReformatWiringPresentation/CronWiringPresentationmooDiffWorkspace/mooCronBuilder/mooCronRunCell/mooReformatFileLayout/mooConfigConvertPane CSS 批次;CommandSearchCatalog/ToolRegistry merge·history·favorite 关键词;托盘证据脚本,见 DIFF-551:composeApp:desktopTest 988/988(JDK 21,--offline,2 skipped 为默认跳过的公网 GET/multipart smoke,合计 990 tests);DIFF-550(余下 F 工具 ImageHistoryMetadataTest/PdfHistoryMetadataTest/HostHistoryMetadataTest/UaHistoryMetadataTest/RegexHistoryMetadataTest/ConfigHistoryMetadata/CalculatorHistoryMetadata/MessageBoardSessionMetadataTestJsonInspectorPresentationmooColorHexColumn/mooColorPreviewPane/mooCalculatorResultRow/mooHostEditBar/mooHostProfileSearch/mooTimeCurrentBand/mooMessagePresetChip/mooRegexTestPane/mooUaResultCell/mooProtobufWirePane CSS 批次;ToolRegistry/CommandSearchCatalog F 工具·Vault·general 托盘·about 更新关键词;托盘证据脚本,见 DIFF-550:composeApp:desktopTest 977/977(JDK 21,--offline,2 skipped 为默认跳过的公网 GET/multipart smoke,合计 979 tests);DIFF-549(QrWiringPresentation/RandomWiringPresentation;F13/F09/F14 EncodeHistoryMetadataTest/HttpHistoryMetadataTest/CryptoHistoryMetadataTestmooEncodeControlColumn/mooQrOptionsRow/mooHardwareStatRow/mooEnvTableHead/mooEnvVarRow/mooNetSection CSS 批次;命令盘 vault/json/hardware/env/tools/ai 关键词;MooToolMcpToolsTest.encodeUrlRoundTripViaMcp;P7 脚本注释,见 DIFF-549:composeApp:desktopTest 959/959(JDK 21,--offline,2 skipped 为默认跳过的公网 GET/multipart smoke,合计 961 tests);DIFF-548(TranslationWiringPresentation + 本机 mock Google/Bing 接线;F02/F07/F16 DiffHistoryRestoreTest/CryptoHistoryRestoreTest/CronHistoryRestoreTestmooHttpCollection/mooHttpUrlBar/mooHttpTimeoutChip/mooHttpEntryHead/mooTranslationLangBar/mooNetPortScanRow CSS 批次;命令盘 network/vault/editor 关键词;P7 脚本注释,见 DIFF-548:composeApp:desktopTest 943/943(JDK 21,--offline,2 skipped 为默认跳过的公网 GET/multipart smoke,合计 945 tests);DIFF-547(HttpRequestPresentation/TranslationResponsePresentationmooHttpSavedItem/mooHttpEntryRow/mooHttpResponsePane/mooTranslationEditorSeam/mooNetCommandRow;Git merge 产品证据 hint + 命令盘 network/tools 关键词,见 DIFF-547:composeApp:desktopTest 939/939(JDK 21,--offline,2 skipped 为默认跳过的公网 GET/multipart smoke,合计 941 tests);DIFF-546(HttpResponsePresentation/TranslationAutoPresentation/PdfImportPresentation;F19 MessageBoardSessionRestoremooHttpRequestPane/mooPdfTableWrap/mooPdfOutputStrip/mooTranslationHistoryArticle;Vault 冲突准备脚本随手记样本 + 147 与产品 PNG 提示;命令盘 network curl/pdf,见 DIFF-546:composeApp:desktopTest 931/931(JDK 21,--offline,2 skipped 为默认跳过的公网 GET/multipart smoke,合计 933 tests);DIFF-545(CodeEditorSurfaceFormatEngine JS/TS 增量:字符串/注释/import/箭头/多行块;GitMergeConflictPresentation + Vault Git 冲突说明/Italic 徽标;命令盘 editor javascript/format 关键词,见 DIFF-545:composeApp:desktopTest 927/927(JDK 21,--offline,2 skipped 为默认跳过的公网 GET/multipart smoke,合计 929 tests);DIFF-544(CodeEditorSurfaceFormatEngine.formatMarkdown 增量对齐 Prettier markdown 常见样本、DocumentFormatEngine Markdown 路由、F01/F09 格式化链,见 DIFF-544:composeApp:desktopTest 917/917(JDK 21,--offline,2 skipped 为默认跳过的公网 GET/multipart smoke,合计 919 tests);DIFF-543(GitDiffDecoration 行+字符双层对齐 F02 both、Vault Git EditorHost/DiffHighlight 共用区间、CalculatorHistoryRestoreTest/ProtobufHistoryRestoreTest、冲突证据登记 147、P7 脚本注释,见 DIFF-543:composeApp:desktopTest 912/912(JDK 21,--offline,2 skipped 为默认跳过的公网 GET/multipart smoke,合计 914 tests);DIFF-542(Vault Git diff 只读双 EditorHost/GitDiffSideBySideEditorsCodeEditorSurfaceFormatEngine JS/Python/plain、VaultConflictOverlayCaptureTest/147-compose-json-vault-conflict-overlay-keep-tab-focus.png,见 DIFF-542:composeApp:desktopTest 907/907(JDK 21,--offline,2 skipped 为默认跳过的公网 GET/multipart smoke,合计 909 tests);DIFF-541(GitDiffPresentation/TextCodeEditorLanguages Vault Git diff 语义、UpdateAboutPresentation/TraySyncPresentation 关于·托盘、F09 HttpEngine.formatBodyDocumentFormatEngine、命令盘 layout/about 关键词、VaultConflictOverlayInteractionTest,见 DIFF-541:composeApp:desktopTest 898/898(JDK 21,--offline,2 skipped 为默认跳过的公网 GET/multipart smoke,合计 900 tests);DIFF-540(Vault Git 顶栏布局/GitPanelIconVaultConflictPresentation + JSON/随手记冲突 Overlay、F03 tools.exportDirectory 文件 Tab、命令盘 layout/about 关键词,见 DIFF-540:composeApp:desktopTest 882/882(JDK 21,--offline,2 skipped 为默认跳过的公网 GET/multipart smoke,合计 884 tests);DIFF-539(Vault Git showContinueAction/showChangeCounts/resolveConflictEnabled/refreshEnabled/abortConfirmEnabled + pull pullEnabled 对齐 Electron,见 DIFF-539:composeApp:desktopTest 874/874(JDK 21,--offline,2 skipped 为默认跳过的公网 GET/multipart smoke,合计 876 tests);DIFF-538(F01/F04/F19 QuickNoteHistoryMetadata/JsonHistoryMetadata/QrHistoryMetadata + restore 域模块、F19 历史恢复 PNG data URL/重算、Vault Git initEnabled/discardEnabled/showAbortAction,见 DIFF-538:composeApp:desktopTest 873/873(JDK 21,--offline,2 skipped 为默认跳过的公网 GET/multipart smoke,合计 875 tests);DIFF-537(F10/F12/F03/F05 HostHistoryRestore/UaHistoryRestore/ReformatHistoryRestore/CodeRunHistoryMetadata,见 DIFF-537:composeApp:desktopTest 865/865(JDK 21,--offline,2 skipped 为默认跳过的公网 GET/multipart smoke,合计 867 tests);DIFF-536(F22/F23/F24 历史 metadata/restore、F09/F06/F21 HttpHistoryRestore/ConfigHistoryRestore/CalculatorHistoryRestore、MCP json_format 成功路径 + 13 位 to-local(F18 UI 仍 DIFF-001)、F08/F25 仍无通用历史,见 DIFF-536:composeApp:desktopTest 859/859(JDK 21,--offline,2 skipped 为默认跳过的公网 GET/multipart smoke,合计 861 tests);DIFF-535(F08/F25 会话 metadata/restore、F02/F07/F13/F14/F16 历史 metadata/restore、Vault Git commitEnabled/remote/continue、CommandSearchCatalog history 关键词,见 DIFF-535:composeApp:desktopTest 851/851(JDK 21,--offline,2 skipped 为默认跳过的公网 GET/multipart smoke,合计 853 tests);DIFF-534(F08 EnvExportSections/previewDiff + electron-next-envTools-vitest.md、F25 HardwareSessionRestoreTest、Vault Git GitOperationPresentation.pushEnabled 对齐 Electron push,见 DIFF-534:composeApp:desktopTest 841/841(JDK 21,--offline,2 skipped 为默认跳过的公网 GET/multipart smoke,合计 843 tests);DIFF-533(F11 NetHistoryMetadata/NetHistoryRestore、F20 TranslationHistoryRestore、MCP mootool_timestamp round-trip 拒绝、electron-next-netTools-vitest.md,见 DIFF-533:composeApp:desktopTest 837/837(JDK 21,--offline,2 skipped 为默认跳过的公网 GET/multipart smoke);DIFF-532(F15/F18 RegexHistoryRestore/TimeHistoryRestore + 本地时间 round-trip,见 DIFF-532:composeApp:desktopTest 829/829(JDK 21,--offline,2 skipped);DIFF-531(A01/F17/F14 ToolsSettingsLiveApply 工具默认值 QR/随机长度即时同步、命令盘 Vault Git merge/rebase 与 tools qr/random 关键词、F18/F25 fixture 登记,见 DIFF-531:composeApp:desktopTest 821/821(JDK 21,--offline,2 skipped 为默认跳过的公网 GET/multipart smoke);DIFF-530(A01 EditorFontSettings.normalizeSqlDialect 加载/Electron 迁入、命令盘 sql→编辑器;F04/F05/F09 EditorSettingsLiveApply.jsonEditorFontSize 统一 JSON 系 EditorHost 字号并修复 HTTP 响应区硬编码 11,见 DIFF-530:composeApp:desktopTest 816/816(JDK 21,--offline,2 skipped 为默认跳过的公网 GET/multipart smoke);DIFF-529(A01/F05 EditorSettingsLiveApply 按工具换行策略、F05 运行台 wrap=false、F01 新建随手记 lineWrap 对齐全局设置、Vault Git merge 冲突 .md discard、F04 检查器 Schema 按钮守卫,见 DIFF-529:composeApp:desktopTest 812/812(JDK 21,--offline,2 skipped 为默认跳过的公网 GET/multipart smoke;本机 MOOTOOL_HTTP_MULTIPART_SMOKE=1 单测 optionalHttpBinMultipartPostSmoke 已通过);DIFF-528(F09 buildMultipartFormData + 可选 MOOTOOL_HTTP_MULTIPART_SMOKE、F04 JSON 全局 softWrap 同步、托盘 TCC prepare-tray-screencapture-evidence.sh + 恢复 57-color-baseline.png、Vault Git merge 冲突 discard 单测,见 DIFF-528:composeApp:desktopTest 806/806(JDK 21,--offline,2 skipped 为默认跳过的公网 GET/multipart smoke);DIFF-527(A03/F22/F23 托盘·取色·截图 ScreenCaptureFailureMessages、F24 拆分后书签不复制断言、F09 multipart Body prepare 单测;MOOTOOL_HTTP_PUBLIC_SMOKE=1 本机跑通 httpbin GET,见 DIFF-527:composeApp:desktopTest 800/800(JDK 21,--offline,1 skipped 为默认跳过的公网 smoke);DIFF-526(F09 httpbin/localhost 公网 smoke 白名单 + 可选单测、F24 合并/拆分 AcroForm 保留、QrEngine.normalizeSize(360.4)、产品证据/P7 脚本提示,见 DIFF-526:composeApp:desktopTest 795/795(JDK 21,--offlineMOOTOOL_HTTP_PUBLIC_SMOKE 未设,公网 GET 未测);DIFF-525(F14 非对称公钥还原/密钥状态、F24 表单/书签/签名字段 inspect 与导入 toast、F09 本机 Cookie/Set-Cookie,见 DIFF-525:composeApp:desktopTest 791/791(JDK 21,--offline);DIFF-524(F09 cURL --data-urlencode、F14 对称密钥字节 UI、F24 加密 PDF 样本/工具栏限制/导入 toast、A03 托盘 Host 菜单 revision,见 DIFF-524:composeApp:desktopTest 788/788(JDK 21,--offline);DIFF-523(F09 HTTP NUL/multipart/--data-binary、F24 MAX_TASKS、F07/F14 Electron vitest fixture、A03 更新调度 autoDownload tick,见 DIFF-523:composeApp:desktopTest 784/784(JDK 21,--offline);DIFF-522(A01 外观 appearance.fontSize 12–18 range 拖动即时提交,见 DIFF-522:composeApp:desktopTest 779/779(JDK 21,--offline);DIFF-521(A01 工具 QR/随机长度 + 编辑器 JSON/随手记字号 SettingCommitTextField + SettingsToolsEditorNumericNormalize,见 DIFF-521:composeApp:desktopTest 778/778(JDK 21,--offline);DIFF-520(A01 Vault 数值 SettingCommitTextField + SettingsVaultNumericNormalize、A03 Git merge/rebase 中止文案与 pull 冲突期禁用、F09 cURL Electron fixture,见 DIFF-520:composeApp:desktopTest 775/775(JDK 21,--offline);DIFF-519(F16 CronEngine WED#2/美东 DST 单测、CronHistoryMetadata 历史时区 JSON、formatRunLine 偏移格式,见 DIFF-519:composeApp:desktopTest 770/770(JDK 21,--offline);DIFF-518(设置翻译语言 SettingCommitTextField + SettingsToolsTranslationNormalize、命令盘 tools 翻译关键词、F04 listPaths books[1] preview,见 DIFF-518:composeApp:desktopTest 766/766(JDK 21,--offline);DIFF-517(命令盘 12 类设置深链、GitEngine.push 冲突守卫、HostProfileStoreTest、F04 listPaths label/preview,见 DIFF-517:composeApp:desktopTest 763/763(JDK 21,--offline);DIFF-516(命令盘设置分类深链 CommandSearchCatalog、F04 listPaths Electron 登记、F10 HostEngine.matchesProfileSearch、Vault Git push 冲突期 UI 禁用,见 DIFF-516:composeApp:desktopTest 755/755(JDK 21,--offline);DIFF-515(Vault Git merge/rebase 状态 UI + GitEngine.push 守卫 + F09/F20 toHttpProxyConfigGitOperationPresentationTest/NetworkRuntimeTest/GitRebaseGuardTest.pushBlockedWhileRebaseInProgress,见 DIFF-515systemService fixture:composeApp:desktopTest 748/748(JDK 21,--offline);DIFF-514(设置网络代理/超时失焦提交 + Vault Git 面板 remote 校验、SettingsNetworkNormalizeTest,见 DIFF-514:composeApp:desktopTest 743/743(JDK 21,--offline);DIFF-513(产品窗 Vault 冲突/Git merge/IME 准备脚本共享校验 + verify-product-evidence-prep.sh + ProductEvidencePrepScriptTest;产品窗 runDistributable/PNG 未执行,见 DIFF-513vault-conflict results.md:composeApp:desktopTest 740/740(JDK 21,--offline);DIFF-512(F23 ScreenRegionPicker 框选后 move/resize + Enter/确认钮对齐 Electron ScreenCaptureOverlayScreenCaptureInteractionTest、命令盘 Tab 走查 CommandPaletteKeysTest.tabFocusWalkthrough_searchCloseResultRoundTrip,见 DIFF-512:composeApp:verifyNativePackageMetadata + desktopTest 737/737(JDK 21,--offline);DIFF-511(macOS MOOTOOL_P7_BUILD_DIST=1packageDistributionForCurrentOS 产出 MooTool Next Compose-1.1.0.dmg、F23 ImageEngine.moveCaptureRect/resizeCaptureRect 对齐 Electron captureSelection.test.ts,见 DIFF-511P7 烟雾 results.md:composeApp:verifyNativePackageMetadata + desktopTest 732/732(JDK 21,--offlineCryptoEngineTest.generatesRsaAndSm2RoundTrips 曾单次失败,隔离重跑通过);DIFF-510(设置 SettingsGroup 行块 --surface/settingsGroupRowsFill、命令盘搜索行帧 151、modern 压平工具壳帧 150,见 DIFF-510)见 DIFF-510:composeApp:verifyNativePackageMetadata + desktopTest 731/731(JDK 21,--offline;未设 MOOTOOL_P7_BUILD_DIST=1);DIFF-509(设置 Vault Git SettingCommitTextField 失焦提交、commitGitRemote 非法 remote toast、MOOTOOL_P7_BUILD_DIST 可选本机构建、Vault/Git 走查 results.md)见 DIFF-509:composeApp:verifyNativePackageMetadata + desktopTest 727/727(JDK 21,--offline;未设 MOOTOOL_P7_BUILD_DIST=1);DIFF-508(mooToolShell 默认 modern/quiet 压平、ja settings.category.*EnvEngine Electron JAVA_HOME fixture、SettingsVaultGitNormalize.sanitizeGitRemoteprepare-vault-git-settings-evidence.sh:composeApp:verifyNativePackageMetadata)见 DIFF-508desktopTest 726/726(JDK 21,--offline);DIFF-507(设置侧栏/顶栏 settings.category.* 与分类图标、ToolRegistry.matchesSearch Locale.ROOT、Vault Git 字段 SettingsVaultGitNormalizeNetEngine.parsePortSpec Electron fixture、flattenWorkspaceToolPanels 单测、scripts/prepare-p7-package-smoke.sh)见 DIFF-507desktopTest 721/721(JDK 21,--offline);DIFF-506(CodeRunRuntimeOptionsNormalize 对齐 Electron normalizeRuntimeOptions/normalizeRuntimeDrafts,Electron 迁入与会话 snapshotState/restore 截断运行参数与工作目录)见 DIFF-506desktopTest 715/715(JDK 21,--offline);DIFF-505(LayoutPolicy.iconGhostCornerRadiusDpMooGhostButton 对齐 Electron .icon-ghost modern 9dp/默认 8dp,quiet 仍为 8dp 非 icon-button 6dp)见 DIFF-505desktopTest 712/712(JDK 21,--offline);DIFF-504(LayoutPolicy.iconButtonCornerRadiusDp/iconButtonSoftShadowMooIconButton 9dp 方钮与 modern 浅阴影,对齐 Electron .icon-button 非 toolbar 7dp)见 DIFF-504desktopTest 710/710(JDK 21,--offline);DIFF-503(LayoutPolicy.nonP5ToolbarCornerRadiusDp、modern 非 p5 MooButton 7dp 圆角对齐 Electron .toolbar-button)见 DIFF-503desktopTest 708/708(JDK 21,--offline);DIFF-502(LayoutPolicy.nonP5ToolbarFontSp、modern/quiet 非 p5 MooButton 13sp/500 与 primary 浅阴影)见 DIFF-502desktopTest 707/707(JDK 21,--offline);DIFF-501(LayoutPolicy modern/quiet 工具页 p5Toolbar 高度对齐 controlHeight、13sp/500 与 primary 浅阴影)见 DIFF-501desktopTest 705/705(JDK 21,--offline);DIFF-500(SettingsGeneralNormalize 加载/Electron 迁入规范化 general.language/closeBehavior,并入 SettingsLayoutNormalize.apply)见 DIFF-500desktopTest 704/704(JDK 21,--offline);DIFF-499(EditorFindShortcutPolicyEditorFindToolScope 接线 JSON/随手记/Host/HTTP/F05 壳层查找快捷键,HTTP 仅 Cmd/Ctrl+F)见 DIFF-499desktopTest 700/700(JDK 21,--offline);DIFF-498(AppMooTheme 主窗/分离窗共用 compactNavigation 与外观、EditorFindToolScope 对照 Electron 查找范围、分离窗紧凑 p5 帧)见 DIFF-498desktopTest 697/697(JDK 21,--offline);DIFF-497(navigationStyle=classic 隐藏内置分组标题、紧凑导航下 p5Toolbar dense、设置快捷键切换/左侧 ↑↓ 分类、F05 源码 Cmd/Ctrl+F/R 只读查找条)见 DIFF-497desktopTest 693/693(JDK 21,--offline);DIFF-496(工作台 compactNavigation 侧栏行高/字号与 showSeparators 分组底分隔线,对齐 Electron app-shell--compact-nav / app-shell--nav-separators)见 DIFF-496desktopTest 691/691(JDK 21,--offline);DIFF-495(设置 appearance.fontFamily 加载/Electron 迁入规范化,system-uisystem、空值回退,补 DIFF-490 界面字体链)见 DIFF-495,曾为 690/690(JDK 21,--offline);DIFF-494(rebase 冲突期 GitRebaseGuardTest pull/commit/continue/abort 守卫,对齐 Electron VaultGitService)见 DIFF-494,曾为 687/687(JDK 21,--offline);DIFF-493(Vault 外部删除冲突另存副本 JSON/随手记会话流 + GitContinueGuardTest 未解决冲突禁止 continue)见 DIFF-493,曾为 683/683(JDK 21,--offline);DIFF-492(命令盘 Tab 序搜索→关闭→选中结果,对齐 Electron 搜索行内关闭按钮;关闭 Enter 关闭;Compose 帧 149)见 DIFF-492,曾为 680/680(JDK 21,--offline);DIFF-491(命令盘 Tab/Shift+Tab 在搜索框与当前选中结果行间切换焦点,结果行内 ↑/↓/Enter/Esc)见 DIFF-491,曾为 679/679(JDK 21,--offline);DIFF-490(设置 accentColor 加载/Electron 迁入规范化,对齐 accentColorPresetsorange/teal 别名)见 DIFF-490,曾为 678/678(JDK 21,--offline);DIFF-489(JSON 检查器 Draft-07 Schema 推断、JSONPath 复制、Tauri 式路径快捷选择与弹层 jsonPath 同步)见 DIFF-489,曾为 676/676(JDK 21);DIFF-488(JSON 检查器结构面板:根类型/节点/键/深度/重复键/UTF-8,对齐 Tauri json-analysis)见 DIFF-488,曾为 671/671(JDK 21);DIFF-487(JSON validate 结构摘要:有效 JSON 状态栏展示节点数与最大深度,对照 next-tauri analyzeJson)见 DIFF-487,曾为 668/668(JDK 21);DIFF-486(设置外观/导航布局加载规范化:interfaceStyle/customGroups/navigationStyle/paneSizes 键,对齐 Electron normalizeSettings)见 DIFF-486desktopTest 667/667(JDK 21);DIFF-485(设置/Electron 迁入数值字段边界 clampNumber,对齐 Electron settings.test.ts normalizes numeric settings at their supported boundaries)见 DIFF-485,曾为 663/663(JDK 21);DIFF-484(JSON 检查器缩进写盘/persistJson 内存校正,补充 DIFF-483)见 DIFF-484,曾为 661/661(JDK 21);DIFF-483(JSON 检查器 formatOptions.spaces 会话恢复规范化,对齐 Electron JsonInspector 缩进 2/4)见 DIFF-483,曾为 660/660(JDK 21);DIFF-482(设置/Electron 迁入规范化编辑器字体名,对齐 Electron settings.test.ts normalizes editor font family names)见 DIFF-482,曾为 657/657(JDK 21);DIFF-481(设置/Electron 迁入规范化翻译语言对,对齐 Electron settings.test.ts migrates legacy localized translation language names)见 DIFF-481,曾为 653/653(JDK 21);DIFF-480(设置加载规范化非法 Vault 树 jsonTreeExpandMode/quickNoteTreeExpandMode,对齐 Electron settings.test.ts)见 DIFF-480,曾为 651/651(JDK 21);DIFF-479(Vault Git 分叉后 fetch 同时更新 ahead/behind、不 merge 工作区,对齐 VaultGitService.status)见 DIFF-479,曾为 649/649(JDK 21);DIFF-478(Vault Git fetch --prune 清理已删远程 origin/* tracking ref,对齐 Electron VaultGitService.fetch)见 DIFF-478,曾为 648/648(JDK 21);DIFF-477(FindReplace 正则捕获组/\\n 替换对齐 Electron findReplace.ts)见 DIFF-477,曾为 647/647(JDK 21);DIFF-476(Vault 树 collapseAll 保留选中祖先,对齐 Electron vaultTreeExpand)见 DIFF-476,曾为 646/646(JDK 21);DIFF-475(Vault Git 空 URL 删除 origin / 已删除幂等)见 DIFF-475,曾为 643/643;DIFF-474(Vault Git fetch --prune 更新 behind、无 remote 失败)见 DIFF-474 曾为 641/641;DIFF-472(ToolRegistry 默认 Available + testConnection 断言 11 工具)见 DIFF-472;DIFF-471(McpToolCatalog + stdio listTools 11 项/readOnlyHint/object schema)在 DIFF-470 之后曾为 638/638;DIFF-470(MooToolMcpTools 对齐 Electron z.strictObject 入参)在 DIFF-469 之后曾为 636/636;DIFF-469(Vault MCP search/read 参数 Zod 边界 + Git push 非快进失败单测)在 DIFF-468 之后曾为 636/636;DIFF-468(Vault MCP 拒绝 access.json 相对路径授权,对齐 isAbsolute)在 DIFF-467 之后曾为 633/633;DIFF-467(Vault MCP access.json 写入/校验 canonical realpath、拒绝符号链接 Vault 根)在 DIFF-466 之后曾为 632/632;DIFF-466(access.json 未知字段拒绝 + scripts/README-product-evidence.md + Git 准备脚本 main 分支)在 DIFF-465 之后曾为 631/631;DIFF-465(prepare-git-merge-conflict-evidence.sh 产品窗 Git merge 冲突仓库)在 DIFF-464 之后曾为 630/630(脚本本机验证 git status 为 merging);DIFF-464(access.json version 校验 + JSON Vault MCP stdio + IME 准备脚本)曾为 630/630;DIFF-463(Vault MCP stdio 子进程 search/read + access 符号链接拒绝)曾为 627/627;DIFF-462(VaultMcpAccessTest + prepare-vault-conflict-evidence.sh)曾为 625/625;DIFF-461(Vault MCP 对齐 vaultAccess.test.ts + .gitignore 严格 UTF-8)曾为 623/623;DIFF-460(MooToolMcpTools 对齐 Electron mcp/server.test.ts)曾为 621/621;DIFF-459(AI testConnection 真 MCP 子进程 + formatAdvanced spaces:0 紧凑 JSON)曾为 618/618;DIFF-458(JSONPath 弹层双击选路径单测)曾为 616/616;DIFF-457(JSONPath 弹层 JsonPathPickerDialog +「使用」单测 + 帧 148)曾为 615/615;DIFF-456(JSON 检查器内联路径查询帧 147)曾为 613/613;DIFF-455(JSON 内联路径树双击查询)曾为 612/612;DIFF-454(JSON 路径树 80 条截断单测 + AI 并发安装守卫)曾为 610/610;DIFF-453(AI 预览不含私有 TOML + 安装备份)曾为 607/607;DIFF-452(AI NeedsRepair + 卸载保留用户 Skill)曾为 605/605;DIFF-451(Codex TOML MCP 往返 + Both/Skill)曾为 602/602;DIFF-450(AI 安装中途失败回滚 + installPutVerifier)曾为 600/600;DIFF-449(AI 安装预览/stale/连接失败/符号链接/Skill 单测)曾为 599/599;DIFF-448(冲突「重新加载/另存副本」点击 + GitPullGuardTest)曾为 593/593;DIFF-447(GitEngine.pull merge 守卫顺序 + 冲突「保留编辑」点击单测)曾为 591/591;DIFF-446 曾为 589/589;DIFF-445 曾为 584/584;DIFF-444 曾为 579/579;DIFF-443(index.lock 恢复)曾为 577/577;DIFF-442(fileDiffs 路径规则)曾为 574/574;DIFF-441(冲突 reload/keep + 帧 146)曾为 570/570;DIFF-440(另存副本 + deleted 冲突)曾为 563/563;DIFF-439(VaultRevisionMonitorjsonVaultApplyExternalChange 冲突集成 + Git theirs Tab 帧 144 + 产品窗冲突手工说明)在 DIFF-438~436 之后曾为 559/559CryptoEngineTest.generatesRsaAndSm2RoundTrips 曾偶发失败,隔离重跑通过)(0 failed / 0 skipped)(含 JsonVaultImportTestVaultExportContentTestVaultMoveTest.moveAffectsOpenPathMatchesElectronAffectsSelectionJsonPathNodePreviewTestJsonInspectorResultTest.applyPathPickerChoice_* / applyInlinePathTreePreview_*;Zulu 21、--offlineCryptoEngineTest.generatesRsaAndSm2RoundTrips 曾单次失败,隔离重跑通过;含 EditorFindHighlightTestFindBarKeyHandlingTestRstaFindNavigationTestFindHighlightTransformationTestToolModalLifecycleTestToolModalOverlaysTestVaultSelectionPathTestNoteVaultTestJsonSessionSnapshotTestQuickNoteSessionSnapshotTest)。F00–F25 主窗运行截图已收入 docs/evidence/2026-09-15-inspector-screencapture/windows/。有窗口帧不等于整行已验收。设置页语言/外观、JSON Vault 搜索、HTTP 集合搜索有焦点环;首页 mootool.luoboduner.com 外描边见 126-home-tab-focus.png;Compose 回归另见 127159(含 HTTP 发送/翻译立即见 DIFF-107;侧栏/强调色见 DIFF-433;命令盘见 DIFF-434、关闭钮 Tab 见 DIFF-492 149;Vault 外部冲突见 DIFF-436DIFF-441;冲突对话框三钮点击见 DIFF-447DIFF-448;Git merge 冲突操作见 DIFF-437;JSON 检查器内联路径查询见 147/DIFF-456;JSONPath 弹层见 148/DIFF-457)。Vault/Git 产品主窗冲突截图步骤见 docs/evidence/2026-09-17-vault-conflict-product-window/results.md未执行)。其余页面 Tab 走查、系统 IME 手工、托盘 TCC、六套 CSS 逐选择器皮肤、三平台安装未测。

测试层级:

层级 验证对象 不能代替
纯逻辑/fixture 算法、解析、模型、版本/路径、错误 输入法和真实文件系统
临时目录/DB 集成 设置、迁移、原子保存、WAL 备份、watcher、冲突 真正安装/卸载
受控网络/进程 HTTP 参数、超限/取消、输出上限、停止后代 在线服务真实可达性
Compose UI 导航、语义、控件动作、焦点、分栏 Swing 编辑器内部节点完整覆盖
Swing/原生集成 IME、undo、列编辑、快捷键、弹层、拖放 headless 单测
安装镜像/目标 OS runtime、native lib、权限、identity、升级卸载 run 或 IDE 预览

4. 必须通过的关键场景

编号 场景 结果要求 本轮
T01 只取出本产品目录构建 不读取相邻源码/资源/构建产物,正常第三方依赖可下载 本机构建通过;未做“拷贝到仓库外”复测
T02 无外部 Java 安装的干净系统启动镜像 自带 runtime 可运行常规工具 本机 app-image 使用捆绑 runtime 启动成功;不是干净机器
T03 26 项导航/搜索/隐藏/分组 不漏工具,隐藏仍可搜,分组删除不删数据 注册表单测通过;UI 待验收
T04 切工具再返回、重启 输入/选项/Tab/路径恢复 JSON 与时间转换会话可持久化;完整重启 UI 未测
T05–T07 编辑器分离/IME/列编辑 见规格 列编辑引擎、5 MiB setText、短行粘贴补齐与 JFrame 派发拖选+IME 提交/预编辑不落盘单测已过;快捷键在预编辑中让路见 DIFF-064。用户手工窗口手势/分离未测
T08 JSON 重复 key/大整数/filter 真实执行 单测覆盖重复 key、9007199254740993、JSONPath filter/slice/union/$../转义键与非法路径
T09–T20 其余关键场景 见规格 未测

5. 性能目标与测量方式

初始目标未改,尚未按发布镜像采样。不要把本次开发机 run/单测时间当成冷启动指标。

6. 视觉与平台签收

平台 构建 镜像启动 安装/权限 交互/并存/升级卸载 当前结论
macOS arm64 未测 未测 未测 未测 不可声明已支持
macOS x64(条件) 本机 createDistributable 通过 隔离 profile 进程存活 未做安装器/公证 未测 开发机可用,非正式支持
Windows x64 未测 未测 未测 未测 不可声明已支持
Linux x64 X11 未测 未测 未测 未测 不可声明已支持
Linux x64 Wayland 未测 未测 未测 未测 单列 portal/窗口限制

列编辑/系统 IME 手工验收清单与已拍帧边界见 docs/evidence/2026-09-16-editor-manual-acceptance/results.md未执行手工项,不能标 F04/F01 编辑器已验收)。

视觉:本机已用 screencapture -l 截取 F00–F25 主窗、浅色首页/JSON/随手记/HTTP/设置、F00–F25 与设置的 960 帧、关闭确认 overlay(114-close-ask-overlay.png),见 docs/evidence/2026-09-15-inspector-screencapture/windows/。JSON 产品窗 Alt 拖选见 115-json-column-edit-product.png;列选写入 ASCII x122-json-column-type.png(不是 IME)。焦点环:设置语言/外观、JSON Vault 搜索(120)、HTTP 集合搜索(118)、JSON「复制」外描边(123-json-copy-focus.png)、首页站点链接(126-home-tab-focus.png)。compact-960-focus-ring.png 是 Compose 测试对真实按钮 requestFocus() 的场景图;70-column-edit-jframe.png 是列编辑测试窗,二者都不能代替产品窗口 IME 手工验收。docs/evidence/2026-09-14-shell-theme/boards/jframe-paint-960.png 同样不能代替安装镜像或主窗手势。

7. 证据记录模板

后续每阶段建立 docs/evidence/YYYY-MM-DD-阶段/。见既有证据目录,以及 docs/evidence/2026-09-14-update/docs/evidence/2026-09-14-parity-gap/docs/evidence/2026-09-14-layout-theme/docs/evidence/2026-09-14-jsonpath-history/docs/evidence/2026-09-14-history-settings/docs/evidence/2026-09-14-shell-theme/docs/evidence/2026-09-15-tray-density/docs/evidence/2026-09-15-compact-font-shortcuts/docs/evidence/2026-09-15-note-toolbar/docs/evidence/2026-09-15-vault-sort-shortcuts/docs/evidence/2026-09-15-vault-search-index/docs/evidence/2026-09-15-inspector-tree-keys/docs/evidence/2026-09-15-follow-tail-overflow/docs/evidence/2026-09-15-context-menu-panes/docs/evidence/2026-09-15-detach-focus-minsize/docs/evidence/2026-09-15-diff-sync-git-preview/docs/evidence/2026-09-15-window-copy-image-git/docs/evidence/2026-09-15-reformat-color-overflow/docs/evidence/2026-09-15-http-find-copy/docs/evidence/2026-09-15-encode-crypto-select/docs/evidence/2026-09-15-http-binary-overflow/docs/evidence/2026-09-15-host-net-ua-overflow/docs/evidence/2026-09-15-http-editorhost/docs/evidence/2026-09-15-settings-chrome/docs/evidence/2026-09-15-inspector-screencapture/

8. 完成定义

阶段完成:退出条件满足并有证据;缺少条件的部分继续保留未验收。整个产品完成:F00–F25/A01–A03 的必要范围落实,平台发布矩阵与实际支持一致,安装/升级/卸载隔离真实通过,文档与软件状态一致。

当前交付是可运行的 0.1.0 开发切片,不是完整产品验收。