记录桌面网络探测失败

桌面网络状态探测保留 DNS 和 TCP 失败原因日志

桌面壳配置检查拒绝网络探测静默吞错

共享决策日志补充桌面网络探测失败边界
This commit is contained in:
2026-06-20 10:17:53 +08:00
parent 7c8ef52e86
commit 15faa50992
3 changed files with 70 additions and 13 deletions
@@ -2916,6 +2916,13 @@
- 影响范围:`apps/desktop-shell/src-tauri/src/shell/navigation.rs``apps/desktop-shell/scripts/check-config.mjs`
- 验证方式:`cargo test --manifest-path apps/desktop-shell/src-tauri/Cargo.toml shell::navigation``npm run desktop-shell:typecheck``npm run check:native-shells``npm run check:encoding``git diff --check`
## 2026-06-20 桌面壳网络探测失败不可静默
- 背景:Tauri 桌面壳 `network.status` 会把主站 TCP 可达性作为当前宿主网络状态;如果探测目标解析、DNS 或 TCP 连接失败后只折叠为 offline,H5 可以收到离线状态,但开发侧无法判断是配置、解析还是连接问题。
- 决策:`resolve_desktop_network_status()` 必须通过 `resolve_desktop_network_reachability(...)` 得到可达性或失败原因;失败时记录 `desktop network reachability probe failed: ...`,再继续按离线 payload 返回。配置检查拒绝网络探测重新用 `.to_socket_addrs().ok()``connect_timeout(...).map(...).unwrap_or(false)` 静默吞错。
- 影响范围:`apps/desktop-shell/src-tauri/src/shell/network.rs``apps/desktop-shell/scripts/check-config.mjs`
- 验证方式:`cargo test --manifest-path apps/desktop-shell/src-tauri/Cargo.toml shell::network``npm run desktop-shell:typecheck``npm run check:native-shells``npm run check:encoding``git diff --check`
## 2026-06-20 移动壳 EAS 原生包构建 profile
- 背景:移动壳已能通过 Expo managed config 和 Metro production bundle smoke,但缺少原生安装包构建 profile;如果只保留 `expo export`,无法证明 Android / iOS 壳有进入原生分发链路的配置。