From 3763a7555d5307929150db0b2501b5de696561ac Mon Sep 17 00:00:00 2001 From: DKChan <524912269@qq.com> Date: Thu, 8 Oct 2026 17:43:14 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D:=20=E5=8D=A1=E2=91=A0T3/T4?= =?UTF-8?q?=E2=80=94=E2=80=94config=5Ffatal=5Fprobe=20=E9=80=80=E5=BD=B9?= =?UTF-8?q?=EF=BC=88.gd+.uid=E2=80=94=E2=80=94=E4=B8=8E=20run=5Fall=20?= =?UTF-8?q?=E8=87=B4=E5=91=BD=E7=B1=BB=E5=8D=95=E6=B5=8B=20config=5Fdb=5Ff?= =?UTF-8?q?atal=5Foob=5Ftest=20=E6=96=AD=E8=A8=80=E9=9D=A2=E9=87=8D?= =?UTF-8?q?=E5=A4=8D=EF=BC=8C2026-10-02=20=E4=BB=A3=E7=A0=81=E8=B4=A8?= =?UTF-8?q?=E9=87=8F=E4=BF=AE=E5=A4=8D=E6=89=B9=E5=91=88=E6=8A=A5=E9=80=80?= =?UTF-8?q?=E5=BD=B9=E7=9A=84=E8=BF=98=E8=B4=A6=EF=BC=89+=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E9=85=8D=E7=BD=AE.md:205=20=E6=8C=87=E8=B7=AF?= =?UTF-8?q?=E5=8F=A5=E8=BF=9E=E5=B8=A6=E6=94=B9=E6=8C=87=E8=87=B4=E5=91=BD?= =?UTF-8?q?=E7=B1=BB=E5=8D=95=E6=B5=8B=EF=BC=88=E9=80=80=E5=BD=B9=E5=BF=85?= =?UTF-8?q?=E9=A1=BB=E8=BF=9E=E5=B8=A6=E6=94=B9=E6=8C=87=EF=BC=8C=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E4=B9=A6=20=C2=A7=E4=BA=8C=EF=BC=9Bv0.4=20=E7=89=88?= =?UTF-8?q?=E6=9C=AC=E5=8F=B2=E8=A1=8C=E7=B3=BB=E5=8E=86=E5=8F=B2=E8=AE=B0?= =?UTF-8?q?=E8=BD=BD=E4=B8=8D=E5=8A=A8=EF=BC=89+damage=5Fprobe=20=E5=A4=B4?= =?UTF-8?q?=E6=B3=A8=E6=A0=87=E6=B3=A8=E3=80=8C=E8=AF=8A=E6=96=AD=E5=B7=A5?= =?UTF-8?q?=E5=85=B7=C2=B7=E9=9D=9E=E9=AA=8C=E6=94=B6=E4=BB=B6=E3=80=8D?= =?UTF-8?q?=E5=87=BA=E4=B8=80=E5=88=87=E9=97=B8=EF=BC=88M4=20=E4=BF=AE?= =?UTF-8?q?=E5=A4=8D=E4=B9=89=E5=8A=A1=E5=BC=95=E7=94=A8=E4=B8=8D=E5=8F=97?= =?UTF-8?q?=E5=BD=B1=E5=93=8D=EF=BC=89+skill=5Frhythm=5Fprobe/board=5Fstat?= =?UTF-8?q?=5Fprobe=20=E5=A4=B4=E6=B3=A8=E6=A0=87=E6=B3=A8=E3=80=8C?= =?UTF-8?q?=E5=88=86=E6=9E=90=E5=B7=A5=E5=85=B7=C2=B7=E9=9D=9E=E9=AA=8C?= =?UTF-8?q?=E6=94=B6=E4=BB=B6=E3=80=8D=EF=BC=88=E9=9B=B6=E6=96=AD=E8=A8=80?= =?UTF-8?q?=E5=8F=96=E6=95=B0=E5=B7=A5=E5=85=B7=EF=BC=89=E3=80=82=E5=85=A8?= =?UTF-8?q?=E4=BB=93=E5=BC=95=E7=94=A8=E6=B8=85=E6=9F=A5=EF=BC=9ACLAUDE.md?= =?UTF-8?q?/tests=20README/smoke=20README=20=E9=9B=B6=E5=BC=95=E7=94=A8?= =?UTF-8?q?=E6=AE=8B=E7=95=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- design/gdd/systems/表现与支撑/数据配置.md | 2 +- game/smoke/board_stat_probe.gd | 1 + game/smoke/config_fatal_probe.gd | 22 ---------------------- game/smoke/config_fatal_probe.gd.uid | 1 - game/smoke/damage_probe.gd | 3 +++ game/smoke/skill_rhythm_probe.gd | 1 + 6 files changed, 6 insertions(+), 24 deletions(-) delete mode 100644 game/smoke/config_fatal_probe.gd delete mode 100644 game/smoke/config_fatal_probe.gd.uid diff --git a/design/gdd/systems/表现与支撑/数据配置.md b/design/gdd/systems/表现与支撑/数据配置.md index 7736d807..b0e0c259 100644 --- a/design/gdd/systems/表现与支撑/数据配置.md +++ b/design/gdd/systems/表现与支撑/数据配置.md @@ -202,7 +202,7 @@ - 黄金向量:随机派生纯函数对登记向量逐个复算相等;同输入恒同输出;同序号重复调用恒等。 - 计数器纪律:连续取号跨模拟关卡切换,计数器单调不重置;热重载成败都不改变主种子与计数器。 - 向上取整解析:请求无精确行时返回**不低于**请求坐标的最近行并留一条警告;请求超出最大已有行时封顶取最大行并留警告;同类警告去重;精确命中零警告。 -- 越域与未播种:坐标低于合法域(关卡序号 <1、节点深度 <0)在进入解析前致命中止(Fatal 级诊断 + 进程退出码 1,切片探针 `smoke/config_fatal_probe.gd` 验证);高于最大已有行走封顶取最大行(警告留痕,不致命);未设主种子就取随机数致命中止,无默认种子兜底。 +- 越域与未播种:坐标低于合法域(关卡序号 <1、节点深度 <0)在进入解析前致命中止(Fatal 级诊断 + 进程退出码 1,致命类单测 `tests/unit/data_config/config_db_fatal_oob_test.gd` 验证——迭代 19 卡① T4 探针退役随批改指,原切片探针断言面与 run_all 致命类单测重复故退役);高于最大已有行走封顶取最大行(警告留痕,不致命);未设主种子就取随机数致命中止,无默认种子兜底。 - 热重载门:战斗中重载被拒绝且读数不变、不发通知;门未置位时新值可读且通知恰一次;校验失败保留旧表停留就绪态。 - 版本常量在位:表结构版本常量存在且全部表结构携带版本字段(高版本拒读判定归存档序列化)。 - 零字面量、零第二路径:静态扫描加人工复核确认玩法代码无数值字面量、无读取口之外的表加载、无全局随机函数调用。 diff --git a/game/smoke/board_stat_probe.gd b/game/smoke/board_stat_probe.gd index 7f75e7de..0374f856 100644 --- a/game/smoke/board_stat_probe.gd +++ b/game/smoke/board_stat_probe.gd @@ -1,4 +1,5 @@ # VERTICAL SLICE - NOT FOR PRODUCTION +# 定位:分析工具·非验收件(2026-10-08 迭代 19 卡① T3 收编排标注)——零断言取数工具,不出入任何闸。 # Date: 2026-09-19 # 棋盘板形统计探针(清图支配性对账重跑批取数工具——判式"实测板形"口径的数据源): # 对 board_gen.tres 每行 (L, D) 生成 N 张板,统计幸存雷数 |M| 与安全格数 |S| diff --git a/game/smoke/config_fatal_probe.gd b/game/smoke/config_fatal_probe.gd deleted file mode 100644 index de7ad1d8..00000000 --- a/game/smoke/config_fatal_probe.gd +++ /dev/null @@ -1,22 +0,0 @@ -# VERTICAL SLICE - NOT FOR PRODUCTION -# 验证问题:运行期数据致命通道是否成立(2026-09-18 用户拍板——进度坐标越域记 Fatal 级日志后进程退出,退出码 1) -# 运行:Godot_console.exe --headless --path . --script res://smoke/config_fatal_probe.gd -# 预期:进程以退出码 1 终止;打印 FAIL 行或退出码 0 即致命通道未生效。 -extends SceneTree - -var _frames := 0 - -func _initialize() -> void: - var db = load("res://core/config_db.gd").new() - root.add_child(db) # 入树——autoload 同款生命周期 - db.load_tables("res://data/tables", false) - db.resolve_enemy_rowset(0, 0) # 越域:关卡序号 <1 → Fatal,quit(1) 排队帧末退出 - print("FATAL-PROBE — Fatal 已记,等待帧末退出(退出码应为 1)") - -func _process(_delta: float) -> bool: - _frames += 1 - if _frames > 5: - print("FATAL-PROBE FAIL — 5 帧内未退出,致命通道未生效") - quit(0) - return true - return false diff --git a/game/smoke/config_fatal_probe.gd.uid b/game/smoke/config_fatal_probe.gd.uid deleted file mode 100644 index cd47d27d..00000000 --- a/game/smoke/config_fatal_probe.gd.uid +++ /dev/null @@ -1 +0,0 @@ -uid://cg2dgdnbkd7op diff --git a/game/smoke/damage_probe.gd b/game/smoke/damage_probe.gd index 56b2e4df..4f84ef9f 100644 --- a/game/smoke/damage_probe.gd +++ b/game/smoke/damage_probe.gd @@ -1,4 +1,7 @@ # VERTICAL SLICE - NOT FOR PRODUCTION +# 定位:诊断工具·非验收件(2026-10-08 迭代 19 卡① T3 收编排标注)——A1 红灯=改前既有诊断面 +# (design/qa/m4iter14-mineq-exit-report §四.7),不出入任何闸(probe_gate/render_gate/run_smoke 全不涉); +# roadmap M4 数值批引用其修复义务不受本标注影响。 # Date: 2026-09-13(playtest-2026-09-12 报告 Top1——零承伤根因分割探针) # 2026-09-16 改掷点口径(护甲等级掷点批):defense_up 墙已随 AC 换装退役—— # H1 旧 defense_up 叠满墙失义(hero_defense 池现仅 off_guard 正向行,×0 墙结构面消失) diff --git a/game/smoke/skill_rhythm_probe.gd b/game/smoke/skill_rhythm_probe.gd index e0378012..b1beeab9 100644 --- a/game/smoke/skill_rhythm_probe.gd +++ b/game/smoke/skill_rhythm_probe.gd @@ -1,4 +1,5 @@ # VERTICAL SLICE - NOT FOR PRODUCTION +# 定位:分析工具·非验收件(2026-10-08 迭代 19 卡① T3 收编排标注)——零断言取数工具,不出入任何闸。 # Date: 2026-09-19 # 技能池节奏探针:地精一伙 (1,1) 750 出招零突刺异常的定位—— # ① 表侧:resolve_enemy_rowset(1,1) 的池快照内容;