1Hz与换机:方案和当前partial结果快照
2026-10-18 · E2软件与E4四轮证据;第五轮指令通道失败,当前指标未验收,整体27/66。此归档创建后不回改。
---
type: devlog
title: 常规指标统一默认每秒一点:节拍纠偏与当前单项续验
date: 2026-10-18
status: approved
kind: plan
stage: P4
evidence: E1
---
# 常规指标统一默认每秒一点
## 1. Owner Decision:不再逐项询问默认刷新频率
Owner原话:“所有指标默认都应该是1秒一个点啊,什么时候开始是每秒2个点了呢”。据此统一默认产品实时快照/图表和周期型验收机会为1000ms;不再要求Owner为每个指标单独批准1Hz。本决定解决此前中断唤醒率刷新范围待答项。Owner已授权同一AI方案、实现、测试与分离审核,无子代理。
历史已验收27/66继续沿用,剩余39,不重新启动历史指标正式五轮;必要兼容性回归不记作新验收。原500ms失败、原资源和历史数字不改判或覆盖;本次频率纠偏亦不直接增加完成数。
## 2. 半秒设置的可追溯来源
- 2026-10-07 G84记录系统源intervalMs默认500,与原源观测合同一致;这是源配置的记录,不足以证明当时所有GUI已经半秒出点。
- 主分支可明确定位的GUI默认引入提交为`a1757da`,2026-10-16 23:52:40 +08:00:`CollectorSupervisor.coreGUIIntervalMilliseconds=500`,Core实际启动参数显式加入`--interval-ms 500`,Session计划同步记录0.5秒。该提交之前相同主线路径未显式覆盖CLI的1000ms默认;不将此主线事实外推为所有历史未合并包的首次改变时间。
- 本轮中断唤醒率沿用这份500ms产品/验收合同,120秒计240机会,从而提出了原本不应反复交给Owner的频率选择。问题是工程默认与Owner预期不一致,不是Owner临时放宽数值要求。
## 3. 三种时钟与不变量
1. **产品发表**:默认1000ms,正常GUI直接/预热两入口、Sidecar实际参数、Session计划、Wire样本、CSV/JSONL和图表一致;不是单纯界面节流。
2. **原始采集**:保留必要的原生高频来源、逐帧事件与启动事件;不会为了每秒出点而每秒才读一帧/一个启动事件,也不擅自改变已验源schema、补充源选择或精度/TTL。来源配置与产品发表配置必须独立记录。
3. **指标数值窗口**:沿用原始设备时间差分/窗口、公式版本、单位和作用范围;每秒发布不代表把原生500ms窗伪写成1秒。无真实新值仍缺失,不重复旧值、补0或插值。启动/崩溃等事件仍按实际事件时间记录,不强造每秒一个事件。
CLI与测试显式指定其他节拍的兼容入口可以保留,但GUI标准默认每秒一点;旧Session沿原策略回放,不原位迁移历史证据。
## 4. 实施边界(先文档,后产品)
- GUI单一默认改1000ms,直接/预热复用和Session元数据同源。
- 将原source interval与publication interval解耦;新增显式来源间隔参数或等价独立配置,GUI以既有500ms来源配置工作,保留原补充源/原始时钟和TTL。不能只改GUI常量,让原条件`interval_ms==500`的驻留/虚拟/线程补充源静默关闭。
- 发布网格使用ready锚定1秒网格,错时钟/重复槽/迟到/重连不回填。上下文切换率既有1Hz政策需要兼容全局1秒网格,不能因为其旧验证器只允许500ms网格而变成全missing。中断唤醒率用同样明确的1Hz一次发表语义;原500ms策略与旧无marker回放保留。
- 最新未消费来源的取值只对有明确策略的来源感知指标实施,不全局吞掉Raw;FIFO仍有界,不通过加大TTL/容量补线。
- 实际Swift图表/CSV/JSONL消费者处理与新质量语义匹配;默认1Hz下不另造交替not-due空点。
- 不触碰其他共享WIP、历史报告或封存归档,不新建环境、常驻进程或子代理;只用本机原有签名/构建链,正常退出后同址覆盖,保留唯一dist包与必要回滚。公证继续按Owner暂缓,测试包与正式分发资格分别报告。
## 5. 软件、资源与当前验收目标
先冻结小型源码写前SHA。测试包括真实Swift实际argv/直接与预热复用/计划1秒、CLI参数传递/两个采集时钟、source500补充策略不变、1秒网格错类型/重连/迟到/首点/重复/marker切换、每个来源最多一次、合法0与缺失、原500ms历史路径、上下文切换率兼容、当前中断唤醒率、真实消费者所有输出与旧证据不变量。新默认不得仅用配置文本检索当作运行通过。
产品关键路径维持O(1)、来源FIFO容量6,独立分析O(N)单遍流式;489进程/约49KB、10000次完整consume+snapshot前后配对,平均和P95≤1ms,另列首响应/最大/CPU/RSS和不可测I/O;不以降低发表次数掩盖单次处理退化。串行、软件及独立核对每步120s/192MiB(编译单步180s,构建/签名/安装300s),live RSS加wait4退出峰值守卫,首失败即停、旧失败保留。
软件、实际包/安装核对与工具准入全部关闭后,当前唯一中断唤醒率用**新的1秒网格诊断**,保留原140秒负载与固定ready+[15,135)窗口:120机会/120槽,真实新值和完整槽各≥119,普通可比≥114、gap≤1.5秒、严重含尾段0、来源违规0、连续偏离≤2、正参考≥5且至少1正产品值。数值/参考界和原1.5秒TTL不变。明确新算法/新命名,不从旧232/240筛点冒充新轮。
仅新诊断全部成立后准入5个新生命/Session,每轮前600秒冷却,首失败停、不补样;独立原件保管、精确counter/有理数参考、实际Swift/Codable/CSV/JSONL、SQLite和Raw连续性复核。通过才27→28;其余已验指标不重开正式五轮。当前项关闭后才进入磁盘等后项。
## 6. 交付闭环与当前状态
当前只是批准的纠偏方案,产品与已装内部188尚未改变;当前中断唤醒率正式0/5、27/66保持。计划进入实现后在本文件追加绝对日期实施/验证段;代码、匹配测试、知识/devlog/归档/时间线/总览与首页窄提交,双远程各一次(GitLab失败不重试)、准确主线站点发布和线上内容核对、一次交付通知;不把软件准备或默认频率纠偏称为新增指标通过。
空间开始/批末/持续每30分钟检查,≥10GiB且≥预计新增2倍;原件、失败、引用封存和必要回滚保留,采样时不并发站点构建/发布。
## Implementation Update · 2026-10-18 · R1软件兼容性纠正
已实现GUI真实发表1000ms/独立source500ms,直接与预热均透传;三处projector及所有source options保留原500,ready元数据同时说明两种间隔。上下文旧半秒与新一秒网格均保留,新中断策略采用相同有界最新未消费来源,旧v1回放不变,图表不隐藏真实缺失。
首个聚焦111测试通过(E2);首次逐文件回归在closeout套件停止,15例中7失败,原因定位为内部程序化Namespace没有新增optional字段,已改为`getattr(..., None)`兼容旧入口,不放宽任何断言。原失败日志保留;R2新目录重新验证。尚无新真机结果、不增加完成数。
换机交付按Owner最新指示列入 `internal/handoff/computer-migration-2026-10-18.md`;当前项后先交接,不进入下一指标。
## Validation Update · 2026-10-18 · 环境与构建预算分列
R2回归中的三项源码接线断言仍引用旧变量名,已按独立source参数更新,另有真实stream/direct/prewarm运行控制验证实际options、projector、ready与Wire,不以字符串检索替代。R3广覆盖首次纳入既有未跟踪native专项,因测试进程未载入缓存的native扩展停止;不是数值判据失败。新增可移植 `MacApp/scripts/run-core-tests.py` 显式加载ABI匹配缓存后测试,保留optional fallback路径与原失败。
资源门澄清:192MiB/120s针对软件运行与核对;Swift编译历史已实测约269MiB,因此不将其误列为192MiB运行通过。编译/链接采用独立512MiB/180s、串行;SwiftPM完整构建/冻结器采用1536MiB/300s、单job,输出构建实测与来源,不外推为采集开销。产品采集/分析/工具仍192MiB、140s负载及230s有界收尾,不放宽原验收内存与数值门。R1新evaluator首次因文本转换缺少空格的语法错误未加载即退出,已纠正;该短工具启动曾与回归短暂重叠,不将其用于配对性能结果,配对性能重新串行测量。
当前验收/保管/第二数学工具开始迁入 `internal/acceptance/interrupt_wakeup_1hz/`,使用仓库根自动发现与私有配置参数,避免换机依赖旧用户名/原私有脚本绝对路径。旧2Hz脚本/诊断/机读件不回改。
## Implementation Update · 2026-10-18 · 可重现构建与迁移工具
149文件/2625个当前Sidecar测试在显式加载同ABI缓存后全部通过(E2,含原待验native专项兼容性,不把它们升级E4)。新增1Hz独立evaluator/保管/第二数学13控制通过,固定分母、零值不代替非零覆盖、尾部严重、重复来源、缺参考均有反控。真实direct/prewarm四控制通过,输入实际500与默认1000均核对source options/projector/ready/Wire。
构建脚本新增可选`PERFOWL_DIST_DIR`与`PERFOWL_BUILD_JOBS`,默认行为保持,便于在原私有批次构建候选、不污染唯一dist交付包且限制单job;新机可直接复用标准入口,不依赖旧包的二进制嫁接。签名身份仍本地读取,不入文档/Git。全GUI及完整core源码构建、实际消费者/安装与E4均仍待执行。
## Validation Update · 2026-10-18 · Swift测试夹具修正与资源分层
SwiftPM首次构建失败定位在既有cadence测试使用不存在的简化构造器;已改为真实Wire→PerformanceSample路径。随后两轮分别暴露测试JSON缺schemaVersion和process.executable,均保留原失败并补齐真实协议字段,不改变产品解析/断言。整套Swift单进程R3在既有大容量timeline压力用例超过192MiB时已被监督终止,不能写成full regression通过;该夹具资源超限不等同当前中断采样超限。
后续改为**每测试类独立进程**,相关常规类仍120s/192MiB;明确构造大容量timeline的既有压力类用独立512MiB上限并分列(不与正常采集/工具开销混合),首失败停止。仍保留单进程失败,不以新的分层运行回改旧结果。当前新指标必须通过真实argv/计划/预热、cadence、模型/导出与实际Core消费者;不靠跳过这些相关门进入真机。
## Validation Update · 2026-10-18 · 分层完整软件回归
串行独立进程运行全部44个Swift测试类,共372例全部通过(E2);常规类192MiB/120s,明确大容量截图/时间线压力夹具512MiB分列,未回改此前单进程超限失败。实际全部44Core消费者18输入的模型/Codable/CSV/JSONL核同,运行0.079s/6.43MiB;其编译118.021s/282.35MiB按独立编译预算记录。149文件2625 Python、4真实stream、13独立数学/evaluator与8监督控制结果均保留。
当前正在标准入口重新构建整个GUI和Core(内部189候选),不复用旧500ms GUI;此时尚未安装、尚无新真机诊断或正式轮,仍27/66与0/5。所有源码与包核同、签名/独立挂载/安装须后续实测,不提前写成功。
## Validation Update · 2026-10-18 · 标准189内部包与新诊断准入
标准完整GUI/Core构建272.095s,退出峰值733.65MiB,使用独立1536MiB构建预算;89个内嵌Core模块与CLI code object逐一对当前源码核同。DeveloperID严格签名、独立挂载全树及安装全树一致;本机189正常覆盖、唯一dist包与校验,旧188回滚及旧失败均保留。公证依Owner暂缓,Gatekeeper exit3不作为正式分发通过;当前包来自明确保留WIP的源码,待迁移源码收敛提交后另核Git对应性。
工具/RSS、Lab13既有参考与OFF/ON开销资格核同;旧2Hz失败诊断逐文件保全后同手机容器退役,活动run59→58,删除0字节,容纳新诊断加五轮;没有扩容/删失败样本。当前启动一新1Hz诊断,正式仍0/5,尚不能计28。新队列另有5个纯软件控制,证明真实600秒冷却约束、首失败停、诊断未过禁采、安装漂移禁采及重复生命/Session禁过,不以这些控制替代手机验收。
## Validation Update · 2026-10-18 · 正式队列4/5与通道停止
新1Hz诊断120/120全部核同;正式1–4四个完整生命/Session各120/120新值与完整槽,普通120/120/120/117、第四轮3未评估、严重及来源违规0。第五轮配方子进程-15、无成功回执,未形成Lab run,正常Stop封口并保全整个失败Session;随后一次只读CoreDevice详情8秒超时/exit2。首失败停止,未自动补采,已请求Owner重连;不能把4/5说成当前指标通过。整体仍27/66。详细实际修改、旧共享依赖收敛、资源、边界与换机清单见[本批结果](/devlog/p4-interrupt-1hz-and-computer-migration-2026-10-18)。
---
type: devlog
title: 中断唤醒率1Hz四轮证据、第五轮通道失败与换机保全
date: 2026-10-18
status: partial
kind: validation
stage: P4
evidence: E4
metric: ios.process.scheduler.interrupt_wakeup_rate
---
# 当前结论:四轮成立,正式五轮尚未完成
Owner要求当前中断唤醒率完成后先换机交接,不进入下一指标。当前整体仍**27/66**(本轮新证据18、历史7、显示专项2),剩余39;本次**不新增已验收指标**。统一每秒一点已实现并覆盖内部189,但软件/内部包完成不代替指标正式验收。
## 1. 方案、实现与范围
依据[统一1秒方案](/devlog/p4-default-one-second-publication-plan-2026-10-18)与[中断Canonical合同](/devlog/p4-fixture-lab-interrupt-wakeup-plan-2026-10-18)。正常GUI direct/prewarm发表1000ms,独立source500ms不变;真实argv、ready与Session计划分别记录。上下文兼容旧半秒与新全秒网格;中断新`process-interrupt-wakeup-source-once.1hz.v2`保留旧v1/无marker回放。有界最新未消费来源、容量6、TTL1.5秒、原始精确累计差分/设备时钟不变,不复制旧点或补0。
实际修改:`CollectorSupervisor.swift`、Core CLI/realtime/adapters、两freshness模块、`MetricPublicationCadence.swift`及匹配测试;新增可移植执行/保管/第二数学/实际Swift消费者/有界队列于`internal/acceptance/interrupt_wakeup_1hz/`。具体公式、scope、单位与边界仍以[指标知识页](/knowledge/metrics/interrupt-wakeup-rate)为准。
**迁移依赖收敛不伪称单一常量改动**:当前完整GUI/Core构建使用了此前保留的退出生命周期/进程登记、队列计时、截图快照与原生预览、传输诊断、共享采集解析等运行依赖。本批将实际构建和测试覆盖的运行源码/匹配测试/固定vendor输入具名提交,不丢失依赖;这些E2兼容性结果不等于给其他待验指标新增E4。旧legacy实验、历史待验方案与文档在独立迁移快照保全,不默认合入产品或发布。
## 2. 软件与资源(E2)
- 149个Python文件、2625测试通过;44个Swift测试类、372测试串行独立进程通过。常规运行192MiB/120秒,明确大容量截图/时间线压力夹具512MiB分列;此前单进程超限失败原件保留。
- 4个真实stream/direct/prewarm参数控制、13个独立数学/evaluator控制、8个监督控制与5个队列反控通过。实际44Core、18输入的模型/Codable/CSV/JSONL核同。
- 同489进程输入、10000次完整consume+snapshot配对:平均0.376393→0.354265ms,P95 0.644374→0.552150ms;首响应2.528→2.068ms,最大70.256→18.349ms。固定输入,不以减少发表次数代替单次处理效率。
- 标准完整GUI/Core构建272.095秒,退出峰值733.65MiB,按独立1536MiB/300秒构建预算记录,不当采集开销。
- 内部189的89个内嵌Core模块与CLI逐一对源码核同;Developer ID严格签名、独立DMG挂载全树与安装全树一致。正常退出后仅同址覆盖`/Applications/Perfowl.app`;dist只保留189包与校验。旧188及失败保留私有,删除的是已核有归档副本的旧dist重复件139,663,290B。
- 本包构建时来自明确保全的工作区,不宣称当时是干净main构建;收敛提交后以源码pins核对对应关系。Owner暂缓公证、Gatekeeper exit3、GPL法务与新机ARM兼容缺口照实保留。
## 3. 新诊断与正式队列(E4,不等于正式验收通过)
新1Hz诊断:固定120机会/120槽,120真实新值、120普通、120正参考与正产品窗,最大gap1秒,严重/来源违规0,原件/SQLite/Raw全序列、第二精确数学与实际44Core消费者均核同。它是准入诊断,**不计正式轮**。
正式队列每轮实际冷却至少600秒,140秒负载、固定ready+[15,135)窗口,首失败停、不补样:
| 正式轮 | 真实新值 / 机会 | 完整槽 | 普通 / 未评估 | 严重 / 来源违规 | 结果 |
| --- | --- | --- | --- | --- | --- |
| 1 | 120/120 | 120/120 | 120/0 | 0/0 | 原件、第二数学、实际Swift核同 |
| 2 | 120/120 | 120/120 | 120/0 | 0/0 | 同上 |
| 3 | 120/120 | 120/120 | 120/0 | 0/0 | 同上 |
| 4 | 120/120 | 120/120 | 117/3 | 0/0 | 达普通≥114门;3点未评估保留,不写成全部准确 |
| 5 | 未完成 | 未完成 | 未评估 | 不作数值结论 | 配方通道异常,保留整轮失败,不补跑 |
四个完整新生命/Session共480真实新值、480完整槽、477普通、3未评估,最大gap均1秒;严重与来源违规均0。运行155.227–166.652秒,直接RSS最大180,289,536B;每轮仍保留完整原始、窗外/尾部、非零覆盖和资源记录,不裁切失败。
## 4. 第五轮实际停止点与因果边界
产品Start一次成功;测试配方发送子进程退出`-15`、没有成功回执,未形成第五个Lab run。执行器当即停止:产品Stop一次成功、Session正常封口持久化,全部服务关闭;整次失败13.800秒、RSS88,731,648B。随后一次**只读**CoreDevice检查也在8秒超时、exit2;普通配对/DTX读取仍可用。这定位到测试指令通道异常,**不证明物理线缆故障、产品数值错误或某个环境因素是唯一原因**。
失败Session已独立复制并逐文件SHA核同;确认全部既有run已释放后,仅对本次已绑定的自有App同一生命发送一次正常终止信号,没有操作其他App或补发URL。手机活动run63,原失败诊断已在同容器保全退役,未扩大64上限、未删除失败或旧原件。
已请求Owner USB重连并保持解锁。**恢复前不自动重试、不把四轮加补一轮当原五轮通过**;恢复后先一次只读资格,另立新独占attempt与容量保全,再按当前合同完成完整五轮。若换机先发生,新机从这个真实停止点接手,不进入磁盘。
## 5. 换机整理与交付边界
详细内部交接:`internal/handoff/computer-migration-2026-10-18.md`;唯一当前恢复:`internal/current-ai-handoff.md`。内容覆盖版本/锁、Intel与ARM、签名/钥匙串、手机信任与AX、UI工具源码、独立参考/开销、失败与run容量、逐项顺序、私有资料/秘密迁移、清理、发布和通知。
主工作区全展开、ignored证据、三个linked worktree、九本地branch和两stash分别清点。当前运行源码收敛main;其余待验WIP用`codex/migration-wip-20261018`保存。两个旧分支独有commit和两stash以具名保全refs保存,**不apply、不盲merge**。GitHub/GitLab推送和网站以实际最终收据为准,此文不预写成功。
Git不包含Raw/Session、私钥/凭据、根artifacts和私人记忆;需安全单独迁移。先前Owner已删且无备份的归档不声称恢复。新机尚未验证;只clone不是私有证据、权限与架构资格全部恢复。
## 6. 下一动作与整体进度
**当前项仍partial,27/66不变。** 等Owner重连后只读通道资格;若尚未恢复则保留阻碍并完成可独立进行的源码与迁移交付,不伪造当前指标完成。新机继续中断;只有其正式验收关闭后才按序进程磁盘读→写等未验项。历史已验27不重开五轮;candidate不外推物理精度、所有App或全部设备100%稳定。