合并(CI追绿·fix-archreview-ci): 红闸两件清零——08e能力审计两行能力行真实入口改可核形态(ShopSession.shop_shelf()/Main._on_refresh_confirmed()+sweep双锚)+08 doc_term退役词订正(待办清单:19 裁决台账→逐项裁决记录); 红件最小单元复跑零红后文档域闸全绿(7a674a00); 合回后post-merge钩子复验全量

This commit is contained in:
DKChan committed 2026-11-03 02:31:47 +08:00
commit 974d6487fb
2 files changed
+3 -3

No files matched your search

+2 -2
View File
@@ -99,7 +99,7 @@ tests/
| 清图奖励双份与零路径 | 地图战斗资源 | `BattleOrchestrator.begin_battle()` → 步骤流行(`source_class=clear_reward`) | `seal_polarity_test.gd:_smoke_clear_reward_chain`;`seal_polarity_test.gd:_smoke_clear_reward_zero_paths` |
| 奖励三选一候选/刷新付费/呈现 | 奇物×节点奖励屏 | `AdventureRunner.present_node_curio()`(数据面);奖励节点覆盖层场景(呈现面) | `curio_refresh_paid_test.gd:_init`;`reward_overlay_test.gd:_run` |
| GP 钱包/escrow/商店收口/共享池 | 地图战斗资源×商店 | `LevelRunner.shop.buy_product()`/`shop.player_request_refresh()`/`LevelRunner.close_wallet()`/`shop.set_shop_pool()` | `level_shop_economy_test.gd:_smoke_gp_wallet`;`level_shop_economy_test.gd:_smoke_shop_room`;`level_shop_economy_test.gd:_smoke_shop_pool`;`level_shop_economy_test.gd:_test_spend_discount_from_rule_key`〔架构整改 V2〕 |
| 货架位数读表(进店与重抽同源) | 商店 | `shop_session` 货架构建(LevelRunner 装配链) | `level_shop_economy_test.gd:_test_shelf_size_from_table`〔架构整改 V9〕 |
| 货架位数读表(进店与重抽同源) | 商店 | `ShopSession.shop_shelf()`(货架构建与重抽同源面) | `level_shop_economy_test.gd:_test_shelf_size_from_table`〔架构整改 V9〕 |
| 元进度入账与锻造两轴 | 元进度×锻造工坊 | `MetaStateStore.apply_adventure_summary()`/`MetaStateStore.spend_keystone()`/`MetaStateStore.set_forge_route_level()` | `meta_progression_forge_test.gd:_meta_pricing_and_buy`;`meta_progression_forge_test.gd:_smoke_forge_axes` |
| 锻造定价与购买闭环(全路线价格梯/多级购买扣款/拒购零副作用) | 锻造工坊 | `ForgeTable.level_price()`/`MetaProgression.forge_buy_level()` | `forge_table_test.gd:_test_price_ladder`;`meta_progression_forge_test.gd:_meta_pricing_and_buy`;`meta_progression_forge_test.gd:_test_forge_buy_reject` |
| 锻造与相邻通道隔离(祝福件购买锻造零变化/默认轴与钥匙解耦/甲型切换双轴可感) | 锻造工坊×元进度 | `MetaProgression.forge_select()`/`hero_type_axes()`/商店购买口 | `meta_progression_forge_test.gd:_test_blessing_no_forge_leak`;`meta_progression_forge_test.gd:_test_default_axes_pre_key`;`meta_progression_forge_test.gd:_test_armor_switch_dual_axes` |
@@ -149,7 +149,7 @@ tests/
| 调参测速批量模拟(逐帧步进与统计读数) | 调参测量 | `TuneSimController.run()`(调试浮窗批量模拟入口) | `tune_sim_batch_parity_test.gd:_init`(配对对拍套件,随测速循环批建) |
| sim 驱动循环单点(缺省零变化与策略/日志回调形态) | 调参测量 | `BattleDriver.drive_round()`(两参缺省与五参回调两形态) | `battle_driver_drive_test.gd:_smoke_drive_round_contract`〔架构整改 V13〕 |
| 模拟玩家 0 格连锁算子(经真实闭包,零盲挖语义保持) | 调参测量×排雷玩法 | `AutoPlayer._deduce()`(经 `perfect_action()` 装配链) | `auto_player_deduce_test.gd:_smoke_zero_chain_rule`〔架构整改 V15〕 |
| 刷新提示文案读表拼接(RAP 不足/轮上限两 toast 零字面量) | HUD框架 | `player_copy_sweep` 源扫描(现役 sweep 机制) | `player_copy_sweep_test.gd:_sweep_refresh_toast_no_literals`〔架构整改 V4〕 |
| 刷新提示文案读表拼接(RAP 不足/轮上限两 toast 零字面量) | HUD框架 | `Main._on_refresh_confirmed()`(两 toast 装配面)+`player_copy_sweep` 源扫描 | `player_copy_sweep_test.gd:_sweep_refresh_toast_no_literals`〔架构整改 V4〕 |
| 试玩日志器 ap_per_round 必填注入守卫(未注入拒绝开会话) | 表现与支撑 | `PlaytestLogger.start_session()` | `playtest_logger_guard_test.gd:_smoke_required_injection`〔架构整改 V5〕 |
| 战斗叙述与终局文案(数值带入/胜负互异) | HUD框架 | `BattleNarrator.battle_end_text()`/`BattleNarrator.boss_name()` | `battle_narrator_test.gd:_test_numeric_lines_carry_values`;`battle_narrator_test.gd:_test_end_text_differs_by_result`;`battle_narrator_test.gd:_test_boss_name_uses_boss_rowset` |
| 玩家面文案与危险格格面字形 | HUD框架 | `BoardView.rebuild()`/`StatusSlotRow.set_effects()` | `player_copy_sweep_test.gd:_sweep_board_glyph`;`player_copy_sweep_test.gd:_sweep_legend`;`player_copy_sweep_test.gd:_sweep_hero_panel` |
+1 -1
View File
@@ -16,7 +16,7 @@
**实况**:2026-10-29 全库架构静态审计完成,读数见 reports/审计-全库架构审查-2026-10-29.md(七节:总评/健康面/P0/P1/P2/待裁点/取证口径;零测试执行零引擎运行,全部结论带 文件:行号)。健康面已逐条核干净:Core 零 UI 八项判据全零命中、core 内 RNG 单点 100% 成立、字符串式信号连接全库 0 处、core 层零超长函数、19 表 ↔ 19 schema 一一对应、无循环 preload。问题集中在三条「写了没闸守」的纪律被实际破坏:①数值单一事实源被 18 处硬编码击穿,最危险两处是 `presentation/main.gd:787` 与 `:790` 把 `rap_refresh_cost=8` 与 `refresh_cap_per_round=2` 写死进提示文案(紧邻 783 行是正确读表的),表改文案不改、玩家直接受错误数字;另有 4 组代码自标「机制结构常量/产出约束」的字面量(`node_map_generator.gd:12` `MAX_WIDTH`、`action_economy.gd:14` `CHARGE_LAYER_CAP`、`board_data.gd:9` `SPAWN_AREA_CELLS`、`node_map_generator.gd:83-94` 域字面量)是否入表待裁。②`game/sim/` 与 `game/core/` 四组平行实现——扫雷推理引擎双份(`board_generator.gd` `measure_inferability` 族 vs `auto_player.gd` `_deduce` 族,输入集口径不同:前者含 safe_set oracle、后者 no-peek)、伤害掷点期望重算(`damage_probe.gd:196-201`)、档位排序与驱动循环双份(`level_autoplay.gd` vs `treasure_item_table.gd:44` 与 `battle_driver.gd:17`)、FakeDB 伪造表喂生成器——直接威胁「模拟读数 = 游戏真实数值」这一数值验证前提。③RNG 单点纪律在 core 外失守(sim 4 处/probe 1 处/tests 3 处自建 `RandomNumberGenerator`,均显式定种、确定性尚存),而 `static_scan.sh` 的 S1/S2 扫描面只含 `DIR_CORE` + `DIR_PRES`。守卫面另有三缺口:S8 是 9 文件显式清单(新增结算文件忘登记=静默不扫,缺位自检只防删改不防增)、S9 类型闸与 S13 质量闸扫描面止步于 core+data+presentation(sim/probe/tests 三层除 S11/S12 外零闸)、S13 三处豁免常态化到最大户文件(`battle_orchestrator`/`main.gd`/`tune_sim_controller`);另有四个 core 文件零测试点名(`attune_loadout`/`battle_fx_host`/`meta_state_store`/`slot_store`)。P2 级:`core/settlement/` 五段类直读写编排器私有成员 20+ 处(`oc._damage.*`/`oc._enemy_system.*`,GDScript 无编译期检查、改名静默断裂);架构文档三处漂移(`architecture.md:110` 登记的 `core/hero_ledger.gd` 盘上不存在且 `hero_ledger_test.gd:171` 显式断言它必须不存在、`:135` 行数过期、EC8 热重载门后 `ConfigDb.reload()` 零调用方且走 `load()` 拿不到磁盘新值);class_name 级双向依赖(`core/config_db` → `data/schemas/board_gen_table` → `core/board_data.SPAWN_AREA_CELLS`)与 `NODE_TYPES` 词表双份;`MetaProgression` 是唯一用 `get_node("/root/...")` 取依赖、唯一跨 Autoload 直调的单例。
**2026-11-02 设计闭合(3.1+3.2 部分,用户逐项裁决)**:凭据=reports/处置-架构审查3.1+3.2整改-2026-11-02.md(总判据六条+裁决台账+设计方案甲~庚+取证事实 18 处现址表)。用户总判据:机制数据一律长在所属封装实体的内部属性(表行字段)里,全局常量与无主账本清零;不要任何缺省值(缺字段=加载期报错);死代码不保留;sim 零规则副本;伤害期望独立复算=按需诊断件不进闸。GDD 已落文五份(天赋树 v0.12/关卡节点图生成 v1.4/冒险结构 v1.4/地形变异 v1.2/棋盘生成 v1.2,worktree 提交 15352170,文档域闸全绿)。全部改动(含 sim 面)归同一张需求卡片(用户裁,完整性优先)。**本条未闭合余项**(审计待裁点 ④⑤⑥⑦,不在本卡):闸面缺口(S1/S2/S9/S13 扫描面、S8 目录域)、S13 三处豁免存废、零测试点名四件、架构文档漂移三处——留待后续讨论段,不阻塞本卡。
**2026-11-02 设计闭合(3.1+3.2 部分,用户逐项裁决)**:凭据=reports/处置-架构审查3.1+3.2整改-2026-11-02.md(总判据六条+逐项裁决记录+设计方案甲~庚+取证事实 18 处现址表)。用户总判据:机制数据一律长在所属封装实体的内部属性(表行字段)里,全局常量与无主账本清零;不要任何缺省值(缺字段=加载期报错);死代码不保留;sim 零规则副本;伤害期望独立复算=按需诊断件不进闸。GDD 已落文五份(天赋树 v0.12/关卡节点图生成 v1.4/冒险结构 v1.4/地形变异 v1.2/棋盘生成 v1.2,worktree 提交 15352170,文档域闸全绿)。全部改动(含 sim 面)归同一张需求卡片(用户裁,完整性优先)。**本条未闭合余项**(审计待裁点 ④⑤⑥⑦,不在本卡):闸面缺口(S1/S2/S9/S13 扫描面、S8 目录域)、S13 三处豁免存废、零测试点名四件、架构文档漂移三处——留待后续讨论段,不阻塞本卡。
**2026-11-02 写卡(2026-11-03 修订闭合)**:需求卡片 reports/需求卡片-架构审查3.1+3.2整改批-2026-11-02.md(v1.2——子代理写卡+grilling 一轮 19 条折入+godot-master 式终审 4 条折入,pipeline_gate PASS,worktree 提交 2f43b81d);11 张 T 卡估时合计 8 工作日(超 10 须特批提示在卡);能力行 10 增 5 改 1 删已入 game/tests/README.md。