Skip to content

v2.8.0

Choose a tag to compare

@bcblr1993 bcblr1993 released this 08 Nov 00:35
· 3 commits to main since this release

AetherRoute 2.8.0

基于全功能模块端到端代码审查(Code Review)与运行时日志联合审计,交付 零分配连接出站分类器、策略组重复节点名防崩溃与 O(1) 预索引、透明代理并发 DNS 预算控制及网络诊断真实连通性探测。适用于 macOS 15 及以上、Apple Silicon。

新增与优化

  • 零分配连接出站分类器与 2,000 连接表格快速路径(ConnectionOutletClassifier & ConnectionsView):
    • 采用零数组分配的切片扫描与反向箭头区间定位替代 components(separatedBy:) 及全串 .uppercased();未开启筛选时跳过 2,000 次应用图标目录查询,使 large 档位(2,000 条连接)下「连接」页切页 p50 从 115.4 ms 降至 106.3 ms,showcase 最大切页延迟从 155.4 ms 降至 129.1 ms(降低 26.3 ms)。
  • 策略组重复节点名防崩溃与 500 节点 O(1) 字典预索引(ProxyPageNodeOrder & ProxiesView):
    • 新增 uniqueMembersPreservingOrder(_:) 保序去重与 O(1) 状态/协议/链式代理字典预索引,彻底消除第三方订阅包含同名节点时 Dictionary(uniqueKeysWithValues:) 触发崩溃的隐患,并将 500 节点列表构建从 O(N^2) 降为 O(N)。
  • 规则页 REJECT-DROP 筛选对齐与万级规则快速路径(RulesView):
    • 修复 RuleActionFilter 对 REJECT-DROP 规则的归类一致性,并在默认无筛选状态下走 O(1) 快速路径。
  • 透明代理上游域名并发解析与总超时预算防卡死(TransparentProxyUpstreamEndpointResolver):
    • 按主机名去重并并发执行上游节点 DNS 解析(默认 3.5s 总预算上限),防止订阅中失效/慢速 DNS 域名阻塞 startProxy 触发 25 秒连接看门狗超时。
  • DNS 页网络诊断医生真实 HTTP 连通性探测与过期规则集统计(NetworkDiagnosticDoctor & DNSView):
    • 新增真实国内直连与代理出站 HTTP 往返探测及自定义规则集过期检测(countStaleRuleProviders)。

验证

  • 本机 test_fast_lane.sh(14 步 68s 全通)与完整 scripts/test.sh 零警告通过。
  • 隔离环境 vm:macos27 6 维网络矩阵(210 项检查:157 PASS / 0 FAIL / 53 SKIP)、远程 arm64 源码门禁与 300s UI 卡顿及内存预算门禁(showcase 切页 p50=76.3 ms / p95=114.5 ms / max=129.1 ms,内存 median 68 MB / max 82 MB / growth +1 MB;large 切页 p50=74.3 ms / p95=111.5 ms / max=121.1 ms,内存 median 65 MB / max 80 MB / growth +1 MB)全部通过。
  • 隔离环境 vm:macos27 绑定正式公证候选包(60f1e663deaae117ce984115ebb76bc427a325c2a4cdfa680bfaa5ede3504c7b)完成 TUN 与透明代理双引擎六项运行时证据验证:50 秒 TLS 空闲 keep-alive 复用通过、2 MiB 大请求上传通过(TUN 0.904s、透明代理 0.918s)、3 轮共 6 次网卡断连切换恢复全部通过(TUN 1/1/2/2/3/0 s、透明代理 2/2/1/3/0/2 s,零手动重连)。
  • 正式包完成 Developer ID 签名、Apple 官方公证、票据装订和 Sparkle Ed25519 更新签名验证。

完整验收与边界说明。