Skip to content

Commit 53bd075

Browse files
committed
docs(standards): 同步懒侧门禁的批 8 基线
依据 = `rulings.md` **§C59.3**(授权重冻 = §C46.4 的第三次、也是最后一次)+ **§C59.2**(重冻前的红读数)+ AGENTS.md §6「规范与代码冲突时以规范为准」。 背景 = `performance.md` 的懒侧门禁节此前只记录到「7a 段收口 `0a503cc8`」的重冻(636.24 kB),并写「T22 全批收口时再做一次」—— **那一次已落地**(`55f502fa`)⇒ 规范若不更新,读起来仍像「终态待定」。 形态 = **纯追加**(在「一次性重冻记录」条之后追加一条「最后一次重冻已落地」;该条与其上八条口径**一字未改**)⇒ 本提交 **+4 行 / −0 行**。 【逐字对照:改了哪一行 / 原文是什么】 - **位点**:`docs/standards/performance.md` 懒侧门禁节,「一次性重冻记录(批 7 §C46.4;7a 段收口 `90bb5f6a`)」条的末句之后。 - **原文(保留,一字未动)**:「…**批 8 的基线 = 本批收口时的重冻值**(此后才是真正的硬棘轮;T22 全批收口时再做一次)。」 - **加注(新增一条)**:🔴 **最后一次重冻已落地** = `lazyTotalGzipBytesMax` **636,243 → 637,501**(+1,258 B / +0.20%)· `lazyChunkCountMax` **37 → 37 不变** · **族数 37 → 38**(补登遗漏族 **`lowConfidence-` = 100 B** —— chunk 本就在、只是未登记族)· `KnowledgePage-` **27,620 → 28,466** · `NotesPage-` **48,087 → 48,627** · `generatedFrom` 真值修正为 **`c0bff722`**(谱系 `cd800d63` → `950afd5a` → `c0bff722`)。另三条子项: · 🔴 **触发原因(带时点,勿读成回潮)**:全批收口树 `c0bff722` 上**第 ⑤ 闸曾 `exit 1`** —— 懒侧 **637,501 B > 636,243 + 64** ⇒ 超 **1,194 B**(具名 3 条 = 未归族 `lowConfidence-CbMOBOyG.js` + `KnowledgePage-` + `NotesPage-`);**重冻后转绿**(`unlisted = []` / `fails = []` / 逐族红 0 / 首屏 105.95 kB)⇒ 🔴 **「7a 段收口时八闸全绿」只对 `0a503cc8` 当时成立**。 · 🔴 **闭合性质**:**各族实测之和 = 637,501 = 总量 = 总上限**(**逐字节相等**);**Σ 逐族上限 = 638,029**(高 **528 B** = `shift-` 族 **212 B 死预算**〔该族 `chunkCount = 0` / 实测 0 / 上限 212〕+ 其它族 **316 B** 正 slack)⇒ 🔴 **除 64 B 容差外零余量,不得读成「还有空间」**;**`shift-` 的 212 B 死预算登记为批 8 清理项**。 · ✅ **`vendor-*` 五族上限一字未动**(58,784 / 208,585 / 41,161 / 79,915 / 50,622),实测增量 ≤ **+2 B**(落在 64 B 容差内)⇒ **非回潮**(§C46.4 条件⑤ 的 STOP 未触发)。 【门禁读数(串行,工作树;与基线逐条对账)】 - `docs-check` ⇒ **exit 0** ·「扫描 **281** / 检查 **181**,五项全 ✅」(**未新增 / 删除 `.md`**)⇒ 与基线 **281/181 逐字一致** - `line-limits --full` ⇒ **exit 0** ·「>600 硬限 **0** · 301–600 档 **121** · 登记条目 **121**」⇒ 与基线**逐字一致** - `check-command-registry` ⇒ **exit 0** ·「定义 **311** / 注册 **311** / 重复 **0**」⇒ 与基线**逐字一致** - `git diff --numstat -- docs/standards/performance.md` ⇒ **4 / 0**;`git diff` 的 `^-` 行数 = **0**;🔴 **纯空白行删除 = 0 行** - 🔴 **结构自证**:标题**子序列校验** = **被删/被改 0 处 · 新增 0**(HEAD 21 / CUR 21) 【诚实边界】 - 🔴 **本提交只改 `docs/standards/performance.md`**(规范面);同轮 `v0.22` 的两处追加是**前两条提交**(原子拆分)。 - 🔴 **读数来源**:`lazyBudget.json` 的逐值由 **T21 本轮直读复核**;**红/绿两侧的真构建日志由 T21 逐字复核**;**未重跑真构建**(会重写 `app/dist`,且属 T22 的构建窗口)⇒ 该部分标明为「引自 §C59.3 / T22 日志」。 - 🔴 **本条不改任何常数或判据**(`lazyBudget.json` 的改动是 T22 的 `55f502fa`,**不在本单元写集**——本单元只改 `docs/**`)。
1 parent 7d37e18 commit 53bd075

1 file changed

Lines changed: 4 additions & 0 deletions

File tree

‎docs/standards/performance.md‎

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,10 @@
3838
- **口径**:懒加载 chunk(仅动态可达的 `.js`)单独判定 —— ① **族前缀清单等式**(每个懒侧 chunk 必须归属某个已登记族,**未归族即红**;键用**族前缀**如 `vendor-katex-*`,因为 Vite 的 chunk 名带内容 hash、不稳定)② **逐族 gzip 上限** ③ **懒侧总 gzip 上限**(另加 chunk 数上限)。三条都只许降。
3939
- **基线来源**:`scripts/lazyBudget.json` —— 首次写入值 = 2026-09-13 **真构建**实测 **36 chunk / 634.32 kB**(**冻结现状,不是目标值**;写乐观「预算值」会立刻红)。
4040
- 🔴 **一次性重冻记录(批 7 §C46.4;7a 段收口 `90bb5f6a`)**:首次基线取自批次**中段快照** `cd800d63`,此后**同批合法功能工作**(T13/T14 的 markdown 并入、T17 的卡片流包装件)改变了懒侧 ⇒ 按「**每收口一次、重冻一次**」重冻为 **37 chunk / 636.24 kB**:4 族按收口树**真实构建**实测值重冻(`NoteMarkdown-` 3,278 · `NotesPage-` 48,087 · `RefineLaunchDialog-` 7,469 · `SessionsPage-` 21,168)+ 新族 `NoteCardFlowWithSeek-`(391)登记 + chunk 数 36 → 37。🔴 **`vendor-*` 五族逐族核对 = 零增长**(58,784 / 208,585 / 41,161 / 79,915 / 50,622 逐字节不变)。**批 8 的基线 = 本批收口时的重冻值**(此后才是真正的硬棘轮;T22 全批收口时再做一次)。
41+
- 🔴 **最后一次重冻已落地(批 7 §C46.4 第 5 条的「批 8 基线」那一次;`55f502fa`「按 T13/T14/T17 归属重冻」之后的**全批收口重冻**)**:`lazyTotalGzipBytesMax` **636,243 → 637,501**(+1,258 B / +0.20%)· `lazyChunkCountMax` **37 → 37 不变** · **族数 37 → 38**(补登遗漏族 **`lowConfidence-` = 100 B** —— chunk 本就在,只是未登记族)· `KnowledgePage-` **27,620 → 28,466** · `NotesPage-` **48,087 → 48,627** · `generatedFrom` 真值修正为 **`c0bff722`**(谱系 `cd800d63` → `950afd5a` → `c0bff722`)。
42+
· 🔴 **触发原因(带时点,勿读成回潮)**:全批收口树 `c0bff722` 上**第 ⑤ 闸曾 `exit 1`** —— 懒侧 **637,501 B > 636,243 + 64** ⇒ 超 **1,194 B**,具名 3 条 = **未归族 `lowConfidence-CbMOBOyG.js`** + `KnowledgePage-` + `NotesPage-`;**重冻后转绿**(`unlisted = []` / `fails = []` / 逐族红 0 / 首屏 105.95 kB)。⇒ 🔴 **「7a 段收口时八闸全绿」只对 `0a503cc8` 当时成立**,**全批终态以重冻后的绿为准**。
43+
· 🔴 **闭合性质**:**各族实测之和 = 637,501 = 总量 = 总上限**(**逐字节相等**);而 **`Σ 逐族上限` = 638,029**(高 **528 B**)= **`shift-` 族的 212 B 死预算**(该族 `chunkCount = 0` / 实测 0 / 上限 212)+ 其它族保留的 **316 B** 正 slack。⇒ 🔴 **除 64 B 容差外零余量,不得读成「还有空间」**;**`shift-` 的 212 B 死预算登记为批 8 清理项**。
44+
· ✅ **`vendor-*` 五族上限一字未动**(58,784 / 208,585 / 41,161 / 79,915 / 50,622),实测增量 ≤ **+2 B**(落在 64 B 容差内)⇒ **非回潮**(§C46.4 条件⑤ 的 STOP 未触发)。
4145
- 🔴 **口径:本判据只在「新鲜构建」的产物上成立** —— 旧 `dist` 带着上一个时代的残渣(实测:顶层 katex 被删后旧产物仍多 **64,497 B** gzip)⇒ **`--no-build` 的读数不可用于本判据**;要判既有产物就显式 `--dist` 指认(不给 `--dist` 的 `--no-build` 只判首屏,懒侧打 `⏭ 未判`)。
4246
- **容差**:逐族与总量判据都用「上限 + **64 B**」—— 它是**测量噪声余量**(本机**同源重建实测 0 B**;参照批 4 的 CSS 顺序差 9 B),**不是**「漂移推导」;常量,**不得**随提交变大(改它 = 改判据)。
4347
- **硬约束**:上表「页面包大小 (JS) < 200KB (gzip)」与懒侧预算是**两个独立读数** —— 懒侧判定不得影响首屏读数,两者也不得并成一个预算。`--json` 的顶层 `pass` = **总体裁决**(两个读数的与),与退出码一致。

0 commit comments

Comments
 (0)