Skip to content

屏幕刷新率:先修正当前值合同,再核参考资格 ​

文档类型devlog。Owner授权同一AI承担方案、实现与测试,不创建子代理,不增加人工复核门。前项P95新完整五轮已正式通过;整体36/66,本项0/5。GitHub 879ed968已核同;GitLab一次失败、网站/通知缺配置按既有授权partial继续。

1. 已查事实与边界 ​

E1软件复现:DisplayPerformanceProjector先消费60Hz后,新事件refreshRateHz为0、负值或null均仍给60/valid;infinity给inf/valid,bool给1/valid;host无新事件超过1秒仍给60/valid。当前设备同钟下界>2秒的共享保护仍存在,但不覆盖无设备钟或持续送达无效interval的场景。该复现证明该分支软件合同缺口,不证明手机已产生这些异常。未改共享FPS/FrameTime/P95/Jitter口径,历史五轮不重测。

唯一知识页display-refresh-rate,metricID=ios.display.refresh_rate,scope=foreground-device,unit=hertz。系统com.apple.instruments.server.services.activitytracetap,经pymobiledevice3的DTX ActivityTraceTap与自研ActivityTraceFrameLifetimeRawAdapter/FrameLifetimeDecoder;不是pymobiledevice3直接提供Hz的方法。

2. 冻结公式与发布合同 refresh-native-current.v1 ​

原始字段refreshIntervalMachTicks、machTimebaseNumer/Denom、endMachTicks、原生displayID及envelope身份/源/目标/重连代际。整数必须type int(不接受bool、浮点、字符串),timebase和interval正值:

intervalNs = (refreshIntervalMachTicks * numer) // denom
Hz = round(1_000_000_000 / intervalNs, 4)

intervalNs必须正;不从refreshRateHz反推原生interval、不用最大能力或请求频率补值。实际原始字段与已解码refreshIntervalNs/refreshRateHz必须一致,否则null/invalid-interval。每次新事件先失效旧刷新值,再按当前原生字段恢复;FrameTime的warmup/discontinuity/source-gap本身不等于刷新interval无效,须分别核原生间隔;unsupported schema/身份/drop/未知质量均拒绝。

只在已验证目标、当前前台、同一已选primary display和本源最新代际发布。sourceEpoch/reconnect/target/foreground/timebase边界清空;旧代际或重复/倒序sequence/原生end/host拒绝且不继承旧值。不同display不刷新主display;多display正式数据须单独资格,不静默过滤通过。

这是当前源gauge,非一帧一次消耗:同一最新有效事件在host年龄[0,1秒]内可重复发布;严格>1秒null/stale-source,host时钟早于事件null/future-source。共享同钟设备过期下界>2秒仍优先null/stale-device-source。首事件有合法refresh interval即可有效,无需伪造前驱或累计五帧。无效/缺值null,不用0,不跨代际carry。新增refreshPublicationPolicy标记及refreshRateSource收据;不带新标记的旧Raw保持旧回放语义。收据不得充独立期望。

3. 最小实现范围与软件验收 ​

  • 新增独立刷新率状态模块,realtime只覆盖本指标,避免修改已验共享projector;adapter只为新Raw添加策略标记。Registry数值definitionVersion保留,发布质量合同另有版本。
  • 用实际decoder/Realtime输入验证原生整数、valid→invalid、0/负/bool/非有限/错误类型、整除为0、派生值篡改、host恰1秒和+1ns、future、目标/前台/源/重连边界、不同display、乱序、drop、恢复。原有共享专项只作软件回归,不重开历史真机验收。
  • 独立Raw oracle不得import产品模块;按真实consume cut重建最新原生源,再核收据和实际Core/CSV/JSONL/SQLite消费者。所有未发表Raw尾独立守恒。

4. 自有App候选参考与数据用例 ​

Apple官方说明CADisplayLink的请求范围影响callback调度,并受系统策略控制;duration与maximumFramesPerSecond不能单独充当前物理真值。timestamp/targetTimestamp是值得实际检验的候选,不能未经同scope/时间窗资格直接替代整机刷新源。

复用自有App现有单个CADisplayLink及Metal负载,不另开高频display link。新增可选refresh候选记录:timestamp/targetTimestamp/duration的原始Double及bitPattern、callback entry/exit原生Mach、请求Hz/范围、phase、实际screen别名/能力/前台、原生桥首尾括号;区分callback间隔、预测帧间隔、Metal实际presentedTime和系统refreshInterval。能力字段仅上下文。记录全量、包括首callback、延迟、未绘制与停止尾,不只存Hz或筛出吻合值。

用例刺激/预期可判断事实不允许的替代
正常与首点默认/30/60请求,记录第一次callback与原生interval用最大60填首点
请求率变化同一生命30→60,分别观察callback/target interval/系统间隔请求30直接当物理30
长callback每12次80ms延迟,保留全部跳过与晚到callback gap倒数当硬件Hz
恢复延迟停止后恢复,核代际和原生桥删除过渡后算覆盖
静止暂不提交内容但观察现有callback,随后暂停callback并恢复无源时沿用旧值
取消/后台35秒取消、恢复新生命、前台边界、冷请求过期/重放自动重复失效请求
异常控制无screen、时钟括号过宽/不交、NaN/倒序/重复、容量上限放宽精度门以消失败

参考资格:同一display/前台/生命,原生钟桥不确定度≤0.1ms,双向时间覆盖完整固定首120机会;不删除冷启动早期缺口。独立物理窗口与原生算术分别报告;允许±0.01Hz仅针对已匹配同一interval的舍入比较,未匹配或语义不同的callback不能套此阈值。Apple工具候选须针对本项重新确认字段/窗口能力,前项断连不等于本项永久不可用。实际调查后确无完整参考,才按Owner标记计数政策进入完整无异常五轮;未实施用例或软件准备通过不等于本项通过。

5. 性能预算、执行路径与五轮门 ​

状态更新/发表O(1)时间与空间;无每帧排序/新增线程。用真实7200事件/180发表及最差20000事件比较旧、新路径,交错≥5次,wall/CPU增≤20%,峰RSS增≤8MiB;首响应≤10ms、整批≤1秒(纯刷新状态范围),失败先优化不自称完成。Fixture记录有界10000条/总4MiB,单callback额外记录P95≤1ms,保留最大值;OFF/ON配对CPU增≤0.5个百分点、footprint增≤4MiB。工具超时60秒/192MiB;构建与全量回归按既有独立有界guard。reference日志异步一次封口,不每callback写盘。

正式attempt须在修复/参考资格/成本、内部签名包及唯一安装收据通过后另行冻结。新run前缀,先保全旧原件SHA与真实枚举容量,禁止旧64/8等常量假设;空间≥10GiB且≥预计新增量2倍。每轮完整140秒、固定首120机会≥119有效、maxgap≤2秒,完整五新生命/Session,间隔双钟≥600秒;首失败停止整个attempt,不接第五轮、不缩分母,不以刚好60恒定值证明准确。全部消费者与Raw独立核算、过渡/失败/尾部保留;5/5才正式计数。当前仍36/66、刷新率0/5。

6. 执行顺序与交付 ​

本方案已定稿,可由当前Owner授权的同一AI依序实施:先独立状态与软件/效率证据,再Fixture候选记录和主机控制/ARM构建,再实际保全与安装、参考资格/成本,最后另立正式attempt。新包仅本机内部Apple Development,公证继续暂缓。无资格或异常不进入正式轮。逐指标提交、双远程一次、知识/首页联动、站点真实发布/通知,欠项按已有partial授权保留。下一指标仅Jitter,须本项正式通过后。

参考来源 ​

CADisplayLink、preferredFrameRateRange、duration、ProMotion timing。文档支撑候选设计,尚无本项E4参考资格结论。

2026-10-21 · Implementation Update:软件门与效率拒绝 ​

已新增独立refresh_rate状态与新Raw策略标记,realtime仅覆盖本指标;原生/代际/前后台/无效新事件/边界及旧回放控制12项、连同既有P95/Display共44项通过。候选Fixture增加可选refresh-cadence-v1六阶段(默认20/30请求20/60请求20/长callback40/恢复20/静止内容20),复用现有display link,旧P95默认配方保持;原P95主机29控制仍通过。候选记录采用带列名的紧凑行,保留原始Double bits,不每帧写盘。候选本项真机未测。

首版7200/20000事件、各五次交错真实Realtime比较,wall比1.455/1.500、CPU比1.457/1.500,虽绝对0.043/0.108秒且峰内存未增,仍超过既定20%门,效率失败,禁止宣称本批实现完成或打包进入正式轮,原失败收据保留。

优化决策先落盘:复用同一次P95观察中已完成的公共Raw envelope/身份/原生端点验证,额外只做本项所需的严格字段类型、刷新interval和新鲜度判断。P95提供仅当前event对象绑定、单次覆盖的内存attestation;不能缓存到下一事件、不改变P95任何判断/分位数/窗口、不把该内部attestation当验收oracle。没有公共资格时仍完整验证、失败清空。基线同时固定旧P95模块,避免把新增开销移入基线。继续保持20%效率门,优化后重测;共享P95软件专项回归,历史五轮不重开。

2026-10-21 · Validation Update:软件通过,真机候选准备中 ​

第二次效率结果wall比1.248/1.334仍失败,未放宽门;第三版仅当前event绑定的公共资格复用后,7200/20000规模各五次交错:wall比1.150065/1.170345,CPU比1.154238/1.176664,峰RSS相对基线减少4456448/5210112B,最大处理响应0.138/0.193ms,真实整批0.0355/0.0879秒,均满足冻结门。全部失败版本保留。P95只增加每次observe覆盖的内部资格tuple,不改任何分位数/窗口或判断条件;独立oracle不使用该tuple或产品receipt当期望。

固定源完整回归2863/2863、0skip,137.673457秒、29片串行(60秒/192MiB/片),逐源pins稳定。新Raw oracle另8项控制通过,包含篡改、错误scope/drop、真实consume cut、host边界与未发表尾Raw;实际44Core模型/Codable/CSV/JSONL共8输入核同。Lab原P9529控制、新候选7200记录的原生bits/时序/部分停止保留通过;7200紧凑记录1506101B。原生ARM Lab30首构建因SDK preferred range为可空字段拒绝,修复为保留null,未填0;第二构建25 Swift源通过,开发签名及IPA独立解包校验通过,尚未安装到手机。旧失败保留。

ARM203新内部包完成当前全部冻结字节码与原生依赖检查、App/DMG开发签名、严格校验与独立只读解包12931件核同;115448573B,SHA256 f4f4afae34972b0a527b663ad99eb65d272f91f3c480119a0536e6c00e9c046f。Gatekeeper exit3,公证暂缓,仅Owner授权本机内部测试;不称正式分发包。正常退出旧Mac GUI后同址安装203并核树/签名,202完整回滚另存。首安装辅助脚本因路径参数替换错误在只读准入FileNotFound拒绝、未安装,失败收据保留;第二次参数修正后安装通过,不影响手机。

手机只读实际Lab29、稳定自有进程、通道可用;实际Documents3581件5863956514B。当前执行全树只读源SHA保全并复用历史已核host备份;未升级手机、未发新请求、未计正式轮。后续需封口核对/同一生命正常退出、全量保全与升级单事务,再实际候选正常/取消/恢复/冷请求/OFF-ON、产品诊断。当前参考资格未定,不适用无参考通过政策,整体36/66、本项0/5不变。

2026-10-21 · 候选异常原件保留修正(安装前) ​

代码检查发现候选ledger在拒绝非法callback元数据前没有保留该条原件。先修正为有界保留被拒记录,原始浮点bits始终保存,不能编码的NaN数值列为null并保留bits;该记录带recordAccepted=false,完整结论保持partial。不把该null当缺失原始bits,也不筛出异常后继续完成。原Lab30构建/签名候选不安装,重新构建/签名后再升级,旧候选保留。此修正仅自有Fixture,ARM203产品包不受影响。

2026-10-21 · 优化分支顺序反控与后续修正 ​

新反控复现:合法原生end/sequence但refresh interval非法的事件经公共资格快路径拒绝后,本指标的顺序锚未前进;同sequence随后改成合法interval,慢路径会错误接受60Hz。该情况属于软件错误,不能用无参考政策计通过,也不能沿用ARM203进入正式轮。修正决策:公共资格已成立时,先记住该事件的来源与顺序,再判refresh interval;无效值仍清空,重复sequence在任何后续路径都拒绝。新增此反控及相关软件/效率复核,重新出ARM204内部候选,不回改此前203软件/包收据。

Lab30单次升级及235.923秒监督已完成:3581件5863956514B升级后全SHA、完整目录、同一身份版本与实际空闲核同,安装事务没有第二次尝试/额外终止。原件全部保全。当前仅自有App候选normal用例启动,不启动Mac产品采集、不计正式轮;Fixture测试与ARM204修正互不替代。

2026-10-21 · 首个候选E4失败与Lab31修复决策 ​

Lab30 normal-a01已完整封存7件原件并正常退出,实际100.009648秒、4807 callback时序记录、4806 Metal请求;第五阶段开始触发record-or-flight-limit,testPassed=false,不计任何正式轮。代码与实际phaseRequestCounts=[1200,602,1200,1804,1,0]确认旧LabP95FrameLedger仅接收phase0…3,而本配方为六阶段;不是设备容量或硬件坏的证据。原失败、冷请求及全部尾记录保留。

先落盘修复:为自有账本增加显式phaseCount(旧P95默认4,新刷新配方6),reserve依配置检查;无效phase仍拒绝,不统一放大旧配方边界。新增实际六阶段账本reserve/提交/回调封口主机控制与旧四阶段拒绝控制;Lab31新版本构建签名后按旧全树SHA保全/一次升级流程恢复。此修复不修改Mac产品,不能重放Lab30旧name或把失败前100秒拼进后续正常用例;新用例另起前缀与新生命。

2026-10-21 · Validation Update:最终回归与第四版效率未过 ​

顺序反控修复后完整回归2864/2864、0skip,134.005863秒;专项含新反控45项通过。ARM204已构建、开发签名和12931件独立解包核同,尚未安装。第四版效率在7200事件wall/CPU比1.176325/1.177464,20000事件比1.202096/1.202206,后者超过冻结1.20门,判失败;不能复用此前第三版通过结论。保留全部结果,禁止安装204进入正式轮。

下一最小优化决策:仅消除refresh快路径中身份与timebase tuple切片分配,使用相同字段逐项比较及直接索引,并复用当前source局部变量;不减少资格检查、不改算术/顺序锚/失效合同,不改P95判断。优化后先专项与独立oracle,再同基线交错效率验证;新源码须另出内部包,不沿用204。状态仍36/66、刷新率0/5。

Lab31六阶段账本主机控制、ARM构建与签名通过,当前只读全Documents源SHA保全进行中;实际3591件5865692614B(包含Lab30失败原件),未升级31,手机仍30。类型为devlog的本段记录准备进度,不构成指标验收。

2026-10-21 · 第五版效率与只读保全拒绝 ​

消除tuple切片后第五版效率7200规模wall/CPU比1.165487/1.165165;20000规模1.201227/1.199555,wall仍失败。下一最小优化为有界缓存最后一次原生interval与timebase的精确整数转换结果;每事件仍严格验证ticks类型、当前timebase、派生ns/Hz,不缓存资格或顺序判断。键或值变化重新按冻结公式计算,无效事件仍清空发布值。空间O(1),不新增线程或I/O。不得反复重跑同源码挑选通过样本。

Lab31升级前保全a01实际读完3591件5865692614B并全部核SHA,结束时自有App出现新生命,因此整体completed=false/sourceFullSHA=false;没有发升级、信号或新请求,全部文件及失败收据保留。先只读绑定新生命并核封口/冷请求/目录不变,不能把这次失败保全直接标成功或盲发升级。

2026-10-21 · 缓存反控与封存生命恢复决策 ​

新增缓存版本在原有非法浮点ticks→下一合法整数ticks控制中失败:Python数值相等使非法400000.0的空转换命中合法400000。第六版效率虽通过,软件失败,不能安装。修复先限定缓存仅保存严格正整数且归一化ns>0的转换;非法事件不写入转换缓存,发布值仍失效。已有反控必须通过后再出新效率收据。

保全结束出现新生命,当前只读已绑定新生命。按现有工具的prior机制,在900秒有效期内核全树stat、全部host原件SHA及无写入/完整关闭,承接已实际读取的源SHA;任何变动拒绝。只有所有历史与新刷新原件均封口、workloadReleased,冷请求均已claim,无活动负载且同一新生命稳定时,才允许沿用现有retained-sealed-life升级模式;不重复signal或launch,不把重新出现原因写成已证自动重启。若准入不满足则暂停手机升级。

2026-10-21 · 最终软件与ARM205冻结 ​

缓存只保存合法转换后,46专项、独立Raw oracle八控制通过;最终完整回归2865/2865、0skip,133.518334秒,29串行分片且源pins稳定。第七版效率7200/20000规模wall比1.153243/1.174740、CPU比1.153142/1.173115、峰RSS相对基线下降,最大处理响应0.121ms,完整批次0.079123秒,满足原冻结门。旧失败与反控收据均保留;该结果仅E1,不代表刷新率真机通过。

ARM205构建43.829秒通过,全部当前冻结core字节码、原生ARM依赖、probe与11.3.1运行库核同。内部开发签名、严格校验及12931件独立解包通过,DMG115469503B,SHA256 4c1e6fa52ac45da1f1da4b2934a9c7368de33638e8fd420893f8bf2a797b5eb0;Gatekeeper exit3、公证暂缓,仍只限已授权本机内部测试。正在标准同址安装并保全203回滚,未启动产品真机采集。

2026-10-21 · Lab31首点参考缺失:刺激完成与参考资格分别记账 ​

Lab31新normal实际140.008523秒,六阶段callback计数[1200,602,1200,1804,1202,1202]、6008 Metal请求/回调、7210时序,pending/invalid/rejected/未记录请求均0,原件2417167B保全。原Fixture判定state=partial、testPassed=false保持不变;独立检查定位首个Metal presentedTime=0,不能丢弃或用后6007条替代完整参考。

Apple当前本机SDK Metal/MTLDrawable.h明确规定presentedTime=0表示未呈现或被跳过(官方接口:https://developer.apple.com/documentation/metal/mtldrawable/presentedtime)。因此它是候选参考的缺失哨兵,不是可充0Hz的真值,也不能仅凭此认定手机硬件或产品刷新率错误。尚无产品Raw采集,不能提前套无参考通过政策。

后续决策:原Fixture总判失败不回改;新增独立原件分析分别给出完整刺激是否完成、Metal参考缺失数量、CADisplayLink候选质量和物理参考资格。刺激完成必须实际全140秒、六阶段、全部GPU请求完成、零未记录/未释放、全时序原始bits与原生钟核同;参考的0值原样保留并使Metal完整参考不合格。非有限/负数/倒序/不明partial或负载异常仍拒绝,不以此规则豁免产品Raw异常。无需修改Fixture代码或重新试跑normal挑样本;完成该独立分类后可继续新的取消/恢复/成本和产品配对调查,最终必须单独证明当前没有完整同层同窗参考,才允许按Owner政策正式五轮。软件、刺激完成、参考资格与指标通过四项不互相替代。

正常原件独立核算:完整六阶段、6008全部GPU请求、150实际80ms延迟和1202不提交内容callback均守恒;7210全部CADisplayLink记录原始bits/原生顺序/前台/屏幕核同,额外记录P95 0.032083ms、最大0.479750ms。Metal首点缺失1条仍完整保留且不具完整参考;原整体testPassed=false未改。30请求阶段预测间隔中位约30.0475Hz,而duration倒数约60.0950Hz,已证明请求/回调与duration不能互相替代,尚需产品同场资格。

后续各新case使用独立runner版本:若当前已封口App再次出现,先核新鲜双次相同生命、全旧metadata/导出/所有刷新summary释放、无pending,才向同一生命正常退出一次并确认两次缺席。不按旧PID操作、不反复退出追逐新生命;新生命在准入中变化即拒绝。现有normal执行源码与失败收据冻结不改。此操作沿用Owner既有自有测试台正常退出授权。

2026-10-21 · 恢复与OFF原件核算 ​

新生命recovery用例完整140.016043秒、六阶段[1202,601,1202,1804,1202,1202]、6011 GPU请求与7213 CADisplayLink记录,150次80ms延迟,全部原件SHA/原生bits/顺序/释放守恒。首Metal presentedTime=0再次出现1条,原Fixture partial/testPassed=false保留;独立刺激核算通过、Metal完整参考不合格。请求30阶段预测间隔中位约30.0464Hz,duration倒数约60.0928Hz;参考语义差异复现。取消35秒用例1653记录、原件完整,按预期partial/user-cancelled封口,无误当异常筛除。

OFF用例完整140.007565秒、6008 GPU请求、六阶段及150长callback守恒;参考开关关闭时0条呈现/时序参考记录,原件与整批完成通过。ON单独新生命运行中,配对成本尚未得出;不能仅凭OFF宣称开销合格。所有用例均为准备E4,正式仍0/5。

2026-10-21 · Lab31候选成本与参考资格阶段结果 ​

ON用例完整140.002393秒、7212时序、6011 GPU请求、六阶段与150长callback全部核原件;首Metal presentedTime=0一条,原summary partial/testPassed=false仍不回改。OFF/ON同版本、独立新生命单对:CPU3.427810%→3.800079%,增0.372269个百分点(门≤0.5);峰footprint33653984→35456272B,增1802288B(门≤4194304B);ON时序额外记录P95 0.0365ms(门≤1ms)、最大0.458125ms。成本结论E4限这一对场景;OFF 0条参考记录符合开关合同,ON的Metal参考缺失另行拒绝,不能用成本通过替代参考资格。

旧Lab30失败与Lab31五个候选共六个刷新目录,原件和host SHA核同;用于产品诊断的旧源pins共81件,含旧P95冷请求及全部刷新原件。Apple Animation Hitches新只读资格探测进行中,只有实际持续时长、导出行数、scope/钟域满足完整同窗才可用为参考。正式仍36/66、本项0/5。

2026-10-21 · 产品诊断辅助脚本拒绝与保全 ​

首次产品同场诊断a01启动后,ARM205实际Session计划含40项指标、刷新率在内;沿用旧P95脚本仍硬编码19项,故辅助准入以actual-product-plan拒绝,不能据这次采集作刷新率诊断结论。Mac按UI正常停止,保存71样本;其Session32件30752926B逐源/备份SHA核同。手机同一冷请求后来封口一轮完整140秒负载,七原件2417198B及两冷请求原件经新读只读核同,summary因首Metal参考缺失为partial;同一已释放生命单次正常SIGTERM、两次缺席。最初取回脚本把claimed文件名误假设带nonce,a01拒绝且无信号;a02按完整原文字节匹配两件后成功,两个版本均保留。旧a01不计诊断或正式轮。

修复决策:产品诊断a02新名/新冷请求/真实刷新目录容量7,完整保留a01原件。Mac Session计划核对改为本次冻结ARM205实际40项且含目标刷新率、去重、1秒、controlled cold launch、截图/启动专项关闭;不由旧P95的19常量限制。产品UI Start/Stop各一次;正常完整140秒后再独立核原生Raw、所有消费者、同钟桥与候选参考,不用上次71样本拼接。辅助脚本若拒绝仍独立保存失败Session与手机原件,绝不当通过。

2026-10-21 · Apple工具与产品同场诊断失败增量 ​

Apple Animation Hitches新5秒资格探测的进程树RSS达到933773312B,超过768MiB硬限;即使命令退出码为0,监督结果仍为passed=false。不能作为完整参考,也不据此推断手机硬件故障。Lab31五个Fixture候选及OFF/ON成本已完成原件核算,前三个完整刺激的首条Metal presentedTime=0,按Apple定义使其完整物理参考不合格;CADisplayLink仍须与产品同场核同display、原生钟桥和固定首120窗口。

产品诊断normal-a02采用真实40指标Session计划,但UI Start在ui-start-ready后约107秒才发生,超过冷请求90秒有效期;辅助脚本以UI-start-timeout拒绝。Mac UI正常Stop,67样本Session的32件、17850108B逐件SHA保全。手机冷请求被消费后仅留下同字节claimed原件,没有intent或新run;新的只读复核实测旧刷新目录仍为7、52件冷请求目录、无pending/part、全部旧负载释放。首次清理脚本硬要求两件冷原件而拒绝,0信号;后续只读确认仅1件claimed,再以单次正常SIGTERM及两次缺席确认空闲。normal-a02不计诊断或正式轮,原失败收据、Session、冷请求及全部旧原件均保留。

下一次另建独占diag-a03,不重放normal-a02或拼接其Session。先在Mac GUI完成设备/自有App选择并确认Start可用,再启动手机执行器;ui-start-ready出现后立即点击Start,保证90秒冷请求有效期。执行器需以实际7目录、52冷请求文件和完整旧源SHA重新冻结准入;不能沿用“每个拒绝请求必有两份冷原件”的假设,须按claimed/intent实际状态分别核对。若手机锁定、通道失败或GUI不能及时就绪,保全并暂停新请求,不让人工操作可用性成为数据通过依据。当前软件与成本准备通过,刷新率正式仍0/5、整体36/66。

2026-10-22 · diag-a03新准入与生命周期边界 ​

私有批次根新建为/Users/qiance/Perfowl-NewHost-Recovery/20261022-refresh-product-diagnostic-01,独占产品诊断run前缀refresh-product-20261022-lab31-diag-a03;本批仍是参考资格诊断,不是正式五轮。宿主卷实测89GiB可用,高于10GiB底线;产品GUI当前选中已核USB设备与自有Perfowl Test Lab,播放按钮可用,前一Session显示67样本且已完成。GUI闲置预览保留68张未保存截图;按源码这是会话外存于内存的预览,下一Session合同仍要求screenshotsEnabled=false,Session计划将再次逐项核对。

2026-10-22只读手机复核:PerfowlLabRefreshRuns实枚举7个唯一目录,所有summary为workloadReleased与idleRestored;冷请求目录52文件,无pending.json与pending.json.part;normal-a02仅有一个与主机冷请求完全同字节的claimed原件,无intent、无新run。相对上一轮正常退出后两次缺席的收据,当前再次观察到不同的App进程生命,两次新鲜DeviceInfo进程表相同;此变化原因未证实,不归因自动重启或用户操作。旧尝试与失败文件不删除。

diag-a03在新的guard内复核安装身份、当前新生命、7个实际目录、所有旧主Session元数据与导出、刷新目录及冷请求的主机/手机SHA,然后对这个稳定新生命至多正常退出一次并确认两次缺席。只有这一代按准入消失且手机容量满足512MiB门限后,才单次写入90秒冷请求;Mac界面已经提前完成设备/目标App选择,guard出ui-start-ready立即单击Start。Session必须实际计划40项、含ios.display.refresh_rate、1秒、controlled-cold-launch,截图和启动专项关闭;否则停止、保全、不重跑。新正式attempt仍需另行建立,当前36/66、刷新率0/5。

2026-10-22 · diag-a03完整运行与Raw oracle序号域修正 ​

独占诊断refresh-product-20261022-lab31-diag-a03-normal完成。guard以新安装/源码及私有输入164项pins稳定通过,耗时191.658秒、峰RSS100827136B,未触发终止/kill。重新读取89条源SHA后,核手机当前刷新目录7个、冷请求目录52件、设备剩余空间14526664704B;对当时稳定的新进程生命仅SIGTERM一次且两次缺席。Mac开始/停止各一次,真实计划40项并含目标指标、1秒、受控冷启动、无截图/启动专项;保存Session32件63269338B并逐件核主机SHA。手机候选完整刺激140.006075秒,6009请求/记录、7211条CADisplayLink时序记录,pending=0,刷新原件7件2416966B全数保全;候选自身summary仍是state=partial, reason=plan-finished, testPassed=false, referenceQualified=false,故只作诊断,正式仍36/66、刷新率0/5。

首轮离线Raw oracle拒绝receipt-lastRawSequence。分离复核证实这是oracle序号域假设不符:Realtime回执绑定rawPayload.adapterSequence,而Core落盘raw-events.jsonl.sequence是跨多种Raw事件的全局序号;同一帧实测适配器序号27、封存事件序号46、回执序号27,原始时间/数值与发布Hz=60.0024吻合。依产品refresh_rate.py及实际收据,先修正独立oracle预期到adapter sequence并添加反控,再重跑本次数据;不改产品计算或原件。只有修正后oracle、实际Session/CSV/JSONL与候选参考时间覆盖分析均完成,才决定CADisplayLink是否可作本项同场参考,或是否已确认无参考可进入Owner政策的独占正式五轮。

独立Raw oracle修正后通过:6004条刷新Raw均被165个实际sample消费cut覆盖,122个sample为valid、43个为stale-source且输出null;没有未消费尾Raw。CSV与Session JSONL各165行逐点值/质量一致,0差异;持有文件及手机七原件SHA稳定。后续分phase复核脚本首版发现另一工具错误:Raw事件endMachTicks与Fixture entryMach处于两种Mach时钟域,直接比较会产生零phase命中。summary的双时钟区间给出continuous−absolute偏移110827409861–110827409903 ticks;首版错误输出完整保留,新增版本按该偏移界定映射后再评估CADisplayLink与native interval。该错只在分phase审计脚本,不影响Raw oracle的消费cut、产品值或原Session。

2026-10-22 · diag-a03参考资格结论与正式attempt a01 ​

参考资格结论:当前已实测候选集中没有符合本项完整同层同窗要求的独立物理刷新率参考。 这只表示当前候选集/本次环境没有可用参考,不证明以后无法建立新的Apple参考通道,也不把资源或连接失败解释为手机硬件故障。

  • diag-a03产品诊断只作候选数据一致性核对:完整140.006075秒,6009条呈现请求、7211条CADisplayLink时序;6004条刷新Raw全部被165个实际sample消费,未消费尾部0。CSV与Session事件JSONL各165行逐点值和质量一致;122行为valid且有Hz值,43行为stale-source且Hz置空。独立窗口审核以Session manifest.startedAt为起点,映射墙钟到同机monotonic的最大残差3.612ms;固定首120秒内119个sample全部valid,首尾窗口空隙分别1.628秒/0.374秒、最大相邻样本间隔1.012111秒,含首尾边界的最大覆盖间隙1.628秒,满足≥119有效、maxgap≤2秒门。窗口外43个stale-source保持置空。Report coverage记录122个刷新率样本。非法/拒绝时序记录均为0。受控场景内Native refresh interval为16666000ns、换算60.0024Hz;该诊断整体仍state=partial、testPassed=false、referenceQualified=false,绝不计入正式五轮。
  • CADisplayLink不能作为本项物理刷新率参考:30Hz请求阶段callback约30.045Hz,而同阶段Native刷新interval约60.0024Hz;screenIndex与产品Raw的Native displayID之间没有直接映射。全部时序行前台、固定首120秒时钟桥误差上界1125ns,仅证明该候选记录质量,不能弥补参考语义/身份映射缺口。
  • Metal完整呈现候选含1条presentedTime=0哨兵,按Apple接口语义表示未呈现或跳过,因此完整Metal参考不合格;首点原样保留。
  • Apple Animation Hitches 5秒资格探测虽正常退出,但进程树峰RSS为933773312B,超过冻结的805306368B限制,监督结果passed=false。既有trace四表离线导出在201326592B与402653184B守卫下均因进程RSS超限失败,四份导出均为0字节;本批不放宽限制,也不把失败导出解释成“源内无数据”。更早0.349568秒后断连的Apple trace同样不足以构成完整参考。
  • 核对未发现刷新率产品数据内部异常:新增策略Raw按冻结整数公式重算一致;实际发布消费切点、165行Session样本、CSV及最终Report coverage互相吻合。metrics-derived.jsonl与分析SQLite没有刷新率专属MetricFrame行符合当前路径设计:online_report.observe_live_display_sample()明确把刷新率作为实时display sample coverage处理,而非RawMetricEngine解出的MetricFrame;这不改变CSV/Session/Report真实消费核对。

据此记录当前状态为referenceQualified=false、referenceAccuracyValidated=false;Owner无参考接受政策仅在新的完整五轮通过后计入正式验收。本项当前仍36/66、0/5,未进入Jitter。

已文档化但尚未启动新的独占attempt:attempt ID refresh-rate-formal-20261022-a01,候选run前缀refresh-rate-20261022-formal-a01。候选前缀尚未在手机端实枚举确认唯一;不得写入手机或创建容量收据,直到设备在线后完成旧数据逐件保全/SHA、实际运行目录和容量核验、前缀冲突检查以及空间门。随后执行五个完整新生命与Session,首失败停止,至少600秒间隔,不复用diag-a03或任何旧run。只读xcrun xctrace list devices显示当前发现的iPhone均处于Offline分组;无法识别/读取目标手机状态,故本轮未生成容量收据、未启动正式轮。

本机读路径已排除重复步骤:Apple表导出a02/a03的失败收据均保留,不再对同一trace使用更宽RSS限额重放;要获得新证据须先有设备连接后采用另一个经方案审查的参考通道。Lab31已有可控用例矩阵继续有效,当前不存在已合格参考数据可应用到这些用例。

分离数据工具增量:新增internal/acceptance/refresh_rate_1hz/review_product_window.py,只读取封口Session manifest、样本JSONL、CSV与最终Report,不导入产品模块;用同机wall/monotonic配对将120秒Session窗口映射到monotonic,若时钟残差>100ms即拒绝。4个离线反控覆盖119/118边界、>2秒缺口、CSV与Report错配。4/4通过E2;对diag-a03独立复核收据product-fixed120-window-review-a02.json为dataGatePassed=true、119/119有效、最大覆盖gap1.628秒。它只是候选诊断数据门,metricAccepted=false、正式仍0/5。

2026-10-22 · 正式attempt a01预检与执行工具增量 ​

正式attempt保持0/5;本增量完成只读设备准入与正式单轮执行/复核工具,不把工具或预检通过计为指标验收。当前候选参考资格结论不变:没有符合完整同层同窗合同的独立物理参考,且不推断未来不可行。

只读容量收据在私有目录生成,SHA256为82aa20d267761d4d3d4cdd38397ede6fb39ecaa150c88204313607fe8f826e39。手机端刷新run实数8,候选前缀 refresh-rate-20261022-formal-a01 唯一,计划五轮后13/64;旧刷新源56件共14,879,071B逐件重读与SHA核同。主App59个run的118个metadata文件SHA核同,250个导出集合不变。P95请求目录54件SHA均核同,无pending/part;在既有pin以外新发现14件请求证据全数保全,其中4个claim没有对应intent,留作历史未配对证据。手机剩余14,312,677,376B,主机96,222,801,920B;本次预检没有手机写入、signal、launch或install。

实现新增 internal/acceptance/refresh_rate_1hz/run_formal_round_a01.py 与 review_formal_attempt_a01.py。执行器每次只运行一个round,按当轮重核旧刷新原件、主App metadata/导出、所有请求文件、唯一run名前缀及空间;只发布一个带新nonce的冷请求,超时或失败不自动重试。每轮实际Session需符合40项指标、1秒、controlled cold launch、截图/启动专项关闭,并完整保全手机原件与Mac Session。后一轮要求前轮独立复核通过且墙钟和单调钟均间隔至少600秒。

独立复核器不导入Perfowl产品模块。它以实际 Raw consume cut 和整数Mach timebase重新计算刷新值,读取封口Session并检查固定首120秒有效点、包含边界的最大gap、CSV逐行一致及Report coverage;同时分离核Fixture六阶段、GPU负载/释放、CADisplayLink原始Double位模式和Metal呈现候选。Metal零呈现值仍让Fixture自身候选参考不合格;复核报告会明确标记并排除其作为产品指标期望,绝不把它改成0Hz或丢弃样本。轮级报告始终metricAccepted=false,只有五轮所有产品数据门、原生Raw oracle和时间间隔均通过,最终attempt reviewer才按Owner授权记账。

验证:runner/reviewer语法编译与CLI帮助通过;新增4个Fixture候选隔离/失败反控、已有Raw oracle 9项、固定窗口4项、产品刷新率状态14项,共31项通过;git diff --check通过。E2,仅证明工具离线控制。formal attempt 仍未启动、0/5、metricAccepted=false。下一步执行独占r1并立即完成独立复核;失败保全并停止,不重跑旧输入、不拼轮、不进入Jitter。

2026-10-22 · Validation Update:工具独立复核、站点构建与设备等待 ​

重跑正式runner/reviewer、Raw oracle、固定窗口和刷新率状态控制共31项,全部通过;另运行站点 staged runtime 控制4项通过。站点完整 client/server/render 构建使用Node v24.19.0通过,耗时24.157秒,输出2945个文件。知识门通过;预构建审计仍报告43条既有内容风险提示,未阻止构建。工具源码SHA已同步至机读attempt状态文件。git diff --check通过。

本次未对手机写入、发signal、启动或安装。最新只读Apple锁定状态查询连接失败,Owner表示暂时不方便操作手机,因此当前设备可用性未知;formal attempt仍未启动、0/5、36/66。下一步等待手机恢复可操作后只执行r1,且在90秒请求窗口内启动Mac Session,封口后先做独立复核;不因此提前进入Jitter。

2026-10-22 · Repair Plan:a01 runner 日志类型错误 ​

a01 runner 已实际启动,但在第一次成功设备调用返回后,向以二进制模式打开的calls-private.jsonl写入字符串,触发TypeError。执行器结果与离线复现互相印证;本次只有本地 attempt 目录和进度/结果文件,测试请求写入、signal、rename、产品Start/Stop、install、launch均为0,手机未创建新run,Mac未创建新Session。该失败原件与a01状态收据保留,不重跑a01。

修复范围仅限正式采集器的有界调用日志编码:成功与异常记录都编码为UTF-8 bytes再写入既有二进制JSONL流;新增离线成功/异常调用反控,验证行可独立JSON解析。方案与验收门不变。修复后使用新的a02 attempt ID和独占run前缀,生成新的只读容量及全部旧源SHA收据;不得沿用a01的失败轮次、请求或前缀。新a02正式轮仍须满足原140秒、固定首120秒、完整产品Raw/Session/CSV/Report、双时钟轮间隔及首失败停止门。当前指标正式仍0/5。

2026-10-22 · Implementation/Validation Update:修复调用日志并完成 a02 只读准入 ​

修复后的runner将成功/异常调用记录写入UTF-8 JSONL,并把attempt ID、run前缀、预检目录绑定为同一参数组。新增3项离线控制覆盖成功调用日志、异常调用日志不泄露错误内容、a02身份/前缀绑定。正式runner/reviewer/Raw oracle/固定窗口共20项通过,刷新率采集源14项通过;站点分阶段控制4项通过。git diff --check通过。此前完整站点构建通过,但本条新增后需再次构建核对。

保留a01失败源SHA与结果,a01未写测试请求、发signal、启动或安装。新的a02只读预检完成:旧刷新run实际8个、计划后13/64;56个旧刷新源/14,879,071B、P95请求54件、主App59个run的118个metadata及250个导出全部核SHA且清单稳定;14个新增请求证据保全,4个旧claim未配对;手机可用14,313,054,208B,主机96,094,470,144B。a02容量收据与源码SHA见机读状态internal/handoff/refresh-rate-formal-attempt-a02-status-2026-10-22.json。该证据为E3环境准入,未发生正式轮手机写入,整体36/66、刷新率0/5。下一步只执行a02 r1,首轮独立复核通过后才允许后续轮。

2026-10-22 · Repair Plan:a02 r1 执行器与首采样数据合同 ​

a02 r1 已发生真实设备交互并失败,保留本轮全部手机与Mac原件,禁止重放。执行器成功保存了本轮7个Fixture源文件和32个Mac Session文件(66,313,619 bytes);随后在请求目录后验时失败,故正式轮未完成、未验收。

执行器故障是集合类型不一致:verify_p95_request_custody() 的注解承诺返回set[str],实际将AFC listdir()返回的list直接返回。r1前置快照因此是list;后验after_set - self.before_inbox触发TypeError。修复要求在边界一次性验证、去重并归一为set,前后请求目录比较均只用set;增加listdir真实返回类型和重复项的离线反控。不得从失败日志猜测缺少新证据;手机当前可见的intent/claim两项仍须在下一次只读准入中逐件读取、SHA并保全。

产品数据门也未通过,不能由执行器故障掩盖。封口Session的固定首120秒有119行、118个有效刷新率值;CSV与Session有1处差异,Report coverage与有效数相符。首样本比首条带新策略的FrameLifetime Raw早38.223958ms,样本中displayRefreshRateHz、质量字段和refreshRateSource收据均缺失。当前实现仅在RefreshRateSource.active后才写入这三项,且active要等首条标记Raw到达;所以这属于产品发布合同/启动竞态,不能归为参考通道问题,也不能用插值、删首行或降低119点门修补。Metal候选仍独立记为partial,其中首个presentedTime=0使完整参考不合格;它不改变产品数据门。

修复决定:

  1. RealtimeMetricProjector按冻结CapturePlan.requested_metric_ids启用刷新率输出;未请求本指标时保持既有回放/Session形状。已请求时,首个Raw前也必须发布null、明确质量和完整可空来源收据。
  2. 首个有效刷新源通过事件通知采样器;刷新率被请求时,采样器最多等待1秒,不轮询。若源在界限内到达,以该时刻立即发出首样本并在原1Hz间隔上继续;否则回到既有采样调度,明确保留missing并让固定窗口门拒绝不足数据。Session.startedAt仍是固定120秒窗口锚,仍要求至少119个valid、包含首尾的最大gap不超过2秒,不伪造前驱或回填。
  3. 独立Raw oracle增加首源前的schema反控:既要求值为null和质量明确,也要求存在匹配当前采样时钟的刷新率收据,不能再把缺失质量/收据当作合格missing。
  4. 采集器修复、首源前/首源后发布、请求集合归一化及边界失败都先做离线验证;对真实Session规模补测wall/CPU/RSS/I/O与首响应。公式、单位和metricID不变。E2/E3工具通过不替代新attempt的E4数据门。

a02 r1正式状态为失败且不可重放:一条真实刷新run已新增;本机当时观察到的请求目录56项中有两项新增intent/claim,但失败执行器未本地复制;数据必须在新attempt预检时重读保全。手机通道当前待Owner方便操作后再进行;在此之前只做离线修复和审查。修复、匹配验证与站点构建完成后另建a03、新run前缀,重新实枚举run容量、重核/保全全部旧数据及a02新增项,再决定是否启动a03 r1。正式仍36/66、刷新率0/5、Jitter不得开始。

2026-10-22 · Implementation/Validation Update:a02修复完成,等待设备可操作 ​

a02 r1仍是失败且不可重放,正式五轮为0/5;手机上的失败run、Fixture原件及32个Mac Session文件继续封存,原始118/119有效值、1处CSV/Session差异和Raw oracle before-first-source 结论不回写。离线定位的第二个问题是请求目录后验把AFC listdir()的list直接当集合做差。修复在目录边界验证、去重并归一为set,前后快照只比较set;同时按修复方案使已请求的刷新率在首个合格Raw到达前就输出明确null、质量与完整可空来源收据,并由首次有效来源事件唤醒采样器。仅当刷新率被请求且Display帧适配器入选时最多事件等待1秒;无适配器或等待超时均保留missing,原固定窗口门拒绝不足数据。Session窗口锚、原生整数公式、119个有效样本门和含边界max gap≤2秒门未变。

封存a02数据的离线反事实回放使用6119条刷新Raw与176个样本:首个有效源在固定窗口起点后1.650322708秒;模拟源就绪后的0–300ms唤醒延迟时,首120秒均为119/119有效,边界最大gap为1.6503–1.9503秒。该结果是软件重排推演,不是新Session或正式验收证据。更大规模全投影回放使用8363条Raw、6119条刷新Raw与176个样本;5次交错中位wall增加3.71%、CPU增加3.65%,追踪分配峰值增加81,816B,最大单样本快照2.07ms,按176点估算Session序列化增加约83,208B;这些实测满足wall/CPU增幅≤20%的对应门,不增加逐帧磁盘写入。候选Fixture记录控制核验7200行、1,542,118B,满足本方案每批4MiB上限。首响应、最差20000事件全路径及进程级峰值RSS/I/O的独立效率收据尚未补齐,故本次只记已有子门通过,不把整项效率门记为完全通过,也不因此启动正式轮。

验证:刷新率及正式attempt相关188项Python定向测试全部通过,其中完整test_perfowl_realtime.py 60项通过;Swift候选记录控制通过。证据层级为E2离线软件/效率证据;a02原失败源数据为E4失败数据,不计通过。设备当前不可操作,因此没有启动或创建a03,没有新run前缀唯一性证明、容量收据或正式轮。完成最新devlog与站点改动后的构建仍待复验。下一步仅在设备可操作后重新只读枚举全部旧刷新run和请求文件、读取并SHA保全a02新增intent/claim、复核可用空间和真实容量,再确定新前缀并只启动a03 r1;首失败停止,不能重放、拼接a02或进入Jitter。

2026-10-22 · Validation Update:最差事件路径、首响应与RSS子门 ​

使用可复跑工具internal/acceptance/refresh_rate_1hz/benchmark_hotpath.py,以基线Git提交879ed968a0babf78e7316baf67e72b9b4de8b034和当前候选分进程交错5次;每次预热1000条、处理20000条原生形状事件并发布180个样本。基线wall/CPU中位数187.333/185.002ms,候选193.080/191.828ms,增幅3.07%/3.69%,低于20%门;峰值RSS中位数从62,734,336B降至58,900,480B,增量−3,833,856B,低于8MiB门。样本首响应100次中位28.979μs、单次最大110.417μs;独立异步来源唤醒到首样本发布100次中位61.396μs、P95 84.750μs、最大130.417μs,低于10ms门。

单独刷新率状态范围预先生成并校验20000个输入事件后,7次处理wall中位8.361ms、CPU中位8.332ms,远低于1秒界限;100次状态首响应最大8.958μs。以上是E2主机合成事件基准,不是设备精度或E4证据。结合此前封存数据规模回放(8363条Raw/176个样本,wall/CPU中位增幅3.71%/3.65%、追踪分配峰值增81,816B、最大样本快照2.07ms、176点序列化预计增83,208B)和已通过的Fixture OFF/ON成本门,本方案效率合同现有子门均有对应离线证据;状态处理不增逐帧磁盘写入。复跑90项产品实时/刷新率/P95测试及23项独立attempt/Raw/窗口测试,113项全部通过;此前更广的188项定向集通过记录仍有效。

本轮未连接手机、写入请求、发信号、启动、安装或创建a03。当前刷新率仍正式0/5、整体36/66;站点改动后的最新完整构建仍须复验。站点复验通过后,剩余门为设备可操作时重新保全/实枚举并创建新attempt;a02 r1仍失败且不得重放,Jitter关闭。

2026-10-22 · Validation Update:知识门与完整站点构建复验 ​

在本批devlog、知识页、总览、首页及状态记录更新后,知识门和完整VitePress构建均通过,构建使用Node v24.19.0,证据为E2。该结论只覆盖本地站点产物;生产站点未发布,Cloudflare凭据及Webhook配置欠项继续按Owner既有授权记为partial。先前站点构建待复验状态由本增量更新,旧归档快照不回改。

Owner暂时不方便操作手机,因此本轮没有手机读写、信号、启动、安装,也没有创建a03。刷新率仍正式0/5、整体36/66;a02 r1的118/119有效、CSV/Session一处差异及Raw oracle拒绝结论保持,失败attempt不可重放或拼接。当前候选集无合格独立物理参考,但Owner无参考政策仍须等待完整且无异常的五轮才能计数。设备恢复可操作后,先重核并SHA保全全部旧源(含a02新增请求证据)、实枚举容量/空间并确认新前缀,再另建a03且只启动r1;正式通过前不进入Jitter。

2026-10-22 · 分离复核:未请求指标门控与 Build 208 候选 ​

独立差异复核发现:当CapturePlan未请求刷新率、但其他显示帧指标使FrameLifetime适配器运行时,新Raw的策略标记仍会激活刷新率状态并附加来源收据。修复为来源状态未启用时立即短路;请求态测试明确绑定metricID,并新增“带标记与未标记事件的既有字段完全相同、没有新收据”反控。刷新率状态及P95窗口聚焦套件共31项通过E2。公式、质量、Session窗口、正式门槛和P95数值路径未改变。

Build 207构建未产出App,原因是未给旧侧车打包脚本指明PyInstaller环境;失败日志私有保留。随后使用已核的ARM64 Python 3.12 / PyInstaller 6.22.3 / pymobiledevice3 11.3.1环境构建Build 208。App与DMG均为Apple Development内部签名,App deep-strict、DMG严格签名通过;DMG只读挂载独立解包后15161个文件、235933728B逐项SHA与构建树相同,App/Collector/Core关键二进制均为arm64。DMG为115510836B,SHA-256 a9f889e6b26eccd079c49eb0ec39215bb692197858fa2ecaf88122021d8f867a。Gatekeeper对App及DMG均返回exit 3;公证按Owner决定暂缓。Build 208只作为私有候选保留,未安装、未启动。

在上述文档更新后,知识门与完整VitePress构建使用Node v24.19.0通过E2;此为本地构建,生产站点仍未发布,Cloudflare/Webhook配置欠项按既有授权保持partial。Owner暂不方便操作手机,本批未做手机操作且未创建a03。刷新率正式仍0/5、整体36/66;a02 r1失败仍不可重放/拼接,参考候选范围和“完整五轮无异常后才按无参考政策计数”的门不变,Jitter关闭。

2026-10-22 · Validation Update:Build 206内部候选包 ​

为后续E4准备了Build 206 arm64内部候选包,未替换或安装到标准路径。App与DMG均由本机Apple Development身份签名,codesign --verify --deep --strict与DMG签名/镜像校验通过;DMG只读挂载后的独立App树与构建树12931个文件、235933712B逐文件SHA一致,关键二进制均为arm64。Collector CLI帮助与冻结pymobiledevice3版本核对通过。Gatekeeper评估拒绝该候选,符合Apple Development签名且未公证的当前限制;公证仍按Owner决定暂缓,不能作为可分发包。由于本机标准安装仍有活动任务,未覆盖、未启动候选GUI;本轮没有手机操作。候选DMG及SHA收据保存在私有恢复目录,不进入MacApp/dist/,当前正式指标仍36/66、刷新率0/5。

Perfowl · Performance Observer