From af411866a8b1e504a3972af1defb9c9b3e73031e Mon Sep 17 00:00:00 2001 From: Wanderingss <1624155937@qq.com> Date: Thu, 22 Oct 2026 08:49:39 +0800 Subject: [PATCH] =?UTF-8?q?feat(=E9=97=A8=E7=A6=81):=20=E6=89=B9=209=20?= =?UTF-8?q?=E4=BD=8D=E5=8F=B7=E8=A7=84=E5=88=99=E6=89=A9=E5=B1=95=E5=88=B0?= =?UTF-8?q?=E5=BC=95=E8=84=9A=E5=90=8D=20+=20=E4=BF=AE=20--prune-backlog?= =?UTF-8?q?=20=E4=B8=A2=20reason=20=E7=9A=84=20bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 规则扩展(scripts/check_ids.py,两处共用同一正则) - 原:^[RCDJXUT][0-9]{1,3}(单字母位号) - 现:再加 ^[A-Z]{2,3}[0-9]{1,2}(-[0-9]{1,2})? → 收掉硬件语料里的**引脚名 / 总线名 / 网名 / 引脚区间**:PB12-15、PG0-15、PF13-15、DB0-15、OS0-2、KEY1-3、AIN1 这类 - 关键边界:带连字符的一字母形态(C-10 / A-9 / N-18 / D-7)与 TC-206、TC1003 **不落在 新形状里**,照旧判定 → 报告自有条目号这类真编号没被顺手挡掉(实测台账仍留 21 类真债) - 位号与引脚名都不进 refs_total:错误级 661 → **651**,refs_total 8807 → 8797(同步 −10), 可判定比例 82.84% → **82.94%**(分母没被噪声灌水,涨幅来自噪声出清而非真进展) 修自己的 bug:--prune-backlog 会静默丢掉 reason 字段 - 症状:收账一次后,那 28 类硬件存量条目的「这笔债为什么该存在」说明全部消失 - 根因:prune 用 dict 字面量重建条目,只写了 file/code/literal/count 四个键 - 修法:改为从原始 JSON 取整条再覆盖 count,其它字段原样保留;已实测幂等 (再跑一次「还清 0 条、剩 313 条、带 reason 仍 21 类」) - 21 类真债的 reason 已重新写回,内容含一条判断:器件料号 FOC-817 **不做**形状规则, 因为 [A-Z]{3}-\d{3} 与真家族 DEF-* 撞形,宁可留一条记账也不制造盲区 验证:id-check --strict 通过(存量 651 全在台账内、无未登记新账); doc-links --all 失效与待确认均 0;未改 C/H 不需 @build;台账只减不增 --- scripts/check_ids.py | 17 +- scripts/id_known_backlog.json | 347 +++++++++++++++------------------- scripts/id_registry.json | 2 +- 3 files changed, 163 insertions(+), 203 deletions(-) diff --git a/scripts/check_ids.py b/scripts/check_ids.py index b3516ed5..1eb51966 100644 --- a/scripts/check_ids.py +++ b/scripts/check_ids.py @@ -261,7 +261,7 @@ class Checker(object): # (约 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}") + _rx = type(self)._desig_rx = re.compile(r"(?:[RCDJXUT][0-9]{1,3}|[A-Z]{2,3}[0-9]{1,2}(?:-[0-9]{1,2})?)") 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 @@ -365,7 +365,7 @@ class Checker(object): # 所以 D-7 / N-18 / TC-206 / TC1003 这类真编号或违规形态都不受影响。 _rx = getattr(type(self), "_desig_rx", None) if _rx is None: - _rx = type(self)._desig_rx = re.compile(r"[RCDJXUT][0-9]{1,3}") + _rx = type(self)._desig_rx = re.compile(r"(?:[RCDJXUT][0-9]{1,3}|[A-Z]{2,3}[0-9]{1,2}(?:-[0-9]{1,2})?)") type(self)._desig_paths = ("docs/硬件平台/", "docs/芯片手册/") if rel.startswith(type(self)._desig_paths) and _rx.fullmatch((literal or "").strip()): self.stats["designator_skipped"] = self.stats.get("designator_skipped", 0) + 1 @@ -723,8 +723,17 @@ def main(): return 2 paid = [k for k in led if groups.get(k, 0) == 0] grew = [(k, led[k], groups.get(k, 0)) for k in led if groups.get(k, 0) > led[k]] - kept = [{"file": k[0], "code": k[1], "literal": k[2], "count": groups[k]} - for k in sorted(led) if groups.get(k, 0) > 0] + # ⚠ 必须保留原条目的**全部字段**(尤其 reason):早先这里用 dict 字面量重建条目, + # 把 reason 静默丢掉,等于把「这笔债为什么该存在」的审计说明清掉了(实测一次丢掉 21 类)。 + raw = json.loads(BACKLOG_FILE.read_text(encoding="utf-8")) + orig = {(e["file"], int(e["code"]), e["literal"]): e for e in raw.get("entries", [])} + kept = [] + for k in sorted(led): + if groups.get(k, 0) <= 0: + continue + e = dict(orig.get(k, {"file": k[0], "code": k[1], "literal": k[2]})) + e.update({"file": k[0], "code": k[1], "literal": k[2], "count": groups[k]}) + kept.append(e) BACKLOG_FILE.write_text( json.dumps(backlog_doc(kept, err_total, ratio), ensure_ascii=False, indent=2) + "\n", encoding="utf-8", newline="\n") diff --git a/scripts/id_known_backlog.json b/scripts/id_known_backlog.json index 7553e238..6296a8d9 100644 --- a/scripts/id_known_backlog.json +++ b/scripts/id_known_backlog.json @@ -2,8 +2,8 @@ "schema": 1, "note": "编号债务台账(docs/编号规范.md §8.4):--strict 只对**台账之外**的新错误级问题拦提交。台账只许减不许增——还清的用 --prune-backlog 收掉;确需新增一条必须写 reason 字段说明这笔债为什么该存在,默认禁止顺手加行(否则一周后台账就变成第二个 backlog)。指纹 = 文件 + 校验号 + 字面量,不含行号(行号会漂,用它台账天天假新增)。", "generated_by": "scripts/check_ids.py --write-backlog", - "total_error_findings": 626, - "decidable_ratio_at_generation": 83.26, + "total_error_findings": 651, + "decidable_ratio_at_generation": 82.94, "entries": [ { "file": ".dsh/skills/serial-assistant/scripts/serial_tool.py", @@ -923,6 +923,153 @@ "literal": "P2-12", "count": 1 }, + { + "file": "docs/硬件平台/ADC通道映射说明.md", + "code": 6, + "literal": "P1-5", + "count": 2, + "reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描暴露的**先前不可见存量**,非本批新引入。引脚名/总线名/网名(PB12-15、PG0-15、PF13-15、DB0-15、OS0-2、KEY1-3 一类)已由 check_ids.py 的位号规则挡掉且不进比例分母;本条是**真编号**:报告自有条目号(C-x / A-x)或需紧邻文档名,待逐条归位(§4.3 快照族登记或补文档名)。器件料号 FOC-817 也留在此记账——不给它做形状规则,因为 [A-Z]{3}-\\d{3} 会与真家族 DEF-* 撞形,宁可留一条债也不制造盲区。" + }, + { + "file": "docs/硬件平台/V0.0_网表详细分析报告.md", + "code": 1, + "literal": "A-10", + "count": 1, + "reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描暴露的**先前不可见存量**,非本批新引入。引脚名/总线名/网名(PB12-15、PG0-15、PF13-15、DB0-15、OS0-2、KEY1-3 一类)已由 check_ids.py 的位号规则挡掉且不进比例分母;本条是**真编号**:报告自有条目号(C-x / A-x)或需紧邻文档名,待逐条归位(§4.3 快照族登记或补文档名)。器件料号 FOC-817 也留在此记账——不给它做形状规则,因为 [A-Z]{3}-\\d{3} 会与真家族 DEF-* 撞形,宁可留一条债也不制造盲区。" + }, + { + "file": "docs/硬件平台/V0.0_网表详细分析报告.md", + "code": 1, + "literal": "A-11", + "count": 2, + "reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描暴露的**先前不可见存量**,非本批新引入。引脚名/总线名/网名(PB12-15、PG0-15、PF13-15、DB0-15、OS0-2、KEY1-3 一类)已由 check_ids.py 的位号规则挡掉且不进比例分母;本条是**真编号**:报告自有条目号(C-x / A-x)或需紧邻文档名,待逐条归位(§4.3 快照族登记或补文档名)。器件料号 FOC-817 也留在此记账——不给它做形状规则,因为 [A-Z]{3}-\\d{3} 会与真家族 DEF-* 撞形,宁可留一条债也不制造盲区。" + }, + { + "file": "docs/硬件平台/V0.0_网表详细分析报告.md", + "code": 1, + "literal": "C-1", + "count": 1, + "reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描暴露的**先前不可见存量**,非本批新引入。引脚名/总线名/网名(PB12-15、PG0-15、PF13-15、DB0-15、OS0-2、KEY1-3 一类)已由 check_ids.py 的位号规则挡掉且不进比例分母;本条是**真编号**:报告自有条目号(C-x / A-x)或需紧邻文档名,待逐条归位(§4.3 快照族登记或补文档名)。器件料号 FOC-817 也留在此记账——不给它做形状规则,因为 [A-Z]{3}-\\d{3} 会与真家族 DEF-* 撞形,宁可留一条债也不制造盲区。" + }, + { + "file": "docs/硬件平台/V0.0_网表详细分析报告.md", + "code": 1, + "literal": "C-10", + "count": 1, + "reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描暴露的**先前不可见存量**,非本批新引入。引脚名/总线名/网名(PB12-15、PG0-15、PF13-15、DB0-15、OS0-2、KEY1-3 一类)已由 check_ids.py 的位号规则挡掉且不进比例分母;本条是**真编号**:报告自有条目号(C-x / A-x)或需紧邻文档名,待逐条归位(§4.3 快照族登记或补文档名)。器件料号 FOC-817 也留在此记账——不给它做形状规则,因为 [A-Z]{3}-\\d{3} 会与真家族 DEF-* 撞形,宁可留一条债也不制造盲区。" + }, + { + "file": "docs/硬件平台/V0.0_网表详细分析报告.md", + "code": 1, + "literal": "C-2", + "count": 1, + "reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描暴露的**先前不可见存量**,非本批新引入。引脚名/总线名/网名(PB12-15、PG0-15、PF13-15、DB0-15、OS0-2、KEY1-3 一类)已由 check_ids.py 的位号规则挡掉且不进比例分母;本条是**真编号**:报告自有条目号(C-x / A-x)或需紧邻文档名,待逐条归位(§4.3 快照族登记或补文档名)。器件料号 FOC-817 也留在此记账——不给它做形状规则,因为 [A-Z]{3}-\\d{3} 会与真家族 DEF-* 撞形,宁可留一条债也不制造盲区。" + }, + { + "file": "docs/硬件平台/V0.0_网表详细分析报告.md", + "code": 1, + "literal": "C-3", + "count": 1, + "reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描暴露的**先前不可见存量**,非本批新引入。引脚名/总线名/网名(PB12-15、PG0-15、PF13-15、DB0-15、OS0-2、KEY1-3 一类)已由 check_ids.py 的位号规则挡掉且不进比例分母;本条是**真编号**:报告自有条目号(C-x / A-x)或需紧邻文档名,待逐条归位(§4.3 快照族登记或补文档名)。器件料号 FOC-817 也留在此记账——不给它做形状规则,因为 [A-Z]{3}-\\d{3} 会与真家族 DEF-* 撞形,宁可留一条债也不制造盲区。" + }, + { + "file": "docs/硬件平台/V0.0_网表详细分析报告.md", + "code": 1, + "literal": "C-4", + "count": 1, + "reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描暴露的**先前不可见存量**,非本批新引入。引脚名/总线名/网名(PB12-15、PG0-15、PF13-15、DB0-15、OS0-2、KEY1-3 一类)已由 check_ids.py 的位号规则挡掉且不进比例分母;本条是**真编号**:报告自有条目号(C-x / A-x)或需紧邻文档名,待逐条归位(§4.3 快照族登记或补文档名)。器件料号 FOC-817 也留在此记账——不给它做形状规则,因为 [A-Z]{3}-\\d{3} 会与真家族 DEF-* 撞形,宁可留一条债也不制造盲区。" + }, + { + "file": "docs/硬件平台/V0.0_网表详细分析报告.md", + "code": 1, + "literal": "C-5", + "count": 1, + "reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描暴露的**先前不可见存量**,非本批新引入。引脚名/总线名/网名(PB12-15、PG0-15、PF13-15、DB0-15、OS0-2、KEY1-3 一类)已由 check_ids.py 的位号规则挡掉且不进比例分母;本条是**真编号**:报告自有条目号(C-x / A-x)或需紧邻文档名,待逐条归位(§4.3 快照族登记或补文档名)。器件料号 FOC-817 也留在此记账——不给它做形状规则,因为 [A-Z]{3}-\\d{3} 会与真家族 DEF-* 撞形,宁可留一条债也不制造盲区。" + }, + { + "file": "docs/硬件平台/V0.0_网表详细分析报告.md", + "code": 1, + "literal": "C-6", + "count": 1, + "reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描暴露的**先前不可见存量**,非本批新引入。引脚名/总线名/网名(PB12-15、PG0-15、PF13-15、DB0-15、OS0-2、KEY1-3 一类)已由 check_ids.py 的位号规则挡掉且不进比例分母;本条是**真编号**:报告自有条目号(C-x / A-x)或需紧邻文档名,待逐条归位(§4.3 快照族登记或补文档名)。器件料号 FOC-817 也留在此记账——不给它做形状规则,因为 [A-Z]{3}-\\d{3} 会与真家族 DEF-* 撞形,宁可留一条债也不制造盲区。" + }, + { + "file": "docs/硬件平台/V0.0_网表详细分析报告.md", + "code": 1, + "literal": "C-7", + "count": 1, + "reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描暴露的**先前不可见存量**,非本批新引入。引脚名/总线名/网名(PB12-15、PG0-15、PF13-15、DB0-15、OS0-2、KEY1-3 一类)已由 check_ids.py 的位号规则挡掉且不进比例分母;本条是**真编号**:报告自有条目号(C-x / A-x)或需紧邻文档名,待逐条归位(§4.3 快照族登记或补文档名)。器件料号 FOC-817 也留在此记账——不给它做形状规则,因为 [A-Z]{3}-\\d{3} 会与真家族 DEF-* 撞形,宁可留一条债也不制造盲区。" + }, + { + "file": "docs/硬件平台/V0.0_网表详细分析报告.md", + "code": 1, + "literal": "C-8", + "count": 1, + "reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描暴露的**先前不可见存量**,非本批新引入。引脚名/总线名/网名(PB12-15、PG0-15、PF13-15、DB0-15、OS0-2、KEY1-3 一类)已由 check_ids.py 的位号规则挡掉且不进比例分母;本条是**真编号**:报告自有条目号(C-x / A-x)或需紧邻文档名,待逐条归位(§4.3 快照族登记或补文档名)。器件料号 FOC-817 也留在此记账——不给它做形状规则,因为 [A-Z]{3}-\\d{3} 会与真家族 DEF-* 撞形,宁可留一条债也不制造盲区。" + }, + { + "file": "docs/硬件平台/V0.0_网表详细分析报告.md", + "code": 1, + "literal": "C-9", + "count": 1, + "reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描暴露的**先前不可见存量**,非本批新引入。引脚名/总线名/网名(PB12-15、PG0-15、PF13-15、DB0-15、OS0-2、KEY1-3 一类)已由 check_ids.py 的位号规则挡掉且不进比例分母;本条是**真编号**:报告自有条目号(C-x / A-x)或需紧邻文档名,待逐条归位(§4.3 快照族登记或补文档名)。器件料号 FOC-817 也留在此记账——不给它做形状规则,因为 [A-Z]{3}-\\d{3} 会与真家族 DEF-* 撞形,宁可留一条债也不制造盲区。" + }, + { + "file": "docs/硬件平台/V0.0_网表详细分析报告.md", + "code": 1, + "literal": "FOC-817", + "count": 1, + "reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描暴露的**先前不可见存量**,非本批新引入。引脚名/总线名/网名(PB12-15、PG0-15、PF13-15、DB0-15、OS0-2、KEY1-3 一类)已由 check_ids.py 的位号规则挡掉且不进比例分母;本条是**真编号**:报告自有条目号(C-x / A-x)或需紧邻文档名,待逐条归位(§4.3 快照族登记或补文档名)。器件料号 FOC-817 也留在此记账——不给它做形状规则,因为 [A-Z]{3}-\\d{3} 会与真家族 DEF-* 撞形,宁可留一条债也不制造盲区。" + }, + { + "file": "docs/硬件平台/V0.0_网表详细分析报告.md", + "code": 3, + "literal": "A-2", + "count": 1, + "reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描暴露的**先前不可见存量**,非本批新引入。引脚名/总线名/网名(PB12-15、PG0-15、PF13-15、DB0-15、OS0-2、KEY1-3 一类)已由 check_ids.py 的位号规则挡掉且不进比例分母;本条是**真编号**:报告自有条目号(C-x / A-x)或需紧邻文档名,待逐条归位(§4.3 快照族登记或补文档名)。器件料号 FOC-817 也留在此记账——不给它做形状规则,因为 [A-Z]{3}-\\d{3} 会与真家族 DEF-* 撞形,宁可留一条债也不制造盲区。" + }, + { + "file": "docs/硬件平台/V0.0_网表详细分析报告.md", + "code": 3, + "literal": "A-3", + "count": 1, + "reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描暴露的**先前不可见存量**,非本批新引入。引脚名/总线名/网名(PB12-15、PG0-15、PF13-15、DB0-15、OS0-2、KEY1-3 一类)已由 check_ids.py 的位号规则挡掉且不进比例分母;本条是**真编号**:报告自有条目号(C-x / A-x)或需紧邻文档名,待逐条归位(§4.3 快照族登记或补文档名)。器件料号 FOC-817 也留在此记账——不给它做形状规则,因为 [A-Z]{3}-\\d{3} 会与真家族 DEF-* 撞形,宁可留一条债也不制造盲区。" + }, + { + "file": "docs/硬件平台/V0.0_网表详细分析报告.md", + "code": 3, + "literal": "A-6", + "count": 1, + "reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描暴露的**先前不可见存量**,非本批新引入。引脚名/总线名/网名(PB12-15、PG0-15、PF13-15、DB0-15、OS0-2、KEY1-3 一类)已由 check_ids.py 的位号规则挡掉且不进比例分母;本条是**真编号**:报告自有条目号(C-x / A-x)或需紧邻文档名,待逐条归位(§4.3 快照族登记或补文档名)。器件料号 FOC-817 也留在此记账——不给它做形状规则,因为 [A-Z]{3}-\\d{3} 会与真家族 DEF-* 撞形,宁可留一条债也不制造盲区。" + }, + { + "file": "docs/硬件平台/V0.0_网表详细分析报告.md", + "code": 3, + "literal": "A-8", + "count": 1, + "reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描暴露的**先前不可见存量**,非本批新引入。引脚名/总线名/网名(PB12-15、PG0-15、PF13-15、DB0-15、OS0-2、KEY1-3 一类)已由 check_ids.py 的位号规则挡掉且不进比例分母;本条是**真编号**:报告自有条目号(C-x / A-x)或需紧邻文档名,待逐条归位(§4.3 快照族登记或补文档名)。器件料号 FOC-817 也留在此记账——不给它做形状规则,因为 [A-Z]{3}-\\d{3} 会与真家族 DEF-* 撞形,宁可留一条债也不制造盲区。" + }, + { + "file": "docs/硬件平台/V0.0_网表详细分析报告.md", + "code": 3, + "literal": "A-9", + "count": 2, + "reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描暴露的**先前不可见存量**,非本批新引入。引脚名/总线名/网名(PB12-15、PG0-15、PF13-15、DB0-15、OS0-2、KEY1-3 一类)已由 check_ids.py 的位号规则挡掉且不进比例分母;本条是**真编号**:报告自有条目号(C-x / A-x)或需紧邻文档名,待逐条归位(§4.3 快照族登记或补文档名)。器件料号 FOC-817 也留在此记账——不给它做形状规则,因为 [A-Z]{3}-\\d{3} 会与真家族 DEF-* 撞形,宁可留一条债也不制造盲区。" + }, + { + "file": "docs/硬件平台/V0.0_网表详细分析报告.md", + "code": 5, + "literal": "A-8", + "count": 1, + "reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描暴露的**先前不可见存量**,非本批新引入。引脚名/总线名/网名(PB12-15、PG0-15、PF13-15、DB0-15、OS0-2、KEY1-3 一类)已由 check_ids.py 的位号规则挡掉且不进比例分母;本条是**真编号**:报告自有条目号(C-x / A-x)或需紧邻文档名,待逐条归位(§4.3 快照族登记或补文档名)。器件料号 FOC-817 也留在此记账——不给它做形状规则,因为 [A-Z]{3}-\\d{3} 会与真家族 DEF-* 撞形,宁可留一条债也不制造盲区。" + }, + { + "file": "docs/硬件平台/V0.0_网表详细分析报告.md", + "code": 5, + "literal": "A-9", + "count": 2, + "reason": "硬件语料(docs/硬件平台/)2026-10-22 首次纳入扫描暴露的**先前不可见存量**,非本批新引入。引脚名/总线名/网名(PB12-15、PG0-15、PF13-15、DB0-15、OS0-2、KEY1-3 一类)已由 check_ids.py 的位号规则挡掉且不进比例分母;本条是**真编号**:报告自有条目号(C-x / A-x)或需紧邻文档名,待逐条归位(§4.3 快照族登记或补文档名)。器件料号 FOC-817 也留在此记账——不给它做形状规则,因为 [A-Z]{3}-\\d{3} 会与真家族 DEF-* 撞形,宁可留一条债也不制造盲区。" + }, { "file": "docs/网络/BSD_Socket_API_使用指南.md", "code": 6, @@ -1756,202 +1903,6 @@ "code": 2, "literal": "T1", "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 记号 / 报告自有编号缺紧邻文档名)后续分批处理。" } ] } diff --git a/scripts/id_registry.json b/scripts/id_registry.json index 63b4f61c..63cab4db 100644 --- a/scripts/id_registry.json +++ b/scripts/id_registry.json @@ -1612,5 +1612,5 @@ "owner_docs_exclude": [ "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 处位号会把比例分母灌水、掩盖真实变化。 【遗留噪声类】V0.0 网表报告里的引脚名 PB12-15 / PG0-15 / DB0-15(两字母+数字+区间)不是编号,位号规则尚未覆盖这种形状,暂以台账 reason 记账,待加 pin-name 类型规则后清除。" + "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 处位号会把比例分母灌水、掩盖真实变化。 【批 9 扩展】同一规则再覆盖**引脚名/总线名/网名/区间**:^[A-Z]{2,3}[0-9]{1,2}(-[0-9]{1,2})?(如 PB12-15、PG0-15、PF13-15、DB0-15、OS0-2、KEY1-3、AIN1),同样不进 refs_total。带连字符的一字母形态(C-10 / A-9 / N-18 / D-7)与 TC-206 / TC1003 一律不受影响,仍照旧判。器件料号(FOC-817SC-F 被切成 FOC-817)**不做形状规则**:[A-Z]{3}-\\d{3} 与真家族 DEF-* 撞形,代价远大于收益,故留在台账 reason 里记账。" }