P2 · validation · implemented · partial · E4 · 2026-09-08
Startup 商店 App 跨系统 E4 S5 结果
S5 完成 iOS 17/18、2 台设备、3 个商店 App、每 App 5 次,共 30 轮 process-cold 验收。唯一启动、端到端点击时延和采集停止通过;CoreProfile 九阶段完整率 0/30,Profile 保持 candidate。
门禁结果
| 项目 | 结果 | 状态 |
|---|---|---|
| 矩阵 | 2 设备 × 3 App × 5 轮 = 30 | 通过 |
| 唯一启动 | 30/30;request=1、ack=1、new PID=1、retry=0 | 通过 |
| Click-to-launch | 30/30 end-to-end;P95 42.679 ms;Max 44.120 ms | 通过 |
| 采集停止 | Max 39.680 ms | 通过 |
| 九阶段完整率 | 0/30 | 未通过 |
Profile
| 匿名设备 | OS Build | Profile | trace-code hash | 状态 |
|---|---|---|---|---|
| 设备 A | 21A327 | startup-coreprofile-lifecycle.ios17.21A327.v1 | 66e49938…aecb16d | candidate |
| 设备 B | 22C161 | startup-coreprofile-lifecycle.ios18.22C161.v1 | 66e49938…aecb16d | candidate |
九阶段分析
设备 A 的 15 份报告为 11 partial / 4 missing,已解码 24,522,019 条 KDebug、目标归因 74,604 条,但必需 BEGIN/END 不完整;设备 B 的 15 份均缺目标 lifecycle 事件。两类结果的有效报告均无 live queue 丢包。
冻结参考源明确使用 0x31CA0006 作 Initial Frame END;本批没有把其他未知 code 猜测为终点,也没有用局部 Span 伪造 Total。
停止链修正
capture_stopped 现在由 stdin owner 在收到合法 stop 帧时立即单次发出,该边界后抑制 UI sample;CoreProfile drain、Raw finalize 和报告生成独立继续。采集停止 Max 收敛到 39.680 ms,报告耗时 4.259–105.288 s 继续列入大 Raw 性能门禁。
证据与下一阶段
Python 3.12 全量 213/213,Swift 全量 106/106,Collector Core 以 pymobiledevice3 11.3.1 构建成功。匿名数据:E4 JSON。
下一阶段为 S6 商店 App Lifecycle 源与 Schema 重定界:先取得目标线程归因、trace-code 与 CoreProfile 配置差分证据,再决定 Clean Adapter 的扩展范围。Startup S1~S5 产品链和审计链已完成,三项质量门禁通过,九阶段门禁保持 partial。