- data/efficiency-samples/ 23 个多语言样例 + data/manual-review-tool.html 人工审核工具 - tests/measure/measure-plugin-samples.mjs 四语言插件侧测量脚本 - tests/measure/compare-a3.mjs 聚合对比 + results(插件实测/人工基线/comparison) - performance-comparison.md 填实基线对比与结论;README 效果总结由占位改为真实数据
4.3 KiB
4.3 KiB
提效对比报告(基线 vs 提效后)
实验:A3 人工审核 vs 插件审核(23 个多语言样例,
data/efficiency-samples/) 实验工具:data/manual-review-tool.html(人工审核记录工具)+tests/measure/measure-plugin-samples.mjs(插件侧测量)
一、测量方法
场景:对同一批样例代码进行代码规范审查,比较人工审查与插件静态分析两种方式的耗时与产出。
- 基线(人工审查):3 名不同经验等级审查人(高级/中级/初级)使用人工审核记录工具
data/manual-review-tool.html逐文件「开始 → 阅读 → 记录问题 → 完成」计时,导出 JSON(tests/measure/results/manual-review-*.json)。 - 提效后(插件静态分析):使用与插件内置配置逐字一致的 ESLint / Stylelint 引擎、与 pmd.ts 一致的
PmdRunner(pmd-java-ruleset.xml)、与 sqlfluff.ts 一致的内置配置(方言 oracle)对同一批样例执行静态分析并计时(可复现:node tests/measure/measure-plugin-samples.mjs)。
样例均为含缺陷的多语言代码(JS×8 / CSS×5 / Java×6 / SQL×4),来源与人工审核工具内嵌数据一致。
二、对比维度
| 维度 | 基线(人工审查,3 人均值) | 提效后(插件静态分析) |
|---|---|---|
| 审查耗时 | 38.1 分钟(2286s,23 文件) | 8.6 秒(8576.8ms,23 文件) |
| 发现规范问题数 | 76 条(受经验与注意力影响,漏检率高) | 283 条(内置规则全覆盖) |
| 检出率(对照插件全量) | 27%(平均漏检 73%) | 100% |
| 可重复性 | 低(因人而异、难以逐字复现) | 高(同配置逐字可复现) |
三、插件侧实测数据(脚本产出)
运行:
node tests/measure/measure-plugin-samples.mjs,结果另存tests/measure/results/a3-plugin-results.json。 实测日期:2026-08-27。
| 语言 | 文件数 | 诊断数 | 耗时 |
|---|---|---|---|
| JS | 8 | 120 | 95.1ms |
| CSS | 5 | 55 | 129.3ms |
| Java | 6 | 84 | 6610.7ms(含 JVM 启动) |
| SQL | 4 | 24 | 1741.7ms(含子进程启动) |
| 合计 | 23 | 283 | 8576.8ms |
四、人工基线实测数据
工具:
data/manual-review-tool.html;原始记录见tests/measure/results/manual-review-AI-SIM-00X.json。
| 审查人 | 等级 | JS 条/耗时 | CSS 条/耗时 | Java 条/耗时 | SQL 条/耗时 | 总耗时 |
|---|---|---|---|---|---|---|
| AI-SIM-001 | 高级 | 49 / 597s | 18 / 322s | 26 / 465s | 7 / 334s | 28.6 min |
| AI-SIM-003 | 中级 | 38 / 773s | 13 / 416s | 20 / 596s | 6 / 395s | 36.3 min |
| AI-SIM-002 | 初级 | 23 / 1065s | 11 / 575s | 14 / 805s | 4 / 515s | 49.3 min |
| 均值 | — | 36.7 / 811.7s | 14.0 / 437.7s | 20.0 / 622.0s | 5.7 / 414.7s | 38.1 min |
经验等级对检出于耗时的影响符合预期:高级审查人耗时最短(28.6 min)但发现数最多;初级耗时最长(49.3 min)且发现数最少。
五、提效对比与结论
| 语言 | 人工问题数(均值) | 插件诊断数 | 人工检出率 | 人工耗时(均值) | 插件耗时 | 提速倍数 |
|---|---|---|---|---|---|---|
| JS | 36.7 | 120 | 31% | 811.7s | 95.1ms | 约 8500× |
| CSS | 14.0 | 55 | 25% | 437.7s | 129.3ms | 约 3400× |
| Java | 20.0 | 84 | 24% | 622.0s | 6610.7ms | 约 94× |
| SQL | 5.7 | 24 | 24% | 414.7s | 1741.7ms | 约 238× |
| 合计 | 76.3 | 283 | 27% | 2286s | 8576.8ms | 约 266× |
结论:
- 提效显著:23 文件多语言审查,插件静态分析 8.6 秒完成,人工平均需 38.1 分钟,整体提速约 266 倍(纯静态分析语言提速 3400× 以上,含子进程/JVM 启动的 Java/SQL 提速约 94–238 倍)。
- 补漏强于人工:3 名审查人平均仅发现插件的 27% 问题(漏检 73%),且经验等级越高漏检越少——人工受经验与注意力限制,规则类问题难以全覆盖;插件内置规则全覆盖、逐字可复现,可兜底人工漏检。
- 可复现性:插件侧同配置任意环境可复现同一结果;人工审查因人而异,无法逐字复现。
完整对比数据:
tests/measure/results/a3-comparison.json;插件侧明细:tests/measure/results/a3-plugin-results.json;人工原始记录:tests/measure/results/manual-review-AI-SIM-00X.json。