Repository navigation
YouYu 1.7.4
YouYu 1.7.4 迭代说明
YouYu 1.7.4 针对反复出现的 GitHub Release CDN 直连慢速问题补齐两层治理:客户端在安全条件满足时自动换路,项目发布流程则在大文件传输前验证当前真实路由,并用统一工具完成远端发布校验。
客户端自动换路
更新检查和下载原本已经会在 YouYu 运行时优先使用本地 Mihomo,并在可恢复网络错误后有界尝试另一条线路。此前仍存在一种缺口:直连 CDN 可能长期保持几十 KB/s 的少量传输,不产生连接超时,因此普通错误重试不会执行。
- 更新下载会持续观察实际字节进展、平均速度和预计剩余时间;
- 只有当前为第一次直连尝试,且 YouYu 本地代理已经就绪时,才允许因异常慢速或长期无进展取消当前尝试;
- 下载随后通过现有有界回退切换到本地代理,不进入无限重试;
- 小白模式和专业模式沿用原有更新组件显示“线路不稳定,已自动切换重试”,并继续显示进度和传输量;
- 证书、TLS、HTTP 状态、安装包签名与文件完整性错误不属于可恢复线路问题,仍会停止并提示失败。
如果 YouYu 尚未运行、本地代理不可用,客户端不会为了下载更新擅自启动代理或修改系统代理;此时保留原有直连行为和失败处理。
发布 CDN 路由门禁
根目录 AGENTS.md 现在要求所有 GitHub Release 大文件操作先执行:
npm run release:network:preflight预检通过当前进程实际继承的网络环境,从最新公开安装包读取有界的 2 MB 分段,验证 HTTP 状态、字节数和最低可用速度。代理地址只记录协议、主机和端口,不输出用户名、密码、OAuth token 或带认证 URL;脚本也不会在失败后擅自清空代理并改走直连。
GitHub Release 上传完成后执行:
npm run release:verify:remote远端校验器会:
- 先重复 CDN 路由预检;
- 通过公开 GitHub API 核对 Release 不是草稿或预发布,并且资产集合精确等于规定的 11 项;
- 使用 Schannel 吊销兼容参数、重试、低速中止和断点续传下载远端资产;
- 验证三个更新描述文件分别指向标准、内部和无桌宠安装包;
- 复用仓库 SHA256 校验器核对其余十个资产,并要求远端
SHA256SUMS.txt与本地逐字节一致; - 无论成功或失败都删除独立临时目录。
保持不变
- 自动节点的日本优先、地区健康回退和后台逐用户策略保持 1.7.3 行为;
- 手动节点、规则、DNS、TUN、订阅和三个更新通道保持原有兼容性;
- 更新界面没有增加设置项、弹窗、边框或说明性小字;
- 本机代理端口不写死,客户端继续读取当前运行时的实际端口。