Skip to content

LinkSend v0.2.0 (Test Prerelease)

Pre-release
Pre-release

Choose a tag to compare

@Wen5555 Wen5555 released this 11 Sep 13:15

LinkSend v0.2.0 测试预发布

v0.2.0 是协议 V1 上的测试预发布版本,不代表生产可用或跨平台完整验收。源码和 tag 目标为 426d58b6ab62ab7213475007305c0a403955c00f;构建来自 main workflow run 34600609161。

本版变化

  • 修复连接/session/generation 生命周期,完成、拒绝、失败或取消后可立即创建新连接。
  • 修复接收端正常 QUIC code-0 关闭早于 stream FIN 时,发送端把已确认终态误报为失败的问题;非零关闭、reset 和 timeout 仍失败。
  • 引入 schema 2 的任务快照、单调 revision、旧 attempt 防覆盖、损坏记录隔离及迁移前 v1 备份。
  • 实现显式暂停、使用新 attempt/session/ICE 凭据的恢复、重启恢复和经过块哈希验证的缺块续传。
  • 分开报告 history_persisted、restart_recovery_supported、byte_resume_supported,并区分实际发送、重传、验证、提交和双方确认字节。
  • 增加多网卡优先级/排除、地址族与 base socket 诊断、ICE 时间线、STUN/信令计数;证据不足时继续报告 direct_unknown。
  • 桌面端统一到 Wails 3 v3.0.0-beta.18,生成 1 service / 27 methods / 14 models,加入 revision 门控、暂停/恢复能力门控和正确的原生退出保护语义。

验证

  • main core run 34600609146:PASS。
  • main desktop run 34600609047:PASS。
  • main Windows/macOS 双架构 packaging run 34600609161:PASS。
  • Windows ZIP 内 EXE FileVersion/ProductVersion 0.2.0;原生窗口句柄、idle WM_CLOSE 与 10 秒内 exit 0:PASS。
  • macOS runner 的 DMG 挂载、bundle ID/版本、目标架构和 strict ad-hoc codesign:PASS;本 release 资产的物理 Mac 启动未运行。
  • 香港测试主站运行产品 0.2.0 / 协议 V1,完成→立即完成与拒绝→立即完成:PASS。

恢复计数

  • 12 MiB 无损坏恢复:实际发送/接收 12,582,912 bytes,重传 0,唯一验证/提交 12,582,912。
  • 首个 4 MiB staging 块损坏:实际发送/接收 16,777,216 bytes,重传 4,194,304,唯一验证/提交仍为 12,582,912。
  • 完整重启两个 Service 后恢复:8,388,608 bytes,重传 0,使用新的 attempt/session。

已知限制

  • MASQUERADE-only 独立双 NAT 仍返回 CHECK_TIMEOUT,这是当前产品 FAIL;Relay/TURN 文件中继未实现,relay=false。
  • 未完成物理网络切换/睡眠/全局 IPv6、committed macOS 原生启动、Intel Mac、完整 Windows/macOS 原生交互和物理双机恢复矩阵。
  • Windows 安装器未执行安装/卸载冒烟。
  • Windows 资产未签名;macOS 仅 ad-hoc 签名,无 Developer ID,未公证。

数据与回滚

任务数据库升级为 SQLite user_version=2。迁移前会创建 task-history.sqlite.schema-v1-<UTC>.bak;旧版本不能直接打开 schema 2。需要回滚时先退出所有 LinkSend 进程,再恢复 v1 备份。香港测试主站的备份和精确回滚步骤见仓库 docs/DEPLOY-HK.md。

请使用随 Release 提供的 SHA256SUMS-v0.2.0.txt 核对下载文件;BUILD-MANIFEST-v0.2.0.json 记录真实源码、workflow、工具、签名和原生验证边界。