Alhaitham DNS Proxy 0.4 () 已发布
Alhaitham Dashboard 0.4 (167) 已发布
https://testflight.apple.com/join/pR1xwCfB
## 主要更新
本次更新相对
main 基线累计 125 次提交,重点是重构 Dashboard 的远程服务管理,并完善 App Proxy、DNS 与事务详情的稳定性。## Dashboard
### 远程服务器管理重构
- 全面更新 Clash、Stash 与 Surge 的远程服务配置。
- 支持为同一服务配置多个有序 Endpoint,并在连接失败时自动切换。
- Surge 现同时使用 HTTP 与 TCP 通道,提升策略、DNS 与流量数据的获取稳定性。
- API 凭据改由 Keychain 保存;启动时会自动清理已删除服务器遗留的凭据。
- 切换或编辑服务器时,修正 Policy 内容刷新、任务取消与凭据被误写的问题。
> 服务器配置已升级为新格式:更新后请重新添加现有远程服务器及其凭据。
### 数据与详情页面
- HTTP 事务详情改为分层展示,补充 URL、请求、响应与协议相关信息。
- DNS 详情页改为“一个记录一个折叠项”;iPhone/iPad 可折叠查看,macOS 保持完整展开。
- 改进详情折叠标题与摘要样式。
- Dashboard 的 DNS 统计会持续刷新,不再停留在旧数据。
## App Proxy 与 DNS Proxy
- 重构 App Proxy TCP Flow 处理流程,事务仅在数据实际写回应用侧后完成,改善记录状态与异常收尾的一致性。
- 修正连续 HTTP 消息的字节边界处理。
- DNS over TCP 现可正确关联同一连接中的多个请求与响应。
- 统一 Provider 的启动、休眠、唤醒与停止生命周期,避免尾部数据写入丢失。
- 修复首页统计卡片恢复与共享数据恢复流程。
## 稳定性与兼容性
- 修复旧系统上 SwiftData 继承模型唯一约束可能导致的崩溃。
- 修复 Dashboard、App Proxy 与 DNS Proxy 的 iPad 多任务方向配置。
- 清理旧 Xcode Framework 集成,统一改用 Swift Package 依赖,降低构建与嵌入配置问题。