T5+T6: aux 二期评估判不合(零代码)+ D5 杂项尾差四件销账

T5(判不合=合法出口,§五白名单):丢弃/授予/收尾三步强合否决——两渠道三轴语义相异
(寻址 carry 序号 vs 库存句柄/持久域 跨关 vs 单关/收尾 断点快照 vs 不载),原实现已带
三处「保守不合注记在案」(adventure_runner :479/:495/:566/:676),强合需适配层且触碰
核心 RNG 邻接重构(契约 1 高危区)换 ~30-50 行收益;结论随 T9 落 06 注记收口,零 MC。
T6 四件:①grant_aux_item 节点渠道(_resolve_node_replace)返回值接留痕——镜像 :580
防御兜底留痕范式(零行为面变化)②README 旧名 _autoplay_battle_perfect 改现行
_decide_act 分派口径 ③critical-paths「切片 96/96」换代现行 718/0 口径
④hero_info_panel_view 死色名 PANEL_HERO 注记校正。
闸:冒烟 718/0+click 种子7 绿(5375 帧)。
This commit is contained in:
DKChan committed 2026-10-04 07:44:24 +08:00
1 parent 4c7931064e
commit d78b8d4eb0
4 files changed
+6 -4

No files matched your search

+1 -1
View File
@@ -401,7 +401,7 @@ Godot_v4.7.2-stable_win64_console.exe --headless --path . --script res://smoke/s
**落地变更**:
- `auto_player.gd` 增完美策略求解器(`perfect_action`/`_deduce`):single + subset 推理不动点(A1 F1 `measure_inferability` 同族规则集,**去 safe_set oracle**——约束未知邻格含雷格,比生成期闸保守);**零盲挖**(只挖已证安全格 = 构造保证零踩雷,扫描末断言兜底违例 quit(1))· **已证雷格全标旗**(旗先于挖——轮末 weaken + 魔法 首次充能,雷上旗不阻连锁)· 卡死且资源可 → `b1.player_request_refresh()` 轮内刷新 · 否则停手(残 AP 1:1 入 RAP)。输入只经 A2 查询面(reveal_record/is_revealed/has_flag),**禁读棋盘雷区真值**——测推理上界,非全知作弊。core 层零改动;
- `window_selection` 增 `heal_no_waste` 选项(缺口 < 治疗量不用;完美档启用)+ 完美档轮次门解除(round_gate=0);
- `level_autoplay.gd` 增 `policy` 参数(默认 "normal"——tune_sim_controller/defense_scan/level_debug 既有调用零改动);完美档驱动 `_autoplay_battle_perfect`(move/dig/flag 走 A2 settle_batch、refresh 走 B1 编排、连续拒绝 ≥3 停手防死循环);st 增 `mine_hits`/`refreshes` 计数(mine_hit 证据行埋点);
- `level_autoplay.gd` 增 `policy` 参数(默认 "normal"——tune_sim_controller/defense_scan/level_debug 既有调用零改动);完美档经 `policy="perfect"` 由 `_decide_act` 分派承载(原专职驱动 `_autoplay_battle_perfect` 已随样板收口并入分派——move/dig/flag 走 A2 settle_batch、refresh 走 B1 编排、连续拒绝 ≥3 停手防死循环);st 增 `mine_hits`/`refreshes` 计数(mine_hit 证据行埋点);
- `level_monte_carlo.gd` 增第 3 CLI 参 `[policy]`(normal/perfect/both,缺省 normal 兼容既有文档命令)+ 策略/踩雷/刷新列;脚注 F5 带文案同步 [30,50] 带锚定稿。
**完美档基线(N=30 · 种子 4200–4229 · 耗时 597.6s)**:**0 加成通关率 100%**(弱策略基线档 60%)、通关剩余 HP 均 **47.4/50**、整关承伤均 3.5(p90 18.0)、普通场承伤 0.5%(带 ≤20%)、Boss 场 5.3%(带 ≤50%)、踩雷 0.00/局(断言 ✓)、刷新 0.23/局、跳战率 20%。+50%~+200% 全档位恒 100% 满血通关(+200% 承伤均 0.4)——**技能轴上界完全碾压现行曲线:F5 带与 F6 S/K 区间对完美档零分辨力**(区间模型无策略水平轴的结构性证实;calibration_gap 获得机制解释与定量上界)。
+3 -1
View File
@@ -594,7 +594,9 @@ func _resolve_node_replace(discard_handle: int) -> bool:
push_error("[冒险结构] resolve_node_replace 拒绝——句柄不在持有集: %d" % discard_handle)
return false
for iid in incoming:
_runner.grant_aux_item(String(iid), "reward_node")
var rec: Dictionary = _runner.grant_aux_item(String(iid), "reward_node")
if rec.is_empty():
push_warning("[冒险结构] 替换子道具授予被拒(防御兜底留痕): %s" % String(iid))
# 放弃新件(discard_handle < 0)= 原持有集不动、新件不获取
_finish_node_bonus("aux_item", incoming.size())
return true
@@ -28,7 +28,7 @@ var _relic_list: VBoxContainer
func _init() -> void:
custom_minimum_size = Vector2(240, 0)
clip_contents = true
# 主面板穿石板戏服(样张 v2 冻结批 T2——纹理本色≈PANEL_HERO;数据框仍素面 §7.1;缺位回退 flat)
# 主面板穿石板戏服(样张 v2 冻结批 T2——纹理本色;数据框仍素面 §7.1;缺位回退 flat)
var sb := UiKit.panel_skinned(Vector4(8, 6, 8, 6))
add_theme_stylebox_override("panel", sb)
var col := VBoxContainer.new()
+1 -1
View File
@@ -3,7 +3,7 @@
**Purpose**: QA 交接前 15 分钟内人工跑完的关键路径清单。
**Run via**: `/smoke-check`(读本文件)。
**Update**: 新核心系统落地后增补条目。
**分工注记**:自动化冒烟(切片 96/96)覆盖规则正确性;本清单面向**表现与手感**(自动化探针不可 G-W-T 的部分)。
**分工注记**:自动化冒烟(全量断言,现行口径 718/0——2026-10-04 迭代 13 T6 随批换代,随批末闸走)覆盖规则正确性;本清单面向**表现与手感**(自动化探针不可 G-W-T 的部分)。
## Core Stability(恒跑)