Skip to content

知识库重排独立审计修复与可视化收口 ​

本批不是重新设计知识库,而是对 2026-09-18 已交付的“知识库全域技术叙事重排”做独立提交态审计后,修复两个阻断问题:提交态 Registry/知识合同不自洽,以及知识正文没有真正可渲染的技术图示。同时清理少量残留的通用经验阈值表述。

1. 审计为什么推翻了上一轮的 validated 结论 ​

上一轮在共享工作区直接执行 metric-knowledge-gate.py 与 VitePress build,观察到 66 项 Registry contract,因此把知识库标记为 implemented · validated。独立审计随后用 git archive HEAD 导出远端同一提交 b7c2680 的纯净快照重新运行门禁,得到:

text
Registry count 63 != 66
metric-contracts.json differs from the Swift Registry
Canonical metricID absent from Registry:
- ios.frame.time.p95
- ios.display.refresh_rate
- ios.frame.pacing_jitter

原因是共享工作区中存在另一个产品批次尚未提交的 PerformanceModels.swift 修改,恰好补入这 3 个 Display metricID。旧验收因此验证的是“HEAD + 未提交产品代码”,不是远端提交自身。这个问题属于验证污染,不是知识页本身的写作问题。

本批从 b7c2680 创建独立 Git worktree,所有修复、测试、构建、提交都在隔离目录完成,不读取共享工作区的未提交文件作为通过条件。

2. R7-Fix-A 最小合同闭环 ​

这 3 个 Display 派生指标并非本批新增算法。DisplayPerformanceProjector 在提交态已经实现 P95、Refresh Rate 与 Pacing Jitter;R7-Fix-A 的开发记录也已明确要求它们进入产品 Registry。缺口只在“实现存在,但提交态 Registry/source contract 没有完整登记”。

本批只补 R7-Fix-A 的最小闭环,没有混入后续 R7-Fix-B~F 的其它产品修复:

  • Swift PerfowlMetricRegistry 补齐 ios.frame.time.p95、ios.display.refresh_rate、ios.frame.pacing_jitter;
  • Python display-performance source contract 从 2 项补到 5 项,fallback registry 同步;
  • platform_support.py 自审合同数从 63 更新为 66;
  • CapturePlan/Online Report/CLI/平台支持的黄金向量、合同计数与哈希同步;
  • 新增跨层不变量:Workbench 中每个 metricID 必须存在于 Registry;Display Performance 5 个 metricID 必须全部由 activitytrace-framelifetime 拥有。

这一步恢复了“已实现的五项 Display 指标”与“可请求的产品合同”之间的一致性,没有改变 P95/Jitter/Refresh 的公式。

3. 技术可视化收口 ​

独立审计统计到重排后共有 79 篇 knowledge Markdown,但正文 Markdown 图片引用为 0;4 篇页面虽包含 Mermaid fence,当前 VitePress 并未安装 Mermaid renderer,最终 HTML 只是 language-mermaid 代码块。

本批新增 12 个真实 SVG 技术图:

SVG主题
observation-model.svgiOS 系统事实 → Raw → Metric → Session
display-pipeline.svgApp 到 Display Presentation 管线
display-metric-map.svgFrameLifetime 派生五个 Display 指标
display-data-chain.svgActivityTrace → Decoder → Quality → Projector
display-evolution.svgCoreProfile 到 ActivityTrace 的技术演进
startup-lifecycle.svgStartup Total 端点与阶段覆盖度
cpu-scheduling.svgProcess / Scheduler / Device 三层 CPU 语义
memory-topology.svgMemory 五指标语义拓扑
network-clock.svgCounter 与 Source Clock 的速率关系
gpu-layers.svgGraphics Gauge / Dynamic Counter / Display 分层
energy-thermal.svgEnergy / Electrical / Temperature / Thermal 边界
session-dataflow.svgCapturePlan → Raw → Metric → Report → Replay

这些资源由知识库首页、观测模型、Display、Startup、CPU、Memory、Network、GPU、Energy 与 Session 等 12 个核心页面引用。原有 raw Mermaid fence 全部移除。

门禁新增两条硬规则:

  1. 当前 VitePress 未配置 Mermaid renderer 时,site/knowledge/** 不允许残留 raw Mermaid fence;
  2. 核心领域总览/样板页必须引用指定的真实 SVG,资源必须存在且非空。

构建产物抽查确认 display-performance.html 生成 3 个真实 <img src="/diagrams/knowledge/...svg">,startup-lifecycle.html 同样生成 <img>;最终 language-mermaid 数量为 0。

4. 经验阈值与测试规程二次收口 ​

  • total-cpu.md 删除 <40% / <80% / >85% 这类看似通用的健康阈值,改为同设备、同系统、同脚本的历史分布对照;
  • app-cpu.md 删除示例百分比阈值表,改为 P50/P95/峰值/持续时间与团队 SLA 冻结方法;
  • memory-lifecycle.md 删除固定 10 轮、10/30 秒、5/15 MB 的“标准化规程”,改为重复循环 + 稳定点 + 场景自适应沉降窗口;
  • Memory 的泄漏/Jetsam 表述由“曲线直接确诊”改为“观察形态 → 候选方向 → Allocations/Memory Graph/系统终止证据升级”。

5. 验证记录 ​

5.1 产品合同 ​

  • Python R7-Fix-A 定向:34/34 PASS;
  • Swift R7-Fix-A 定向:58/58 PASS;
  • Python 全量:541/541 PASS,14.351 s;
  • Swift 全量首轮:PersistentScreenshotWorkerTests 出现一次与本批无关的时序型失败;该套件立即单独重跑 12/12 PASS;随后同一全量命令重跑:179 tests,3 skipped,0 failures,34.735 s。该波动不涉及本批修改文件,最终全量证据为 PASS。

5.2 知识门禁与可视化 ​

  • metric-knowledge-gate.py:66 Registry contracts + Canonical ownership + knowledgeRole + rendered visual coverage PASS;
  • 12/12 SVG xmllint --noout PASS;
  • raw Mermaid fence = 0;
  • 引用知识图的页面 = 12;
  • 最终构建 HTML 中 language-mermaid = 0,实际 SVG <img> 已抽查确认。

5.3 站点构建 ​

文档记录写入后的预终验生产构建已 PASS(17.10 s,仅既有 chunk-size warning)。状态升级为 validated 后还会对最终文件字节再执行一次相同 gate/build;该命令通过后不再修改受验源码。

6. 证据等级与未改变的门禁 ​

本批属于 E2 工程/文档闭环,不新增 E4 真机能力结论。Display R7-Fix-G/H/I、Battery Electrical battery-only、ThermalStatus 稳定来源、GPU Counter data row、Screenshot HEIC E4、CoreProfile 30 分钟长测等原有产品门禁保持不变。

7. 当前状态 ​

implemented · validated:代码、知识内容、SVG 与自动门禁已完成;最终源状态 gate/build 与测试门禁已通过;cached diff、Git commit、双远程推送与 delivery webhook 按本批交付流程继续执行。

Validation Update · 2026-09-18 · Final Source State ​

  • 最终状态已升级为 implemented · validated;
  • 66 项 Registry/source contract 与知识合同完全一致;
  • Python 全量 541/541 PASS;Swift 最终全量 179 tests / 3 skipped / 0 failures;
  • 12/12 SVG 可解析,核心 12 页引用真实技术图,raw Mermaid 为 0;
  • 状态升级前的完整 gate + VitePress build 已 PASS(17.10 s);
  • 本段写入后立即对最终文件字节再次执行同一 gate/build,只有该命令 PASS 才允许进入 Git stage/commit;通过后不再改动受验源码与文档正文。

Perfowl · Performance Observer