docs(迭代34卡④): D1 甲案回炉账面——对照表 fv2 入口改绘制记录、变异表补 M11、§六 处置与合并状态更新;代拍板补第 7 行(白名单外备案);反哺点补⑯(卡片 T2 接口描述订正)
This commit is contained in:
1 parent
1970e0efc4
commit
de9cc102b1
3 files changed
+18
-11
No files matched your search
@@ -29,4 +29,5 @@
|
||||
| 4 | 大图夹具规模(§9-4) | 12 个 BFS 层构造(跨层跳边压层后布局实得 11 层×6 槽)、含双 Boss、跨层跳边 | 满足 ≥10 层 × ≥5 槽;断言按布局实测 `maxl/maxslot` 推导 |
|
||||
| 5 | 常数锚同源化方式(§9-5) | 探针直接引 `LevelMapScreen.LAYER_BASE_X/LAYER_STEP_X/NODE_HALF` 导出常量 | 与 `_fit_canvas` 公式逐项同源,无手抄数字副本 |
|
||||
| 6 | 提交切分与分支命名(§9-6) | 分支 `iter34-fog`;三笔:实现与断言(`ed8e0f9f`)、⑱ 判据改绑(`4ef154b9`)、类型闸归零+探针补尾缀(`6f04f29b`) | 三笔均在 `game/` 内;报告随批落 `reports/` |
|
||||
| 7 | 白名单外——审计缺漏 D1 的接线层验收手段(卡片 §9 未列,已呈报三案) | 呈报甲(补绘制输出观测面)/乙(改 §7.1 口径)/丙(单次快照降级)并推荐甲;用户回「继续未完成的任务」后按甲落地:`_draw_graph` 绘制点记录本帧绘制事实,`display_probe()` 改读该记录 | 改动集中在提交 `1970e0ef`,一笔可回退;未触碰冻结视觉件(零新画法/色值/线宽/缩放滚动),新增面为只读成员与记录赋值 |
|
||||
|
||||
@@ -97,3 +97,8 @@
|
||||
- 改成:登记三条待真人目检项(只登记、不阻塞)——①雾下可读性观感(未知类型节点是否一眼可辨为「未知」而非空节点);②多终点图 Boss 标记观感(双 Boss 是否都带描边且可辨);③大图完整可见观感(11 层×6 槽图是否完整落在屏内、编号不重叠)。判据与观测点见 `reports/iter34-实现报告-2026-10-22.md` §5.5。
|
||||
- 依据:卡④ T5「实机目检总清单三条」+iter 技能第 5 步账面随批;实现批禁写该清单,登记归文档批或用户发令。
|
||||
|
||||
## ⑯ 需求卡片:T2 的 `display_probe` 接口描述与 §7.1 fv2 口径一致化
|
||||
|
||||
- 文件与位置:`reports/需求卡片-信息迷雾可见性批-2026-10-21.md` :139(T2 第三条)
|
||||
- 改成:「新增 `func display_probe() -> Dictionary`(id → `node_display` 快照,只读断言面,仿 `canvas_probe` 先例)」→「(id → 本帧实际绘制事实:图标/文字/描边/文案,由 `_draw_graph` 在实际绘制点写入,只读断言面)」,与 §7.1 fv2 真实入口格「真机 `display_probe()` 读绘制面(接线层验收)」对齐。
|
||||
- 依据:迭代 34 卡④ 独立验收审计 D1(`reports/iter34-卡④-验收审计-2026-10-22.md` §6);实现按 §7.1 验收面(甲案)落地,卡片 T2 的接口描述是滞后一侧,须由写卡段订正——实现期不改卡片。
|
||||
@@ -156,7 +156,7 @@
|
||||
|
||||
### 5.1 工作树与任务卡状态
|
||||
|
||||
工作树 `D:\code\g-plan2-iter34-fog`,分支 `iter34-fog`,起自卡③合并后的 master `43c0f3c1`。提交:`ed8e0f9f`(T1–T3 实现与单测/冒烟/探针)、`4ef154b9`(⑱ 零提交判据改绑信号面)、`6f04f29b`(类型闸归零+探针补雾下文字通道断言)。
|
||||
工作树 `D:\code\g-plan2-iter34-fog`,分支 `iter34-fog`,起自卡③合并后的 master `43c0f3c1`。提交:`ed8e0f9f`(T1–T3 实现与单测/冒烟/探针)、`4ef154b9`(⑱ 零提交判据改绑信号面)、`6f04f29b`(类型闸归零+探针补雾下文字通道断言)、`1970e0ef`(审计 D1 回炉 T2:绘制记录观测面+⑱ 选区解耦)。
|
||||
|
||||
| T 卡 | 内容 | 状态 |
|
||||
|---|---|---|
|
||||
@@ -174,16 +174,16 @@
|
||||
| fv | 需求点(简) | 验收断言(文件:行) | 层级 | 真实入口 | 撤销/变异结果 |
|
||||
|---|---|---|---|---|---|
|
||||
| fv1 | 邻近 N 层见类型 | `level_map_type_vis_test.gd:121`、:122、:123(层距边界);:142、:143(入口锚层 0);:166、:167、:168(单链退化);`smoke_all.gd:4942`(真图) | 单元+集成 | `LevelRunner.type_visible_ids()` 直调;冒烟真图读面 | M1 `<=N`→`<N` → 边界断言红(实测) |
|
||||
| fv2 | 范围外只见结构 | `level_map_info_fog_test.gd:51`、:54、:56(决策面显隐);:96、:98、:100(label 三态);`ui_input_probe.gd:60`(真机 `display_probe` 雾下图标/文字双通道) | 单元+探针 | `node_display` 纯函数;真图 `display_probe()` | M2 `draw_icon` 强制 true → 红(实测) |
|
||||
| fv3 | Boss 不入雾+多终点标记 | `level_map_type_vis_test.gd:144`、:145;`level_map_info_fog_test.gd:65`、:67、:70、:73;`ui_input_probe.gd:64`;`smoke_all.gd:4939` | 单元+探针+集成 | `type_visible_ids()`/`node_display`;真机 `display_probe()` | M3 删核心 Boss 豁免 → 红;M4 删决策面 Boss 豁免 → 红(实测) |
|
||||
| fv4 | 下一跳恒可见 | `level_map_type_vis_test.gd:132`、:133(跨层跳边);`smoke_all.gd:4938`;`ui_input_probe.gd:67` | 单元+集成+探针 | 同上;真图候选读面 | M5 删候选豁免 → 红(实测) |
|
||||
| fv2 | 范围外只见结构 | `level_map_info_fog_test.gd:51`、:54、:56(决策面显隐);:96、:98、:100(label 三态);`ui_input_probe.gd:65`(真机绘制记录双通道);`level_map_info_fog_test.gd:195`(大图绘制记录) | 单元+探针 | `node_display` 纯函数(决策面)+真机 `display_probe()` 读 `_draw_graph` 实际绘制记录(接线面) | M2 决策面 `draw_icon` 强制 true → 红(实测);M11 绘制处绕开决策面 → 单元与探针双红(实测) |
|
||||
| fv3 | Boss 不入雾+多终点标记 | `level_map_type_vis_test.gd:144`、:145;`level_map_info_fog_test.gd:65`、:67、:70、:73;`ui_input_probe.gd:69`;`smoke_all.gd:4939` | 单元+探针+集成 | `type_visible_ids()`/`node_display`;真机 `display_probe()` | M3 删核心 Boss 豁免 → 红;M4 删决策面 Boss 豁免 → 红(实测) |
|
||||
| fv4 | 下一跳恒可见 | `level_map_type_vis_test.gd:132`、:133(跨层跳边);`smoke_all.gd:4938`;`ui_input_probe.gd:72` | 单元+集成+探针 | 同上;真图候选读面 | M5 删候选豁免 → 红(实测) |
|
||||
| fv5 | 节点内详情不显示 | `level_map_info_fog_test.gd:87`、:88(携带 `enemy_id/reward_id` 夹具) | 单元 | `node_display` 纯函数 | M6 label 拼 `enemy_id` → 红(实测) |
|
||||
| fv6 | N 进数据表 | `level_map_type_vis_test.gd:96`(表读数 2)、:100、:102、:104(越域 validate)、:178、:180、:186(改表随动);`smoke_all.gd:4940–4941` | 单元+集成 | `LevelTable.validate()`/`db.level.info_visible_layers`;冒烟读表 | M7a 删越域校验 → 红;M7b N 硬编码 2 → 红(实测) |
|
||||
| fv7 | 单圈语义 | `level_map_type_vis_test.gd:155`、:156、:157(visited 不豁免);:207(续玩重建同值) | 单元 | `type_visible_ids()`+`start_level_external` resume 路径 | M8 visited 累积可见 → 红(实测) |
|
||||
| fv8 | 画布自适应 | `level_map_info_fog_test.gd:169`(夹具规模)、:175(宽)、:177(高)、:185(全节点在画布内)、:192、:195;`ui_input_probe.gd:142–145`(常数锚同源)+⑬ | 单元+探针 | `canvas_probe()`/`layout_probe()`;真机 push_input | M9 去 `NODE_HALF.x` 项 → 红(实测) |
|
||||
| fv9 | 显隐接线(雾不扩可点域) | `ui_input_probe.gd:89`(点击雾下非候选节点 `route_chosen` 零发射) | 探针 | 真机 `push_input`+`display_probe()` | M10 命中面放宽到全节点 → ⑱ 红(实测,提交=[3]) |
|
||||
| fv8 | 画布自适应 | `level_map_info_fog_test.gd:169`(夹具规模)、:175(宽)、:177(高)、:185(全节点在画布内)、:192、:195;`ui_input_probe.gd:151–154`(常数锚同源)+⑬ | 单元+探针 | `canvas_probe()`/`layout_probe()`;真机 push_input | M9 去 `NODE_HALF.x` 项 → 红(实测) |
|
||||
| fv9 | 显隐接线(雾不扩可点域) | `ui_input_probe.gd:94`(点击雾下非候选节点 `route_chosen` 零发射) | 探针 | 真机 `push_input`+`display_probe()` | M10 命中面放宽到全节点 → ⑱ 红(实测,提交=[3]) |
|
||||
|
||||
覆盖说明:`game/` 内新增断言按上表逐条挂〔fv#〕尾缀,fv1–fv9 全覆盖,无未证条目;`level_map_type_vis_test` 26 项、`level_map_info_fog_test` 19 项、冒烟新增 5 项(1206→1211)、探针⑱ 5 项断言。
|
||||
覆盖说明:`game/` 内新增断言按上表逐条挂〔fv#〕尾缀,fv1–fv9 全覆盖,无未证条目;`level_map_type_vis_test` 26 项、`level_map_info_fog_test` 19 项、冒烟新增 5 项(1206→1211)、探针⑱ 4 项判据+1 项选区存在性前置。
|
||||
|
||||
### 5.3 卡片与实际改动面的偏差(逐条说明)
|
||||
|
||||
@@ -209,6 +209,7 @@
|
||||
| M8 | 可见集加 `visited_ids().has(nid)`(累积可见) | `level_map_type_vis_test` | 单圈回雾:已过远端节点 0(层距 5)不因 visited 豁免〔fv7〕;中距节点 2 不可见〔fv7〕 | 还原,26 项全绿 |
|
||||
| M9 | `_fit_canvas` 宽公式去 `NODE_HALF.x` 项 | `level_map_info_fog_test` | 大图拟合:画布 min.x 覆盖最深节点(1298.0 ≥ 1334.5)〔fv8〕;全节点落在画布内〔fv8〕 | 还原,19 项全绿 |
|
||||
| M10 | `_candidate_at` 命中面放宽到全节点 | `ui_input_probe`(⑱) | 雾下节点点击产生提交(提交=[3] visible=true 选路态=true)〔fv9〕 | `git checkout` 还原,探针 PASS |
|
||||
| M11 | `_draw_graph` 图标/文字两处条件改 `if true`(绕开决策面=接线坏) | `level_map_info_fog_test`+`ui_input_probe`(⑱) | 大图呈现:入口停点远处战斗节点(编号 32,层 6)类型入雾〔fv8〕;case⑱ 雾下节点类型仍出示(图标=true 文字=true——范围外只见结构)〔fv2〕 | `git checkout` 还原,19 项全绿+探针 PASS |
|
||||
|
||||
### 5.5 实机目检总清单(只登记,不阻塞合并)
|
||||
|
||||
@@ -252,13 +253,13 @@ T4 里程碑跑批 `tools/run_all_gates.sh --code`,起跑 commit `4ef154b9`:
|
||||
| 缺漏 | 内容 | 本批处置 |
|
||||
|---|---|---|
|
||||
| D2 回炉 T4/T5 | 缺与分支尖同 commit 的 `--code` 全绿回执(旧回执停在 `4ef154b9`、09 红、`all_green=false`) | **已闭合**:在分支尖重跑全量代码域闸,回执 `commit=8b9c6989`、`all_green=true`、`changed_vs_baseline=[]`(见 §5.7) |
|
||||
| D1 回炉 T2 | fv2「接线层验收」未成立:`display_probe()` 是逐节点重调 `node_display` 的快照,与 `_draw_graph` 的实际绘制是两次独立求值;审计注入「`_draw_graph` 两处条件改 `if true`」模拟接线坏,单元 19 项与探针仍全绿。审计判为**卡片 T2 对 `display_probe` 的定义与 §7.1 fv2「读绘制面」要求互相矛盾(spec-AC 不一致)** | **停卡呈报**:本项需要改验收接口语义或改卡片验收口径,均超出实现段授权(§9 白名单只含既有 API 命名,不含新增绘制输出观测手段;§7.1 是卡片的验收面,实现批只读),按实现段零裁断停卡退回上游,本批不自决、不合并 |
|
||||
| D1 回炉 T2 | fv2「接线层验收」未成立:`display_probe()` 是逐节点重调 `node_display` 的快照,与 `_draw_graph` 的实际绘制是两次独立求值;审计注入「`_draw_graph` 两处条件改 `if true`」模拟接线坏,单元 19 项与探针仍全绿。审计判为**卡片 T2 对 `display_probe` 的定义与 §7.1 fv2「读绘制面」要求互相矛盾(spec-AC 不一致)** | **甲案回炉(提交 `1970e0ef`)**:呈报后用户指令「继续未完成的任务」,按呈报推荐案甲落地——`_draw_graph` 在描边/图标/文字三处实际绘制点写入本帧绘制事实(新只读成员 `_drawn_disp`),`display_probe()` 改读该记录、不再二次求值;探针⑱ 选区改按核心 `type_visible_ids()` 独立选雾节点,解除「按记录选、再断言记录」自指;单元大图组两处呈现断言随动读绘制记录。新增撤销证明 M11(绕开决策面直接画 → 单元〔fv8〕与探针〔fv2〕双红)。该项在 §9 白名单外,已在代拍板追认单第 7 行备案,可整笔回退。 |
|
||||
|
||||
审计附三条非阻塞观察项,随 D1 回炉一并处理:
|
||||
审计附三条非阻塞观察项,处置:第 1、3 条已随甲案修除,第 2 条按卡片 T2 指定写法保留(核心多 Boss 成员性由 `level_map_type_vis_test` 的〔fv3〕用例覆盖同一分支)——
|
||||
|
||||
1. 探针 ⑱ 的「雾下图标不出示」判据自指——`fog_id` 正是按 `not draw_icon` 选出再断言其 `not draw_icon`,该半句恒真;有效的是文字通道半句与存在性判定(M2 时因选不到雾节点走「选取失败」分支变红)。建议选区与断言解耦(按层距/候选集独立选雾节点)。
|
||||
2. fv3 双 Boss 夹具手写 `type_vis=[1,7,9]`,未从 `type_visible_ids()` 推导两端点均在集;核心多 Boss 成员性由单 Boss 用例覆盖同一分支,风险低。
|
||||
3. 探针 PASS 文案只列到 ⑰(按 18 个 case 计),未点名 ⑱;报告 §5.2 称「探针⑱ 5 项断言」实为 4 个 `_pre_fail` 判据+1 个选区前置,措辞/计数需订正。
|
||||
3. 探针 PASS 文案只列到 ⑰、未点名 ⑱,§5.2 原称「探针⑱ 5 项断言」实为 4 个 `_pre_fail` 判据+1 个选区前置。两处均已订正:⑱ 已列入 PASS 文案,计数改写为「4 判据+1 前置」。
|
||||
|
||||
**合并状态:未合并。** 卡④ 停在 D1,待上游裁决后回炉 T2 并重交独立复审;卡③ 已在 `43c0f3c1` 合回 master。
|
||||
**合并状态:待复审。** D1 已按甲案回炉(`1970e0ef`)、D2 已闭合(分支尖回执全绿),待第二轮独立验收审计通过后合回;卡③ 已在 `43c0f3c1` 合回 master。
|
||||
|
||||
Reference in new issue
Block a user