R1/R2 常规采集解耦与固定曲线窗口阶段记录
当前结论
这是阶段性内部测试构建,不是 R0~R6 全部完成交付。用户批准完整方案后,本批推进部分 R1/R2;其余范围未因打包而关闭。代码版本 Build 39,Foundation 版本仍为 2.7 Beta,产品无真机可用性结论。
已实施
- 独立 CapturePolicy;CLI 常规 Adapter 列表不再依赖展示 metricIDs。CoreProfile(供 Frame Time)与 GPUCounter 默认纳入,启动分析实际激活仍受选项控制。
- 共享源类型去重。prepare_startup/prepare_screenshots 仅是策略合同,尚未接入完整准备生命周期,绝不视为设备已武装。
- 新增 LiveTimelineBuffer;保持会话原点,展示最近 60 秒,最多 8192 个显示事件。完整原始记录和报告读取仍走旧 Session 存储,展示缓存淘汰不删除事实记录。
- 展示缓存以窗口事件 K 为边界,每次插入筛除过期点 O(K),快照排序 O(K log K),尚未宣称均摊 O(1) 环形队列实现。极端输入超过显示容量会淘汰显示事件,故此版本并非方案中的峰谷保真降采样实现。
- 工作台改为 LazyVStack;图表排序复用当前窗口结果,避免在每条曲线重复排序完整历史。屏外暂停刷新、独立刷新频率和截图缩略图后台缓存仍待完成。
- Raw 封存哈希改为 1 MiB 分块读取,避免一次分配整份 Raw。保持独立磁盘校验与原 hash 口径;时间复杂度仍 O(Raw 字节数),不是增量报告。
已执行验证
| 检查 |
结果 |
证据边界 |
| Python 全量 |
236/236 |
E2 自动回归;新增策略四种选项组合、源去重、显示配置独立 |
| Swift 全量 |
111/111 |
E2;新增 3601 事件只留 61 个窗口事件且原记录不变、乱序与容量测试 |
| 真机采集/滚动 |
未执行 |
无 E4 结论 |
| 资源前后对比 |
未完成 |
无 CPU/RSS/I/O 效率达标结论 |
| 完整报告≤2s |
未完成 |
旧串行 finalizer 仍在,禁止称完成 |
保持开放的工作
- R0:主线程 profile、同负载资源基线与两份会话身份对应确认。
- R1:启动和截图的真实提前准备、配置冻结、generation 取消与激活生命周期。
- R2:屏外订阅暂停、后台缩略图、刷新节流、峰谷保真和长会话主线程验收。Controller 完整 events/samples 仍驻留;本批仅限制显示缓存,不代表整个 App 内存有界。
- R3:单次增量派生、durable checkpoint、完整报告快速封存与崩溃恢复。
- R4:Startup 与 Frame 源缺失、分片头/时钟、丢失和目标语义。
- R5:AvailableMemory 的 61.1 逐点核对、GPU 映射、Thermal 稳定源、GPU Counter data row。
- R6:完整跨版本真机、数值校准、资源预算与正式签名公证。
发布边界
当前本机有效签名身份数量为 0。构建脚本采用 ad-hoc;不构成 Developer ID / Notary accepted / staple / Gatekeeper 正式交付。内部构建也不替代 GPL 分发结论。未修复指标继续以 missing/candidate 表达,不能仅因全部 Adapter 被选中就宣称全部数据可用。
下一阶段与整体进度
继续补齐 R0/R1 生命周期和 R2 资源证据,再进入 R3~R6。总体为局部实施、交付 partial;既有方案仍有效,用户已批准,无需重复批准。完整方案。