---
"@ux-team/tvu-design-system": patch
---

`audit-product-code.mjs`（随包）头注释新增三行 `covers-acceptance` 自陈，声明它覆盖 `code-conventions.md` 的 §Acceptance~6 / ~8 / ~12 三段。**只改注释，不改任何 R-rule 判据、扫描面、逃生口、退出码、组件 API、token 或样式**——R1 / R2 / R2S / R14 / R15 / R16 / R19 / R9 的行为一字未动。

背景：本仓内部的 `audit-acceptance-gate-coverage.mjs`（不随包）机械登记「规则真源里的每个 Acceptance 段有没有闸在管」。本轮把它的扫描面从 3 份规则真源扩到 7 份（新增 `figma-technical-reference.md` / `code-conventions.md` / `AGENTS.md` / `meta-rules.md`，+34 段），并在**同一批**把这 34 段全部分类掉——⛔ 没有抬那条棘轮的 BASELINE（闸的失败信息逐字禁止这个动作）。

为什么这三段判给本脚本，而不是走「不可机检」豁免：分类判据是**规则真源自己有没有声明可比**，不是「我觉得能不能测」。§Acceptance~6 与 §Acceptance~12 的正文里逐字写着「✅ 已 gate（2026-07-20，INFRA-F68 §L7 consumer 档）：`audit:consumer-code`（`scripts/audit-product-code.mjs` probe R14 / R19）」并点名本脚本；§Acceptance~8 逐字给出了可跑的 probe `grep -rEn '"\s*[a-zA-Z]+\s*\p{Han}+\s*"'` → 0 命中，与本脚本的 R16 判据同构。把它们登记成「不可机检」会是一句假声明，而没有任何闸会发现它假。

对随包消费者的影响：**零行为变化**。三个 `[N]` 是各段的核查项总数（Σ），语义是「变更探测的锚」而非覆盖度声明——段里还有 handoff / PR 自述类条目本脚本管不了，照样计入 N。⛔ 别把 `[3]` 读成「这 3 项都有闸」；§Acceptance~12 自己就逐字登记着「这条 gate 看不到 Layer 3」。语义真源在 `scripts/audit-acceptance-gate-coverage.mjs` 头注释 §S4。

⛔ 这三行必须留在 `audit-product-code.mjs` 的头 60 行内（自陈解析器只读前 60 行）。被后续注释挤出去 ⇒ 那三段掉回 unclassified ⇒ 棘轮 +3 ⇒ 红，是 fail-closed，不会静默。
