Files
STM32F4-Base/scripts/archive/id_gate
wandering1 89b6132c1f docs(编号): 瘦身——58 KB/473 行 → 22 KB/222 行,过程记录进归档
用户裁定 A 方案:这份文档的「规范体系」部分已随门禁退役而死,但四件仍活着的东西
只有这里写着——① §1 政策(默认不发号 / 先问三句);② §3.3 语义标识怎么写;
③ §4.1 族总表 + §4.1.1 已停发栏(现行门禁白名单的机器投影源头);
④ §4.4 这些不是编号(防把 YX15 / 元件位号当垃圾清)。再留 §5.5 销项、
§8 门禁现状与 §8.5 退役路线、§10 速查。

其余 16 节逐字搬进 scripts/archive/id_gate/编号治理历史.md(40 KB):
1.2 / 2 八条原则 / 4.2 / 4.5 / 6 模块码表 / 7+7.1~7.3 / 8.1 基线 / 8.3 批次 /
8.4 台账 / 9+9.1~9.3(含「数据可信」任务卡号换算表),以及原变更记录 17 行流水。
归档文件带「这不是现行口径」横幅 + 归档目录,写清哪些节对应哪段历史。

两处刻意的选择:
- 节号沿用旧编号、不重排——外部文档与脚本引的是 §4.1 / §8.5 这些号,重排等于
  制造一批假链接;文首加「本文范围」说明跳号去哪了。
- 文首那段「机器面才是事实源」改写:现行机器面是 check_ids_new.py 的两张
  前缀级白名单(KNOWN_DASH / KNOWN_BARE),旧的 registry / 别名表 / 八项校验脚本
  已随全库审计退役进归档,只在手工复查存量时才用。

引用重修(6 份文档、10 处):AGENTS 的 §9.3 换算表、数据可信 §9.3 ×2、
门禁说明 id-check 与 host-unit-tests、docs/README 的 §4.5、技能手册的 §9、
以及正文里 §4.2 / §4.5 / §8.1 / §8.3 / §8.4 / §1.2 的裸引用。

验证:doc-links --all --sections-strict 通过(195 文档);mojibake / bom-guard /
git diff --check 全 rc=0;新门禁 --worktree 自查通过;钩子数仍 51。
2026-10-28 12:51:17 +08:00
..

编号门禁·全库语料审计(已退役,2026-10-28 归档)

本目录是 2026-10-20 ~ 2026-10-28 期间在 pre-commit 里跑的那套全库编号审计, 连同它的两份语料一起搬进来,不再进提交门禁。

文件 是什么
check_ids.py 八项校验脚本(规范 §8)。手工复查存量编号现状时才跑
id_registry.json 99 族的注册表:形态正则 / 属主登记处 / 冻结 / 游标 / 两条护栏的数值
id_aliases.json 旧号 → 新号 / 作废(retired-to-phrase、void)的别名表,187 KB
id_known_backlog.json 债务台账(收口时已还清到 0 条)

为什么退役

实测拆账:单次运行只有 1.8 s,但近 80 笔提交里 61 笔改了语料 / 门禁 / 规范; 99 族里 78 族已冻结。真正值得机械守的只剩一件事——别新写一个自造编号, 而那件事不需要语料(判据只要「这个前缀我没见过」)。

现在用什么

  • 现行门禁:scripts/check_ids_new.py + 钩子 id-check-new —— 只查 git diff 新增行, 零语料。详解 docs/门禁说明/id-check-new.md。
  • 路线与验收条件:docs/编号规范.md §8.5(①②③ 三步的来龙去脉)。
  • 规范正文(仍然有效,只是不再全库机械校验):docs/编号规范.md §1 先问三句、§4.1 族总表。

怎么手工跑一次

& '.venv\Scripts\python.exe' scripts/archive/id_gate/check_ids.py            # 全库报告
& '.venv\Scripts\python.exe' scripts/archive/id_gate/check_ids.py --top 30   # 多看几条

退出码:0 = 无错误级 / 仅告警;1 = 有错误级(--strict 语义);2 = 环境错误。 注意:它扫的是 git ls-files,所以未跟踪文件不在扫描面(退役前的实测盲区)。

归档纪律

  • 这两份语料不再维护:不要为了让报告变绿去改 id_registry.json / id_aliases.json。
  • scripts/rename_ids.py 仍会往归档的 id_aliases.json 写条目(改名工具没退役)—— 那是它自己的账,与本目录的"冻结快照"性质不同,改名前先想清楚是否还要记这笔。
  • 真要恢复全库校验,先读 docs/编号规范.md §8.5 再决定,别直接把它塞回钩子。