# UtiliVera Duplicates 0.9.0 独立审核报告（第八轮）

审核日期：2026-08-08  
审核角色：与第三至第七轮相同的独立软件审核师  
冻结候选：UtiliVera Duplicates 0.9.0  
得分：**99 / 100**  
缺陷：**P0 = 0，P1 = 0，P2 = 2**  
结论：**放行**

> 第七轮唯一 P1 已关闭。真实 Windows 高对比度下，完整执行 `setup → results → setup（滚动复位顶部）→ results` 后，四屏中的应用标题、副标题、语言当前值与两个显式 Tab 标题均稳定可见；设置页字段、结果表、Selection scope/rule、操作按钮和状态也完整可见。0.8 已修复的下拉当前值未回归。

## 1. 冻结对象与完整性

| 对象 | 冻结值 | 复核结果 |
|---|---|---|
| `utilivera-duplicates/dist/UtiliVeraDuplicates.exe` | 353,792 bytes；FileVersion `0.9.0.0`；SHA-256 `5F59977C69A25CCCB9569D1ED3F4F2D8043E2336CCFCD4C14933A623C754D727` | PASS |
| `outputs/UtiliVera-Duplicates/UtiliVera-Duplicates-0.9-portable.zip` | 2,408,368 bytes；SHA-256 `FD77C6B4D683744671D6F373C6601A8AA2971F2AE6ECF968A74F50D9A49640D1` | PASS |

ZIP 解压目录与 `dist` 均为 **143 个文件 / 4,674,680 bytes**；逐文件 SHA-256 比较得到 extra=0、missing=0、hash mismatch=0；ZIP 内 EXE 哈希与冻结 EXE 完全一致。

审核期间未修改源码、构建产物或冻结包；只创建独立测试副本、测试脚本、截图与本报告。

## 2. 第七轮整改核验

第七轮 P1：进入结果页后，应用标题、副标题、语言当前值和两个 Tab 标题不可见，第二次进入结果页仍会复现。

0.9.0 的整改结果：**PASS，P1 关闭。**

- 初次设置页：全局标题区、语言值、两个 Tab、Locations、Role/Path、Normal 路径、`Exact content`、`Automatic`、操作按钮与 `Ready` 全部可见。
- 首次结果页：全局标题区、语言值、两个 Tab、两张结果表、表头与数据行、`Current group`、`Keep best-ranked`、全部动作和 `Complete` 全部可见。
- 切回设置页并将滚动位置复位顶部：上述设置页内容仍完整可见。
- 再次进入结果页：上述结果页内容仍完整可见；标题区和 Tab 不再消失。
- 0.8 下拉框修复无回归：`Exact content`、`Automatic`、`Current group`、`Keep best-ranked` 均显示当前值。

| 屏幕 | 标题/副标题 | 语言值 | 两个 Tab 标题 | 页面主体字段 | 动作/状态 | 结果 |
|---|---|---|---|---|---|---|
| 初始 setup | PASS | PASS | PASS | PASS | PASS | PASS |
| 首次 results | PASS | PASS | PASS | PASS | PASS | PASS |
| 切页后 setup（顶部） | PASS | PASS | PASS | PASS | PASS | PASS |
| 切页后 results | PASS | PASS | PASS | PASS | PASS | PASS |

证据：

- [高对比度初始设置页](./审核证据-第八轮-高对比度-设置页.png)
- [高对比度首次结果页](./审核证据-第八轮-高对比度-结果页.png)
- [高对比度切页后设置页](./审核证据-第八轮-高对比度-切页后设置页.png)
- [高对比度切页后结果页](./审核证据-第八轮-高对比度-切页后结果页.png)

自动化同时确认：`HighContrast=True`、结果已载入、两个 DataGrid 名称为 `Duplicate groups` 与 `Files in group`、unnamed interactive=0、offscreen interactive=0。测试在 `finally` 中恢复原系统设置，复核 `SystemParameters.HighContrast=False`。

## 3. 独立回归与冻结入口

| 项目 | 结果 |
|---|---|
| 源码复制到全新独立目录后运行完整测试 | **73/73 PASS** |
| 冻结 CLI 冒烟 | 扫描、CSV/JSON/HTML、会话、profile、schedule 校验、缓存、规则、JSONL 进度、清理预演、稳定退出码全部 PASS |
| 冻结 UIA 设置页 | 15 buttons、4 edits、3 combo boxes、2 tabs、1 DataGrid、0 unnamed interactive controls |
| 冻结 ZIP 完整性 | 143 文件，逐哈希 0 mismatch；包内 EXE 哈希一致 |

73 项回归继续覆盖：精确内容与逐字节复核、零字节、硬链接、引用目录保护、可恢复隔离、崩溃恢复、相似图片 review-only、安全清理边界、ZIP/7Z/RAR、多种音频元数据与声学指纹、视频误报拒绝与感知帧阈值、500 文件并行、持久缓存、暂停/恢复、超长路径、设置备份、profile 迁移和会话漂移检测。未发现功能、安全或数据完整性回归。

## 4. 固定 Top 5 门禁结论

固定参考产品：AllDup、Duplicate Cleaner、dupeGuru、Auslogics Duplicate File Finder、Wise Duplicate Finder。

结合前七轮已经固定的竞品功能矩阵、风险场景和验收证据，本轮针对 0.9 冻结候选重新执行完整功能回归、冻结入口验证和唯一未关闭 P1 的真实 Windows 视觉验收。当前候选在约定的可验证门禁范围内同时具备：多模式查重、精确复核、review-only 近似结果、安全选择规则、隔离与恢复、硬链接事务恢复、媒体能力、归档能力、缓存、会话/profile、CLI、长路径、无障碍命名和高对比度完整工作流。

因此，按项目固定规则 **P0=0 且 P1=0 即可放行**，0.9.0 达到本轮“超越前五名参考软件”的发布门禁。该结论不包含用户明确暂缓的代码签名、安装/升级和真实竞品同机性能数据。

## 5. 剩余 P2

### P2-1：视频感知仅使用单个 Shell 代表缩略帧

真实视频正反例和 Hamming 阈值已通过，且始终保持 review-only；但相较多时间点帧序列，单帧方案对相同黑场片头或不同转码下 Shell 取帧变化仍不够稳健。建议后续加入均匀多点采样与序列聚合。

### P2-2：部分 7z/归档路径依赖系统 `tar.exe`

归档模式、原生 7Z 测试和多卷 RAR 已通过，但 portable 包并非所有归档路径完全自包含。建议后续内置可再分发的归档读取组件并保留沙箱式只读解析。

以上两项均不破坏当前主流程、数据安全或发布承诺，维持 P2，不阻断放行。

## 6. 评分与最终决定

| 维度 | 得分 |
|---|---:|
| 核心功能完整性 | 29 / 30 |
| 正确性与数据安全 | 25 / 25 |
| 性能与可靠性 | 14 / 15 |
| UI、易用性与无障碍 | 17 / 17 |
| 包装与工程质量 | 14 / 15 |
| **总分** | **99 / 100** |

代码签名、安装/升级、真实竞品同机数据比较按用户明确边界暂缓，不列 P1；10 种界面语言即当前要求。

**最终结论：P0=0、P1=0、P2=2。放行 UtiliVera Duplicates 0.9.0 当前冻结候选。**
