Build49 启动完成实时展示验收
日期:2026-09-12 · 状态:implemented · partial · 证据:E4 命令链 + E2 回放/测试
1832.309 ms candidate 和六个完整阶段,随后继续收到常规样本才发送停止。根因
Build48 只在停止后的九阶段 finalizer 中生成并发送 launch trace。最新失败会话中 drain、Raw 校验和帧分析先消耗约 8.64 秒,10 秒客户端收尾预算在启动回放完成前终止进程;同源离线仍可恢复 1838.117 ms,说明数据存在而实时编排缺失。
实现
- Decoder v5 在 Initial Frame END 与 5 ms 乱序宽限满足后发布
launch_trace(final=false)。 - Frame Time 与生命周期复用一次 RAW v2 扫描,避免实时双扫描。
- Total 与阶段按各自边界保存;其他阶段缺失不清空完整结果。
- 客户端将 launch trace 保存为 startup 事件,工作台立即更新;停止后 final 结果只做校验。
- 实时结果发布后立即释放启动语义缓存,后续同一扫描只继续投影 Frame Time,避免长时采集累积生命周期记录。
真机结果
| 项目 | 结果 |
|---|---|
| 发布顺序 | launch trace 在 stop 前出现 |
| Total | 1832.309 ms · candidate |
| 阶段 | 6 个 candidate;3 个 missing;整体 partial |
| 停止前后连续性 | 实时结果后继续收到 2 个常规样本 |
| 源质量 | liveQueueDropCount=0 |
| 用户操作到结果 | 10.658 s;1 s 产品目标仍开放 |
效率
最新失败真机 Raw 在第 43/127 个 CoreProfile chunk 即形成结果,该源事件比停止早 9443.669 ms。一次流式回放中,共享扫描处理 2,475,195 条记录耗时 4.382 s,低于 6.629 s 源到达窗口,同时投影 73 个帧事件。3 轮交错资源基准的双扫描/共享扫描中位耗时为 8.086/7.327 s(下降 9.4%),CPU 时间为 7.380/6.338 s(下降 14.1%),吞吐量提升 10.4%,最差耗时为 10.347/7.458 s;峰值 RSS 为 231.49/231.73 MiB,块 I/O 均为 0。继续处理发布后的 84 个 chunk 时总计投影 295 个帧事件,live 启动记录缓存保持为 0,不再随常规采集时长增长。
验证与开放门禁
Python 302/302;Swift 127/127,另 3 项显式资源基准跳过。Build49 x86_64 App 已通过 Developer ID Application + hardened runtime 重签、严格验签、独立解包、主程序启动和随包工具探针;由于本机未配置公证凭据,Gatekeeper 返回 Unnotarized Developer ID,该 ZIP 仅为内部测试包。原生 UI 像素级展示、终端事件到界面 1 s 延迟、完整九阶段覆盖、CoreProfile drain、完整报告 ≤2 s、公证与 stapling 继续保持开放,缺失值没有补零。