实施依据与边界 ​
Project Owner 2026-10-12 当前指令明确选定已测试的 C0 启动配置,要求加入 main 并对目标 App A/B/C/D 各固定五轮,总计 20 轮,100% 获取 Total。本记录先于产品改动落盘;当前角色 Implementation AI,只落实 Owner 指定的已验证配置,不自行修改架构、指标公式或裁定产品阶段 PASS。
基线 main ebad56b39b2a4416bc0eabd95a48a70fb597356d,有既存 51 modified / 866 untracked;本批不归并、删除、stash 或 reset 其他工作。前批私有实验仅为配置证据:目标 App A 固定十轮 Total 10/10,B/C/D 各十轮共 Total 30/30;真实端点重算一致,仍 candidate,不证明通用长期稳定。B/D 六项阶段、C 八项阶段,条件回调为 not-applicable,不要求九项全有值来放行本批 Total。
最小实现 ​
- 独立
startup_profile.py固定startup-c0.candidate.v1请求构造器;新鲜 UUID / 每次独立 dict/list,O(10) 固定数量无文件/网络 I/O。 DedicatedStartupChannel.prepare()为实际 Startup channel 添加默认 profile 标记;不改 provider/DTX/transport prewarm/ready/start/launch 顺序,不修改 realtime.py 的既有 WIP。CoreProfileRawAdapter._make_stream()识别 profile,使用同一 pinned pymobiledevice3 tap,录制进入前设置真实_config。仅该 profile 采用 C0;没有 profile 的 adapter / 后续非启动 frame 配置维持旧行为;未知 profile 显式报错。旧行为保留显式legacy内部回滚配置。- effective_config 保存真实请求;signature 以 UUID 除外的真实配置及 profile 生成,既有 ring 实验显式覆盖保持可追溯,未开启时与已验证 C0 完全一致。
- 不增加采样 trigger,不改 clock/decoder/Total 端点身份门/质量/not-applicable/发布频率/窗口/收尾/无侵入约束。
真实 C0 设备请求(完整字典,UUID 每轮新生成) ​
{
"bm": 0,
"curkt": false,
"rp": 10,
"ur": 500,
"tc": [{
"tk": 3,
"kdf2": [830472456,728104956,117440520,117440516,520552500,520552452,735838224,735641596,730333180,835321860],
"uuid": "<fresh-uppercase-uuid>"
}]
}
ta 与 csd 省略,不是空数组/0 的替代;不声明未公开字段的确切设备内部单位/机制。显式 ring 实验参数若启用,属于与本批默认不同的请求,不引用本批 E4。名义 options 中旧 filters/callstackDepth/bufferMode 不当作发送值,以 effective_config 为事实。
指标合同(保持不变) ​
metricID ios.process.startup.app_launch_total_ms;scope process;unit milliseconds;算法 core-profile-app-lifecycle.candidate.v9。
Total_ms = (selected(frame-terminal.machTicks) - selected(system-begin.machTicks)) × numer / denom / 1e6,依据本轮设备 timebase,产品 tick→ns 整数转换及 ms 六位展示沿用既有代码。同一 source/epoch/reconnect/target generation 的选中 System BEGIN / IFR opener / terminal 才计入 clean paired-candidate。非端点求和,不跨轮/跨源拼接;缺失保持 null,repaired 不冒充本批准确获取;不更改 Registry/指标数量/candidate 状态。
测试计划与预定门 ​
| 层级 | 测试 | 覆盖目标 |
|---|---|---|
| E2 | 新配置构造单测 | 完整字典、省略 ta/csd、fresh UUID、无共享可变对象、错误 profile |
| E2 | adapter / channel 集成 | 默认只作用独立 Startup,legacy/frame 不变;effective config/signature 对实际配置敏感且不随 UUID 变化;ring 显式覆盖进入签名;预热不进入录制 |
| E2 | Startup / channel / bootstrap / Raw / source 对应回归 + 完整 Python/Swift | 保留现有错误/跳过,失败不改指标求绿 |
| E2 | 真实规模离线前后性能 | 相同已封存 Raw 与构造规模,wall/CPU/RSS/I/O/首响应及最差;不由配置构造微基准代替设备端性能 |
| E3 | 新打包来源验证 | 当前模块字节码匹配 main 工作树,实际 freeze 自带新 profile;无测试覆盖才有效;源码无私有绝对路径依赖 |
| E4 | 默认产品采集器四目标各固定五轮 | 新产品默认配置,不加载私有 C0 覆盖;序号固定,不重试/补轮/择优;每目标5/5,合计20/20 |
本批成功条件:Total 非 null、totalQuality=candidate、endpointIntegrity=paired-candidate、无修复、Raw 选中端点/目标归属/source 四元一致,原始 ticks/timebase 独立重算至1ns以内;每轮正常 Stop/退出。只拿 count 非 null 不等于独立核验成功。任何一轮未达到,按真实结果交付 partial,不用其他轮替换。快速作为描述统计:首 Total距Start 中位/p95/最大,沿用前批参考≤8秒,但 Owner 本批硬门为20/20 Total。
启动环境与顺序沿用前批真实产品 default:native USB / 全默认指标 / Screenshot / Startup / 500ms / overlap-current;三项 environment 保持;kill_existing=true、start_suspended=false,进程重启不声称缓存完全冷。银行应用不进行登录/交易/其他应用内操作。
资源、耗时与并发 ​
同一设备串行1,固定20轮,25秒观察/3秒间隔;每轮120秒硬限/15秒收尾/256MiB软存储限。采集预计12分钟;预计新增5GiB,开采前至少10GiB且不少于预计量两倍,逐轮检查活动owner与空闲。原失败/Raw/回滚保留;未知归属文件不清理。
配置构造O(10)常量,无循环轮询/新进程/磁盘读取;签名每次arm一次O(10),不在每chunk重算。构造微基准10000次、有界offline Raw复放,对比当前前后wall/CPU/RSS与I/O;核心E4给出首响应与最差并保留慢点。复用现有Python3.12,不创建新依赖环境。
交付与遗留门 ​
本批仅窄范围提交,main 同一提交双远程推送尝试;原WIP不 stage。生成唯一当前测试包,Developer ID签名,公证/staple/Gatekeeper按实际结果记录;独立解包、来源/签名/SHA核验后空闲同址安装 /Applications/Perfowl.app,保留旧171私有回滚。不另装平行客户端;dist最终仅当前测试容器及SHA。
发布到外部仍受GPL法务门限制;公证凭据或服务不具备时如实partial,保留已验证内测产物,不把内部免公证等同公开交付。C2/C3/C4/C5/C6联动同批完成;站点build必须实际验证。Implementation只报告实施/自测证据,独立产品PASS由Lead后审。
Implementation Update · 2026-10-12 ​
实际代码范围与偏差 ​
按上述三文件最小实现完成,并新增 test_startup_default_profile.py 九项匹配回归;未改 Swift、realtime.py、decoder、公式或阶段适用性。保留显式 legacy 和 ring 实验。已有其他工作树改动不归入本批提交;内部 Build172 为当前工作树整体构建,不声称新包所有功能都来自本批窄提交。
E2 回归与效率 ​
- 新 profile 匹配单测 9/9。
- Swift 完整 358 项、4 skipped、0 failures。
- 首次 Python 源码入口未加载已编译 native bplist 扩展,2252 项出现10 failures/5 errors/81 skipped;原失败保留。改用已有构建扩展路径(非产品修改)后的完整 2252 项、1 failure、0 errors、0 skipped。
- 剩余失败为
test_pump_filter_active_fairness.WallVersusActiveTimeBenchmark.test_benchmark_wall_time_versus_active_time_120hz_pipeline:queue 最大129.647599ms,超过50ms。固定独立 before/after 各一次该用例均通过,修改的 CoreProfile factory 调用数两臂均0;只是隔离未复现,原全量失败与归因待办保留,不声称 Python 全绿。 - tap factory固定 before/after/before/after各10000次:before 中位约33/30µs,after约47/46µs,after p95约111µs、最大约360µs。新增约15µs为每次建tap的常量开销,不在chunk热路径,不是速度优化。两臂CPU分别约455/393ms和597/592ms;进程累计RSS约63.6MB,无隔离峰值差结论。
- 同一已封存真实 Raw 9,326,272B + blob 24,547,976B,1436事件/31chunk,哈希核验后固定ABAB复放四次;decoder SHA前后完全同一值,Total四次同为1264.764125ms。wall before0.376/0.369s、after0.378/0.365s;CPU0.366/0.359s与0.367/0.356s;首Total0.208/0.197s与0.207/0.199s;最差chunk约35–37ms。预载读约33.87MB/0.203s,纯decode无新增文件读写,累计RSS约112.35MB。此比较仅重复测同一未修改decoder,不是两份不同decoder或端到端设备加速证明。
E3 内部测试包与来源 ​
Build172已 Developer ID签名并同址安装 /Applications/Perfowl.app;独立解包13138文件/链接树与源包、安装包一致。CLI及所有被打包模块递归code object与当前工作树相符,新startup profile在真实安装采集器中;两项未由CLI引用的离线模块未打包,单列记录。第一次marshal字节比较因序列化差异出现误报,原记录保留、使用递归code object相等性核正,不因此改产品。
唯一当前内测DMG:Perfowl-b172-2026-10-12-x86_64-startup-c0-unnotarized.dmg;SHA-256 9ea8da4490c98530264c95274f16e69d19d1c4a4f57b9068369ec2c36581f7e1。App/DMG严格签名核验通过,旧171私有回滚保留。不另装并行客户端。
公证提交因未配置keychain profile exit69;stapler validate65、Gatekeeper assess3,未获公证/staple,包只作内部测试。GPL法务门与独立产品验收保持开放,本批整体状态为partial。
Validation Protocol Update · 2026-10-12:监督工具异常与原轮保留 ​
首组五轮正常。第二组第三轮监督工具发生 FileNotFoundError,在计划25秒观察完成及显式Stop前进入异常清理;产品已返回Total,收到SIGTERM后自行完成报告封存及clean收尾,退出0。首段固定矩阵因此暂停,第二组三轮原记录、八轮Raw及原终态日志全保留。不把监督异常隐去或把这一轮称为完整计划执行。
检查静态监督路径后,最可能为存储大小采样枚举遇到被原子替换的临时文件;原工具只记异常类型,未保留精确异常路径,不是已证实的唯一根因。仅私有测试工具为逐文件stat增加短暂消失容错与后续异常traceback,不改产品与测试配置。重新确认设备/四目标版本、空闲与安装来源后继续第二组B04/B05及第三/四组全部原定槽;不重新采B03、不增加替代轮。Total独立数据门与完整执行协议门分开报告:中断轮即使端点重算成功,也保留观察/Stop协议偏差。
Validation Update · 2026-10-12:新产品默认配置四目标各五轮 ​
实际安装 Build172 默认产品采集器,固定20次启动的Total为20/20(100%),独立原始端点核验20/20。 不加载私有配置覆盖,不重复旧实验、不重采异常轮。此处是已安装产品CLI按真实prepare/ready/start/launch顺序的E4;本轮没有额外完成GUI交互或独立首帧物理时间校准。
| 目标 | Total独立核验 | 首Total中位 / p95 / 最大(秒) | 每轮阶段有值数 | 完整观察/Stop协议 |
|---|---|---|---|---|
| 目标 App A | 5/5 | 3.781 / 3.813 / 3.813 | 9,9,9,9,9 | 5/5 |
| 目标 App B | 5/5 | 4.159 / 4.629 / 4.629 | 6,6,6,6,6 | 4/5 |
| 目标 App C | 5/5 | 2.604 / 2.700 / 2.700 | 8,8,8,8,8 | 5/5 |
| 目标 App D | 5/5 | 2.701 / 2.723 / 2.723 | 6,6,6,6,6 | 5/5 |
总首Total中位 3.196s,p95 4.176s,最大 4.629s,均小于8s参考线。时延是Start用户动作→第一个candidate Total wire,不是App的Total启动耗时;p95用nearest-rank。
20份Raw SHA与报告引用、manifest事件数/连续序号、全部blob引用块SHA/偏移/字节数均核对;三个selected端点均在真实Raw中,目标归属与launch receipt一致,source/epoch/target generation/reconnect四元及timebase一致,原始ticks重算误差小于1ns,20轮均paired-candidate且无repair。设备lost marker、host live drop、prelaunch overwrite全部0;仅此部分样本不证明所有设备/OS的长期100%。
Total数据成功20/20不等于执行协议20/20:完整协议19/20。 第二组B03的监督工具异常、SIGTERM清理及观察提前终止保留;该轮数据已完整封存、产品clean退出0且Total端点核验成功。其余19轮按计划观察和显式Stop完成,不用别轮替换B03。九项阶段全部有值仅5/20;目标App C八项仍可phaseCoverageComplete,不把flag误称九项全有值。条件阶段保持not-applicable/null,不置0。
20轮Raw共159,209,052B,blob共291,127,012B;采集进程抽样RSS最大116.89MiB。RSS不是连续监测或before/after设备配对峰值,I/O字节是落盘证据量,不替代物理I/O吞吐。
启动environment三项从冻结composition静态合同核对;本轮wire直接核对cold-launch模式与实际tap配置,没有私有launch kwargs观察器,故不声称本次再次直接观测RPC环境参数。前/续/后预检四个目标版本和设备一致;采集后Build172与collector SHA未变,无其他采集owner。
逐轮结果(不择优) ​
| 目标 | 固定轮次 | Total(ms) | 首Total(秒) | 原始端点核验 | 执行协议 |
|---|---|---|---|---|---|
| 目标 App A | B01-product | 1353.456583 | 3.781 | 一致 | 完整 |
| 目标 App A | B02-product | 1454.427791 | 3.813 | 一致 | 完整 |
| 目标 App A | B03-product | 1449.529583 | 3.735 | 一致 | 完整 |
| 目标 App A | B04-product | 1404.484541 | 3.669 | 一致 | 完整 |
| 目标 App A | B05-product | 1471.679125 | 3.790 | 一致 | 完整 |
| 目标 App B | B01-product | 2151.025208 | 4.629 | 一致 | 完整 |
| 目标 App B | B02-product | 1942.623291 | 4.159 | 一致 | 完整 |
| 目标 App B | B03-product | 1893.987208 | 4.114 | 一致 | 监督异常,原轮保留 |
| 目标 App B | B04-product | 1842.020250 | 4.176 | 一致 | 完整 |
| 目标 App B | B05-product | 1890.529958 | 4.081 | 一致 | 完整 |
| 目标 App C | B01-product | 511.051500 | 2.700 | 一致 | 完整 |
| 目标 App C | B02-product | 343.241041 | 2.635 | 一致 | 完整 |
| 目标 App C | B03-product | 308.255875 | 2.592 | 一致 | 完整 |
| 目标 App C | B04-product | 350.786708 | 2.604 | 一致 | 完整 |
| 目标 App C | B05-product | 307.134333 | 2.596 | 一致 | 完整 |
| 目标 App D | B01-product | 487.428125 | 2.710 | 一致 | 完整 |
| 目标 App D | B02-product | 463.028000 | 2.701 | 一致 | 完整 |
| 目标 App D | B03-product | 443.206833 | 2.635 | 一致 | 完整 |
| 目标 App D | B04-product | 461.817000 | 2.723 | 一致 | 完整 |
| 目标 App D | B05-product | 452.649666 | 2.636 | 一致 | 完整 |
当前状态与下一阶段 ​
本批配置实施完成、指定Total样本目标已达到;整体交付partial:Python完整suite有1项queue延迟失败,公证/staple/Gatekeeper、GPL法务和Lead独立产品验收仍开放。非启动阶段计数不变,不由Implementation宣布阶段PASS。下一由Lead审查本批窄提交、20轮原始证据及协议偏差;GUI与多设备/OS分层验证另定,不以本轮固定样本保证通用100%。
Documentation / final-source Update · 2026-10-12 ​
C2归档、时间线顶部、总计划/未关门两表、Canonical Total知识页版本历史、知识库总览及首页联动已完成。知识合同gate通过66 Registry等检查(既存44项内容风险warning保留)。实际执行 cd site && npm run build exit1,被本批开始前已存在的未提交 p4-nonstartup-g618-distinct-thumbnail-input-local-cost-plan-2026-10-12.md Vue缺少结束标签阻断;不改其他WIP来求绿,也不声称0错误/0死链或已发布站点。对本批五个Markdown/首页组件单独使用实际VitePress renderer及Vue compiler检查,错误均0;不是全站构建的替代门。
两个额外工具入口失误均留日志:一次误在仓库根调用站点build,一次最终freeze核验漏传exe参数。修正调用后,正式site build结果如上;对真实安装collector的最终code object核验通过,新profile/CLI/所有打包模块一致。最后四目标/USB/空闲与包来源复核通过;原安装包完整文件/链接树与DMG SHA再次核对,不因完成测试而重打包或改变代码。
本批交付状态仍partial。上述实现、真机Total样本达标和独立审查待办应分别阅读,不把Implementation自测提升为Lead阶段PASS。