测试优化批(2026-10-03 用户裁「测试要快要准」): ①gdd_lint 规则分域——R1/R2 豁免清单/登记/概念文体裁文件(06/07 豁 R1;01/04/05/06/07 豁 R2;R3/R4/R7 不豁免),终结算 8/8 常红零信号(perf 报告 §6.2 实证)②00-05 文档手术 12 处——R3 日期批注括注迁出正文入各文版本历史表(02/03 追加行;00/01/04/05 新建版本历史节=R4 补齐),事件出处逐行注记,语义零变更③06 分级条补模拟档触发口径行——MC/verifier 仅数值验证触发不进每次变更闸,MC 日常 normal 为主(约8分钟)perfect 仅上界读数(约56分钟)调参随跑用 --quick;余 06/07 文档 R3/R4/R7 约 62 处待 T17 在飞批落地窗口手术(两文件系其在飞编辑区,本批回避防撞)
This commit is contained in:
1 parent
eddec84eae
commit
9b920a9039
8 files changed
+72
-18
No files matched your search
+26
-6
@@ -36,6 +36,22 @@ MAX_PARA = 240
|
||||
MIN_TABLE_RATIO = 30
|
||||
MAX_PAREN_SPAN = 80
|
||||
|
||||
# 规则分域(2026-10-03 用户裁「测试要快/要准」优化批):R1/R2 的体裁前提是「规范文」
|
||||
# (短段+表格化);登记处/清单/概念文的自然形态就是长条目与叙事散文,硬套=自 2026-09-20
|
||||
# 上线起 8/8 常红零过滤价值(test-perf-report-2026-10-02 §6.2 实证)。R3/R4/R7 不豁免——
|
||||
# 「provenance 出正文、版本历史在案」对一切体裁有效。
|
||||
R1_EXEMPT = {
|
||||
"06-待办清单.md", # 全项目待办登记处:现状/状态/方案长条目为体裁
|
||||
"07-体验验证清单.md", # 体验验证读数清单:同上
|
||||
}
|
||||
R2_EXEMPT = {
|
||||
"01-核心循环.md", # 循环概念文:叙事散文为体裁
|
||||
"04-美术音频方向.md", # 美术方向文:同上
|
||||
"05-不做清单.md", # 清单文:条目散文为体裁
|
||||
"06-待办清单.md",
|
||||
"07-体验验证清单.md",
|
||||
}
|
||||
|
||||
DEFAULT_DIR = "design/gdd"
|
||||
DEFAULT_EXCLUDE = {"game-concept.md", "game-pillars.md", "systems-index.md"}
|
||||
VERSION_SECTION = "版本历史"
|
||||
@@ -169,17 +185,21 @@ def lint_file(path):
|
||||
issues.append(f"R9 节点「{node_name}」直接内容 {node_count} 行(>{MAX_NODE_LINES})——超一页,拆为子节点")
|
||||
infos.append(f"最大节点直接内容 {max(node_count, 0)} 行")
|
||||
|
||||
# R1 段落长度
|
||||
for p in paras:
|
||||
if len(p) > MAX_PARA:
|
||||
issues.append(f"R1 散文段 {len(p)} 字(>{MAX_PARA}): {p[:50]}…")
|
||||
# R1 段落长度(登记处/清单文分域豁免,见 R1_EXEMPT 注)
|
||||
fname = Path(path).name
|
||||
if fname not in R1_EXEMPT:
|
||||
for p in paras:
|
||||
if len(p) > MAX_PARA:
|
||||
issues.append(f"R1 散文段 {len(p)} 字(>{MAX_PARA}): {p[:50]}…")
|
||||
|
||||
# R2 表格占比
|
||||
# R2 表格占比(概念/方向/清单文分域豁免,见 R2_EXEMPT 注)
|
||||
code_chars = sum(len(l) for l in code_lines)
|
||||
table_chars = sum(len(l) for l in text.splitlines() if l.strip().startswith("|"))
|
||||
total = max(len(text) - code_chars, 1)
|
||||
ratio = int(100 * table_chars / total)
|
||||
if ratio < MIN_TABLE_RATIO:
|
||||
if fname in R2_EXEMPT:
|
||||
infos.append(f"表格占比 {ratio}%(R2 分域豁免)")
|
||||
elif ratio < MIN_TABLE_RATIO:
|
||||
issues.append(f"R2 表格占比 {ratio}%(<{MIN_TABLE_RATIO}%)")
|
||||
else:
|
||||
infos.append(f"表格占比 {ratio}%")
|
||||
|
||||
Reference in new issue
Block a user