两轮真机非启动数据缺口修复
事实与方案 · 2026-10-03
同一测试包、同一指标计划的两轮短会话(设备 A / 目标 App A)均已封存,但 complete 只证明 Raw 与报告边界,不代表 26 项非启动请求指标全有值。两轮设备网络发送/接收各 0 个有效值;能力事件逐字记录 AttributeError: 'DeviceNetworkAggregateStream' object has no attribute '__aenter__'。聚合包装流实现了异步迭代,却未实现 Pmd3Session.open_channel() 所需的异步上下文协议,导致在 NetworkMonitor.startMonitoring 之前失败。不得把同轮进程网络值替代为整机网络。
同两轮逐帧原始记录分别有 165 / 258 个刷新率观测,产品实时样本也有刷新率、10 秒滚动 FrameTime P95 与 P95−P50 抖动值;然而最终 coverage 的三项均为 missing/0,产品 metrics.csv 缺相应列。报告消费者只接收 Raw/派生帧,未接收已发布的产品样本,CSV 列表亦未列这三个已有的 PerformanceSample 字段。这里是输出链路断层,不改采集源、公式或默认开关。
最小修法:①聚合流实现 __aenter__/__aexit__,仅委托固定上游服务且返回同一包装流,保留既有 stop-drain 与窗口 flush;②产品样本已发送后,在线报告以该样本的有限值与质量标签更新三项覆盖计数,缺值绝不补零,现有 report-state 恢复沿用覆盖账本;③在 CSV 末尾追加三个数值及其质量列,保留既有列的名称、次序与旧 Session。产品实时数值的现有公式、单位、scope 与 10 秒窗口不变:P95=nearest-rank 第 ceil(0.95n) 位(n≥5),Jitter=P95−P50,刷新率来自有效 refreshRateHz/refresh interval。质量证据仍为 candidate/valid,不是 E4 通过。
验收门:包装流预热→进入→迭代→stop-drain→退出的顺序和一次性关闭;网络来源失败时仍保持 missing-source、来源 receipt 不得伪造;显示三项有效样本出现在最终覆盖与 CSV,warmup/缺值/非有限值保持空值且不计数;旧 CSV 前缀和旧 Session 不变;匹配 Python/Swift 测试、全量回归、知识门禁和站点构建通过。实现后做同规模 19/22 样本与高量级网络聚合性能对照,测首响应、总耗时、CPU/RSS/I/O 能测项并如实登记 unknown。单源消费有界,记录/报告更新 O(1),CSV 每行增加常数列;网络聚合原有 O(n) 流式内存上界和 500 ms Stop 消费者窗口不放宽。测试以单进程、显式超时执行;上游 ActivityTrace 的 0.9–2.2 秒间隙另列,不能由本补丁宣称消除。
Implementation Update · 2026-10-03
实际修改:DeviceNetworkAggregateStream 现在委托固定上游 NetworkMonitor 的异步进入与退出,返回包装流自身,现有网络聚合、Stop drain 与末窗 flush 未改;OnlineReportSession.observe_live_display_sample() 只对已请求的 P95/Refresh/Jitter 计入已发布样本的有限、非负且质量为 valid/candidate 的值,Refresh 额外要求正值;realtime.py 在发布产品 sample 后交给报告账本;PerformanceSessionStore.swift 仅在 CSV 末尾追加三对值/质量列,不重排旧列。与方案无架构偏差,旧 Session、旧报告和原始值未改。
匹配验证:Python 聚焦 26/26;Sidecar 全量 1333/1333;Swift 存储聚焦 1/1、全量 217 项、3 skipped、0 failed。覆盖了网络包装流进入/退出各一次与异常传播、显示三项有效样本/缺值/非有限值、报告 checkpoint 恢复到 final、CSV 新列与实际数值。E2 程序测试不替代真机网络来源与显示持久化 E4。额外微基准(单进程、9 次中位):报告观察 19/22/10000 条分别约 0.071/0.080/46.274 ms,10000 条吞吐约 216104 条/s、进程峰值 RSS 27.43 MiB;空循环仅是控制开销,不当作旧产品的可比功能基线。该操作 O(1) 每样本,未见新增随 Session 长度增长的容器。构建/签名、同源码测试包及真机验证另记;CPU 与 I/O 峰值在此微基准中为 unknown。
当前状态:产品代码与离线测试 E2 修复已完成,完整交付待新包验证;旧两轮仍是设备网络 missing-source,三项旧最终覆盖仍为 missing/0,不得回填。新包 E4 需要实际 UI 复测:设备网络出现可核来源、合法非零正控/守恒;三项显示的最终覆盖计数与 CSV 和实时样本对应;上游 ActivityTrace 间隙单列,不能由本次输出链路修复推断已经消失。Startup 总时间与稳定性改善仍未证明。
Validation Update · 2026-10-03
本批同源码测试包版本 101 / x86_64 已构建。Developer ID 签名后,对 App 内全部可执行与扩展做安全时间戳复核:372 件、缺失 0;App 与交付 DMG 分别公证 Accepted、staple/validate 成功,codesign --verify --deep --strict 与 Gatekeeper 均通过。独立挂载 DMG 后再次核 App 版本 101、签名、公证票据与 Gatekeeper;旧版先正常退出并留私有回滚压缩包,再覆盖安装到本机,安装后启动冒烟通过。dist/ 只保留这一份测试 DMG,旧本地未公证测试 ZIP 已清理。交付 DMG 163409853 B、SHA-256 65582bbc1cf5d6d6e6e19b98095fedc9f156088c3ec3b54638b08c4acaa21987。
包装脚本当前仍对嵌套模块使用无安全时间戳签名;本批在提交公证前逐件补签并复核,不把临时操作称为脚本永久修复。包和安装验证是 E3;未在新包上采新真机 Session。下一步由使用者按真实 App UI 执行短轮:同一指标选择下观测设备网络双方向的来源/非零正控/字节守恒,检查三项显示的实时样本、CSV 非空数量与最终覆盖是否一致;保留缺值、质量标签和原始来源,不用进程网络代替整机网络。上游 FrameLifetime 约 0.9–2.2 秒接收间隙及少量 FrameTime 缺点继续独立观察。E4、Gate C/D/E 和完整 Beta 均未因本次 E2/E3 结果自动关闭。
两轮复测后的修复方案 · 2026-10-03(R2,先定公式后改代码)
版本 101 的后续两轮真实 UI 短会话分别请求 26 项非启动指标和 38 项(含启动)指标;产品 CSV 为 50/42 行,Raw→Metric→Report 哈希及末序列均匹配,Core 报告 sealed/complete,然而产品 manifest 均标为 partial。唯一登记的失败原因是 Python RequestsDependencyWarning;Swift CollectorSupervisor 把任何非空 stderr 发为 diagnostic,两个采集路径又不看退出码就把 diagnostic 置为 Session 失败。方案:stderr 仅保留为诊断文本,只有非零退出才引用为进程故障;正常退出仍必须同时满足 stopped、Core seal、delivery 哈希及原有协议错误门,不能以“忽略警告”跳过完整性检查。无终止事件也不能视为正常退出。两条采集路径同口径,预热故障与显式 error/control_rejected 仍失败。旧 partial manifest 不回写。
两轮设备级网络来源已观察到且源端/聚合端字节守恒,但一个 100 ms 初始聚合窗分别承载全轮收发字节的约 94%/79%;该窗源时间字段为 -1,分别导致约 5.01/2.01 GB/s 的候选峰值。对旧逐事件 Raw 的只读核对也显示负源时间先于非负源时间,且常含较大首批字节。这支持“负源时间不属于已校准测量区间”的保守门,不证明上游字段的全部语义或真实带宽。 公式版本从 network-window-rate.v3 升为 v4:每条 ConnectionUpdateEvent 的非负、有限字节仍进入来源守恒账;若其源 time < 0,该字节记入独立的 initialSnapshot{Tx,Rx}Bytes 与计数,不进入速率分子。聚合窗速率合格字节为 txBytes - initialSnapshotTxBytes / rxBytes - initialSnapshotRxBytes;仅当窗内至少有一条合格更新,才允许显式 0 为候选值。仅有初始快照的采样窗输出 null/warmup;无源事件仍为 null/missing-source;后续非正采样时长仍为 null/invalid-window。legacy 逐事件 time<0 同样排除;缺失 time 的历史输入保持原有行为并显式注明语义未核,不改写旧归档。来源与聚合原始总字节继续相等,另列被排除字节,不把初始快照丢成 0 或假称来源丢包。
关键路径与资源:聚合器仍按事件 O(1)、单窗口 O(1) 内存,无 per-connection 状态、无额外进程或重复解码;每条源事件只多一次整数比较和常数次加法;1 秒采样、100 ms 聚合与 Stop 预算不放宽。按 10 万事件同规模基准对照旧实现,记录总耗时、吞吐、首个输出、CPU/RSS/I/O 可测项及最差窗;针对两份现存封存会话做只读聚合反事实核对,不改原件,不把反事实当真实新 Session。验收覆盖负时间纯窗、负/非负混合窗、合法零、无源、epoch 切换、字节守恒、两条 Swift 采集路径的“警告+退出 0+封存完整”与“非零/缺 seal/显式错误”负例;聚焦测试、全量 Python/Swift 回归、知识门禁与网站构建均须完成。真机 E4 仍需新同配置短轮和独立网络正控,不用旧会话倒填 v4 值。
R2 Implementation Update · 2026-10-03
实际范围:PerformanceSessionController 的普通与预热采集两条路径共用退出判断——stderr 仅保存为诊断,退出码 0 不据此判失败;非零退出携带诊断失败,缺终止事件失败;显式 error/control_rejected、缺 stopped/Core seal/delivery 哈希的原有门禁不放宽。DeviceNetworkBurstAccumulator 将 time<0 的字节额外记入有界的初始快照计数与字节账,原始 txBytes/rxBytes 不减;RawMetricEngine 的 v4 分子仅扣除这部分初始化字节,纯初始化窗为 warmup,真实无源仍 missing-source,非负源时间的合法零仍可为 candidate。来源 receipt 增列三个初始快照字段;Swift Registry、Reviewed JSON 合同与 Canonical 知识页同批升 v4。没有改网络订阅、采样节奏、Stop 预算、进程网络或原始 Session。相对方案无架构偏差;旧聚合 Raw 因无逐事件负时间分解,不做原位重算。
两轮旧聚合 Raw 的只读下界:较早轮原始设备收发合计 5,020,394,023 B,其中全负时间聚合窗 4,737,296,881 B(94.36%);另有一个负/非负混合窗 68,387,141 B,旧聚合行无法精确拆分,故不报 v4 精确反事实峰值。较晚轮原始合计 2,007,271,411 B,全负时间窗 1,591,913,962 B(79.31%),无混合窗。只读数值不改写旧 v3 报告,也不等于新包实际速率或设备物理真值。
匹配验证:Python 聚焦 35/35(初始快照纯窗、混合窗、合法零、来源缺席、字节守恒及 receipt);全量 Sidecar 1335/1335。全量首跑有一项与本批无关的 200,000 消息计时敏感断言波动,单项复跑 PASS,第二次全量 1335/1335 PASS;保留首跑失败事实。Swift 对 stderr+正常/异常退出及两个普通采集 fixture 的聚焦 3/3,全量 218 项、3 skipped、0 failed。知识门禁 66 contracts PASS。两轮旧 Session 的 Raw/Metric/Report/Core seal 哈希与 Raw 序列先前只读核对均一致;本批只读解析旧聚合字段,不改写封存数据、不回填历史值。
效率同规模交错外的独立进程基准(100,000 连接更新,5 次中位,输入与模块装载方式一致):原版 0.382745 s / 261271 条每秒 / CPU 0.375687 s / RSS 19.05 MiB;v4 0.413136 s / 242051 条每秒 / CPU 0.407488 s / RSS 19.16 MiB。中位吞吐约低 7.36%,绝对每事件额外约 0.304 µs;首个输出 0.401/0.415 ms,最慢轮 0.426/0.423 s;生产短轮约数千网络事件,因此额外计算量为毫秒级。此微基准无磁盘写入,物理 I/O 峰值记 unknown;没有把不同环境数字合并。站点 build、签名公证包与新包 E4 分别留待后续验证,完整 Beta 仍 partial。
R2 Validation Update · 2026-10-03
知识门禁 66 contracts PASS;站点只构建、exit 0 / 43.89 s,新增 R2 归档 HTML 严格标签栈 0 错位 / 0 未闭合,docs/ 源、public/archive/ 与构建产物 SHA 逐字相同;未执行生产网站发布。公开变更行未见私人会话标识、目标 App Bundle ID、设备名、证书指纹或数值 PID(服务标识依知识页技术溯源规则保留)。
同源码测试包 版本 102 / x86_64:App 内嵌可执行/扩展 339 件均有安全时间戳;App 与 DMG 分别完成 Developer ID 签名、公证 Accepted、staple 与 validate。App 和 DMG 的签名严格验证通过,App Gatekeeper 为 accepted / Notarized Developer ID;DMG 独立只读挂载、复制到临时安装目录后,再次验证签名/票据/Gatekeeper 与版本 102,主程序字节与源包一致。仅清理 dist/ 的旧版本 101 DMG,保留唯一版本 102 测试 DMG。交付文件 MacApp/dist/Perfowl-b102-2026-10-03-x86_64-notarized.dmg:135664626 B、SHA-256 a061f2fc3419740693faa6416fd5b3980adcb78e416681c207950805002886b7。
本机 /Applications 的版本 101 在验证时仍运行;本批不强退用户当前 App、不覆盖活动安装,版本 102 的独立解包/复制验证不冒称已安装到 /Applications。下一步由使用者结束旧版后安装版本 102,按同一指标计划做有界真实 UI 两轮:①正常 Stop 时产品 manifest 应 completed、Core sealed/complete,警告不能独自致 partial;②设备网络 receipt 原始总字节仍守恒且独立列出初始快照排除字节,纯初始窗不产候选速率;③以设备侧已知非零流量验证合格窗口数值,不能仅凭来源守恒宣布物理准确。旧 Session 一字不回写。此处为 E2 程序门 + E3 包门,不是新包 E4;Gate C/D/E 与完整 Beta 仍 partial,Startup 稳定性改善仍 NOT PROVEN。
R3 方案 · 2026-10-03 · Network 作用域投影一致性修复
版本 102 的两轮真实 UI Session 分别请求 26 项非启动指标(86 样本)和 38 项含启动指标(83 样本);两份产品 manifest 均 completed,Raw/Metric/Report/产品 seal 的摘要与末序列匹配,产品解析/序列/写入失败均为 0。Device Network v4 在两轮分别排除 1,434,824,978 / 1,584,689,294 B 负源时间初始化字节,原始 source↔aggregate 字节仍相等且来源丢弃为 0。整机发送候选峰值分别为 25.375 / 98.137 MB/s;后者可由约 1.09 秒内 106.964 MB 的非初始化来源字节复算,尚无独立传输对照,不得把高峰直接裁成算法错误,也不得凭来源守恒裁成物理准确。含启动的第二轮启动报告仍 partial,是另一个未关闭门。
现已确认的产品缺陷在显示投影:Network 组的 CapturePlan 同时请求进程与设备各一对指标,而 LiveSampleProjector 在两对都有值时固定优先进程,单一 networkSend/ReceiveBytesPerSecond 字段加 networkScope 只能携带一对;工作台的 Send/Recv 没有作用域名称,CSV 也只写该单对。两轮产品 CSV 因此几乎全是 process(85/86、82/83 行),Core 最终报告另有 device 值。读者可能把不同作用域值当成同一指标前后不一致,或误以为整机速率已经显示/导出。本批只修投影与标签,不改 v4 来源字节、速率公式、原始 Session 或旧报告;不做阈值截断和推测性带宽“校准”。
最小实现:保留旧单对字段的现有 process-first 行为及 CSV 既有列,保证旧会话/导出消费者兼容;在同一产品 sample 增加显式 processNetworkSend/ReceiveBytesPerSecond、deviceNetworkSend/ReceiveBytesPerSecond 四个可空字段及各自质量;Workbench Network 改为“App Send/Recv”和“Device Send/Recv”四条独立曲线,设备项始终标 device 且 candidate 不提升为 valid;CSV 仅在末尾追加四数值/四质量列。缺源/纯初始化只能为 null,不以另一作用域回填;报告原有 device/process 两组统计不变。相关 Registry 指标 ID、source、单位和 v4 算式原样保留,旧历史数字不回写。
R3a 构建前回归增量(先定方案):全量 Swift 回归连续三次在“中途添加指标不重配来源”夹具出现 stopped 未到达,单测独跑与整个 Foundation 类独跑却通过。只读检查发现 CollectorSupervisor.start() 给子进程安装退出回调之后才调用 process.run(),而 output/process 等供 finish() 排空末尾管道的引用却在 run() 返回之后登记;瞬时退出可使 finish() 看见空引用。窄修法是在启动前登记输出/错误/输入句柄与进程身份,启动失败再对称清空;保留现有单队列与在途回调排空协议,不延长正常 Stop 预算。新增“hello→stopped→立即退出”的回归夹具并用全量套件复验。此增量只修正常退出末尾字节丢失,不修改网络公式/会话状态门,也不把失败子进程视为正常完成。
资源门:每产品样本最多读取四个现有缓存指标并写四个标量,时间/空间额外 O(1);不会增加 DTX 订阅、per-event Raw、轮询或进程。以 86/83 样本真实规模及 10,000 样本合成规模对照投影/CSV 前后耗时、CPU、RSS,记录 I/O 可测值与首样本/最慢情况。验收门:两对同有值时四条曲线与 CSV 各归其作用域;只一对、两对都缺、合法零、candidate/warmup 与旧字段兼容;从两份现有 Session 只读复算投影期望,不改原件;匹配及全量 Python/Swift 测试、知识门禁/站点构建、同源码 Developer ID/公证/staple/Gatekeeper/独立安装包验证。测试包可交付用户后,真实 UI 同配置正控仍单独验收整机物理带宽;不能把这次显示修复写成网络 E4 校准 PASS。
R3 Implementation Update · 2026-10-03
实际修改:Core 实时投影在原有兼容单对字段之外,同时提供进程、整机各 Send/Recv 的四个可空值和各自质量/作用域/单位;Swift wire model、产品 sample、Session CSV 与时间线导出 CSV 均只追加字段,不重排旧列。工作台 Network 四条曲线明确写 App / Device,开关按两行排布以适配窄卡片。回放旧 Session 时仅在旧 networkScope 明确为 process 或 device 且不存在新分作用域字段时,将旧单对数值显示在对应曲线上;另一作用域仍缺值。来源 Raw、v4 算式、报告统计、旧 Session 与旧 CSV 均未回写。相对 R3 方案无公式偏差。
R3a 构建前回归暴露的极短命子进程退出竞态另做最小修补:CollectorSupervisor.start() 在 run() 之前登记管道与进程引用,启动失败对称清理,保留原有回调在途计数和尾部排空。新增“hello→stopped→立即退出”12 次回归夹具,正常封存仍要求实际 stopped,无终止事件不会伪造成完成。先前全量 Swift 连续三次各在同一测试出现 stopped 丢失、隔离复跑通过;修补后两次全量均通过,首轮失败历史保留。
只读重放两轮既有封存 Raw,按旧窗口与同一投影器得分作用域字段:含启动轮进程发送 82 个非空、整机发送 78 个非空,整机候选最大约 98.137 MB/s;非启动轮进程发送 86 个非空、整机发送 79 个非空,整机候选最大约 25.375 MB/s。这与 Core 报告数量级一致,只是 E2 反事实投影,不替代新版本真 UI 会话,也不证明设备物理带宽正确。另用合成两对同值/单对/缺源/零值夹具核对作用域、质量与旧字段 process-first 兼容。
匹配与全量门:Sidecar 1337/1337,Swift 220 项 / 3 skipped / 0 failed。Python 首跑未配置 Sidecar 包路径,出现一项导入错误和一项并发计时断言失败;纠正运行环境并串行执行后全量通过。Swift 在 R3a 修补前的全量失败与隔离通过均保留,不把重跑当成首跑成功。git diff --check 干净。
投影微基准是同机独立进程、四个缓存网络值、每轮 10,000 样本、各 5 次中位:旧版 wall 420.717 ms / CPU 410.385 ms / RSS 峰 27.156 MiB / 首样本 0.042 ms;新版 wall 460.845 ms / CPU 445.405 ms / RSS 峰 26.965 MiB / 首样本 0.049 ms。投影局部 CPU 增约 35 ms/10,000 样本(约 3.5 µs/样本);86/83 样本的同进程交错测量约 3 ms 量级,不能外推为完整 Session 点击到最终报告耗时。CSV 增列只在每行附加固定八列,未增加 Raw 订阅或文件扫描;CSV 专项前后 I/O 峰值与整包端到端对照未取到,记 unknown,不伪填零。当前为 E2 程序修复,整机高峰的物理正控 E4 和含启动轮的 startup partial 仍分别开放。
R3 Validation Update · 2026-10-03
知识门禁 66 contracts PASS;站点构建在本批草稿归档上 exit 0、58.56 s,最终实施/包验记录写入后再次构建并核归档字节。此处仅构建,未发布生产网站。新增公开行隐私形态扫描零命中,既有归档不回改。
同源码内测包 b103 / x86_64:App 及 339 个内嵌可执行件各有安全时间戳,App 和 DMG 分别公证 Accepted、staple/validate 成功;codesign --verify --deep --strict 与 Gatekeeper 对 App、DMG 独立复制后的 App、最终 /Applications/Perfowl.app 均通过。只读挂载 DMG 后复制到独立临时安装目录,复核版本 103、主程序字节与源 App 相同;本机旧 b102 已正常退出,先生成私有回滚备份,再覆盖安装 b103,启动冒烟时主进程正常运行。旧 b102 安装备份与 DMG 留在私有回滚目录,dist/ 仅留一份 b103 测试 DMG。交付文件 MacApp/dist/Perfowl-b103-2026-10-03-x86_64-notarized.dmg:161807123 B,SHA-256 63a73e1a3797311405a9558019defa29ac724051c4f0155a8209083e57d1729b。
本地 E2/E3 已达到可交用户测试,不等于完整产品 E4/正式发行。用户下一轮用已安装 b103 的真实 UI,按上轮同指标计划分别做一轮非启动与一轮含启动短会话:①确认 App manifest completed、Core sealed,Network 面板 App/Device Send/Recv 四项各带正确作用域;②导出 CSV 的四个新增数值/质量对与同轮产品样本及 Core 分作用域统计对照,合法零保留零、缺源保留空;③在有可信且可计量的整机非零网络正控时,以源端字节/同轴窗口核整机候选峰值,不能仅靠来源守恒宣布物理带宽准确;④含启动轮的 startup partial 单列原因,不用网络修复遮盖。保留原始 Session 与原报告,不回填旧轮。当前 Gate C/D/E、整机网络物理正控、Startup 稳定性与完整 Beta 门禁仍开放;内部测试包可用不代表 GPL 法务/外部分发门已关闭。
R4 方案 · 2026-10-03 · 设备网络发现事件队列阻塞与流量正控
b103 两轮真实 UI(26/38 项,56/44 个产品样本)均 completed/Core sealed,源账 networkBytesBalanced=true、drop=0,但整机网络 candidate 仅 22/11 行,missing-source 各 31 行。只读 Raw 时序复核发现:每轮均有约 300 条 ConnectionDetectionEvent 以 network.device.raw 逐条进入通用订阅/写入队列;100 ms 的 DeviceNetworkAggregate 已由上游按时生成,却在这些发现行之后才被下游消费,Raw 顺序中的窗尾时间相对已处理事件最大倒退约 30/33 秒。随后早期字节在较晚 sysmontap 分母窗中出现,故现有候选峰值不具备同轴物理校准依据。此处不是设备来源不存在,也不能把空窗填零或简单从整机减进程值。
本批 type=devlog,仅修整机网络元数据的入队粒度,不改 network-window-rate.v4 数值公式、1 秒产品采样、100 ms 字节聚合、来源身份或 Stop 边界:在 DeviceNetworkAggregateStream 的通用队列之前,将连续的 InterfaceDetectionEvent / ConnectionDetectionEvent 按固定最大 32 条及聚合窗边界合成显式 network.device.metadata-batch.raw;批内逐条保留完整原对象与 host 接收时间、原始次序,批外不截断。字节聚合行始终在元数据批边界后及时交付;非发现事件与 debug 逐事件字节路径仍原样交付。指标引擎忽略元数据批,来源 receipt 的输入/旁路事件计数仍按原始源事件逐条计算;旧 Raw 仍可回放。若源队列无法证明缩短,不能通过“回填缺源”为 candidate 取巧。
性能预算:每源事件 O(1) 分类和一次 host clock 读取,批缓冲 O(32) 个对象,无额外订阅、进程或磁盘扫描;连续源事件下到下一个 100 ms 窗边界或满 32 条就发表,源静默时末批到 Stop/终止才发表,不能假称有独立定时器;最多 32 条。用同规模约 300 条发现/3000 条更新的确定性负载与旧实现交错对照,记录首聚合到达、总 wall/CPU、吞吐、峰值 RSS、队列行数及可测 I/O;不得以合成代替真机。回归门:批内身份/顺序/时间逐条可恢复,100 ms 字节与初始快照精确守恒,纯发现/混合/末窗/Stop/异常/debug 路径,旧 Raw 回放,现有全量 Python/Swift、知识门禁与站点 build。真机门:用受控、定长、本机 HTTP 传输产生独立服务端字节账,记录同轴发送时段、目标设备来源与产品 Session;仅对同方向同轴窗、扣除快照的 candidate 做有界比较,并保留系统背景流量为未知。两轮旧 Session 不改;若设备侧无法自动触发或传输证据不足,正控结果记 partial 而非声称物理准确。产品包须同源码 Developer ID、公证 Accepted、staple、Gatekeeper、独立安装与 SHA 验证后才交付,网站本批只构建不发布。启动报告 partial 另案,不因网络修复被改判。
2026-10-03 · R4 回归夹具口径增量(实现前记录)
首轮 1339 项全量在同时构建时只有既有 rejected-flood 调度测试失败:3128 次让出中 message-limit 3122、active-time 6;原断言要求 message-limit >3123,却在下一条允许 active-time ≤1%,两条互相冲突。单项无构建复核通过(3125/0)。本批仅把前者与已有 1% 宿主暂停容差对齐,仍要求总消息守恒、64 消息上界、至少 99% 消息门与 ≤1% 时间门、事件循环响应;不改过滤器或产品调度语义,完整回归再运行,首跑失败永久留档。
R4 Implementation Update · 2026-10-03
同一 AI 按 Owner 调整承担方案、实现与复核,不称独立验收。DeviceNetworkAggregateStream 在通用队列之前将发现记录折为最多 32 件的 network.device.metadata-batch.raw;每件包含完整原 payload、原上游 ordinal 与 host receipt 时间。字节窗出现前或源自然结束时先交付待发 metadata;无新输入的静默期不人为触发计时线程,尾批在 Stop/source terminal 交付。聚合器原始字节与输入对账不变,新增批次数、批内源件数、最大件数与未交付件数诊断。适配器给 metadata 明确新类型,不参与设备速率分子;既有 malformed、初始化快照、byte tail 和 Stop 预算不变。每个 source 最多缓冲 32 个完整对象,空间 O(32),事件处理 O(n)。异常终止可能仍有 pending,不能把自然排空断言推广到异常路径。
两项新增测试覆盖 345 件发现的完整 payload、顺序、ordinal、时间、32 件 cap、120/240 字节守恒、首 byte row 前最多 12 个 metadata 条目,以及适配器新事件类型与原 payload 保留。聚焦 14 项通过;全量 Sidecar 1339 项 / 162.441 s / 0 failed(首跑既有调度夹具失败见前述增量,保留证据),Swift 220 项 / 3 skipped / 0 failed / 19.143 s。后续仅增强这两项测试的完整对象/次序断言,再次聚焦通过(2.599 s),无产品代码漂移。
同机缓存输入微基准为 345 件发现 + 3782 件字节更新,旧/新交替各 5 次,使用独立进程且只计循环 CPU:中位 wall 24.827→26.227 ms、CPU 24.140→25.125 ms、RSS 高水位 26.902→26.938 MiB;序列化输出条目 346→12,载荷字节 33461→62176。增加的约 29 KiB 保留了逐发现对象的时刻和 ordinal;吞吐约为基线 94.7%,局部 wall 增约 5.6%,主要收益是减少排队条目,不宣称微基准 CPU 更快。首 byte row 时间中位 20.961→23.040 ms,这是无 writer 等待的局部微基准,不外推真实点击响应;物理 I/O/整包 CPU 峰值 unknown。真实通用队列等待与物理流量可信度必须由下述新包同轴控制单列,不能从条目减少或 source 守恒自证。
R4 同轴对照追加合同 · 2026-10-03(在第二轮执行前)
首轮真实 UI 控制已经封存:8 MiB 下载对应同轴加边界整机 Rx 8.62 MiB;上传方向同时持续存在整机 Tx,server payload 与全部整机字节没有相同 scope,禁止将 +370% 直接解释为工具误差或宣称上传校准通过。原件保留。本批最多再采一轮同配置真实 UI,使用 Apple 文档 Recording a Packet Trace 的 RVI 被动记录包长度/方向(仅私有文本,不保存 payload),独立统计控制端口与全设备流量,明确 IP/TCP 长度、重传和边界区别;不注入、不改包、不增加产品源、不创建常驻环境。先做 RVI 入口预检,入口缺失时不采第二轮;成功后先 10 s 基线、8 MiB down/up、12 s 尾段,整轮 ≤90 s、单次不自动重试。抓包在该轮结束即退出并撤销 RVI;scope 或窗口不等价继续记 unknown,不用经验扣背景自证准确。若 IP 总字节与来源字节不等价,分列原始数值及原因;完整网络 E4 与支持数量不自动升级。
R4 Validation Update · 2026-10-03(真实 UI / 对照 / 测试包)
b104 同源码通过真实 perfowl.capture.toggle Start/Stop 执行两轮、各请求默认 26 个非启动指标;控制服务由设备浏览器产生定长 HTTP 8 MiB 下载后 8 MiB 上传,测试的是 device scope,不是目标 App 的 process scope。第二轮另加 Apple RVI 被动包长度/方向账,仅输出私有摘要文本(不保存报文 payload);未注入、未改设备上的 App。两轮均 App completed/durable、Core complete,质量表的 parse/gap/duplicate/out-of-order/writer failure 全 0,Raw 连续 966 / 634 件、CSV 49 / 47 行,Raw→Metric→Report 的文件 SHA 与最终消费序号、product/core seal 对齐,CSV legacy 值与已标明 scope 的新列逐行一致。
| 本轮观察 | 控制 A | 控制 B(RVI) |
|---|---|---|
| metadata 原始件 / Raw 批数 / 最大件数 | 1149 / 142 / 32 | 786 / 93 / 32 |
| 设备 Network candidate / missing-source / warmup 行 | 46 / 2 / 1 | 45 / 0 / 2 |
| Raw 顺序中设备聚合时间相对已消费高水位最大倒退 | 5.097 s | 2.317 s |
| server 完整下载 / 上传 | 8,388,608 / 8,388,608 B | 8,388,608 / 8,388,608 B |
| 下载方向来源同轴 padded 窗 Rx | 8,623,443 B(比 payload +2.80%) | 8,902,540 B(+6.13%) |
| 上传方向来源同轴 padded 窗 Tx | 39,467,750 B | 39,800,360 B |
对照窗明示为 server start 前 1 s 至 end 后 2 s,使用扣除初始化快照的聚合字节,不从 App/Device 两种源相减。两轮 source receipt 均 networkSourceDropCount=0、networkBytesBalanced=true;这只证明源账守恒。旧 b103 两轮的 missing-source 各 31 行、倒退 30.061/33.203 s;新两轮缺源段与倒退明显减少,但输入负载/场景不完全相同,不作为全设备稳定性统计或完整物理带宽 PASS。新轮仍有 2–5 s 初期排队/时序倒退,候选 Send 峰值仍达 27.187 / 32.819 MB/s,本补丁不宣称把全部高峰原因消除。
上传偏差不能直接判产品误差:第二轮 RVI 控制端口 TCP 流去重后的接收/发送唯一连续序列为 8,388,790 B / 8,389,097 B,相对 server payload 分别多 182 B 响应头与 489 B 请求头;两条序列各一个无洞区间。下载 TCP 重传增加 47,784 B,与 HTTP payload 明确区分。上传 padded 窗内,虚拟接口全部 Tx TCP payload 为 23,348,054 B,其中控制流只有 8,389,097 B,明确存在额外整机流量;物理/虚拟接口是不同封装层,不能相加后当物理网卡字节。来源的 39.80 MB 与其中一个接口并不同 scope,尚未获得逐连接来源账与独立包账的完全映射,上传精度与完整整机物理校准仍 partial;不凭背景扣减或调系数强行对齐。RVI 整体 201,517 包、kernel drop 8,不写成零丢数;控制 TCP 两个完整区间可核不代表其他连接无丢包。流量对照已执行并有可复算正负结论,不升级 Device 支持计数或 Gate C 总门。
E2/E3 测试交付:b104 / x86_64 App 与 DMG 使用 Developer ID、secure timestamp;App/DMG Notary 都为 Accepted,staple 与 codesign --verify --deep --strict、Gatekeeper 均通过。DMG 独立只读挂载、复制后的 App 签名/Gatekeeper/ticket 验证通过;已覆盖 /Applications/Perfowl.app 并通过真实 UI 采集。安装包 Perfowl-b104-2026-10-03-x86_64-notarized.dmg 161,511,097 B / SHA-256 0d05767e32bbb6b87cf1e268df153bc6835639b7a68b31282460b0ed8c79f1cc。安装副本与独立解包文件逐件 SHA 对照见私有完整性清单;只保留一份当前测试 DMG,b103 回滚包私有留存。公证仅说明包装子门,不代替 GPL-3.0 对外分发法务或完整 Beta 验收。
本批前后核对旧 b103 两份 Session 66 件文件漂移 0。临时 HTTP server、native tunnel 与 RVI 在采集后撤销,不建常驻环境,不回改旧归档或 Session。本批只构建网站,不发布。新包可交使用者复测,但完整产品阶段仍 partial:上传/整机校准、初期剩余时序倒退、startup partial/稳定性 NOT PROVEN、A1 UI E4 OPEN、Hybrid FROZEN 各自保留。下一阶段优先做有界逐连接来源↔独立控制流映射和剩余队列归因,不改数值“让它看起来正确”;启动另批。
R4 文档与交付收尾 · 2026-10-03
安装与独立解包副本 13,114 个常规文件 SHA 全同,两轮 10 项 Raw/Metric/Report/sequence/scope 完整性检查全通过;旧 Session 66 件无漂移。当前批次的可重建包装临时副本与公证上传 ZIP 在取证后清理,回滚 b103、b104 已安装 App、已签公证 DMG、SHA/公证日志和所有 Session/控制证据保留;dist/ 只有 b104 DMG 与它的 SHA 文本。私有证据在本机 ~/Perfowl-Local-Archive/network-control-r4-2026-10-03/,不把原始包元数据和会话标识发布到站点。
知识门禁 66 contracts PASS;站点构建首次误在仓库根目录调用而报缺少 build script,改在 site/ 后 exit 0 / 38.24 s,结构化 HTML 严格栈检查 0 错位 / 0 未闭合。最终归档同步后再核 dist↔docs SHA;只新增本批 R4 快照,不回改旧归档。网站只构建、不上传生产。Git/推送/Webhook 交付状态以随本次交付给出的实际回执为准,GitLab 一次失败不阻断可用的本地测试包。
R5 方案 · 2026-10-03 · Owner 指定非启动异常修复与两轮目标 App 验收
本批 type=devlog;Owner 要求暂不处理启动,由同一 AI 承担方案、实现、测试和自验收。基线 main bd89c48、工作区干净,不创建 worktree/venv/常驻服务;设备 A 与目标 App A沿用现有 USB 身份,公开产物使用别名。两轮 b104 Owner 测试 101.821/43.793 s、97/35 CSV 行均 durable/complete,66 份原件哈希不变;但设备发送峰值32.701304/94.555237 MB/s分别包含100%/约55.40%的较早聚合窗字节,当前窗分母与来源窗错配已证。初始快照排除不足以认证其他来源字节为增量。
R5-0 来源语义与其它指标只读核查
先在非采集状态核对当前设备/目标、真实包版本和 AX 控件。必要时最多一次12 s联网源诊断,仅记录连接别名、原计数、源时间、host时间及检测映射;不生成产品Session、不注入、不安装设备组件、不保存报文内容。逐连接重复/单调/重置证据先于累积口径修改;不凭字节名字猜累计或增量。保留原始输入守恒与新差分账分列。检查两轮现有磁盘计数、源窗口、CPU归一化、内存单位、帧source coverage与CSV质量传播,确认故障再改代码,不以削峰/填零/倍率调整遮盖异常。R5-0若发现其它语义缺陷,先在本段追加精确字段/公式/缺失/重置/版本,再实施。
R5-1 窗口与质量修复合同
设备网络速率分子与分母必须来自同一来源host窗口;初始字节仍只入原始账,不入速率。迟到、重复/倒退或跨epoch窗口不得冒充当前candidate;原Raw保留,不向旧Session回填。明确候选窗口的起止/时间域/有效时长与质量标签,当前UI应显式缺值而非缓存旧候选;任何缺值都是缺值而不是0。旧版本formula contract与报告原件保留。具体v5算式须在确认R5-0证据后、代码修改前入档。
R5-2 验证/效率/交付门
确定性负控覆盖:初始快照、迟到全窗、跨边界、重复/倒退、重连、源静默、合法0、单向缺字段、checkpoint恢复、Raw→Metric→Report与CSV作用域一致。真实规模只读回放两轮Owner Raw,原件前后摘要不变,不重写旧派生。完整Sidecar/Swift回归、66-contract知识门禁与站点build;来源事件O(1),连接账显式有界,窗缓存O(1)或固定上界,不新增订阅;基准以旧/新交错同输入记录首响应、wall/CPU/RSS/吞吐,物理I/O峰值缺证记unknown。单任务≤120 s(全量回归≤600 s),真UI每轮60–90 s/最多两轮,Stop≤既有预算;记录失败而不将重跑伪装首跑通过。
同源码内部测试包完成Developer ID/公证/staple/Gatekeeper/独立解包后,正常退出旧安装并保留回滚,再覆盖本机。使用设备A/目标App A真实工作台入口,两轮相同26项非启动计划;在设备侧可验证前台目标活动下采集,必要时另做独立定长流量正控,不把浏览器流量算成目标进程。原始Raw/metrics/report/seal/CSV/资源/选项与包SHA封存,检查来源守恒、无非法数值、无错窗candidate、作用域与CSV一致、计数器warmup/reset、帧边界及前台质量、正常Stop。只有实证关闭的具体bug可自验收PASS,未同scope独立校准项仍candidate;不承诺所有物理数值已认证。两轮若出现新异常,先保留本轮并修复后按新方案另记验证,不覆盖已有数据。
修复/验收结果继续追加本Canonical;knowledge canonical、首页/知识总览、时间线/门禁表、不可回改HTML快照同批联动。GitLab单次推送不重试,失败单列不阻断本地包;GitHub单列,最终通知。网站本批仅构建,不发布。Startup全套、Hybrid与法务外部分发门不在本轮范围;同AI自验收不称独立复核。
R5-0 取证与精确口径增量 · 2026-10-03(代码修改前)
8 s只读联网源诊断取得304个更新/264个连接别名。多连接负time初始记录后,正time字节分别出现110378→3970→7250→4150等非单调值,另有持续显式0;该证据不支持把正time字段当累计计数再做一次差分。保留原源增量候选语义,不新增连接计数差分。设备源诊断无产品Session,native route在结束后关闭。
另证磁盘尖峰的时间窗问题:Owner轮A Raw seq54→58的设备EndMachAbsTime差23,758,257 ticks,host到达差仅106,493,564 ns;队列压缩会把约一设备秒的字节除以0.106宿主秒。旧数据尚未具备同轮实测timebase,保持旧报告不变;新采集在同一DVT provider用DeviceInfo.mach_time_info(machTimeInfo)一次取得设备timebase,不硬编码频率。该差分共用的context-switch/wakeup同步修正,CPU/内存原gauge、帧公式和启动代码不动。
新counter-rate.source-clock.candidate.v2:对diskBytesRead/Written、ctxSwitch、intWakeups,clockNs=floor(EndMachAbsTime*numer/denom),rate=(currentCounter-previousCounter)/((clockNs-previousClockNs)/1e9)。设备timebase在源准备一次有界查询≤3 s,原始返回值随sysmontap Raw保存;有效numer/denom必须为正整型、EndMachAbsTime必须非负整型,显式缺钟/坏钟为null/missing-clock;历史Raw没有新增timebase字段才可host fallback并标candidate-host-window,不冒充设备钟。clock模式纳入差分身份键;epoch/reconnect/target代际/clock切换首次warmup;负值null/source-sentinel;counter倒退null/counter-reset并重设基线;时间倒退/重复null/invalid-window且不污染前进基线。仅counter相同且时差为正可合法0。单位和process scope不变、不宣称物理闪存带宽。
新network-window-rate.v5:保持来源Raw与初始化字节账;速率分子为当前已消费的合格聚合字节(总字节−初始化字节)。分母改为同来源相邻已接受windowEnd之差,而非sysmontap到达差;source epoch/adapter/reconnect隔离。首次来源端点或重置warmup。带窗口边界的Raw应非负start<end、end==envelope host stamp;批内重复/重叠/倒退窗为null/invalid-window。刷新时最老源windowEnd早于上一sysmontap刷新或最新end距离当前刷新>1.5 s则null/stale-source-window,整批不输出partial candidate,下一批重新warmup;边界前100ms窗有交叠不按比例拆字节,分母仍为独立来源端点、provenance注明source start/end与byte count。未来窗为invalid-window,只有完整来源interval且有合格显式字节可candidate。旧无窗口字段Raw保留host fallback candidate-host-window;与显式窗模式切换重设基线,禁止混钟。来源静默null/missing-source,UI网络值年龄>2 s或未来timestamp时null/stale-source,不无限缓存。质量与数值同时传播到报告与CSV,不削峰、不补零。1.5 s/2 s只是新鲜度保护阈值,不是物理精度认证。
执行路径仍O(1)每event、有限scalar state,无额外网络订阅/连接ledger/线程;checkpoint必须完整封存新增来源端点、mode、pending区间与初始快照/invalid状态,恢复与连续消费逐字相等。Formula/Registry版本同步,old checkpoint formula不匹配保持拒绝/重新导出,不以新算法覆盖旧Session。E2只读回放用新状态分列反事实、不得回填旧CSV。
R5-1 窗口方案调整 · 2026-10-03(实现完成前复算)
首版“任一源end早于上一sys刷新即缺值”在两份旧Raw反事实中将93/99与32/37个窗判迟到;两个异步流的正常相位偏差也触发了保护,故首版不作为交付实现。逐端点分母在部分连接更新集中于100ms时还会形成短分母,单纯保护/置空不足以提供稳定数值。
定稿v5改为来源host同轴、绝对对齐的完整1秒报告桶:bucketStart=floor(windowStart/1e9)*1e9,bucketEnd=bucketStart+1e9;100ms源窗必须完整落入同一桶;send/rx分子仅为该桶内合格字节之和(扣初始化),rate=eligible_bytes/((bucketEnd−bucketStart)/1e9),即该已声明1秒来源窗的速率,不是给短窗强加最小分母。sys刷新只发表最新未发表且已闭合桶,保留当前未闭合桶;不把多个旧桶字节挤到一个当前桶、不跨桶插值或按比例分摊。首个观测桶warmup(订阅可能在桶中途开始);迟到桶若距当前刷新>1.5 s为null/stale-source-window,仍保留Raw;没有更新不推断0。桶内坏边界/重叠/重复是invalid-window;未来未闭合桶不提前发表;每桶最多发表一次。
保留最多4个桶/源,epoch/reconnect/mode切换重置;拥塞时较旧桶可从实时视图淘汰,计数记录,原Raw仍可逐桶复算。发表值在Metric记录显式追加来源windowStart/windowEnd,UI过期以此windowEnd为准,Report统计仍保留candidate与该来源窗。历史无窗口字段Raw仍沿旧host fallback且带candidate-host-window标签。该定稿替代上一段v5“相邻已接受端点分母”和“整批因一个迟到窗全丢”条款,不修改已封存旧数据;一个新鲜桶不被不相同桶的迟到数据污染,亦不允许同桶的部分无效数据伪装完整candidate。源原始time单位不另行假设,整数秒设备原生钟留诊断,不当分母。
R5-1 来源完成水位补充 · 2026-10-03
对齐桶首版回放发现,单凭sys时钟已过bucketEnd就提前发表,随后队列中的同桶尾窗到达会被误判为“已发表旧窗”。正式发表必须同时满足 source watermark(最后已消费的有效源windowEnd)≥bucketEnd 和 host刷新≥bucketEnd;同一来源序列前进到桶尾才证明该桶已交付,不用另一来源的时钟冒充。无后续更新不发表未证完成的桶;有界等待/迟到仍保持缺值,首桶warmup,Raw尾段保留。此补充不延长Stop预算或添加定时器,窗缓存仍最多4个。
R5 Implementation Update · 2026-10-03 · E2
实际修改:一次 DeviceInfo timebase 查询随原 Sysmontap Raw 留档,四项累计计数改用设备时钟差分;设备网络按完整对齐 1 秒源桶与来源水位发表,最多 4 桶,避免把早期字节混入当前到达窗口;网络 Live 值 2 秒过期置空。初始字节不进速率,跨窗/重叠/倒退/源静默保持缺值,新增两项窗口 provenance 字段与 checkpoint v3 原子恢复。Registry/知识页/合同镜像同步,不改启动、CPU/内存 gauge、帧公式、目标进程网络算法。实际设备 machTimeInfo 是数组(numer/denom 在索引 1/2),同时支持测试映射返回;缺钟不硬编码。
原端点差分原型造成几乎全空,首版对齐桶因缺少来源完成水位而提前发表;二者仅私有回放,没有装入测试包。最终修订回放两轮旧 Raw:A 网络 candidate 72/99、B 28/37;A 原峰值所在帧转 stale-source-window/null,B 原峰值所在帧改为属于完整来源秒桶的 60,780,830 B/s,而不是两桶字节合除一个短到达窗口。新最大 13,794,010 / 65,395,896 B/s 仍是来源候选,不凭降峰宣称物理准确。原两轮 66 文件 SHA 漂移 0。
最终 Sidecar 全量 1,358 tests / 152.626 s / OK;Swift 220 tests / 3 skipped / 0 failures / 17.900 s。专项负控覆盖源钟/桶完成水位/过期/重连/重复/负字节/初始快照/合法 0/checkpoint 原子恢复;实施中的夹具错误与失败日志保留,不伪装首跑通过。
效率:7,848 个真实缓存事件、旧新交错各 5 次,中位 wall 205.321→253.248 ms、CPU 202.472→247.484 ms、首事件 0.2094→0.2033 ms、峰值 RSS(含输入缓存)130.371→130.418 MiB。正确窗口校验有约 6.1 µs/event 额外 wall、约 23% 微基准成本,不声称提速;吞吐仍约 31k event/s,实际两轮约 15–20 event/s,对应每秒增加约 0.12 ms。保持 O(1)、固定最多 4 桶与一次有界来源准备,没有新增订阅/常驻进程。物理 I/O 峰值 unknown;包与两轮实际采集资源另列。正常路径轻量预算仍须用真 UI 验证,不把微基准替代 E4。
R5 Validation Update · 2026-10-03 · E2/E3;两轮 E4 待解锁
最后 Registry 描述同步后 Swift 全量复验 220 tests / 3 skipped / 0 failures / 18.168 s;最终 Python 仍为 1,358 / OK。包内冻结 Core 对旧轮 A 的独立私有 Raw 复制件完成离线派生,确认两项新 formula version 与 Raw/Metric SHA(E2,仅离线,不当新真机会话)。核对脚本末尾误读离线 manifest 的 incremental 字段导致 KeyError,派生本身 exit 0;改为按离线 schema 的 eventCount/sourceRawSHA256/metricSHA256复核,不重跑原件。
b105 包/安装 E3:340 个 Mach-O 逐项 Developer ID + runtime + secure timestamp,App 与 DMG Notary 均 Accepted;App/容器 stapling、strict/deep codesign、Gatekeeper、独立只读挂载/解包均通过。已正常退出 b104 并覆盖本机 /Applications/Perfowl.app,installed CFBundleVersion=105;独立解包与安装副本 13,114 个常规文件 SHA 全同,源码冻结摘要未变。测试包 161,369,994 B,SHA-256 757a4182d8b616b63982f2302ed059b38c01b1fa7cd8b2d8ee66cc1ca1d982de;dist/保留 b105 DMG 与 SHA,b104 原安装/包移入私有回滚保留。包内的 requests dependency warning 未让成功退出成为 partial,不覆盖真正的缺 seal/失败。公证不替代 GPL-3.0 对外分发法务。
E4 尚未执行、不得报告两轮“无问题”:设备 A 实时枚举确认 wired/booted,锁状态查询 passcodeRequired=false、unlockedSinceBoot=true;但 Mac 的屏幕锁定标志为 Yes,截图为锁屏,旧 UI AX未发现工作台按钮。已请求 Owner 解锁 Mac 与保持设备连接;没有绕过锁屏、没有用核心命令采集替代真 UI,也没有偷偷生成两份新 Session。最多两次 75 s、同一26项非启动计划的真实 AX工作台采集与独立来源/CSV/封存核对器已准备,待可用 UI 后执行;当前 status partial、窗口/设备钟 bug 的 E2 回归通过,指定设备两轮 E4 门仍 OPEN。
旧 Owner 两轮 66 份原件 SHA 漂移 0。不回写旧报告,不删除设备或 Session 数据,不更改启动/Hybrid门禁。本次只构建文档站,不发布网站。下一动作:解锁后以已安装同源码 b105 执行目标 App 两轮真实 UI,核对每个候选来源窗、设备钟差分、缺值/作用域、完整性与前台覆盖;若异常,保留失败轮另记修订。指标绝对物理精度仍需同 scope 独立校准,未由本批提升成全指标认证。GitLab一次、GitHub单列与通知回执在交付汇报给出。