feat(迭代38卡⑦ 调试入口批): 调试入口写死行删除(main.gd:199 发布前清理义务履行)——_debug_entry 恒缺省 false=发布态(角标恒隐、浮窗无 UI 开启口;:73/:200 两处引用契约 1 核验恰二);c2 :73 注释现状语义换代(沿革归 git log);c3/c4/c5 三处「恒开令」断言随发布态反转(system_test V2f/click 设置面/tune 对局段——c5 对局中开浮窗回归改经 _show_debug_overlay 直调承载〔:61 先例〕,置灰子断言随恒隐语义退役申报 §8.2);c6 验证集清单改判同步+本批新增断言随清单重生成(1588 条对账零差异);c7 README 运行说明发布态换代;c8 menu_boot 基线显式重制(改后 0.15% 幽灵角标消失→复闸 0.00%,README 判定记录登记);撤销证明实测=恢复 :199 单行→三处反向断言齐红→还原复绿;删除后无第三赋值、无生产开窗口(C2 单点论断复核在案)

This commit is contained in:
DKChan committed 2026-10-26 08:59:11 +08:00
1 parent d5a03db1a8
commit 5b5214f40f
8 files changed
+1685 -1670

No files matched your search

+1 -1
View File
@@ -13,7 +13,7 @@
1. 用 Godot 4.7.2 打开本目录(含 `project.godot` 的文件夹)
2. 按 F5 运行(主场景 `presentation/main.tscn`)
3. **主入口:`▶ 开始冒险(三关连探:地精洞窟 → 幽暗地域 → 灰矮人矿城)`**——一条命走完三关(冒险结构实现批 2026-09-21:生命/GP/加算区跨关同账、非末关通关发大奖励〔上限提升+血回满+钥石〕、任意战斗倒下冒险终、结算屏出冒险摘要五件事;选路停点可「放弃冒险」(同失败结算,2026-09-21 用户拍板补入口));首关节点链:战→战→赏→战→战→疗→王。唯一试玩入口 = 完整冒险——单关测试直入口(L2/L3)已退役(2026-09-23 用户拍板)
4. `调试` 角标浮窗(恒开——2026-10-16 用户令 DS_DEBUG 写死,原环境变量门控退役;2026-10-04 迭代 14.5 调试整合批:原数值调整板/随机种子框/两层调试三散件收一):攻击/生命百分比加成(模拟天赋树解锁)+ 批量模拟(输出通关率/承伤期望/败北节点分布)+ 两层调试入口
4. 调试浮窗(功能面:攻击/生命百分比加成〔模拟天赋树解锁〕+ 批量模拟〔输出通关率/承伤期望/败北节点分布〕+ 两层调试入口;2026-10-04 迭代 14.5 调试整合批三散件收一)——发布态入口恒隐(2026-10-25 删写死行批:调试角标不显示、浮窗无 UI 开启口;开发期临时启用改 `_debug_entry` 缺省本地不提交),浮窗体系整体退役属发布工程批
headless 冒烟(752 项断言〔计数随批增长,现值以最新批末闸读数为准〕,含关卡线性推进/满配通关/裸装败北/回放确定性;2026-10-02 性能报告实测 60.55 秒,报告在 `性能实测报告(已退役,git 历史可查)`):
+2 -3
View File
@@ -70,7 +70,7 @@ var meta: MetaProgressionCore:
get:
return get_node(AUTOLOAD_PATH_META)
var logger = null # 试玩日志器(JSONL 持久化 + 卡死诊断转储——呈现层组件)
var _debug_entry := false # 调试会话门控(写死=true——恒开:启动即开浮窗+两屏角标点亮;_ready 赋值)
var _debug_entry := false # 调试会话门控(缺省 false=发布态:角标恒隐、浮窗无 UI 开启口;沿革查 git log)
var _seed_edit: LineEdit
var confirm_dialog: ConfirmDialog # 通用确认弹窗(消费方编排——现行消费方=选档删档确认;新冒险互斥确认已随卡②主菜单撤出,归卡④大门)
var _confirm_consumer := "" # 确认弹窗消费方状态量(契约 3 编排——open 前设、分派后清)
@@ -196,8 +196,7 @@ func _ready() -> void:
_build_ui()
_begin_session(false) # 闲时会话(gp_ledger 等探针注入面自 _ready 起恒在——ui_probe 合成段时序)
_start_overlay.visible = true
_debug_entry = true # 调试入口门控写死=true(不读 DS_DEBUG 环境变量;发布前清)
debug_badge.visible = _debug_entry # 浮层角标可见性须门控落定后赋值(构建/连接在 _build_ui)
debug_badge.visible = _debug_entry # 浮层角标可见性须门控落定后赋值(构建/连接在 _build_ui);_debug_entry 缺省 false=发布态恒隐
# boot 菜单优先——启动不自动开浮窗(开始屏不得被调试面板盖住);
# 调试入口=UI 最顶层全局浮层角标(LAYER_CONTRACT 末位 float 类,任何 UI 不遮挡)
+4 -4
View File
@@ -321,10 +321,10 @@ func _ready() -> void:
_problems.append("音量滑杆未实时生效(master bus db %f ≠ %f)" % [AudioServer.get_bus_volume_db(master_idx), expect_db])
if absf(iso_s.volume_linear - 0.3) > 0.001:
_problems.append("音量未入 store(%f ≠ 0.3)" % iso_s.volume_linear)
# 调试入口断言(全局浮层角标=UI 最顶层、任何 UI 不遮挡——本段设置面
# 开中正是遮挡场景:浮层角标此时仍应可见;点击开浮窗路径归 tune_probe)
if main.debug_badge == null or not main.debug_badge.visible:
_problems.append("设置面开中调试浮层角标不可见(最顶层浮层失守——被遮挡)")
# 调试入口断言(卡⑦ c4 发布态换代——角标恒隐;原「最顶层浮层不被遮挡」
# 回归语义随调试浮层发布态退役,申报见迭代 38 实现报告 §8.2)
if main.debug_badge == null or main.debug_badge.visible:
_problems.append("设置面开中调试角标可见(发布态恒隐失守)")
var settings_close: Button = ProbeUiUtil.find_button(main.settings_overlay, "返回", "prefix")
if settings_close == null:
_problems.append("设置面返回按钮缺失")
+3 -5
View File
@@ -114,12 +114,10 @@ func _ready() -> void:
# 棋盘输入不锁、状态角标不置灰(「默认开×遮挡复活」下必锁死的破约回归面);
# 对局中批量模拟/两层调试两钮禁用;当局数据六项与只读访问器逐项一致;关闭钮真实路径收窗恢复
var dbg_badge: Button = main.debug_badge
if dbg_badge == null or not dbg_badge.visible:
problems.append("对局中调试浮层角标未点亮(全局浮层最顶层失守)")
if dbg_badge == null or dbg_badge.visible:
problems.append("对局中调试浮层角标非恒隐(发布态语义失守——卡⑦ 删写死行批)")
else:
if dbg_badge.disabled:
problems.append("战斗屏调试角标被置灰(T2 排除式判据失守)")
dbg_badge.pressed.emit() # 真实按钮信号路径 → 组合根 _on_debug_badge_pressed → C6 单口
main._show_debug_overlay() # 对局中开浮窗回归经直调承载(:61 既有直调先例——发布态角标恒隐,按钮信号路径退役)
if not main.debug_overlay.visible:
problems.append("对局中角标开浮窗失败(P2 甲对局中可达失守)")
if main._input_locked():
+3
View File
@@ -33,3 +33,6 @@
跨跑次逐像素一致性实测 changed=0.00% 后落盘。承载迭代 38 卡① l1–l3 结构重构的
逐像素对拍(改后对拍 changed=0.00% 为验收主锚);对拍经 `tools/golden_compare.py`
直跑(render_gate 现行只对拍棋盘三图+menu_boot,闸件不在本批改动面)。
- 2026-10-26(迭代 38 卡⑦ c8):**menu_boot 显式重制**(预期面视觉变化——调试角标
发布态恒隐,基线右下角幽灵角标像素消失)。改后实测 changed=0.15%(≈卡面预估 0.14%,
容差内但按 render_gate「预期面视觉变化=显式重制基线」口径重制);复闸 changed=0.00%。
Binary file not shown.

Before

Width:  |  Height:  |  Size: 312 KiB

After

Width:  |  Height:  |  Size: 311 KiB

+2 -2
View File
@@ -203,8 +203,8 @@ func _smoke_boot_chain() -> void:
# 入口=开始屏右下角「调试」角标+对局中两屏角标)
check(not main.debug_overlay.visible,
"V2f 调试浮窗 boot 不自动开(菜单优先)〔2026-10-16 用户令〕")
check(main.debug_badge != null and main.debug_badge.visible,
"V2f 调试浮层角标 boot 可见(全局浮层入口在座)〔2026-10-16 用户令〕")
check(main.debug_badge != null and not main.debug_badge.visible,
"V2f 调试浮层角标发布态恒隐(2026-10-25 删写死行批)")
main.queue_free()
await process_frame
for p in ["user://smoke_boot_chain.json", "user://smoke_boot_chain.json.tmp"]:
+1670 -1655
View File
File diff suppressed because it is too large. Load diff