P2 · validation · implemented · partial · E2 · 2026-09-07
Startup Lifecycle v3 Decoder S3 结果
S3 完成 iOS 15~18 candidate Profile、generation/PID/TID 归属、5 ms 乱序、多 Span、整数 Mach 公式、N/A/missing 与哈希交付链。未知系统和未知 Profile fail-closed;商店 App E4 尚未执行。本批冻结身份为 Collector Foundation 2.4-beta、Mac App 1.0.0 (34)。
冻结公式
durationNs(i) = floor(((endTick(i) - beginTick(i)) × numer) / denom) phaseAccumulatedMs(p) = Σ durationNs(complete spans of p) / 1,000,000 appLaunchTotalMs = floor((max(InitialFrame.endTick) - min(complete SystemInterface.beginTick)) × numer / denom) / 1,000,000
阶段可重复、可重叠,所以 Total 不等于全部 Span 耗时之和。缺必需阶段、跨代配对、live queue 丢包和终点缺失均不输出业务数值。
实现
| 能力 | 产物/规则 |
|---|---|
| Profile | startup-coreprofile-lifecycle.ios15-18.reference.v1;未知系统 unsupported |
| 归属/配对 | generation + PID/TID;Mach tick 稳定排序;每线程/阶段 BEGIN/END 栈 |
| 九阶段 | 保留同名多 Span;完整 Span 求和;条件回调可为 not-applicable |
| 源质量 | prelaunch ring 覆盖只审计;正式启动后 live queue drop 使业务值 missing |
| 不可变交付 | decoder-profile.json、launch-spans.jsonl、launch-trace-report.json 与 SHA-256 |
验证
| 验证 | 结果 | 等级 |
|---|---|---|
| Python 3.12 | 204/204 | E2 |
| Swift | 101/101 | E2 |
| Foundation / Mac App | 2.4-beta / 1.0.0 (34) | E2 |
| Release App | x86_64 构建、ad-hoc 严格验签、包内 9/9 probe 通过 | E2 |
| Profile/乱序/generation/N/A/source loss | 通过 | E2 |
| Raw 双重重放/产物哈希 | 一致 | E2 |
| Collector Core / pymobiledevice3 probe | 构建成功 / 11.3.1 · 9/9 ready | E2 |
| VitePress | 构建成功 / 0 死链 | E2 |
| 商店 App 跨版本 | 未执行 | E4 开放 |
下一阶段
S4 使用同一 Swift 模型完成启动摘要、九阶段数值与同轴甘特;S5 再以 iOS 17/18 商店 App 关闭唯一启动、完整率和时延门禁,并补 iOS 15/16 与精确 build/hash Profile。