chore(引用可核闸建档注册): 08d 入文档域闸序+三处 game/ 纯文字欠账清净
- tools/run_all_gates.sh:文档域闸序加「08d 引用可核」并补头注 --docs 清单(闸清单唯一事实源只写这一处) - game/tests/.gates/baseline.json:手工加 08d 绿记录一条(13→14,其余条目原样保留),照8f66ae15之 08c 与e8b6751b之 06b 先例 - game/tests/static_scan.sh:100:S11 词表来源注释订正——「完美排雷」已于 2026-10-21 入退役词对照表,:122 追加行成冗余(sort -u 去重后行为不变,删它属改闸件词表本体,留待代码批,注释已写明) - game/tests/README.md::58 套件数 26→35(按 _suites() manifest 实数);:81 Config/Data 证据落点 design/qa/ → 跑批回执+reports/;:92 verifier_batch 报告落点 design/qa/ → sim-data/(依 AGENTS 在册口径) - doc_ref_audit.py:路径解析补「尾段匹配」一档,tests/run_all.gd/views/level_map_screen.gd 这类相对 game/ 工程的简写不再误判为路径不存在(实测纳入 reports/ 的红项 17→12,余下为历史件真实漂移,佐证排除面划法) - 待办清单:引用可核注册欠账与 README 分级表 design/qa 两条完成即整条删除;game/ 域欠账条目收窄为 :122 冗余行一项,状态处记用户特批标记 零行为改动:无一行 GDScript、无表数值、无场景资源。验证:bash -n 两闸件语法 OK/baseline 合法 JSON/闸壳 --docs 自身退出码 0(含新注册 08d 与建档记录一致)/引用可核 64 件 84 处红项 0/流水线闸 PASS 69 条目。
This commit is contained in:
1 parent
69e473a984
commit
e425ef1be0
6 files changed
+80
-81
No files matched your search
+11
-1
@@ -10,6 +10,8 @@ r"""doc_ref_audit.py — 文档内代码引用可核检查(机检)
|
||||
扫描面:`design/` 现行文档树 + 四份根文件(`待办清单.md`/`体验验证清单.md`/`roadmap.md`/`AGENTS.md`)。
|
||||
排除面:`reports/`——中间文档唯一暂存地(doc-conventions 第 11 节;`design/research/` 已于 2026-10-21 退役),
|
||||
入内文件按「吸收即死」退役,历史件不回溯改,故不入本闸判据。
|
||||
(2026-10-21 实测:把 reports/ 纳进来出 17 条红项/538 处引用,多为历史件里的行号漂移与当时合法的旧路径写法——
|
||||
要收紧到「现行件才受指针核对」得先立分界,暂不扩。)
|
||||
|
||||
自检二道(防假绿):扫描文件数为零 ⇒ FAIL;抽取到的引用数为零 ⇒ FAIL。
|
||||
(正则被改写失手或路径写错时,检查会静默空转并报绿——与 static_scan 各段同规。)
|
||||
@@ -85,7 +87,9 @@ def collect_docs(explicit):
|
||||
|
||||
|
||||
def resolve(name, doc_rel, index, bybase):
|
||||
"""返回 (命中路径列表, 解析方式)。方式=exact / ambiguous / none。"""
|
||||
"""返回 (命中路径列表, 解析方式)。方式=exact / ambiguous / none。
|
||||
依序试:文档同目录相对路径 → 仓库根路径 → 按「尾段匹配」全库找(`tests/run_all.gd`
|
||||
这类相对 game/ 工程的简写靠这一步命中,否则会被误判成路径不存在)。"""
|
||||
name = name.strip("./")
|
||||
if "/" in name:
|
||||
for cand in (
|
||||
@@ -94,6 +98,12 @@ def resolve(name, doc_rel, index, bybase):
|
||||
):
|
||||
if cand in index:
|
||||
return [cand], "exact"
|
||||
suffix = "/" + name
|
||||
hits = sorted(p for p in index if p.endswith(suffix))
|
||||
if len(hits) == 1:
|
||||
return hits, "exact"
|
||||
if len(hits) > 1:
|
||||
return hits, "ambiguous"
|
||||
return [], "none"
|
||||
cands = sorted(bybase.get(name, []))
|
||||
if not cands:
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
# 用法:tools/run_all_gates.sh [--code|--docs|--quick]
|
||||
# --code 只跑代码域闸(01 冒烟/02 单元/03 探针 --click/04 探针 --full/05 渲染闸/09 静态扫描
|
||||
# /11 回放确定性对拍+10 熵增闸)——本批改动触及 game/ 时用(游戏工程的唯一代码验收域)。
|
||||
# --docs 只跑文档域闸(06 gdd_lint/07 doc_link/08 doc_term/08c 流水线闸
|
||||
# --docs 只跑文档域闸(06 gdd_lint/07 doc_link/08 doc_term/08c 流水线闸/08d 引用可核
|
||||
# +10 熵增闸)
|
||||
# ——本批改动不触及 game/ 时用:design/、根规则文件、tools/ 工具脚本、.zcode/ 配置等
|
||||
# 一切非 game 改动的本域验收。
|
||||
@@ -185,9 +185,8 @@ gate "07 doc_link" "doc_link.log" "$PY" "$REPO/tools/doc_link_audit.py" --strict
|
||||
gate "08 doc_term" "doc_term.log" "$PY" "$REPO/tools/doc_term_audit.py" --strict
|
||||
# ── 8c. 流水线闸(待办清单条目状态机+roadmap 迭代总表+一次交叉核,判据=doc-conventions §12)──
|
||||
gate "08c 流水线闸" "pipeline.log" "$PY" "$REPO/tools/pipeline_gate.py"
|
||||
# 8d 引用可核(tools/doc_ref_audit.py,2026-10-21 交付)暂不注册:新闸件无基线记录必判「闸况变化」拦回执,
|
||||
# 而建档要改 game/tests/.gates/baseline.json——触 game/ 即要求代码域全量测试(process-conventions §3.10 推域口径),
|
||||
# 文档域批按测试两入口铁规零跑游戏测试。注册与建档随下一个触 game/ 的批次一并做(待办清单在册)。
|
||||
# ── 8d. 引用可核(现行文档里「文件:行号」指针的目标存在性与行界,判据=件头注)──
|
||||
gate "08d 引用可核" "doc_ref.log" "$PY" "$REPO/tools/doc_ref_audit.py" --strict
|
||||
fi
|
||||
# ── 6c. 回放确定性对拍(条件闸件;属代码域)──
|
||||
if in_domain code; then
|
||||
|
||||
Reference in new issue
Block a user