ui-struct-probe mini-loop T0-T6 全落(探针全屏零红+负向验证红+probe_gate 注册段全绿+冒烟772/0+run_all 14/15基线红+doc三闸零新增)——①M2双列叠放修复:ui_assembler.gd 右列挂回 HBox 第二列(原 pad.add_child(right) 误挂 MarginContainer 与左列同矩形叠放=实机目检抓到的根因;start_box/start_right 命名锚)②按钮宽度纪律:ui_kit.button(text,min_w=216) 全站最小宽度基准+SIZE_FILL(VBox 列内等宽拉满/HBox 行内不抢余宽——EXPAND_FILL 撑爆营地底条 1616px 实证教训注释在案);行板/角标/图标钮豁免9处(camp 5+shop 2+ap_bar 2+调试角标/诊断转储 2)③新增 ui_struct_probe(全 UI 屏结构断言:按钮互压/同容器等宽/出屏/零尺寸/标题屏双列五族;菜单簇真驱动+冒险簇真流+兑付屏 open 面合成喂入;ScrollContainer 内容豁免;modal 屏 queue_sort 手法坑在册)④probe_gate.sh 注册默认必跑段⑤07 改排:§⑪改排注记+§⑮分工注记+新增§⑯复验项⑥出口报告(代裁追认单 P1-P4+六轮 red-green 实录)=design/qa/ui-struct-probe-exit-report-2026-10-05.md
This commit is contained in:
1 parent
8944dca0d3
commit
d77a245bcc
12 files changed
+382
-18
No files matched your search
@@ -105,6 +105,8 @@
|
||||
|
||||
### ⑪ Boss 图整图变异(贫矿脉)目检项(2026-10-04 全局作用域变异首发批随批登记——**目检改排:随 UI 优化批之后统一验证**,用户 2026-10-04 裁「先做完 UI 优化再一起验证」)
|
||||
|
||||
> **改排状态注记(2026-10-05 ui-struct-probe 批)**:UI 优化批(UI 落码 11 卡+SR-1)已全落籍;期间实机目检抓到标题屏双列叠放缺陷,已随 ui-struct-probe 批修复,并新增全 UI 屏结构探针入轻闸(按钮互压/等宽/出屏/零尺寸——机械可判项自此探针代管,见 §⑯)。本条统一验证窗口仍开,等用户实机目检时点;下列六项均为体感/呈现面,保留人闸。
|
||||
|
||||
**怎么玩**:打一局正常打到第 2 关的 Boss 图(想快可以在开始界面开调试入口直接进第 2 关);顺手的话再看一眼第 1 关 Boss 和任意普通战斗图,前后共约十分钟。本条目在 UI 优化批落地后执行——届时以改完后的最终界面为准,下述文案若随 UI 批调整以当批登记为准。
|
||||
|
||||
**看什么**(六项,逐项是/否即可,感受写一句话):
|
||||
@@ -147,7 +149,13 @@
|
||||
### ⑮ 秘宝词族换词全 UI 面目检 + 渲染像素闸补跑(2026-10-05 秘宝代码词族对齐批随批登记——迭代15③号卡)
|
||||
|
||||
- **实机目检(「秘宝」字样全 UI 面,约 3 分钟)**:①C 区槽位标题应显示「秘宝」(原「魔法道具」,hero_info_panel_view 槽位组);②空槽悬停提示应显示「秘宝槽(空)」;③战斗总结三选一叙述行应显示「秘宝 / …」或「秘宝 / 随机获得一件」(原「魔法道具」开头);④换关 toast 应显示「上关剩余 N 件秘宝已随关卡结束清空」。**红灯信号**:任何界面残留「魔法道具」字样。
|
||||
- **渲染像素类闸补跑挂账**:本批屏蔽五件(golden_compare / shot_probe / fx_probe / ui_layout_probe / board_shot——组 A 文案变更使像素断言合法失效,按 goal 令弃断);**补跑时点=迭代 14 全落籍后的表现批周期闸一次性补跑**,与本批无独立补跑义务;届时若 golden 基线因文案换代失效,按换代流程重锚而非当缺陷修。
|
||||
- **渲染像素类闸补跑挂账**:本批屏蔽五件(golden_compare / shot_probe / fx_probe / ui_layout_probe / board_shot——组 A 文案变更使像素断言合法失效,按 goal 令弃断);**补跑时点=迭代 14 全落籍后的表现批周期闸一次性补跑**,与本批无独立补跑义务;届时若 golden 基线因文案换代失效,按换代流程重锚而非当缺陷修。**分工注记(2026-10-05 ui-struct-probe 批)**:结构类断言(互压/等宽/出屏)已由 `ui_struct_probe` 入轻闸默认必跑段(tools/probe_gate.sh),与像素五闸互补不替代——五闸补跑义务不变。
|
||||
|
||||
### ⑯ UI 结构批复验(2026-10-05 ui-struct-probe mini-loop 随批登记——标题屏双列修复+按钮宽度纪律,约 2 分钟)
|
||||
|
||||
- **背景**:实机目检抓到标题屏立绘/帮助牌叠压操作行牌(M2 双列接线缺陷,ui_assembler.gd 右列误挂 MarginContainer)+全站按钮宽度无纪律(UiKit 工厂无宽度约束)。已修复:右列挂回 HBox 第二列;UiKit.button 全站最小宽度基准 216+SIZE_FILL(行板/角标/图标钮 9 处豁免);全 UI 屏结构探针入轻闸。
|
||||
- **看什么(实机目检约 2 分钟)**:①标题屏应为左右双列——左操作列(冒险/营地与系统两组)与右立绘看台+玩法速览牌并排,互不遮挡,「退出游戏」按钮完整可见;②同组按钮等宽(菜单列/确认弹窗),按钮不再宽窄参差;③营地屏三柜台+底栏不出屏、不重叠。
|
||||
- **红灯信号**:任何屏出现控件叠压/按钮宽窄不一回潮/内容超出屏幕——结构探针已拦机检面,红灯=探针盲区,报批补断言。
|
||||
|
||||
## 验收读数重测义务(履行留痕 + 现行义务)
|
||||
|
||||
|
||||
@@ -0,0 +1,61 @@
|
||||
# ui-struct-probe mini-loop · 出口报告(2026-10-05)
|
||||
|
||||
任务书:`.zcode/plans/ui-struct-probe-miniloop-plan-2026-10-05.md`(goal 开工令=/goal 完成 plan 全部工作——按 iter13 先例「本 prompt 即批准」,**四拍板点 P1-P4 全取推荐案**,代裁追认单见 §三)。
|
||||
|
||||
## 一、交付对账(计划书 T0-T6)
|
||||
|
||||
| 步骤 | 交付 | 状态 |
|
||||
|---|---|---|
|
||||
| T0 探针骨架 | `game/smoke/ui_struct_probe.gd/.tscn`——逐屏实例化 10 屏(start/settings/camp/confirm/debug/level_map/battle_hud/battle_end/bonus_pick/shop):菜单簇真驱动(组合根真实路径开关)+冒险簇真流推进(开冒险→地图选路态→选战斗节点→战斗 HUD)+兑付屏真实 open 面合成最小数据 | ✅ |
|
||||
| T1 断言族 | ①overlap 同屏操作钮两两不相交 ②equal_width 同父容器按钮等宽(差>1px 红)③offscreen 完全出视口红 ④zero_size 红 ⑤start 专项双列不相交(start_box/start_right 命名锚);ScrollContainer 内容系可滚动设计内豁免;WL 豁免表机制(现零豁免) | ✅ |
|
||||
| T2 叠放修复 | `ui_assembler.gd` 右列挂回 HBox 第二列(原 `pad.add_child(right)` 误挂 MarginContainer 与左列同矩形叠放——M2 双列失效根因);装配件命名 start_box/start_right 为探针锚 | ✅ |
|
||||
| T3 按钮宽度纪律 | `ui_kit.button(text, min_w=216)`——最小宽度基准+SIZE_FILL(VBox 列内拉满列宽等宽;HBox 行内不抢余宽);**行板/角标/图标钮豁免 9 处**(camp 5+shop 2+ap_bar 2+调试角标/诊断转储 2) | ✅ |
|
||||
| T4 red-green 循环 | 六轮收敛(实录 §二),终局 **PASS 全屏结构断言零红**;负向验证=临时还原叠放 bug 探针必红(§四) | ✅ |
|
||||
| T5 闸收口 | probe_gate 全绿(含新段)+冒烟 772/0+run_all 14/15(唯一红=基线在册)+doc 三闸零新增(§五) | ✅ |
|
||||
| T6 报告与改排 | 本报告+07 §⑪改排注记/§⑮分工注记/新增 §⑯复验项+台账 360 | ✅ |
|
||||
|
||||
## 二、red-green 循环实录(六轮)
|
||||
|
||||
1. **R1 解析错**:GDScript Variant 元素类型推断两处(`var k := b.get_parent()`/`var gr := c.get_global_rect()`)——显式类型标注修复。
|
||||
2. **R2 全屏 (0,0) 假红**:modal 屏(settings/camp/confirm/debug)首次 visible 后容器排序不自动传播——size 已算而 position 停 0(4.7 行为,加帧无效实证)。修=采样前对屏根子树全部 Container 强制 `queue_sort()`。
|
||||
3. **R3 camp offscreen 群**:ScrollContainer 内容坐标系超出=可滚动设计内——offscreen/zero_size 断言豁免 scroll 子树(`_in_scroll`)。
|
||||
4. **R4 debug 出屏两件**:考证=`_sim_btn`/分隔条在浮窗 ScrollContainer 内容区(滚动超出合法),浮窗固定骨架(关闭钮 y=690)不出屏——随 R3 豁免消灯,非缺陷。
|
||||
5. **R5 camp 底条爆宽 1616px(真缺陷)**:T3 首版 EXPAND_FILL 把营地行板钮拉到 435-622 宽→行板 524→横向禁滚 ScrollContainer 传播内容 min→营地面板撑到 1632px 全线出屏。修=工厂改 SIZE_FILL(EXPAND_FILL 会把行撑爆——注释在案)+**行板紧凑钮 9 处豁免 min 0**。
|
||||
6. **R6 全绿**:PASS 全屏结构断言零红;battle_hud 驱动修复(入口/兑付停点走 `level_screen.open_choices` 直传不写 `_pending_candidates`——候选改从 `_cand_ids × runner.node_id_of(nodes())` 取)。
|
||||
|
||||
**抓到的真缺陷两件**:M2 双列叠放(用户实机目检发现+本批修复+探针回归闸);营地屏 1632px 爆宽(探针首次发现,T3 连带破坏,随豁免消解)。**机检盲区结论**:原 `ui_layout_probe` 为 53 行纯打印 dump 零断言,历次「layout 全绿」仅表示未崩——结构面此前无任何机检覆盖。
|
||||
|
||||
## 三、代裁追认单(goal 开工令按推荐案执行,4 项)
|
||||
|
||||
| # | 拍板点 | 执行形态 |
|
||||
|---|---|---|
|
||||
| P1 | 按钮宽度形态 | 推荐案落地=同容器等宽+min 基准 216+SIZE_FILL;行板/角标/图标钮豁免(计划书 T3 豁免清单条款) |
|
||||
| P2 | 探针载体 | 新建 `ui_struct_probe`;旧 `ui_layout_probe` 保留诊断打印用途不改名不退役 |
|
||||
| P3 | 编号归属 | 独立 mini-loop(bug=mini-loop 惯例),roadmap 不占迭代卡;台账号 360 |
|
||||
| P4 | 与渲染像素五闸关系 | 本批零触碰像素闸;五闸补跑仍挂 07⑮ 表现批周期闸;07⑮ 补分工注记(结构探针互补不替代) |
|
||||
|
||||
## 四、断言有效性负向验证
|
||||
|
||||
临时还原 T2(右列改回误挂 pad)复跑探针——**立刻红**:`[start][columns] 左列 (56,56)+(937,688) 与右列同矩形相交(双列叠放回归——M2 缺陷闸)`,随即还原复绿。探针非恒真,缺陷闸成立。
|
||||
|
||||
## 五、闸读数(worktree ui-struct-probe-20261005,HEAD 8944dca 基线)
|
||||
|
||||
| 闸 | 读数 | 判读 |
|
||||
|---|---|---|
|
||||
| ui_struct_probe | PASS 全屏结构断言零红 | 本批新增,已注册 probe_gate 默认必跑段 |
|
||||
| probe_gate --click | 全绿(ui_input 十六断言+ui_struct+click 问题=0+残留 0) | ✅ |
|
||||
| 冒烟 | **772 项 0 失败**(与基线 772 同——本批零冒烟断言增量) | ✅ |
|
||||
| run_all | 14/15 绿;唯一 FAIL=`reward_overlay_test`(master 既有在册红——秘宝批/技能池批台账同款,非本批新增) | ✅ |
|
||||
| doc 死链 | 4=基线 4(06×2+奇物.md×2——本批未触碰文件)零新增 | ✅ |
|
||||
| doc 术语 | 5=基线 5(主区对照)零新增 | ✅ |
|
||||
| gdd_lint | 53 vs 基线 50:+3 全为本批 07 登记注记(与历史批 §⑫-⑮ 登记注记同款形态);07「表格占比 8%」FAIL=基线既有(主区对照同败) | ✅ |
|
||||
| 负向验证 | 叠放还原→探针红→还原→绿 | ✅ |
|
||||
|
||||
## 六、遗留与移交
|
||||
|
||||
1. **主区合并后复跑**:merge 后主区冒烟+probe_gate 复跑(合并惯例)。
|
||||
2. **实机复验(07⑯)**:标题屏双列+按钮等宽+营地不出屏,约 2 分钟,归用户。
|
||||
3. **07⑪ 统一验证窗口仍开**:贫矿脉六项体感目检待用户时点。
|
||||
4. **渲染像素五闸**(golden_compare/shot_probe/fx_probe/ui_layout_probe/board_shot)补跑义务不变,挂 07⑮ 表现批周期闸。
|
||||
5. **宽度基准 216 为 provisional**:菜单/弹窗/结算操作钮现值;若其他屏出现紧凑域挤压,按「豁免传 0」扩展,禁回调全局基准。
|
||||
6. 探针采样机制注记:modal 屏首次 visible 后需强制 queue_sort(Godot 4.7 容器排序不自动传播)——后继新探针如采 modal 屏矩形须复用 `_force_layout` 手法(坑在册)。
|
||||
Reference in new issue
Block a user