feat(门禁): 硬件语料纳入扫描——位号不进编号也不进比例分母
- check_ids.py 扫描循环:位号([RCDJXUT][0-9]{1,3} 无连字符)在 refs_total 之前 continue,
既不产生结论也不灌分母;add() 里的同一道判定保留作兜底
- 注册表 excluded_paths 移除 docs/硬件平台/(docs/芯片手册/ 仍排除)
- 首次纳入暴露 28 类先前不可见的存量 → 按规矩逐条写 reason 入台账(**不重打快照**,
台账只增带理由的条目);错误级 626 → 661,可判定 82.84%(基线 82.6 仍守住)
- 遗留噪声已在 designator_rule 记明:引脚名 PB12-15 / PG0-15 / DB0-15(两字母+数字+区间)
不是编号,但位号规则不覆盖这种形状,先记账、待加 pin-name 类型规则后清除
- 验证:--strict 通过(无未登记的台账外新账);未改 C/H 不需 @build
This commit is contained in:
@@ -257,6 +257,15 @@ class Checker(object):
|
|||||||
if (literal, start) in seen_here:
|
if (literal, start) in seen_here:
|
||||||
continue
|
continue
|
||||||
seen_here.add((literal, start))
|
seen_here.add((literal, start))
|
||||||
|
# 位号:硬件语料里的 R/C/D/J/X/U/T + 数字既不算编号、**也不进比例分母**
|
||||||
|
# (约 4200 处位号若进 refs_total,会把分母灌水、掩盖真实变化)
|
||||||
|
_rx = getattr(type(self), "_desig_rx", None)
|
||||||
|
if _rx is None:
|
||||||
|
_rx = type(self)._desig_rx = re.compile(r"[RCDJXUT][0-9]{1,3}")
|
||||||
|
type(self)._desig_paths = ("docs/硬件平台/", "docs/芯片手册/")
|
||||||
|
if rel.startswith(type(self)._desig_paths) and _rx.fullmatch(literal):
|
||||||
|
self.stats["designator_skipped"] = self.stats.get("designator_skipped", 0) + 1
|
||||||
|
continue
|
||||||
self.stats["refs_total"] += 1
|
self.stats["refs_total"] += 1
|
||||||
fams = [f for f in self.families if f["_full"].match(literal)]
|
fams = [f for f in self.families if f["_full"].match(literal)]
|
||||||
if not fams:
|
if not fams:
|
||||||
|
|||||||
@@ -1756,6 +1756,202 @@
|
|||||||
"code": 2,
|
"code": 2,
|
||||||
"literal": "T1",
|
"literal": "T1",
|
||||||
"count": 7
|
"count": 7
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"file": "docs/硬件平台/V0.0_网表详细分析报告.md",
|
||||||
|
"code": 1,
|
||||||
|
"literal": "PB12-15",
|
||||||
|
"count": 3,
|
||||||
|
"reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描:这是**先前不可见的存量**,不是本批新引入的债。位号(R/C/D/J/X/U/T+数字)已由类型识别挡掉且不进分母;剩下的按族归位(专项条目 / IEEE 记号 / 报告自有编号缺紧邻文档名)后续分批处理。"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"file": "docs/硬件平台/ADC通道映射说明.md",
|
||||||
|
"code": 6,
|
||||||
|
"literal": "P1-5",
|
||||||
|
"count": 2,
|
||||||
|
"reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描:这是**先前不可见的存量**,不是本批新引入的债。位号(R/C/D/J/X/U/T+数字)已由类型识别挡掉且不进分母;剩下的按族归位(专项条目 / IEEE 记号 / 报告自有编号缺紧邻文档名)后续分批处理。"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"file": "docs/硬件平台/V0.0_网表详细分析报告.md",
|
||||||
|
"code": 1,
|
||||||
|
"literal": "PG0-15",
|
||||||
|
"count": 2,
|
||||||
|
"reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描:这是**先前不可见的存量**,不是本批新引入的债。位号(R/C/D/J/X/U/T+数字)已由类型识别挡掉且不进分母;剩下的按族归位(专项条目 / IEEE 记号 / 报告自有编号缺紧邻文档名)后续分批处理。"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"file": "docs/硬件平台/V0.0_网表详细分析报告.md",
|
||||||
|
"code": 5,
|
||||||
|
"literal": "A-9",
|
||||||
|
"count": 2,
|
||||||
|
"reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描:这是**先前不可见的存量**,不是本批新引入的债。位号(R/C/D/J/X/U/T+数字)已由类型识别挡掉且不进分母;剩下的按族归位(专项条目 / IEEE 记号 / 报告自有编号缺紧邻文档名)后续分批处理。"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"file": "docs/硬件平台/V0.0_网表详细分析报告.md",
|
||||||
|
"code": 3,
|
||||||
|
"literal": "A-9",
|
||||||
|
"count": 2,
|
||||||
|
"reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描:这是**先前不可见的存量**,不是本批新引入的债。位号(R/C/D/J/X/U/T+数字)已由类型识别挡掉且不进分母;剩下的按族归位(专项条目 / IEEE 记号 / 报告自有编号缺紧邻文档名)后续分批处理。"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"file": "docs/硬件平台/V0.0_网表详细分析报告.md",
|
||||||
|
"code": 1,
|
||||||
|
"literal": "A-11",
|
||||||
|
"count": 2,
|
||||||
|
"reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描:这是**先前不可见的存量**,不是本批新引入的债。位号(R/C/D/J/X/U/T+数字)已由类型识别挡掉且不进分母;剩下的按族归位(专项条目 / IEEE 记号 / 报告自有编号缺紧邻文档名)后续分批处理。"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"file": "docs/硬件平台/V0.0_网表详细分析报告.md",
|
||||||
|
"code": 1,
|
||||||
|
"literal": "FOC-817",
|
||||||
|
"count": 1,
|
||||||
|
"reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描:这是**先前不可见的存量**,不是本批新引入的债。位号(R/C/D/J/X/U/T+数字)已由类型识别挡掉且不进分母;剩下的按族归位(专项条目 / IEEE 记号 / 报告自有编号缺紧邻文档名)后续分批处理。"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"file": "docs/硬件平台/V0.0_网表详细分析报告.md",
|
||||||
|
"code": 1,
|
||||||
|
"literal": "DB0-15",
|
||||||
|
"count": 1,
|
||||||
|
"reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描:这是**先前不可见的存量**,不是本批新引入的债。位号(R/C/D/J/X/U/T+数字)已由类型识别挡掉且不进分母;剩下的按族归位(专项条目 / IEEE 记号 / 报告自有编号缺紧邻文档名)后续分批处理。"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"file": "docs/硬件平台/V0.0_网表详细分析报告.md",
|
||||||
|
"code": 1,
|
||||||
|
"literal": "OS0-2",
|
||||||
|
"count": 1,
|
||||||
|
"reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描:这是**先前不可见的存量**,不是本批新引入的债。位号(R/C/D/J/X/U/T+数字)已由类型识别挡掉且不进分母;剩下的按族归位(专项条目 / IEEE 记号 / 报告自有编号缺紧邻文档名)后续分批处理。"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"file": "docs/硬件平台/V0.0_网表详细分析报告.md",
|
||||||
|
"code": 1,
|
||||||
|
"literal": "PF13-15",
|
||||||
|
"count": 1,
|
||||||
|
"reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描:这是**先前不可见的存量**,不是本批新引入的债。位号(R/C/D/J/X/U/T+数字)已由类型识别挡掉且不进分母;剩下的按族归位(专项条目 / IEEE 记号 / 报告自有编号缺紧邻文档名)后续分批处理。"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"file": "docs/硬件平台/V0.0_网表详细分析报告.md",
|
||||||
|
"code": 1,
|
||||||
|
"literal": "KEY1-3",
|
||||||
|
"count": 1,
|
||||||
|
"reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描:这是**先前不可见的存量**,不是本批新引入的债。位号(R/C/D/J/X/U/T+数字)已由类型识别挡掉且不进分母;剩下的按族归位(专项条目 / IEEE 记号 / 报告自有编号缺紧邻文档名)后续分批处理。"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"file": "docs/硬件平台/V0.0_网表详细分析报告.md",
|
||||||
|
"code": 3,
|
||||||
|
"literal": "A-2",
|
||||||
|
"count": 1,
|
||||||
|
"reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描:这是**先前不可见的存量**,不是本批新引入的债。位号(R/C/D/J/X/U/T+数字)已由类型识别挡掉且不进分母;剩下的按族归位(专项条目 / IEEE 记号 / 报告自有编号缺紧邻文档名)后续分批处理。"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"file": "docs/硬件平台/V0.0_网表详细分析报告.md",
|
||||||
|
"code": 3,
|
||||||
|
"literal": "A-3",
|
||||||
|
"count": 1,
|
||||||
|
"reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描:这是**先前不可见的存量**,不是本批新引入的债。位号(R/C/D/J/X/U/T+数字)已由类型识别挡掉且不进分母;剩下的按族归位(专项条目 / IEEE 记号 / 报告自有编号缺紧邻文档名)后续分批处理。"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"file": "docs/硬件平台/V0.0_网表详细分析报告.md",
|
||||||
|
"code": 3,
|
||||||
|
"literal": "A-6",
|
||||||
|
"count": 1,
|
||||||
|
"reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描:这是**先前不可见的存量**,不是本批新引入的债。位号(R/C/D/J/X/U/T+数字)已由类型识别挡掉且不进分母;剩下的按族归位(专项条目 / IEEE 记号 / 报告自有编号缺紧邻文档名)后续分批处理。"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"file": "docs/硬件平台/V0.0_网表详细分析报告.md",
|
||||||
|
"code": 5,
|
||||||
|
"literal": "A-8",
|
||||||
|
"count": 1,
|
||||||
|
"reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描:这是**先前不可见的存量**,不是本批新引入的债。位号(R/C/D/J/X/U/T+数字)已由类型识别挡掉且不进分母;剩下的按族归位(专项条目 / IEEE 记号 / 报告自有编号缺紧邻文档名)后续分批处理。"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"file": "docs/硬件平台/V0.0_网表详细分析报告.md",
|
||||||
|
"code": 3,
|
||||||
|
"literal": "A-8",
|
||||||
|
"count": 1,
|
||||||
|
"reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描:这是**先前不可见的存量**,不是本批新引入的债。位号(R/C/D/J/X/U/T+数字)已由类型识别挡掉且不进分母;剩下的按族归位(专项条目 / IEEE 记号 / 报告自有编号缺紧邻文档名)后续分批处理。"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"file": "docs/硬件平台/V0.0_网表详细分析报告.md",
|
||||||
|
"code": 1,
|
||||||
|
"literal": "A-10",
|
||||||
|
"count": 1,
|
||||||
|
"reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描:这是**先前不可见的存量**,不是本批新引入的债。位号(R/C/D/J/X/U/T+数字)已由类型识别挡掉且不进分母;剩下的按族归位(专项条目 / IEEE 记号 / 报告自有编号缺紧邻文档名)后续分批处理。"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"file": "docs/硬件平台/V0.0_网表详细分析报告.md",
|
||||||
|
"code": 1,
|
||||||
|
"literal": "C-1",
|
||||||
|
"count": 1,
|
||||||
|
"reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描:这是**先前不可见的存量**,不是本批新引入的债。位号(R/C/D/J/X/U/T+数字)已由类型识别挡掉且不进分母;剩下的按族归位(专项条目 / IEEE 记号 / 报告自有编号缺紧邻文档名)后续分批处理。"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"file": "docs/硬件平台/V0.0_网表详细分析报告.md",
|
||||||
|
"code": 1,
|
||||||
|
"literal": "C-2",
|
||||||
|
"count": 1,
|
||||||
|
"reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描:这是**先前不可见的存量**,不是本批新引入的债。位号(R/C/D/J/X/U/T+数字)已由类型识别挡掉且不进分母;剩下的按族归位(专项条目 / IEEE 记号 / 报告自有编号缺紧邻文档名)后续分批处理。"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"file": "docs/硬件平台/V0.0_网表详细分析报告.md",
|
||||||
|
"code": 1,
|
||||||
|
"literal": "C-3",
|
||||||
|
"count": 1,
|
||||||
|
"reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描:这是**先前不可见的存量**,不是本批新引入的债。位号(R/C/D/J/X/U/T+数字)已由类型识别挡掉且不进分母;剩下的按族归位(专项条目 / IEEE 记号 / 报告自有编号缺紧邻文档名)后续分批处理。"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"file": "docs/硬件平台/V0.0_网表详细分析报告.md",
|
||||||
|
"code": 1,
|
||||||
|
"literal": "C-4",
|
||||||
|
"count": 1,
|
||||||
|
"reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描:这是**先前不可见的存量**,不是本批新引入的债。位号(R/C/D/J/X/U/T+数字)已由类型识别挡掉且不进分母;剩下的按族归位(专项条目 / IEEE 记号 / 报告自有编号缺紧邻文档名)后续分批处理。"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"file": "docs/硬件平台/V0.0_网表详细分析报告.md",
|
||||||
|
"code": 1,
|
||||||
|
"literal": "C-5",
|
||||||
|
"count": 1,
|
||||||
|
"reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描:这是**先前不可见的存量**,不是本批新引入的债。位号(R/C/D/J/X/U/T+数字)已由类型识别挡掉且不进分母;剩下的按族归位(专项条目 / IEEE 记号 / 报告自有编号缺紧邻文档名)后续分批处理。"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"file": "docs/硬件平台/V0.0_网表详细分析报告.md",
|
||||||
|
"code": 1,
|
||||||
|
"literal": "C-6",
|
||||||
|
"count": 1,
|
||||||
|
"reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描:这是**先前不可见的存量**,不是本批新引入的债。位号(R/C/D/J/X/U/T+数字)已由类型识别挡掉且不进分母;剩下的按族归位(专项条目 / IEEE 记号 / 报告自有编号缺紧邻文档名)后续分批处理。"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"file": "docs/硬件平台/V0.0_网表详细分析报告.md",
|
||||||
|
"code": 1,
|
||||||
|
"literal": "C-7",
|
||||||
|
"count": 1,
|
||||||
|
"reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描:这是**先前不可见的存量**,不是本批新引入的债。位号(R/C/D/J/X/U/T+数字)已由类型识别挡掉且不进分母;剩下的按族归位(专项条目 / IEEE 记号 / 报告自有编号缺紧邻文档名)后续分批处理。"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"file": "docs/硬件平台/V0.0_网表详细分析报告.md",
|
||||||
|
"code": 1,
|
||||||
|
"literal": "C-8",
|
||||||
|
"count": 1,
|
||||||
|
"reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描:这是**先前不可见的存量**,不是本批新引入的债。位号(R/C/D/J/X/U/T+数字)已由类型识别挡掉且不进分母;剩下的按族归位(专项条目 / IEEE 记号 / 报告自有编号缺紧邻文档名)后续分批处理。"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"file": "docs/硬件平台/V0.0_网表详细分析报告.md",
|
||||||
|
"code": 1,
|
||||||
|
"literal": "C-9",
|
||||||
|
"count": 1,
|
||||||
|
"reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描:这是**先前不可见的存量**,不是本批新引入的债。位号(R/C/D/J/X/U/T+数字)已由类型识别挡掉且不进分母;剩下的按族归位(专项条目 / IEEE 记号 / 报告自有编号缺紧邻文档名)后续分批处理。"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"file": "docs/硬件平台/V0.0_网表详细分析报告.md",
|
||||||
|
"code": 1,
|
||||||
|
"literal": "C-10",
|
||||||
|
"count": 1,
|
||||||
|
"reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描:这是**先前不可见的存量**,不是本批新引入的债。位号(R/C/D/J/X/U/T+数字)已由类型识别挡掉且不进分母;剩下的按族归位(专项条目 / IEEE 记号 / 报告自有编号缺紧邻文档名)后续分批处理。"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"file": "docs/硬件平台/V0.1_网表详细分析报告.md",
|
||||||
|
"code": 1,
|
||||||
|
"literal": "PB12-15",
|
||||||
|
"count": 1,
|
||||||
|
"reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描:这是**先前不可见的存量**,不是本批新引入的债。位号(R/C/D/J/X/U/T+数字)已由类型识别挡掉且不进分母;剩下的按族归位(专项条目 / IEEE 记号 / 报告自有编号缺紧邻文档名)后续分批处理。"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -34,7 +34,6 @@
|
|||||||
"Drivers/CMSIS/",
|
"Drivers/CMSIS/",
|
||||||
"Drivers/STM32F4xx_HAL_Driver/",
|
"Drivers/STM32F4xx_HAL_Driver/",
|
||||||
"docs/芯片手册/",
|
"docs/芯片手册/",
|
||||||
"docs/硬件平台/",
|
|
||||||
"docs/内存管理/data/",
|
"docs/内存管理/data/",
|
||||||
"docs/images/",
|
"docs/images/",
|
||||||
"MDK-ARM/RTE/",
|
"MDK-ARM/RTE/",
|
||||||
@@ -1613,5 +1612,5 @@
|
|||||||
"owner_docs_exclude": [
|
"owner_docs_exclude": [
|
||||||
"docs/测试说明/测试文档模板规范.md"
|
"docs/测试说明/测试文档模板规范.md"
|
||||||
],
|
],
|
||||||
"designator_rule": "硬件语料位号识别:docs/硬件平台/ 与 docs/芯片手册/ 里匹配 ^[RCDJXUT][0-9]{1,3}$(无连字符)的字面量判为**位号**,不产生任何编号结论;不含 B(V0.0 网表报告的 B1 是真专项条目),带连字符的 D-7/N-18/TC-206 不受影响。机制在 check_ids.py 的 add() 里落地(统计键 designator_skipped)。**本目录仍未纳入扫描语料**:纳入前必须先把位号从可判定比例的 refs_total 里减掉,否则约 4200 处位号会把比例分母灌水、掩盖真实变化。"
|
"designator_rule": "硬件语料位号识别:docs/硬件平台/ 与 docs/芯片手册/ 里匹配 ^[RCDJXUT][0-9]{1,3}$(无连字符)的字面量判为**位号**,不产生任何编号结论;不含 B(V0.0 网表报告的 B1 是真专项条目),带连字符的 D-7/N-18/TC-206 不受影响。机制在 check_ids.py 的 add() 里落地(统计键 designator_skipped)。**本目录仍未纳入扫描语料**:纳入前必须先把位号从可判定比例的 refs_total 里减掉,否则约 4200 处位号会把比例分母灌水、掩盖真实变化。 【遗留噪声类】V0.0 网表报告里的引脚名 PB12-15 / PG0-15 / DB0-15(两字母+数字+区间)不是编号,位号规则尚未覆盖这种形状,暂以台账 reason 记账,待加 pin-name 类型规则后清除。"
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user