https://testflight.apple.com/join/KVmQFXAA
Alhaitham DNS Proxy 0.3 (67) 已发布
https://testflight.apple.com/join/r8yjKr4P
Alhaitham Dashboard 0.4 (155) 已发布
https://testflight.apple.com/join/pR1xwCfB
## 主要更新
本次更新距离
main 基线约 26 天,累计 410 次提交。更新重点不是单纯增加页面,而是围绕 App Proxy Flow、事务体系、应用模型、Forwarder 调度与 SwiftData 写入边界进行了一轮完整重构。## 公共更新
### Flow / Policy / Transaction 数据结构重构
- 统一 Flow 基础模型,回收旧 AppFlow / DNSFlow 分裂结构。
- Flow、Policy、Transaction 的展示、筛选、统计卡片与外观设置入口进一步合并。
- 运行期写入统一以
uid / pid 和轻量值类型为边界,减少模型快照和重复持久化字段。### 应用层事务体系增强
- 支持 HTTP、DNS 与通用 AppLayer 事务的分层记录。
- 事务模型进一步区分传输层信息、应用层协议信息、请求/响应 payload 与长期可复用应用模型。
- HTTP 事务改为保留原始请求/响应字节,并通过 HTTP metadata 计算完整度与展示字段。
### TLS 元数据能力
- 新增 `DataProviderTLS`,引入 TLS Record / ClientHello 建模。
- Flow 可以展示 TLS ClientHello 相关元数据,例如 SNI。
- TLS 解析从 AppProxyFlow 内部逻辑迁移到 DataProvider / Shared 边界,便于复用和展示。
## App Proxy 更新
### AppProxyFlow 运行时结构重构
- AppProxyFlow 模块拆分为 Core、Routing、Relay、DNS、Transaction 等边界。
- TCP / UDP Relay 入口重新整理,Pipeline 层命名收敛为 Routing,App 叶子层收敛为 Relay。
- 修正
NEAppProxyFlow 空读 EOF 语义,避免把空数据当作普通 chunk 继续循环。### TCP / HTTP Relay 改进
- HTTP Relay 改为通过
HTTPManager 增量写入请求与响应模型。- 保留 HTTP relay 原始数据,修正
rawValue 保真、Content-Length、部分响应边界与空响应 EOF 语义。- 应用层 Reject 支持按请求版本构造响应,并释放当前事务边界。
### UDP / DNS Relay 改进
- UDP relay 收敛为单入口和四模式调度。
- Forwarder 支持 UDP 数据报异步入队发送,DNS 转发切换到新的 Forwarder 池。
- DoH 路径切换到 URLSession manager,普通转发路径继续走 Forwarder manager。
## DNS Proxy 更新
- 改进 DNS over TCP 长度前缀识别与事务写入。
- 修正 system DNS endpoint 转发、空服务器 endpoint 兜底与 DNS 默认策略解析上下文。
- DNS 详情页、header flags、记录计数字段、可展开详情 Section 与事务页面展示均有调整。
## Dashboard / 数据视图更新
- 新增或改进 HTTP、DNS、Flow、Policy、Transaction 的聚焦页面、侧栏、筛选、统计卡片与外观设置。
- Dashboard 接入 App Proxy 默认策略设置、App Proxy DNS 设置、统一事务入口和缓存清理入口。
- Server 值结构、共享数据源清理、来源过滤与本地化资源同步更新。