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) 的池快照内容;