nexify 版本演进报告 · 基础 v11 → v14
基础版本 v11 → 当前 v14 · 语料:codewhale / zed / pdf-inspector · 生成 2026-09-03T14:45 UTC
口径注:v14 起 UNRESOLVED 不再计入 Rust std / Python builtin 等合理不绑类(指标治理 post-11 · bb8989e),故 v13→v14 的 UNRESOLVED 断崖与绑定率跳涨属口径变化,非召回提升;INFERRED resolved / AMBIGUOUS / 哨兵逐位零变化是真实约束。
1. codewhale(主回归基准)
| 指标 | v11 | v12 | v13 | v14 | Δ(最后两版) |
|---|
| EXTRACTED / extracted | 40,673 | 40,673 | 40,673 | 40,673 | 0 |
| 推断已解析(INFERRED resolved) | 21,622 | 22,451 | 22,451 | 22,451 | 0 |
| 推断未决(INFERRED extracted) | 6,621 | 6,621 | 6,621 | 6,621 | 0 |
| 歧义(AMBIGUOUS) | 252 | 252 | 252 | 252 | 0 |
| 未解析(UNRESOLVED) | 33,953 | 33,124 | 33,124 | 4,901 | −28,223 |
| 绑定率(仅 Rust 推断面) | 38.7% | 40.2% | 40.2% | 81.3% | +41.1% |
| 冷建图耗时中位数(s) | — | 33.36s | 32.71s | 33.35s | +0.64s |
| 解析耗时(s) | — | 7.59s | 6.92s | 6.81s | −0.11s |
2. Zed(超大 workspace)
| 指标 | v11 | v12 | v13 | v14 | Δ(最后两版) |
|---|
| EXTRACTED / extracted | 30,276 | 30,276 | 30,276 | 30,276 | 0 |
| 推断已解析(INFERRED resolved) | 31,651 | 36,151 | 37,218 | 37,218 | 0 |
| 推断未决(INFERRED extracted) | 13,681 | 13,681 | 13,681 | 13,681 | 0 |
| 歧义(AMBIGUOUS) | 8,104 | 8,104 | 6,752 | 6,752 | 0 |
| 未解析(UNRESOLVED) | 43,398 | 38,898 | 38,898 | 6,193 | −32,705 |
| 绑定率(仅 Rust 推断面) | 38.1% | 43.5% | 44.9% | 74.2% | +29.3% |
| 冷建图耗时中位数(s) | — | 79.64s | 80.62s | 76.15s | −4.47s |
| 解析耗时(s) | — | 34.41s | 34.27s | 32.49s | −1.78s |
3. pdf-inspector(单 package)
| 指标 | v11 | v12 | v13 | v14 | Δ(最后两版) |
|---|
| EXTRACTED / extracted | 3,130 | 3,130 | 3,130 | 3,130 | 0 |
| 推断已解析(INFERRED resolved) | 603 | 603 | 603 | 603 | 0 |
| 推断未决(INFERRED extracted) | 153 | 153 | 153 | 153 | 0 |
| 歧义(AMBIGUOUS) | 4 | 4 | 4 | 4 | 0 |
| 未解析(UNRESOLVED) | 1,553 | 1,553 | 1,553 | 551 | −1,002 |
| 绑定率(仅 Rust 推断面) | 27.9% | 27.9% | 27.9% | 52.1% | +24.2% |
| 冷建图耗时中位数(s) | — | 2.13s | 1.4s | 1.47s | +0.07s |
| 解析耗时(s) | — | 0.26s | 0.18s | 0.19s | +0.02s |
4. 召回哨兵(codewhale,不得回退)
| 哨兵 | v11 | v12 | v13 | v14 | 判定 |
|---|
| ToolContext::new 构造器 | 617 | 617 | 617 | 617 | 保持 |
| ViewStack::push 方法 | 23 | 23 | 23 | 23 | 保持 |
| user_home 跨 crate | 16 | 16 | 16 | 16 | 保持 |
| FleetRunId::from 限定路径 | 57 | 57 | 57 | 57 | 保持 |
| re-export 五符号主哨兵 | 81 | 81 | 81 | 81 | 保持 |
| RuntimeToolServices::default | 9 | 9 | 9 | 9 | 保持 |
| drain_pending_steers 方法 | 6 | 6 | 6 | 6 | 保持 |
| workspace 子模块直导 | 27 | 27 | 27 | 27 | 保持 |
| guard 内调用 | 1 | 1 | 1 | 1 | 保持 |
| discover 跨模块 | 5 | 5 | 5 | 5 | 保持 |
色义:绿 = 进化(耗时下降 / 召回上升 / 漏绑下降 / 哨兵保持);红 = 退化(耗时上升 / 哨兵回退);灰 = 持平或缺失。耗时来自各版本 scan 采样中位数(≥2 次);Δ=0 灰,无噪声特判。
5. 候选改善清单(按推荐价值排序)
| # | 内容 | 规模 | 推荐价值 | 验收指针 |
|---|
post-10 | `use super::*` 透传 + `pub(crate) use` expand 垃圾导入 | 千级 UNRESOLVED | 高 | 主靶子:px/div 收敛 + 哨兵零回退 |
post-12 | 同 crate 模块级 pub fn 跨模块调用未解析(rel_path/init_test 形态) | 660 条(净 UNRESOLVED 10.7%) | 高 | rel_path(`crates/path/src/rel_path.rs:472` pub fn 摆着没绑上)+ init_test 测试辅助;use/模块级可见性第三形态 |
post-9 | 单 package crate 根路径 + 同 crate 模块级 re-export | 233 条 | 中高 | a=167(crate 根路径)、b=66(模块级 use);与 post-10 部分同源可合并排期 |
post-8 | 嵌套 fn 遮蔽(函数体内嵌套 fn 加入 local_bindings) | 2 确证 | 低 | 小项,可搭车 |
P3 | 测试双变体方法歧义(接收者类型消歧增强) | 8,104 AMBIGUOUS | 低 | 安全弃绑非误绑;需接收者消歧 |
长期 | references 类型使用边 + 社区/枢纽榜(Leiden/god-nodes) | — | 待评估 | M5 候选 |
长期 | ≤2 字符裸标签白名单(scoped use 已解决,剩无 use 裸标签) | 825 条基线 | 待评估 | 常见名保护残余短板 |
循环:本报告 → 从中选取推荐价值最高的候选派活 → 子代理开发 → 新版本 v15 → 三语料全量扫描 + 归档 → 生成 nexify-v11-v15-report.html(数据叠加)。推荐价值 = 收益(召回/精度/规模)÷ 成本(改动量/风险)。