Skip to content

v1.9.1

Choose a tag to compare

@bcblr1993 bcblr1993 released this 28 Oct 05:09
· 75 commits to main since this release

AetherRoute 1.9.1

修复 App 卡在「正在恢复」不再自动重连、切换订阅后微信等国内应用一段时间无法使用,以及 Trojan 节点 UDP 偶发丢包、数据错乱的问题。

修复

• 自动恢复不再卡在「正在恢复」:网络扩展意外终止后,App 曾因隧道仍处于启用状态而放弃每一次自动重连,界面一直停在「正在恢复,隧道保持启用,正在等待网络恢复」。现在会从恢复状态继续自动重连,每条恢复路径都设有 45 秒看门狗;从未连上过的会话启动失败时立即报错。
• 切换订阅后国内应用可用:国内直连 DNS 改写现在能正确处理无缩进的列表和行内 # 注释,nameserver-policy 保留全部解析器;超过 512 KB 的配置改用 ARZ1 压缩传输,大订阅原地重载,不再整条隧道重连。
• 透明代理大订阅:节点地址超过排除上限时保留已解析的部分,只有全部解析失败才报错,不再导致启动失败。
• Trojan UDP 帧错位(内核 ad7bac5):UDP over TLS 在部分读、部分写时会丢失或重复发送字节,导致后续所有数据包错位。现在读取先缓冲、拼成完整帧再解析,写入从中断处续写;超过 65535 字节的包会被拒绝,不再截断长度字段。
• Mihomo include-all / filter 策略组展开;混合订阅中不支持的旧协议节点(ssr、snell)会被跳过,不再导致整份配置无法加载。

验证与质量保证

  1. 本地核心回归(test_network_switch_gate.py、EngineReconnect、RuntimeEnvironment、test.sh)全部通过,零代码警告;XCTest 548 + 96 + 24 项、内核 378 项单元测试 0 失败。新增的 Trojan 回归测试在 1.9.0 代码上失败,在新代码上通过。
  2. 12 协议真实互通门禁全部通过(matrix、reality、wireguard、shadowquic、ssh,48 项用例通过,26 次证书拒绝符合预期);修复后矩阵连跑 6 轮,没有再出现 payload changed。
  3. Tart 虚拟机 6 维网络矩阵:6 个组合全部通过(160 PASS、0 FAIL、50 SKIP),包括透明代理 5 项专项检查、50 秒空闲复用和 2 MiB 上传。
  4. Mac mini 真机:远程 ARM64 门禁通过;TUN 与透明代理的空闲复用、2 MiB 上传全部通过,有线与无线网卡来回切换 6 次,分别在 1–2 秒和 2–3 秒内自动恢复。
  5. UI 性能与内存:展示档切页 p95 148.4 ms、内存中位数 67 MB;large 档切页 p95 146.2 ms、内存中位数 65 MB,全部在预算内。

正式发布规范执行核验

  1. 采用标准生产核心(Normal Core Variant),发布通道为 stable;
  2. 主程序与两项系统网络扩展均通过 Developer ID 签名,并开启 Hardened Runtime;
  3. 已通过 Apple 官方公证,App 与 DMG 均已装订票据(Staple);
  4. Sparkle 更新清单使用 Ed25519 签名;
  5. 磁盘镜像不含任何测试说明文件,卷标为 AetherRoute 1.9.1。