docs(迭代23-T7): 总收口——四闸全绿留痕+机械面文档七件+实现报告落档

- 批末重闸全绿:冒烟 938/0+run_all 24 套+probe --click/--full+render_gate golden 0.00%+doc 三闸/熵增对基线零新增;MC 同种子配对 80 局逐位零漂移+锻造满配档方向性补充(30/80 局差)
- 机械面同步:roadmap 迭代 23 行入库态/entities.yaml forge_workshop 回填实态(impl+save_domain+currency)/06 状态+①② v0.6 措势订正/存档序列化 v1.6(forge_routes 落地态+v7 沿革)/07 ㉒ 目检节+版本行/game/README 批次段
- 实现报告=design/qa/iter23-实现报告-2026-10-12.md(代拍板追认单九条+GDD 反哺点三条+残留人闸)
- active.md 快照换代+状态记录 479/480
This commit is contained in:
DKChan committed 2026-10-13 01:21:56 +08:00
1 parent 2915f19c4b
commit 31e12c8813
8 files changed
+115 -19

No files matched your search

@@ -0,0 +1,66 @@
# 迭代 23 实现报告——锻造工坊实装批
> 日期:2026-10-12 | 迭代:23(M3=Alpha 完整实现面)| 开工令:/goal + iter 技能 U0(用户目标=总收口全绿:冒烟/单测/探针/读数对拍四闸全过+实现报告落档)
> 需求卡片:`design/research/需求卡片-锻造工坊实装批-2026-10-12.md`(v1.2,Q1/Q2 已裁、零待裁点)
> 设计权威:`design/gdd/systems/跨局循环/锻造工坊.md` v0.6(17 裁点清零+完备性检查批,commit f5215c7)
> Worktree:`g-plan2-iter23-forge`(分支 iter23-forge-20261012,基点 b9cca33)| 批内提交:T0 定义入库 b9cca33 + T1 df666dd / T2 00d98b6 / T5 6def354 / T3 a6270ba / T4 ed06292 / T6 2915f19 / T7 收口笔
> 状态:**✅ 已全批入库(单会话交付)**——四闸全绿+重闸全绿;残留人闸=实机目检工作间形态与购买交互(07 ㉒)+代拍板追认单九项+GDD 反哺点三条待用户
## 一、开工检查结论(第 2 步)
- **门**:roadmap 迭代 23 行「开工门=U0 发令」——本会话 /goal 调用即 U0,门解。
- **待裁点**:卡片 v1.2 零阻塞待裁点(Q1=等级 0 起步+锻造第一级=首个 +1;Q2=provisional 沿锚表投值——均已裁)。
- **验收清单**:V1-V14 逐条三要素(测什么/怎么测/谁验)齐;V9(静态 grep 人工核对)与 V13(用户目检)为纪律类人工项,余自动闸。
- **自洽扫描两处 L2(记录继续,不触红线)**:①卡片 F8「meta 域 13 件」清单滞后——现行 15 键(vision_used 系迭代 22 T2 同日新增未及登卡),对 forge_routes 新域零影响;②卡片 F11「效果类型闭集 24 种」系 2026-10-07 设计文档事实快照——现行 31(迭代 20 T1 +7、迭代 22 T3 +1),本批零扩签,断言钉 31。另:06 条目①「forge_products 两行改造」系 v0.5 旧文(v0.6/卡片 F1 已订正为「行族已退役、新建行族」)——T7 机械面同步时订正。
- **T0 实查**:基线复读=冒烟 898/0+run_all 22 套+probe --click 全绿残留 0(存量 fx_reveal 已随 iter21 修复,零存量红);buy_forge/forge_products 断言已随迭代 21 T5 全摘;hero 两轴读取面全清单(运行时 unit_container.gd:64 + 冒烟 smoke_all.gd:1901 + battle_orchestrator 间接消费 + README 文档面);注入链探明(build_adventure_params → adventure params → set_* 族 → enc → spawn)。
## 二、任务卡状态(T0-T7)
| 卡 | 状态 | 交付要点 | 提交 |
|---|---|---|---|
| T0 前置实查 | ✅ | 基线三件套+F1-F13 事实核对+断言摘除清单+两轴读取面清单+注入链探明;定义面入库(b9cca33) | b9cca33 |
| T1 路线行族 | ✅ | 新表 forge.tres(ForgeTable:默认两轴+六路线行族)+ConfigDB 六访问器+单测 41 断言(V1 正反 22 类/V11 行字段闭集+词表 31 钉现/V2 价格梯) | df666dd |
| T2 两轴移交 | ✅ | hero.tres 两字段删除(schema 同步)+spawn 注入缝(空串=锻造配置默认值回退,行为逐位连续)+冒烟 4 断言(V5 前半) | 00d98b6 |
| T5 存档 v7 | ✅ **(序调先行——T3 写口硬依赖存档域)** | SAVE_FORMAT_VERSION 6→7+_migrate_v6_v7 空迁移+forge_routes 域(levels/unlocked/weapon/armor,无特效域)+访问器组+冒烟 V8 六断言(往返/v6 旧档补齐/键集/值拷贝) | 6def354 |
| T3 写口族 | ✅ | MetaProgression 锻造写口(forge_buy_level 几何价/forge_buy_unlock 一次性解锁价/forge_select_weapon·armor 免费选中/forge_route_unlocked 派生单点)+冒烟 V2/V3/V4/V6 共 15 断言 | a6270ba |
| T4 注入接线 | ✅ | hero_override 公式换代(FORGE_ROUTE_BONUS 退役)+build_adventure_params 两键+参数面快照(契约 8 锁死)+effective_ac 三层(甲型基础 AC+路线加值+局内)+enc→spawn 末端;冒烟 V5 后半/V6/V7/V10 共 15 断言 | ed06292 |
| T6 工作间 UI | ✅ | 占位面板→两区六路线行板(锻造/解锁/选中三钮+余额联动+锁定态零行板零购买路径)+presenter 三意图处理器+main 接线+新单测 forge_workbench_test 12 断言(V13 自动化前置面) | 2915f19 |
| T7 收口 | ✅ | 重闸全绿+MC 配对+机械面文档七件+本报告 | 收口笔 |
## 三、验证闸总账(批末重闸)
| 闸 | 结果 |
|---|---|
| 冒烟(run_smoke 三闸:退出码/摘要/脚本错误扫描) | **938 项检查 0 项失败**(基线 898/0 + 本批 40 断言:T2×4/T3×15/T4×15/T5×6) |
| 单元(run_all) | **24 套全绿**(基线 22 + forge_table_test 41 断言 + forge_workbench_test 12 断言) |
| 探针(probe_gate) | **--click + --full 全绿、残留 Godot=0**(ui_input/ui_struct/ui_contrast/click/ui_probe/ui_tune/t17_defer/fx_probe 八件) |
| 读数对拍(MC 同种子配对,verifier_batch adventure 段 na=40 seed0=9000 双画像) | **A) 改前 vs 改后白板:80 局同种子逐位零差异**(normal 0/40↔0/40 均关 0.10;perfect 28/40↔28/40 均关 2.42)——默认态行为连续零漂移铁证。**B) 方向性补充**:白板 vs 锻造满配档(atk+5/ac+5 同种子)80 局中 30 局结局变化(normal 0/40→1/40、perfect 28/40→33/40)——锻造加值注入面生效且方向正确(数值 provisional 归 M4) |
| render_gate(窗口化渲染闸) | **全绿**——shot_checker A-D 断言过 + 棋盘 golden 三屏 changed=0.00%(容差内) |
| doc 三闸(gdd_lint/doc_link/doc_term) | **对基线零新增**——gdd_lint 3 个存量红同款(06/07 表格占比、术语表,master 同);doc_link 已知死链 1(存量);doc_term 单 hit 存量(06:37 拔旗,非本批编辑区) |
| 熵增闸(repo_structure_audit) | **PASS**(四查全过) |
> 环境注记:render_gate 的 PIL 依赖需 gamedev venv(`PATH=/d/dev/python/envs/gamedev/Scripts:$PATH`)——WorkBuddy 裸 python 无 PIL;本机 Godot 4.7.2 路径 `D:\code\godot\Godot_v4.7.2-stable_win64_console.exe`。
## 四、代拍板追认单(白名单内,待用户追认)
1. **行族落位选型**:新表 `forge.tres`(ForgeTable)而非 meta.tres 内新行族——T2「锻造工坊配置表新建」与 T1 行族同表承载(默认两轴+六路线);访问器连续性沿 treasure_items 先例(`db.forge_*`)。meta.tres 三行族零触碰。
2. **路线 id 命名**:sword/spear/staff/light/heavy/ward——甲路线 id=甲型值本身(ward=魔法护甲,3a 裁统一命名);存档域 levels 六键同。
3. **存档域键名**:`forge_routes = {levels:{六路线→等级}, unlocked:[直购路线 id], weapon/armor:选中路线 id}`——unlocked 只记直购;初始持有(表 initial_owned)与练满前一档(levels[prereq]≥cap)为派生解锁不落档(解锁态派生单点=MetaProgression.forge_route_unlocked)。
4. **provisional 行值**:沿 T1 锚表投值(cap 5/每级增量统一 +1/基础价 20×150%^n=20/30/45/67/101/一次性解锁价 200/甲型基础 AC 10-12-9/初始持有 sword+light/前置 spear·staff←sword、heavy·ward←light)——Q2 已裁沿锚,终值归 M4。
5. **v6→v7 空迁移形态**:缺键补齐模式(v3→v4 先例)——无结构迁移体,_normalize 按默认模型补 forge_routes=初始持有态;幂等零漂移(冒烟断言)。
6. **执行序调整**:T5 存档域先于 T3 写口施工(写口族硬依赖存档域——不满足则 T3 无法落盘),台账记录。
7. **工作间行板布局**(程序占位):件名+Lv+解锁态双通道文案+锻造/解锁/选中三钮横排;锁定态(钥匙未点亮)默认不可见+门控重建=零行板零购买路径(占位纪律延续,2026-10-11 用户令);视觉终稿归 HUD 营地视觉批。
8. **V11 词表钉 31**:卡片 F11「效果类型闭集 24 种」系 2026-10-07 旧快照(现行 31)——L2 事实订正,断言钉现行数(将来加词即转红提示复核)。
9. **F8 域计数订正**:卡片「meta 域 13 件」实为 15 键(vision_used 迭代 22 T2 同日新增)——L2 事实订正,零需求影响。
## 五、GDD 反哺点(设计权威文档不动,逐点待用户裁决后另批落文)
1. **锻造工坊.md**:①「每条路线的内容·等级:1 → 上限」正文宜补 Q1「0=未练合法态」衔接表述(Q1 已在版本历史续裁行落文,正文未同步);②「现役代码事实」表「效果引擎效果类型闭集 24 种」滞后(现行 31);③实装边界 1「行族命名、字段结构与落表位置归实装批定义」已兑现(新表 forge.tres/ROUTE_IDS 六 id/12 字段闭集)——可回填实态句。
2. **元进度.md**:①「跨局注入」节四层公式宜补「甲型基础 AC=选中甲路线行 base_ac(effective_ac 第一层)」终态句(树 flat+锻造路线加值已实装);②营地钥石入口族宜登记锻造三写口(forge_buy_level/forge_buy_unlock/forge_select_*——buy_forge 退役后的新族,契约 9 写口唯一)。
3. **术语表.md**:实现引入路线 id 与存档域内键名(levels/unlocked/weapon/armor)——非玩家可见术语,预计零新词;若需登记补登待裁。
## 六、残留人闸与遗留
- **残留人闸(07 ㉒,用户实机目检)**:工作间门与形态(锁定态零购买路径/点亮后两区六路线)/购买面(几何价逐级涨、余额禁用、即时刷新)/解锁面(双通道:练满派生零收费 vs 200 直购、互不重复收)/选中面(免费切换、当前态、冒险锁死)/注入抽查(选长枪=穿刺生效、选重甲 AC=12+加值、旧路线练度保留)。
- **遗留(在册不阻)**:①敌方 attack_type 填值(3b 裁连带)归敌人系统/战斗结算侧——本批只落结构面(矩阵查表现役已支持),06 在册;②全部数值 provisional 终值归 M4 数值批(未排期);③满级特效本期不做(六路线扩展位留空——不开参数位/不加效果类型词/存档无特效域);④工作间视觉终稿归 HUD 营地视觉批。
- **本批零触碰面**:meta.tres 三行族、克制矩阵九格、局内货架三行(奇物属性件)、天赋树、效果引擎词表(零扩签)。