2026-10-17 · E2/E3软件与只读资格 · partial · 正式0/5
L4 首项:Process Observed Running
1. 单项交付目标
Owner已恢复全66项逐指标执行,Free原五轮限定E4有效,相关源码已在main;主线交付与继承性能风险分列保留。下一只交付Registry ios.process.startup.observed_running_ms,不同时宣告前台就绪、Total或九阶段通过。先完成来源审计和工具软件,之后满足运行准入才做固定五轮;无新真机结果时不填完成。
成功含义:正常Perfowl界面受控进程冷启动,自有目标App A五个新生命/Session均能提供来源可追溯的运行观测,原始事件→指标/Raw→界面/封口一致,值落在同语义独立观察允许的不确定区间,无错目标、跨代、旧值复用或缺失补0;软件、已验证代码主线、签名包对应、知识/归档/网站闭环完整。它不是首帧/业务可用时长,不声称物理精度或系统绝对冷启动100%。
2. 公式与来源先审计,不先改产品
唯一Canonical为Startup Observation,Registry为PerformanceModels.swift;startup_timing.py与实时投影路径必须逐项审计:
- start是实际受控启动请求的host monotonic记录,end是同目标/代际首次running/rebound观察;
ms=(endNs-startNs)/1000000,单位毫秒、scope process、版本startup-observation.candidate.v2。 - 服务/selector和实现层以当前源码实际调用为准,审计表登记请求→系统返回→身份绑定→raw→投影,不能只引用设计或拿App内回调代替外部运行观测。
- 正负时间、乱序、首次/后续观察、前台先到、重绑定、Stop、源重连与新轮都需明确重置/缺值规则;新鲜度和跨代约束不因数值接近而豁免。
- nominal poll周期不是异常调度下的真实误差保证;实际读界/往返/观察间隔未知时必须写unknown,不能只用配置周期保证精度。
- App内启动标记仅为辅助;不与CoreProfile mach或媒体时钟直接相减。端点不同只检顺序/区间,绝对误差50ms/20%模板只用于同端点且已桥接的参考。
3. 工具与场景(先软件后真机)
- 冻结当前main、唯一安装177/对应包及当前Lab来源/版本;审计真实包内代码与待测源码,差异逐项说明。手机旧运行、Documents与失败证据保留;不读写其他App。
- 复用Lab公共框架增加显式启动记录/导出,默认普通启动不重放上次内存或动画配方;记录App可见生命周期顺序与时钟域,但不命名成不可观测的System BEGIN或物理首帧。
- 只读独立主机观察复用现有进程枚举接口、同目标别名/生命,保留每次调用前后host monotonic读界与最后未见/首次见区间。先软件mock验证分类、同名错目标、空结果、重复、重连、超时;不注入/改包/使用WDA,也不在产品Raw里伪造参考事件。
- 资格轮只核安全编排、来源、开销、封口与消费者;不算正式五轮。若要改测试App,先完整iOS构建/严格签名/保全同址一次升级/实际来源核同,不因曾安装成功而跳门;Mac包有产品变更则另走已验证源码打包与同址覆盖,Owner暂缓公证仍仅内部。
4. 正式固定五轮合同
软件和资格成立后追加固定来源摘要/版本/配置才开始,单一新队列五个不同Session与目标生命、仅正常产品UI入口,预先固定轮间冷却及每轮观察时限,禁止边跑边改配置。每轮记录请求、完整观察序列、原始指标、显示/封口及独立读界;数据丢失、身份不符、生命周期不满足、超时或资源保护均首失败停,不自动重试或补轮、不拼接旧成功。
每轮都须有值和candidate标记、原字节与同目标证据;五轮分母固定5,缺失不改成不适用。各轮误差/区间、迟滞与最差值全列,不以平均值掩盖单轮失败。区间证据不足写未评估且不计数值门通过;不能只拿自己的同一原始字段复算当独立准确性。前台/Total/九阶段即便自然产生也仅保留,不能提前登记下一指标通过。
5. 资源、准入与结束
现有环境、串行1,无常驻观察服务/新工作树。索引与封存O(本轮文件字节),增量观察/匹配O(事件数)、固定有界容量;参考默认≤2Hz,先测其对启动链路影响,不能高频轮询制造被测开销。软件单组≤120秒;独立构建≤600秒;参考资格单轮≤60秒、正式轮≤90秒,超时结束自有任务并保全,不顺手杀其他应用。正式轮期间不编译/发布网站;若主机压力使门槛没有解释性,保留准入未成立,不靠降低质量门开跑。
每批前/后及持续30分钟检查空间≥10GiB且≥预计增长2倍;仅清理已确认闲置、可重建缓存,Raw/失败/封存/回滚不可按完成即删。每项通过后窄范围提交main、GitHub/GitLab各一次(GitLab失败不重试不阻断)、更新Canonical/开发记录/不可变归档/进度/首页与0死链网站、线上字节核对及单次直白通知。当前旧过滤微基准wall风险与GitLab同步缺口继续列出,不改判PASS;它们不阻断本合同的软件准备,但不自动解除真实运行准入。
6. 当前执行状态
2026-10-17:合同已落盘,只有只读审阅与计划,无新手机动作/Session/产品修改/指标验收。下一先做§2实际来源链及版本对照,然后补软件消费者和负控;每一项真实结果在本页追加带日期增量,进度不以提交次数冒充指标数。
Source Audit Update · 2026-10-17 · 首轮只读探针,尚无产品修复
在已提交dadfb94干净源码执行7个合成helper探针(不是手机数据):正常200ms/candidate;早于请求和不同generation都missing;时间戳恰等于请求时返回0/candidate,与Canonical“0为missing”存在可复算差异。相同generation但不同进程、source epoch或reconnect的输入亦返回200ms;这只证明helper无这些直接守卫,尚未证明生产协调器会让此输入抵达,不能据此宣称实际串目标Bug或盲目禁止生命周期重连观察。
链路已读:LifecycleRawAdapter通过DeviceInfo.proclist精确应用标识匹配,源内部在进程变化时推进generation,Raw映射其observedPID/generation;实时启动观察在consume入口先执行,再处理一般目标状态。实际读界与nominal周期不同,pollingErrorUpperBoundMs仅汇总声明周期。下一先审计协调器与实时/离线一致性,给零时差及身份/版本适用边界补固定负控,定修复合同后再动代码。私有合成探针在fixture-lab-l4-observation-20261017-01/source-helper-probe.json,0手机动作/0新Session/0产品改动;未升格为E4或指标通过。
Implementation Contract · 2026-10-17 · L4-S1 软件与启动工具
本增量先落盘再实现;type仍为devlog,Owner已授权同一执行者制定、开发和复核,不派子代理。范围为本首项软件准备,不提前打开第二指标验收。
- 修复既有正时差规则:离线匹配只接受严格晚于请求的生命周期记录;
_elapsed_ms与实时投影同时拒绝相等时间戳。相等的第一条不得遮蔽后续正时差记录。保留candidate.v2公式/代际/源语义,不因合成错目标输入就盲套跨CoreProfile epoch拒绝规则。补实时/离线对照、前台先到、重复、被拒事件后恢复及代际负控。 - 请求锚点审计:正常实时UI路径已在await启动前记录host请求,保留。旧有界record-candidate路径在await之后才生成请求时间,需要移到await前采样并显式传入;用受控异步mock断言请求界早于调用/应答,不能拿应答时刻冒充请求时刻。
- Lab下一新生命单次启动配方:Foundation核心新增独立startup schema、严格URL/字段/命名校验;默认不开负载、不建运行文件、不定时采样。显式UI或
startup/prepareURL仅准备下一进程;准备记录绑定本次随机process token、120秒TTL、0/100/300ms单点willFinish人工延迟。claim原子移走pending并保留request;同生命不执行、过期/非法/重复/旧终态不重放,失败原件保留。单轮最多16条事件,单次人工阻塞≤300ms,输入≤4KiB、单件输出≤64KiB;非周期I/O、O(1)有界事件容量。 - 生命周期与终态:UIApplicationDelegate的willFinish入口/人工等待结束/didFinish、SwiftUI首次onAppear和scene active记录device uptime纳秒及真实顺序;onAppear≠物理首帧。首次onAppear与active均到后封口;提前后台保存partial,无自动续跑。启动记录独立目录、非自引用SHA清单与可分享导出;不让内存schema误读启动记录。保留未知/失败,不覆盖旧记录。
- 验证与主线:先固定负控失败复现,再修复;独立干净main复制件运行Python专项和Swift Foundation测试,iOS实际SDK完整编译验证delegate/UI接线,不宣称手机已运行。软件测试≤120秒/组,单次iOS构建≤600秒,串行1;本批比较新旧投影热路径开销,不增加采样频率。仅明确范围blob暂存到main,共享脏realtime其余实验字节不接管。代码未形成已验证安装之前不启动正式五轮;提交、双推尝试与资料交付均标明E2软件,不填E4通过。
Implementation / Validation Update · 2026-10-17 · L4-S1(E2,真机仍待)
- 实际范围:
startup_timing.py严格正时差筛选及计算;realtime.py仅同源观察方法的一处<=修正;orchestrator.py旧有界录制请求锚点前置。正常UI锚点本来正确,未改Total/九阶段/默认CoreProfile配置,不把helper的跨源合成输入断言成实际Bug。 - 确定性前后:新增11项对照在旧main有3项失败,修复后11/11;录制锚点负控旧main失败、修复后录制组13/13。干净main复制件经补齐应有scripts依赖及明确PYTHONPATH后,启动相关390/390、实时60/60通过。首轮不完整复制件有4个导入/缺文件错误,保留原日志,不描述成产品回归或抹除失败。各组≤120秒。
- Lab实现:新增Foundation启动Store/严格URL与schema/下一新生命120秒TTL单次claim/0或100或300ms意图等待/5类生命周期回调/partial与不可重放终态/非自引用3文件SHA/可分享导出;delegate和场景库已接线。当前App处于active时首次onAppear亦记录当前active观察,避免只靠状态变化回调漏掉初始active。启动领取后本进程不自动执行旧内存/帧请求;无启动请求时不建立启动目录、不施加等待。
- 源码/工具验证:启动核心70项控制通过(运行0.132秒、RSS约3.49MiB);原内存Foundation回归248控制通过,未修改其代码/用它新增指标数。实际arm64 iOS SDK完整8源链接通过;最终构建使用main版本project而非共享脏project,并固定该依赖摘要。中间两次构建为不同UI迭代,不取代最终冻结件。签名、手机升级、独立参考与正常产品五轮另列,不因可编译就称可用。
- 热路径前后各3次、每次20,000个事件:旧p95为0.008497/0.009942/0.009254ms,新为0.008487/0.008686/0.009367ms;正端点仍200ms。每轮RSS高水增长0,新轮吞吐约134k–151k事件/秒;单次最大调度迟滞仍保留(新最大2.464485ms),不声称所有事件≤1ms或真实设备开销已验。无新增采样与显式热路径I/O,OS I/O计数unknown。
- 资源与共享边界:空间约35GiB,未清理Raw/失败/封存/回滚;共享小文件写前基线1132件。实际产品只测试窄main候选,不整份纳入共享realtime实验;其余范围最终守恒另留私有核对。无新手机动作/Session、未安装新Mac包、未提前验前台就绪/Total/九阶段。
本批结论:L4-S1软件准备成立,首项正式真机五轮仍0/5,不增加1/66或历史8/54。唯一下一步是匹配主线源码的签名安装/启动工具资格及独立外部观察读界,再满足运行准入后启动固定五轮;继承wall微基准风险、公证暂缓与GPL门继续保留。
Signing Update · 2026-10-17 · 单次失败保留
本地签名预检只选出1份有效且匹配自有目标/设备的开发配置;最终冻结Lab90.21.8完整链接与源未变核对成立。一次签名等待30秒超时,未得到严格签名通过的新IPA,未安装手机、不自动重试。失败目录及原件保留;继续不依赖签名的软件/主线/站点工作,签名与真机资格仍待。
L4-S2 Contract · 2026-10-17 · 独立外部观察工具(先软件)
上一轮是实际进展:2cba987已将已测修复和启动工具窄提交到main,GitHub实时核同;GitLab本批唯一推送连接关闭,不补推。干净提交的站点已发布,6页HTTP200且与生产构建SHA相同。初次Python HTTP核对因本地CA缺issuer失败,改用系统默认TLS验证后逐页核同;没有关闭证书验证。签名30秒超时及网络发现/采集通道失败原件保留,Mac177/手机自有90.21.7未覆盖。当前等待Owner已请求的钥匙串授权/USB直连,不以等待为由停止软件准备,也不重复签名或手机采集。
本阶段只增加测试工具,不改产品指标公式或接受新指标:
- 独立观察与产品Raw分开:使用ProcessControl精确应用查询→DeviceInfo进程列表→同一精确应用二次查询,以同一进程的双读一致与列表身份作为观测准入。它是不同读取器的同源系统服务交叉核对,不是独立物理仪器;来源共性/缓存未知不能隐藏。
- 每次读取保留整个调用开始/结束及中间proclist读取前后host monotonic界,不只写nominal周期。空、错目标、重复进程、单边PID切换、缺少应用标识、超时和取消分别保存;不把未知/超时写成“进程不在”。对外只用生命别名,真实映射留私有输入/逐读日志。
- 保守区间:两次一致的0查询且列表没有目标才记“未见”;两次一致正进程且唯一列表身份相同才记“看见”。若最后未见读为
[a,b]、首次看见读为[c,d],有条件状态变化区间仅能给[a,d],不能擅自缩成[b,c]。该区间依赖服务在读取期间反映当前状态;缓存/真实设备出生时间仍unknown。没有启动前未见、跨生命或证据不足时写未评估,不补造区间,也不自动认证指标数值正确。 - 工具默认≤2Hz、≤60秒、≤128个记录、进程列表≤4096行、串行1。所有网络调用各≤8秒,总监督≤75秒、RSS≤192MiB,达到边界停止自有任务并保全partial;不会自动重试/重启App、修改配置/安装或删除手机数据,也不建常驻隧道。CLI仅由明确调用执行,import无设备动作。当前仅先实现纯逻辑、mock消费者和有界驱动;真实路由须等USB/现有连接条件可用后单独资格,不把原失败改成功。
- 软件单组≤120秒;用mock验证identity/读取边界/保守区间/全部失败保留/取消关闭、固定容量、节奏和超时,独立测试输出与资源核对。继续沿用1/66、历史8/54;正式首项0/5。产品新包/新Lab签名安装、参考资格和正式判据尚需全部成立后,才启动固定五轮。
L4-S2 Contract Addendum · 2026-10-17 · 封存、监督与时间覆盖
补软件失败链路,不执行手机动作。驱动采用显式依赖边界,mock完整入口必须覆盖连接每一阶段失败、读中取消/超时、关闭异常/超时、源码准入拒绝与输出封存。已完成读取前缀、半读与错误仍保存;失败不冒充absent。非自引用清单包含全部当轮文件,原始身份仅私有。
75秒为独占子进程的外层监督预算(含关闭),父进程在第74秒请求终止,最多0.5秒后杀死本次子进程,再等待最多0.5秒;不处理其他进程、不重试。软件须用不响应取消的夹具验证监督,不将协程wait_for当强制退出保证。封存/文件系统阻塞及OS调度没有硬实时保证,耗时另列,超限记partial,不宣称全任务严格75秒。
采样时长是允许发起读取的窗口上限,不是全时段连续覆盖:输出实际首末读界、停止时刻与未观测尾部;最后一次读取完成后无需为了凑时长等待或补读。服务新鲜度和数值精度仍unknown,工具软件通过不解锁正式五轮或下一指标。
Implementation / Validation Update · 2026-10-17 · L4-S2参考工具软件(E2)
- 新增独立纯逻辑、显式CLI、软件负控3件,import不连接手机;通过ProcessControl双查询和DeviceInfo列表精确身份交叉核对,保留unknown、完整读界、半读、目标生命别名及未观测尾部,不输出真实身份到公开摘要。参考不写入产品Raw。
- 软件控制:首次40项通过;新增全入口/资源关闭/封存/监督控制后首次51项有1失败(子进程exit0但没有结果时,父监督未落盘partial摘要),已补fail-closed持久化,失败日志保留。最终干净main加3个明确文件副本,57/57通过(3.41秒、子进程RSS高水约26.12MiB),相邻已有监督8/8通过(0.37秒);源摘要前后相同。测试不使用手机,也不等同新增指标通过。
- 真实Python子进程负控验证:拒绝取消/忽略终止后可升级结束自有进程组;父监督收到终止信号时结束自有子进程并封存;来源准入失败不导入采集服务;读中失败保留成功前缀和半读,关闭异常或超时均partial,所有清单非自引用。父进程不处理其他任务。文件系统/OS调度非硬实时、封存另计;内部ProviderLease会抑制部分底层关闭异常,工具仅记录包装层close返回,底层关闭完整性仍未评估,实际资格须另验。
- 上限容量夹具:128读×4096行=524288行,0.404727秒,首响应4.604301ms、平均3.157721ms、p95 4.093487ms、最慢7.207803ms、约316.26读/秒,RSS约22.53MiB,线程CPU0.398980秒,OS块I/O增量0/0。仅模拟本地列表,不含实际网络等待;新工具没有旧已发布等价物,不伪造前后性能收益。本批未改产品采样或产品执行热路径。
- 时间与状态边界:最多2Hz且慢读后不追赶突发;整个读区间用于条件变化界,不使用中间空隙伪装更精确;实际窗口/未观测尾部单列,不宣称60秒100%连续覆盖。相同系统服务的不同读取器不是物理独立精度参考,缓存新鲜度unknown,缺负基线/跨生命不做数值验收。
- 共享边界:3件工具和本批文档窄提交main;继承共享WIP不整份stage,不重跑签名/手机。私有证据
fixture-lab-l4-reference-20261017-01保留各次日志、冻结源、容量读数和源码/共享核对。已发布S1归档不回改,本批新增方案/结果快照。空间约35GiB,未删除Raw/失败/回滚。
状态与下一步:S2只完成参考工具软件资格,首项正式仍0/5、留存新验收仍1/66、历史8/54(旧7本轮未重验)。签名钥匙串授权及USB连接条件仍待Owner先前请求答复,未重复尝试。下一在条件变化确认后,一次新Lab签名/保全覆盖、匹配已验源码的Mac内部包及只读参考资格;固定正式数值判据后才做五轮。继承wall性能门、GitLab镜像、公证暂缓/GPL缺口保留,整体partial,不开启第二指标。
L4-S3 Contract · 2026-10-17 · 主线启动修复的包内候选(签名前)
上一批S2是实际交付:main/GitHub 1f19bd3、57项软件控制+8项相邻回归、生产站6页逐字核同。签名授权/直连尚无新答复,本批不盲重试、不替换已安装177、不采手机;继续唯一首项,不打开其他指标。type仍devlog。
- 先只读核对177严格签名与已登记核心摘要。整模块审计显示startup_timing/orchestrator与修复前main逐代码对象一致(忽略调试位置),realtime整模块并不一致;因此前两模块可替换为已测main,realtime只替换已审计的
_consume_startup_observation,绝不整包覆盖其他已验证逻辑。orchestrator采用完整主线模块,确保新增time全局导入存在,不只换函数而遗漏依赖。 - 私有目录复制自有核心制作待签名候选:固定main三源摘要,按受控PYZ压缩条目重建;非目标模块、归档其他条目逐字节守恒,目标模块/方法与main代码对象精确相等。保留177完整原件、当前dist与失败;候选仅私有,不安装、不作为测试包交付。必要本地执行只对该副本作ad-hoc验证,不访问私钥、不描述为Developer ID或正式分发。
- 用独立加载器从候选PYZ加载整个自有Python模块集,不从共享源码导入;运行正时差、启动报告、有界录制mock及适当启动专项,核对新增时间模块绑定、旧值拒绝与请求界。再执行候选核心纯probe(无手机),独立复验非范围条目、来源、原件及资源。这里只证包内软件,不证正常UI、设备或已安装新版本。
- 串行1,源审计/归档重建O(归档字节),各步骤≤120秒、整体≤600秒;预计核心约12MiB、私有新增≤100MiB,空间须≥10GiB且≥预计增长2倍,不建环境/工作树。记录wall/CPU/RSS/I/O与旧新对照;性能基准明确运行的是包内Python还是实际二进制,不将一者冒充另一者。
- 结果追加本页、窄提交实际文档/测试工具及新不可变快照;涉及知识边界同步对应Canonical。签名和真实资格仍待,在它们成立及正式判据固定之前,首项仍0/5、1/66不变。部分二进制沿用177,不宣称整个App由当前main全量重构;最终签名安装另列。
Implementation / Validation Update · 2026-10-17 · L4-S3包内候选(E2,尚未签名交付)
- 只读现场:main=
1f19bd3,安装仍177,严格签名通过,核心摘要与先前登记相同。整个startup_timing/orchestrator与修复前main代码对象匹配;realtime整模块不匹配,只允许替换已审计单方法。候选采用当前main前两整模块(包括time导入)+realtime单方法,其他2060个压缩模块和12个外层归档条目逐字节保留。自有源与候选代码对象一致,原核心未变。 - 私有核心重建0.814375秒,CPU0.383049秒,RSS高水147.12MiB,OS块I/O增量0/0;候选仅本地ad-hoc用于软件执行,不是Developer ID签名测试包、不是可安装App、未公证、未覆盖安装。纯probe旧177/候选各一次均ready,约1.147/0.915秒;依赖原177的只读runtime链接,不冒充独立运行包或性能收益。
- 真实二进制离线对照:同一份已封存合成Raw模板10组,旧177和候选各10次CLI启动报告,共20次,9.016301秒。旧177有3组与既定正时差门不符,候选10/10均符合:相等应missing、相等不遮蔽后续正端点、前台相等后的正端点;另早于请求、错代、拒绝后恢复、首到保留、前台先到、被动无启动与1ns都保留。每组核对源Raw摘要,所有输入/输出保留;这是合成E2,不是手机稳定性或启动准确性通过。
- 新增冻结加载器与15项负控:自有模块和CLI必须来自候选归档,缺条目拒绝,禁止回退共享源码,显式资源根,结束后还原导入状态。实际候选软件组:正时差11/11、有界录制13/13、启动报告4/4、实时可执行59/59,共87项通过,9.426072秒、RSS约95.34MiB,74个自有模块/CLI来源核同,orchestrator.time绑定成立。
- 保留验证工具失败与分类:首次缺少冻结资源路径导致4项导入错误,补显式原runtime;随后缺CLI、再遇1个读取realtime.py文本的源码守卫,均保留日志,不改产品、不抹失败。源码守卫不适用于无源码包,明确列包内未评估;另在干净main执行该1项通过(0.654525秒)。因此只称87项包内运行控制+1项main源码控制,绝不称“包内60实时全过”或跳过失败后冒充原全组绿。
- 包内代码对象热路径在现有host Python交错新旧各3轮×20000事件:旧p95为0.003839/0.003912/0.003691ms,新为0.004017/0.006297/0.003909ms,均产200ms端点;平均完成耗时单轮旧约0.075–0.078秒、新约0.078–0.085秒。第二新轮有相对迟滞,原值保留;只说明本夹具绝对开销较小,不称优化或真实二进制/设备性能已验。最大单事件旧0.182115ms、新0.210908ms;无显式热路径I/O,系统I/Ounknown。
- 收尾:原177再次严格签名通过,核心/候选摘要未变;原runtime依赖单独私有摘要登记(38MiB量级),无源码偷换/新环境/安装/手机动作。约35GiB可用,未删Raw/失败/回滚。私有
fixture-lab-l4-package-20261017-01保留候选、全量测试/失败、合成模板、资源与来源证明;新增本批方案结果快照,不回改S1/S2归档。
阶段判断:签名前包内验证有实质进展,但尚未形成已签名可安装新版本。首项正式0/5、新设计1/66、历史8/54不变,不进入第二指标。下一仍需此前请求的钥匙串授权/USB直连条件确认后,一次签名保全升级与真实参考资格,再冻结判据做五轮。现有177保持唯一标准安装;继承wall门、公证暂缓/GPL和GitLab同步缺口保留。
L4-S4 Contract · 2026-10-17 · 分离Mac与手机签名阻碍,完成内部包
只读预检已确认:Mac使用Developer ID Application,证书与此前超时的Lab开发证书不同,且旧177当前未运行。此前将两者统称“签名仍待”过宽;本增量不重试Lab、不改变手机连接/配置,却允许Mac独立的一次有界签名交付。公证沿用Owner暂缓规则,仅内部包,不描述正式分发。
- 以严格签名/摘要核同的177整包为基座,替换为S3已验证的3模块候选核心并更新版本178;保留GUI原执行代码、其余全部模块/资源/原必要权限。非目标模块2060项/归档12项与原177逐字节守恒;核心修改方法与main源码精确核同。只是一致受测基座的窄集成,不宣称所有共享WIP已合main或整个GUI来自当前main全量构建。
- Mac核心、App及DMG各一次Developer ID签名命令,每次≤30秒,单次批次无重试,任意失败保全后停止该打包链。不访问/重试Lab开发私钥。打包各步骤≤180秒、从开始计时整体≤600秒,剩余时间传入各调用,串行1;App约254MiB、预计新增≤1.2GiB,先核空间≥10GiB且≥增长2倍。记录wall/CPU/RSS/I/O,不以签名/可构建当真机可用。
- 完整App副本必须不依赖源码或安装目录链接:独立目录和干净PYTHONPATH执行probe及10组合成Raw真实二进制报告,源Raw摘要和预定期望逐项核对。核全部文件/符号链接范围、未签名GUI执行字节不变;DMG签名、只读解包、内部App严格签名与文件树精确核对、卸载卷及SHA。Gatekeeper未公证拒绝如实记录,不改信任配置。
- 仅当旧App实际未运行或正常UI明确空闲、无活跃录制/关联自有采集进程,才事务性同址覆盖
/Applications/Perfowl.app。先保留177回滚,暂存178严格验证与来源核同;覆盖失败自动恢复原件而非强杀。dist只保留本次合格内部DMG及校验,旧177包移私有回滚,不删除证据。新安装可正常打开仅做本地UI就绪核对,不发起手机采集/启动/安装;异常先保全,不自动开始轮次。 - 结果写同页、知识/新不可变快照/进度网站、已验证代码及文档窄提交main、双推GitLab一次、生产线上核同与通知。指标正式仍0/5、1/66,下一仍是手机Lab签名及直连条件确认、真实参考资格、固定正式判据后首项五轮,不开启下一指标。
Implementation / Validation Update · 2026-10-17 · L4-S4内部178已签名覆盖,首项仍待真机(E2/E3)
- 独立关闭Mac签名阻碍:Mac的Developer ID证书与Lab开发证书不是同一份。核心、App、DMG各一次签名均成功,严格验证通过;没有重试此前Lab的30秒超时签名,也未安装/启动手机测试。不得再把Mac打包泛称为“仍被钥匙串阻断”。
- 包与主线的精确关系:178使用已核177完整基座,仅集成S3已测启动修复核心、版本与签名。startup_timing/orchestrator采用已测main模块(包含time导入),realtime仅替换已审计观察方法;2060个非目标压缩模块及12个外归档条目逐字节不变。App文件变化恰4项(版本plist、GUI签名字节、核心、外层签名资源),GUI去签名执行字节未变。不是整个GUI从当前main全量重建,不声称全部共享WIP已合入。修复源已在main
2cba987,参考工具与包内来源工具分别在1f19bd3、1bff4fd。 - 独立可运行性:完整复制runtime,无外部符号链接;独立cwd、清空PYTHONPATH/PYTHONHOME后,实际二进制probe ready与10组合成Raw报告全部符合预先期望。包内PYZ与S3候选逐字节相同,软件证据沿用S3分层:87运行控制+15加载器控制,另1源码守卫在main通过,未冒称包内全组通过。DMG只读挂载后内App严格签名与完整文件树核同,已卸载卷。
- 公证边界:按Owner要求暂缓公证;App与容器均Developer ID签名,但Gatekeeper实际exit3、Unnotarized Developer ID,原结果保留,未改信任配置。仅内部测试包,公证/GPL正式分发门仍开放。
- 真实安装:旧177及其DMG移入私有回滚;确认旧App/关联采集进程不在后,完整暂存、strict验证、事务性同址覆盖。标准安装唯一
/Applications/Perfowl.app、版本178,安装全文件树与候选完全相同。dist仅本次DMG和校验,无并行安装版本;未删除Raw/失败/回滚。 - 窗口失败不抹除:首次正常打开2秒后的只读AX检查只有菜单、无窗口,安装末尾UI断言失败,原install-result保持partial。后续一次只读检查仍无窗口;一次正常“文件→新建窗口”后1个窗口、1个采集按钮且为“播放”,无录制动作。追加window-recovery-result,不回写失败收据。仅证此刻本机UI就绪,未证首次无窗口根因,也不冒称新启动/真机五轮完成;不因此改动产品源码。
- 资源:完整打包68.029623秒(预算600秒),CPU18.807223秒,主RSS249180160 B、子RSS64913408 B;安装29.417584秒(预算180秒),窗口恢复3.698329秒。打包与安装分段计时,人工/编排间隔未连续监督,不拼成整批预算通过。约34GiB空闲;串行1,没有新常驻环境或工作树。
- 唯一当前包:
Perfowl-b178-startup-observation-internal-unnotarized.dmg,143436055 B,SHA-2567d7424bd3670b095c6f034a4a0e623733d67ed1345772856569010c8d00c21c5。私有fixture-lab-l4-mac178-20261017-01留存签名/解包/来源/失败/UI恢复和安装记录;新增本批不可变快照。
阶段结论:178内部包与本机覆盖/UI准备成立,非指标验收。首项正式五轮仍0/5、新设计留存1/66、历史非启动8/54(旧7项本轮未重验)不变。下一仍需此前请求的Lab签名授权/USB直连条件确认,再一次Lab升级、只读参考资格和固定正式数值判据,之后才五个全新正常UI轮;本批0手机安装/0采集Start,不开启第二指标。继承wall性能与GitLab镜像、公证/GPL缺口不抹除。
L4-S5 Contract · 2026-10-17 · Owner确认直连后恢复手机准备与参考资格
Owner已回复“没有弹窗”“已连接并解锁”,先前外部条件变化,恢复唯一首项;不再把旧Wi-Fi故障当现时结论,不自动重跑旧失败批次。本次先独立新路径只读核实际USB/匹配设备/旧Lab版本与身份、精确生命周期及DVT服务;实际每次调用≤8秒、只读整体≤60秒、串行1,失败原件保全不盲重连。Mac178已签名覆盖,保持不变,不重复打包。
- 主线与实际已测Lab90.21.8八源/构建来源逐项核同、旧未签名App与旧签名失败原件保留;只在新的私有副本嵌入已核有效且匹配目标/设备/已安装身份的配置。Owner“无弹窗”后允许一次新30秒签名,必须strict/证书与entitlements/IPA摘要核对;超时不重试,不改钥匙串访问控制、不索取密码、不换身份绕过失败。
- 签名成功后才做只读Documents目录盘点(≤4096项/4GiB/60秒),核主机≥10GiB且≥预计增长2倍、手机≥512MiB。保全旧自有App数据,复用历史已pin本地备份时逐一复算本地SHA且当前设备stat核同,新小文件另取完整摘要;复用的设备写前身份仅stat、不得说已做当前完整SHA。单次升级使用既有已测精确身份/自有进程正常终止/新控制连接工具,整体≤300秒,失败保全不卸载、不二次升级;写后全旧文件设备SHA与本地备份逐条核同。
- 独立参考工具从干净main来源运行,先真实只读资格(≤10秒观察、≤2Hz/128读、RSS≤192MiB,外层75秒监督),完整读界/半读/未知与关闭记录保留。之后仅资格轮验证新Lab的下一生命准备与受控启动编排、正常UI、读取来源及开销;不是正式分母,未固定正式数值门前不启动五轮。不能把可见App回调作为物理首帧或把同源参考说成独立物理精度。
- 资格通过后在本页追加固定Mac/Lab/工具摘要、同端点观察区间判据与资源边界,才开始唯一正常产品UI五个新生命/Session;首失败停,不补轮、不混旧成功。未成立则保持正式0/5、1/66不变;只要仍有不依赖用户的有界排查/修复工作就继续,不为签名或工具准备虚增指标通过数。
- 全程保护共享WIP与历史证据,不进入第二指标、不新环境/常驻服务、不发布新产品实验配置。记录实际结果、偏差与资源/空间,已验证代码与范围文档窄提交main,GitLab每新批仅一次不重试,GitHub/知识/归档/网站及通知仍独立闭环。
L4-S5 Transport Addendum · 2026-10-17 · 物理直连与采集路由分层核实
本次初次USB Lockdown预检报DeviceNotFoundError;随后只读独立核对确认USB硬件树的设备序列正规化后精确匹配目标,CoreDevice也列同目标wired,但usbmux只列Network。故不能断言Owner没有插线或设备错误,也不能凭CoreDevice缓存称采集可用。新有界诊断仅做一次Network Lockdown身份/自有安装版本查询,再直接使用已有原生remoted API持有短生命周期断言以连接同目标RSD/DVT,记录实际身份与关闭。它绕开的是本地USB枚举前置依赖,不改变配对/权限/产品公式,不创建常驻隧道,不在产品静默切路;支持与根因均待实测。独立子进程整体≤60秒、每调用≤8秒,超限仅结束本次子进程,原失败不覆盖。若原生路由实际可用,再单独决定工具/产品是否需要显式适配,不能把测试旁路偷换为正常UI验收。
L4-S5 Repair Contract · 2026-10-17 · 显式原生路由的USB枚举前置缺口
实际有界诊断3.155831秒完成同目标Network Lockdown身份读取和原生RSD/DVT进程双查询,全部关闭成功、无生命周期写入;物理USB序列正规化精确匹配。仅证原生服务当前可用,不证USB枚举为何缺项或正式采集通过。新的Lab签名一次7.431765秒成功,严格签名/IPA与main来源核对成立,旧超时原件不改判。
最小产品修复(先负控、后源码):仅composition.py的显式use_native=True入口,在USB预检抛精确DeviceNotFoundError、已提供非空精确设备且无tunnel_port时,允许一次直接原生RSD打开。默认/用户空间/网络Lockdown路由不变,不吞配对失败、权限失败、任意异常或取消;不得自动重试RSD,不跨目标。直接分支必须从真实RSD核设备标识与iOS版本≥17,缺失/不符/无效版本拒绝并关闭本次原生断言;aopen失败/取消同样请求关闭并保留原异常,关闭异常不得伪造成功。正常USB可用与iOS16行为不变,现有route ID及消费者合同不变。
增加确定性负控:旧入口USB缺项但原生可用时失败;修复后一次native打开/一次关闭、错误身份/旧OS/缺字段、native失败/取消/关闭失败、非特定USB异常绝不切路、未明确选择不切路、互斥参数先拒绝。复杂度O(1),没有采样/热路径改变、没有额外USB轮询;正常路径不增网络调用。软件单组≤120秒,固定mock成功和恢复路径各10,000次≤120秒并保留前后耗时/RSS,真实路由只做一次≤60秒读界资格。不把host mock计时当设备连接加速。验证源形成窄main提交后,再基于178整包只替换自有composition模块、独立包内对照/完整树/签名与同址覆盖,才以正常产品UI继续资格;不拿私有直连诊断冒充产品入口通过。
Implementation / Validation Update · 2026-10-17 · L4-S5原生入口修复与Lab签名(E2/E3,升级待续)
- 现时事实分层:首次USB专用预检DeviceNotFoundError保留;硬件USB树序列正规化后精确匹配目标、CoreDevice列同目标wired,而usbmux只列Network。因此物理直连已确认,USB枚举缺项原因仍unknown,不归咎Owner未插线。一次Network身份读取+直接原生RSD/DVT双查询3.155831秒完成、同目标/旧Lab90.21.7核同,全部显式句柄关闭;本批没有配对/权限修改或常驻服务。
- 签名缺口已关:新Lab90.21.8源/构建八源与main逐项匹配,一次签名7.431765秒成功,strict、entitlements及IPA来源成立,总8.122391秒/RSS15802368 B。IPA 301918 B,SHA
aa30afcf9366bb65140983be3352f43fe5e4be00ae4d1117c4892da240fc9db0。当前安装身份只核同team+应用标识,不声称提取过旧安装证书。旧30秒超时原件不覆盖,手机尚未升级;一次只读盘点1569件、2425728667 B、16.931670秒,为保全升级准备。 - 产品最小修复:仅composition.py,在显式native/精确目标/无tunnel_port且USB抛精确DeviceNotFoundError时,一次直接原生RSD;核实际身份与版本≥17,不以请求补字段。默认/网络/用户空间路径、正常USB的iOS16行为和路由ID均不变;其他错误/取消不切路,失败/取消请求关闭并保留原异常,没有采样、热处理或指标公式变更。
- 确定性控制:首版新夹具构造DeviceNotFoundError漏必填参数,before/after均17 errors,属工具错误,日志保留;改正夹具后固定15项在旧实现14 errors、新实现15/15通过。拒绝错身份/无身份/坏版本/旧OS/其他USB错误/取消/未选目标/互斥参数,原生失败只一次、清理错误不遮蔽原异常。现有collector核心54/54、启动390/390(25.181109秒)、实时60/60(9.130541秒)通过;不将工具错误当产品回归或增加Bug计数。
- 真实入口资格但非正常UI验收:私有冻结候选通过实际产品open_service_provider入口一次有界只读连接;精确设备/旧Lab与原生路由均核同,DVT双查询成功,总4.550674秒/RSS70258688 B。原生路由建立1.848643秒;关闭仅证明包装层返回,沿用ProviderLease底层关闭完整性未评估的限制。不是安装包或正常UI采集,正式仍0/5。
- 性能与来源:正常USB mock每轮10,000个开关、交错3轮,旧wall0.044575/0.046692/0.045387秒,新0.047359/0.049278/0.048238秒;p95旧0.004315/0.004686/0.004386ms、新0.004595/0.004840/0.004660ms,绝对增量很小但不称优化。缺USB旧10,000次均拒绝,新10,000次均建路由;新三轮wall0.062634/0.062607/0.066795秒,p95最高0.007067ms,RSS约30MB。只属host mock,不是手机连接性能收益。178包内composition与修复前main整模块代码对象相同,故后续可仅替换这一模块、保留其他模块及GUI执行字节。
- 边界与继续:本增量尚未升级Lab、未覆盖179、未发起新采集。唯一当前Mac178仍保留;Lab新IPA只在私有批次。新源先窄提交main,然后保全手机数据并单次升级、匹配源码Mac包与真实参考资格;正式判据固定后才五轮,不开第二指标。共享WIP不整份纳入;Raw/失败/回滚不删,空间约34GiB,原微基准wall门、公证/GPL与GitLab同步缺口保持分列。
本批方案与源修复快照。新设计留存1/66、历史8/54(旧7本轮未重验)不变,软件/路由资格不虚增指标数。