Commit Graph
93 Commits
Author SHA1 Message Date
DKChan 9846a29f4c fix(呈现): 主菜单副标题「扫雷的因 · 逐行兑现的果」整个删除(2026-10-16 用户令——无意义标语,玩家可见面禁扫雷字眼)
- ui_assembler.gd: 副标题 label 两行删除(标题与分隔线之间;局部变量无外部依赖,VBox 回流)
- shot_probe.gd: menu_sub 文字锚/自检腿退役(menu_title 保留)+ 菜单段头部历史注记换代
- shot_checker.py: 菜单·副标题 box/presence 两断言腿同撤(_meta 记录端随 pair 列表自断),不重锚
- golden: menu_boot.png 基线换代——触发原因=副标题件删除画面少一行字(呈现类批内换代,Q6 口径;提交说明强制成因即本条)
- 文档四面同步: 01-核心循环 节标题改「一场战斗的流程」(口号句无承载价值,正文已释流程);HUD框架 双舞台段删口号句保留因果论点并句;教学引导 P0 最小集合候选删「归因提示」项;07 ㉗ 目检判据删副标题字样
- 验证: shot_probe 问题=0;render_gate 全绿(shot_checker PASS / 棋盘三屏 golden OK / 菜单 golden changed=0.00% / 残留 Godot=0);改动面 7 文件(含基线 PNG)
2026-10-16 04:33:17 +08:00
DKChan e8ceb27243 chore(闸门): doc_term 升级为硬判定(2026-10-16 用户令,用语规范批第二步)——tools/run_all_gates.sh 文档三闸段 08 doc_term 加 --strict:疑似现行 ≥1 即该闸红 → 回执红 → worktree-guard 拦截合回主分支;专项补扫通道(随批/台账)本并入同一判定。通电验证——现状全绿 exit 0、注入违规行 exit 1、删除回绿;基线零漂移(此前全库疑似现行已随换代批清零,exit 码不变)。按用户令不做编辑期钩子(每编辑起 Python 进程的性能损耗否决,改为定期跑批扫描),不做豁免清单机制 tools/doc_term_known.txt 2026-10-16 02:55:36 +08:00
DKChan 4d3f8d6653 merge: master 二次吸收(ADR 体系废除批+布局闸入库)
# Conflicts:
#	design/gdd/02-系统清单.md
#	design/gdd/systems/冒险循环/冒险结构.md
#	design/gdd/systems/表现与支撑/数据配置.md
#	design/gdd/ux/battle.md
2026-10-16 00:08:01 +08:00
DKChan 19d036ce2c merge: 布局闸入库(layout_probe 补回分辨率几何断言·两档)
档位表是数据、断言是一份函数据——测试代码量与档数无关,增删档只改数组一行。
档位按 battle.md 现登记的两档(1280×800 / 1920×1080),未新增。

修正旧探针的假断言:headless 下 get_window().size 不改变视口(实测),
正确接口是 content_scale_size。旧探针「1920 档恒定」永远为真。

变异验证两发:B区高度撑爆→5 条红✓;注入全幅兄弟控件→未见红✗(边界已如实标注)。
挂 probe_gate 默认必跑段。全量闸 9绿1存量红,回执 commit=5af6c8a8。
2026-10-15 23:55:53 +08:00
DKChan 6c2dbc37c1 docs: ADR 体系废除 + architecture.md 确立为架构唯一事实源(2026-10-15 用户令:决策记录归 git commit log,不另存决策文档)
- 删除 design/dev/architecture/adr-0001~0007 共 7 份文件(内容留 git 历史可查)
- architecture.md:删「ADR 审计」「ADR 立项清单」两节;清除全文 ADR-000X 注记、QQ 表/S 表 ADR 引用;未决表关闭已落定项(QQ-01/02/03),立项清单在途事项转登记 QQ-11~14;补 A1 生成姿态事实、autoload 四件清单、board_generator 性能姿态;文档状态立「事实源地位」条
- CLAUDE.md:恢复 RNG 单点硬性红线(去 ADR-0007 引用);新增「架构事实唯一源」红线;规范导航架构行标注唯一事实源
- doc-conventions:§5 增「架构事实唯一源」行;§11 活文档清单补架构文档
- registry:architecture.yaml 删 18 处 adr 字段、autoload_set 补 SaveManager/MetaProgression、board_rending 更新为 Node2D 已落地事实;entities.yaml 12 处引用清除
- game/ 代码注释约 60 处清 ADR-000X 引用(事实与日期保留);豁免标记 ADR-0007-exempt → rng-seed-exempt(main.gd/static_scan.sh/architecture.md/06/iter27 五处同步)
- GDD/qa 实现报告/research 卡片/roadmap/tests README 引用全清;死链校验 1206 链接 0 死链、gdd_lint 0 不通过
- 代码中 adr/adr5 等为 adventure_runner 既有局部变量名(非 ADR 引用),未动
2026-10-15 23:52:30 +08:00
DKChan 5af6c8a8b4 feat(布局闸): layout_probe 补回分辨率几何断言(两档·一份断言函数据)
背景:孤儿探针 ui_layout_probe 退役后1920 档布局几何无机器承载。重建但改形态——
「档位表(数据)+ 一份不变量断言(代码)+ 循环代入」,测试代码量与档数无关,
增删档位只改 VIEWPORTS 数组一行。这与业界 Playwright parametrize/projects 同构:
同一个 test body 跑多档,变的只是输入表与基线图张数(数据非代码)。

档位按 battle.md §验收现登记的两档:基座 1280×800、16:9 全屏 1920×1080。不新增档。

关键修正——旧探针那条「1920 档几何恒定」断言是假的:
  设get_window().size = 1920×1080 → 逻辑视口仍是 1280×800(headless 下不生效)
  设 content_scale_size = 1422×800 → 逻辑视口 = 1422×800(真生效)
Godot 文档指定的运行时改基座接口是 content_scale_size;旧探针用错了 API,
其断言永远为真、当年报 PASS 是假绿。本探针改用正确接口。

断言面(每档跑一遍):三区非零/不越视口/两两不重叠/board_view ⊆ board_zone/
格子边长 ≥36px(battle.md §棋盘格尺寸公式 1280 档 12×12 → 36px)。

变异验证(CLAUDE.md 第9条)两发:
  ① battle_stage_view B区 252→700 → 5 条红(两档都中)✓ 还原后 PASS
  ② 注入全幅 ColorRect → 未见红 ✗ —— 判据只点名三区不覆盖第四个兄弟,
    该缺陷类不在拦截面内。已在代码注释标明边界,未过度设计补递归遍历
    (递归全子树查重叠极易误报容器父子关系)。

挂 probe_gate 默认必跑段(轻闸即跑)。S10 文件头闸本批零新增。
2026-10-15 23:46:39 +08:00
DKChan c963004236 merge: master 吸收(收口机制批+闸收敛批二+10-15 文档落库)——冲突五件解毕:术语表/02/数据配置取本批超集(用语规范节/同源两行/死链史实版),元进度 v1.12 与天赋树 v0.5 取主区侧(更名记载显示文字保真),doc_term_audit 语境豁免并集(主区六组+本批 buff 组) 2026-10-15 23:32:01 +08:00
DKChan 59fdb15567 docs(gdd): 用语规范批 W2——systems 十九篇词面换代 74 处(收口 21/不得 13/报错 7/若干 8/对拍 3/在飞 1/落文 2/随批 2 等按 A 表与语境义改写)+死链修复 2 处(武器锻造→锻造工坊漏改指路)+锻造工坊文头 v0.7→v0.8 失同步补齐;doc_term_audit 增设随批/台账专项补扫通道(白名单自豁免词的版本历史节外可见性)。秘宝充能 2 处与对照性收口 3 处按豁免保留 2026-10-15 22:45:56 +08:00
DKChan 20f4a7dc01 feat(收口闸): active.md 体量闸并入全量闸清单——收口漏删旧条目在合回时被拦
- tools/audit_active_state.py:判四条可机械测的膨胀签名(状态记录条目数>30、
  快照行数>10、条目编号重复含并行撞号、指向 design/qa|research 中间文档的死指针),
  另加快照整行自我重复一项(换代不彻底只往顶部 prepend 的签名)。
- 变异验证:对换代前的 34 条版本报 5 项红(A1/A2/A3/A4/A5 全见红),
  对退役后的 3 条版本报绿;两态实测 RC=1/0。
- 入 run_all_gates.sh 为 08b(脚本即清单,不另立第二份闸清单),baseline.json
  随批补 08b 绿项(本分支内实测绿,非臆造)。
- 规约挂指针两处:doc-conventions §10 机械闸句、process-conventions 批次清单 12。
- active.md 按 §10 退役:状态记录 34→3 条,快照 21 行自我重复压回 10 行,
  删「项目当前位置」整节(滞后且与 roadmap/快照重复),未决面按迭代 27/28 重列。
- 不动 Stop 钩子:回合末判收口时机错配(一轮答完≠任务完成),机械层交合回闸,
  语义层交收口技能。
2026-10-15 22:23:53 +08:00
DKChan eb5e892456 fix(闸收敛批三): .gates/.gitignore 入库 + 脚本自愈重建
合回 master 时发现:.gates/.gitignore 未入库,receipt.json 被纳入版本管理——
它是每跑批覆写的当次回执,属中间产物。

成因:重跑闸前用 rm -rf game/tests/.gates 清目录,把 .gitignore 一起带走了;
脚本自身不重建,跑得再多次也不会回来。

- .gates/.gitignore 入库(挡 receipt.json 与 *.log)。
- run_all_gates.sh 启动时自愈:.gitignore 缺失则重建,杜绝复发。
2026-10-15 22:07:13 +08:00
DKChan 3105052c51 docs(tools): 用语规范批 M8——doc_term_audit 吸收用语规范 A 表 10 词(对标/若干/不得/报错/buff/收口/在飞/对拍/销账销号/落文)+用语规范节入节级豁免+buff 行内代码语境豁免;术语表对外命名纪律 不得→禁止(A 表自洁)。随批/台账系白名单信号自豁免不列扫,注释在案 2026-10-15 21:54:40 +08:00
DKChan 94f1bba840 fix(闸收敛批二): gdd_lint 分域豁免 + doc_term 语境豁免 + 孤儿探针退役
用户令四条:清单类与术语表免 GDD 规范性检查、退役词统一处理、文件头另处解决、
无使用的探针全删。

- tools/gdd_lint.py:新增 RULE_EXEMPT(规则粒度分域豁免,**按规则不按文件**)——
  06 免 R3/R4/R7、07 免 R3/R5/R7、术语表免 R2/R5。
  理由逐条写进代码注释:R3 禁修订注记与「登记处条目要能回答谁在何时裁的」直接冲突;
  R4 版本历史节与 06「解决即移除」的状态登记体裁冲突;R5 是节名含「流程」即触发的误匹配
  (07 的「㉖全流程走查」是目检清单节、术语表「开发流程」是词条节);
  R7 长括注在登记处是常态。
  **机械可判的完整性规则 R6/R8/R9/R10/R11 一律不豁免**,真缺陷不得藏起来。
- design/gdd/术语表.md:版本号撞号订正(10-12 那条 v1.2→v1.9,两条 10-13 顺延 v1.10/v1.11),
  按真实时序重排。原撞号源于 2026-10-11 与 10-12 两批各写一个 v1.2。
- tools/doc_term_audit.py:五组退役词按语境豁免而非改正文——
  充能(秘宝主动件现行机制,扩 exempt 信号)、可选类道具与雾格(否定式引用「现行池内无可选类」
  「不做清单」——替换会毁掉句意)、伏击/heavy_multiplier(battle.md 占位表里的退役敌人 id,
  现行规格在 敌人系统.md)、拔旗(06 待办「件派生动词白名单」是待评估设计意图非在用机制)。
  疑似现行 6 处 → 0。
- 孤儿探针退役:ui_layout_probe 与 ui_audit_probe 共 6 文件(.gd/.uid/.tscn)删除——
  两者均无任何闸脚本执行(全仓仅注释与历史报告提及)。
  连带清理 render_gate.sh 头注、board_view.gd cell_size 注释、game/README.md roster 行。
  **遗留**:ui_layout_probe 原承担 1920 档布局机检面,现无承载,已在 render_gate 头注标明待补。
- roadmap.md 迭代循环第 4/5 条:轻闸/重闸改指 run_all_gates.sh,闸清单不再散落第四处。

闸况:9 道绿(含 gdd_lint / doc_link / doc_term 三闸全绿);static_scan S10 文件头 125 处
按用户令不在本批处理,已落 baseline.json 作为存量红。
2026-10-15 21:42:35 +08:00
DKChan 1d4ac91e3b feat(闸收敛批): 验收闸唯一入口 run_all_gates.sh + 合回闸回执强制 + t17 探针隔离修复 + 文档闸清单单一事实源
用户令「迭代完成前必须全量跑一遍所有测试」。起因是 iter27 台账只记 probe --click 未记
--full,t17_defer_probe 红了整个迭代无人发现——根因是闸清单散落 CLAUDE.md /
process-conventions.md / test-conventions.md 三处、彼此不一致、且无任何机器校验。

- tools/run_all_gates.sh(新):全部验证闸的唯一入口与唯一清单,串跑冒烟/单元/探针
  --click/--full/渲染/doc 三闸/静态扫描/熵增闸共十道,写回执 game/tests/.gates/receipt.json。
  与 baseline.json 比对判定:基线红且红项清单未变=存量红零新增(不判失败),
  基线绿转红或红项清单变化=新增红(判红)。python 解释器自动解析带 PIL 的解释器
  并前置 PATH(渲染闸三个脚本依赖 PIL,用错解释器会假红)。
- .zcode/hooks/worktree-guard.sh:Bash 分支加合回闸——merge/rebase/cherry-pick 进
  master 前按目标分支反查 worktree 回执,校验 commit 匹配/非 quick/无新增红三态,
  任一不满足 exit 2 拦截(九态实测:匹配放行、commit 错/quick/含红/无回执/rebase 全拦)。
- game/smoke/t17_defer_probe.gd:隔离面从 main.save_manager = iso_c 改
  ProbeUiUtil.isolate_save(iter27 已确立口径)。原写法对 getter-only 属性赋值无效
  ——组合根 save_manager/meta 是 autoload 读视图,隔离必须落在单例上。修复后 --full 转绿。
- doc_link 三处死链归零:数据配置.md 已退役探针指路、元进度.md/天赋树.md 已改名文档链接。
- CLAUDE.md / process-conventions.md §3第10条 / test-conventions.md §4 三处
  「交付前跑什么」统一为一句话=跑 run_all_gates.sh,删散落清单。

闸况:冒烟 0 / 单元 0 / --click 0 / --full 0 / 渲染 0 / doc_link 0 / doc_term 0 /
熵增 0;gdd_lint 与 static_scan 为存量红,已落 baseline.json 待判读清偿。
2026-10-15 21:16:38 +08:00
DKChan 67342c690e feat(迭代28 T4): 渲染面内容断言三件(探针自检+墨色判据+启动态菜单 golden)
①shot_probe.gd 两条自检进 _problems:boot 态顶层可见层=start_overlay(内容层树遍历——屏壳容器不当候选,camp 壳透明实证);菜单标题/副标题 label is_visible_in_tree 且 rect 落屏内;隔离档 refresh_resume 开=菜单截图不依赖真实档断点态。②shot_checker.py 增 F 字在判据:菜单文字框与中位灰度差>60 像素占比带 [2%,55%](极性无关——亮字暗底同判;实测标题 13.07%/副标题 11.47% 定 provisional 阈值;对比度只判反差不判字在的缺口由此补)。③启动态菜单 golden:帧差前置验 0.0000%/max_diff=0(光柱静态贴片零动画);golden_baseline_refresh.sh 扩 --menu 模式(shot_probe 取材→game/tests/golden/menu_boot.png,字体+按钮石纹素材守卫);render_gate.sh 补菜单 golden 对比段(素材缺位 SKIP 同 Q5 口径)。闸=render_gate 全绿(探针问题=0+checker A-D/F 全过+棋盘 golden 0.00%×3+菜单 golden 0.00%)。注:本机 render_gate 需 gamedev venv Python 前置 PATH(闸机脚本调 python(PIL),本机默认 python 无 PIL——用户侧环境自带)
2026-10-15 07:28:38 +08:00
DKChan a2d6e03df2 feat(规约): 文件头≤8行白名单制第二轮立规+头注机器闸S10(2026-10-15 用户令)
code-conventions §1.4.1 换代:## 文档注释载体+8行上限+五类白名单+黑名单+写法权威参照(Google Python Style Guide §3.8 + PEP 257,GDScript 官方指南无文件头条款不自造标准);§2.1 信号契约改入发送方 ## 文档注释每信号一行、计入上限;CLAUDE.md 硬性红线同步换代;新建 tools/audit_file_headers.py(R1行数/R2日期/R3变更叙事,正例反例边界例盲测通过:恰好8行过/机制词结算批不误伤/无头注过),static_scan.sh 挂 S10。纯规则与工具零行为变更;实测存量 125 处约 90 文件,清偿批在册待发令
2026-10-15 04:45:00 +08:00
DKChan b605022001 feat(迭代27 T5): 波五a 类型闸拉起+存量收口——审计器 0 存量+warning 配置在位
P1-6 类型闸(须 T1-T4 全落后——本波按执行顺序锁殿后):
- tools/audit_type_hints.py 新机器闸(V7): R1 无类型容器注解/R2 有值返回缺返回类型/
  R3 参数缺类型三规则+行级 # type-hint: ignore 显式白名单通道;产品码 core/data/presentation
- 存量收口: 368 处显式 Array/Dictionary 非参数化注解→机械参数化(Array[Variant]/
  Dictionary[Variant, Variant] 零行为面);13 处参数真类型(SaveManagerCore/ConfigDb/
  BattleOrchestrator/MinesweeperRules/LevelRunner/SettingsStore 等)
- 白名单豁免四处: board_generator generate/_attempt/legality/_finalize 的 db 参——
  测量面 _BoardRowStub 冒烟夹具鸭子型注入(typed 参拒 stub)
- project.godot 拉起 gdscript/warnings/untyped_declaration=1(V7 源码断言在 smoke _smoke_type_gate)
- static_scan 新 S9 类型闸规则;顺修历史 cd 错位(9-24 布局迁移后 /.. 落 game/ 致守卫
  恒跳过静默空转——修复后 S1-S4/S9 首次实跑全绿)+S1/S2 增 ADR-0007-exempt 标记豁免通道
  (main _seed_value 引擎熵源=文档化豁免面)

验收: 冒烟 1081/0(+V7×2)+run_all 27 套+static_scan 全绿+probe click+render golden+对拍三变体全同
2026-10-15 01:05:17 +08:00
DKChan fc7fee03bd chore(迭代27 T0): 逐位一致对拍锚冻结+探针迁移对照表
- tools/parity_anchor.py: 三变体(base/attune/shop)×40局 RUNSUM+JSONL 双面哈希对拍(V1 核心验收载体)
- anchor.json: 重构前锚(种子面 71000/72000/73000 错开,覆盖 base/同调账/商店-GP 账三类重构面)
- 探针迁移对照表: 11 挂载面逐一列成员依赖与迁移方向(卡片 T0.3)
2026-10-14 19:15:05 +08:00
DKChan af2d834e78 feat(迭代25): UI 全局主题批 T0-T2——全局主题资源挂载+两处局部做法退役+冒烟 V1-V6 断言
- T0: game/assets/theme/main_theme.tres 挂 project.godot gui/theme/custom——
  15 类型全覆盖(V/HScrollBar·ScrollContainer·H/VSlider·TooltipPanel/Label·
  LineEdit·SpinBox·H/VSeparator)+预盖 CheckBox/CheckButton/OptionButton/
  PopupMenu 弹层;default_font 显式指现役同字体(V6 中文字形防御);
  位图生成脚本 tools/gen_theme_icons.py(9 张纯色/几何小位图→assets/art/ui/gen/,
  按 .gitignore 政策本地生成不入库);色值溯源表 game/assets/theme/README.md
- T1: ui_kit.gd 删 tooltip_theme()/_tip_theme 与 styled_slider()、ui_assembler.gd
  删挂载行(旧实现同批删除);settings_overlay 几何内联、debug_overlay 双轨消隐
- T2: 冒烟 _smoke_global_theme() 38 断言(V1 类型覆盖+Button/focus 双红线+
  V2 冻结值 5.49:1+V3 预盖证词+V4 退役零残留+V6 字体防御)
- 引擎事实(4.7.2 源码+默认主题链双查):CheckButton 与 CheckBox 同套
  checked/unchecked 图标名;Slider 无 grabber_pressed 槽;ScrollBar 柄=StyleBox
2026-10-13 21:39:01 +08:00
DKChan c5a09fd90c refactor(改名批): 暂停层/暂停角标→状态面板/状态角标——用户令全量改名(文案4处+标识符全套PauseOverlay→StatusPanel/pause_overlay.gd→status_panel.gd/成员方法族+探针快照键+注释与探针消息86处清零;行为契约四件零动——只读R4/模态遮罩P2甲/输入锁R3/零动效P4甲)+render_gate截图键shot_pause→shot_status同步+文档六面(元进度v1.19/07/生涯/06条/architecture json+html;camp零命中;08-Alpha版本标准untracked禁碰留置)——冒烟938/0+run_all24套+probe --click/--full+render_gate全绿;rg 暂停|pause game/归零 2026-10-13 05:41:59 +08:00
DKChan 5a292859ba docs(fix): 定时检查呈报项④⑥修复(roadmap当前位置节换代+doc_term_audit充能词义豁免;纯文档零测试)
④roadmap.md「当前位置」节 2026-09-29→2026-10-11 刷新:旧节停在 M-2/M-3 时代(已达成/挂起清单全是已闭项)且把 stage.txt 当现行阶段引用——重写为当下事实(里程碑语义换代注指针 M3=Alpha完整实现现行/M4=Beta不排期;迭代19五卡已入库+迭代20头卡待发令+21/22冻结;近期主战场=文档治理连续批+下一前沿=专长/秘宝实装批写卡与迭代20卡A;实时状态归 active.md 快照节,stage.txt 定性旧开关仅存档)
⑥doc_term_audit.py 词级语境豁免机制:充能词条退役的只是挖掘期/战斗段充能(2026-09-19),秘宝主动件「每冒险充能」(同调件使用次数账,迭代11起在役)系现行机制共用该词——新增 TERM_CONTEXT_EXEMPT(充能行含秘宝/同调/主动件/每冒险等语境信号即不算命中);疑似现行 20→3(=iter19 基线三元组,定时检查不再每轮误报 17 处)
闸:lint 2 不通过(=06/07 基线存量)/死链 1(=数据配置221 存量)+06:505 worktree 环境假象/term 疑似 3(基线)/熵增 PASS
2026-10-11 16:57:42 +08:00
DKChan 081027c579 docs(fix): 文档一致性修复批(定时检查呈报项①②:死链7处+lint三文件清零;纯文档零测试)
①死链修复7处:秘宝.md 10-10目录归位批漏网5处改指 systems/跨局循环/秘宝.md(01-核心循环v1.6行/02-系统清单v1.3行/奇物.md v3.5行〔连反斜杠路径一并改正〕/地形变异.md负责表+依赖表两行)+camp.md树面板行两处补../systems/前缀(天赋树/HUD框架);数据配置.md:221存量挂账维持(iter19基线在册)
②gdd_lint三文件清零:01-核心循环 R10版本历史v1.5同号顺延(10-10分界尺行→v1.7)+R5「生命周期轴(五档)」节补五档嵌套字符画〔报错原文误记「死了之后」系工具prev/cur错位——tools/gdd_lint.py R5报错节名一行修正〕+「死了之后」节顺带补死亡重开环字符画;02-系统清单 R6术语表行多余版本列摘除+R3三行状态格改写现行白话句并换代(天赋树v0.4换代定稿29节点/武器锻造v0.2/奇物27件扩容后)+版本v1.21;03-内容规模 R1超长段拆两段+目录计数换代15→12件(普通7/优秀3/稀有2——回能器删/换装券撤/第四只手删三轮漏网面)+版本v1.3
闸:gdd_lint 9文件2不通过(=06/07基线存量,01/02/03转绿)/doc_link死链2(=06:505 worktree环境假象待主区复验+数据配置221存量)/熵增PASS;版本行01 v1.8/02 v1.21/03 v1.3
2026-10-11 16:14:08 +08:00
DKChan 442cd511a0 修复: design/结构批——diagrams 迁入 dev/architecture(案甲,熵增闸红灯清零)+旧档 GDD 引用全量摘除(31处/29文档+code/schema头注13文件+registry 5行)+doc双工具摘design/ux死路径(工作日志 412) 2026-10-09 03:29:09 +08:00
DKChan 514c32ddfb 修复: 总收口批——账面与交付物(doc_link_known 登记数据配置 v0.4 历史行死链=卡①删件连带/06 存量欠账登记〔gdd_lint 3+熵增 diagrams+奇物双死链+拔旗术语旗,T0 基点复测确认非本迭代新增〕/台账 405/快照前置/stage.txt 换代 Iteration 19 Closed/实机目检总清单+代拍板追认单交付) 2026-10-08 19:40:27 +08:00
DKChan 62d2f76ffa 修复: 卡①T6——熵增闸图像白名单收编 game/tests/golden/(本卡 T2 落库 golden 基线三张系机检测试资产非美术素材,T1 落库时漏改白名单致熵增闸红——同批修订 commit 留痕=CLAUDE.md 结构审计闸既有规则;修后复跑 golden 三张出违例清单)+tests/README 运行时口径数订正(分支基点实测 840 项 0 失败——此前误写 846 系 master 合并卡②④后口径,T0 基线复读与本批批末实跑均为 840/0)。批末闸实证:run_smoke 840 项 0 失败三闸过 EXIT=0/run_all 17 套全绿 EXIT=0/doc_link_audit 绿/doc_term_audit 绿 2026-10-08 19:21:23 +08:00
DKChan c0c066da0c 修复: 卡①T3——probe_gate --full 段落码四探针收编(ui_probe/ui_tune_probe/t17_defer_probe/fx_probe——游离闸外只能手敲→入重闸;timeout 120=实测 17.4/49.6/63.0/21.9s 的 2-7×余量;PASS 语义+退出码闸+残留批末闸随骨架)+头注释「shot_probe 禁入本闸……归真人目检」纪律句删除改写(2026-10-07 用户授权=历史偷懒标记;渲染面归 render_gate 正主)+轻闸默认段零删减零改动(--full 只增不改,契约红线②)。ui_layout_probe 零断言诊断件补最小布局断言转断言件(1280/1920 两档:基座 1280x800/顶层三区互斥不越界/board_view 含于 D 区/1920 档钉迭代 9 分辨率案甲契约——stretch=canvas_items 下逻辑视口与四区矩形恒定,分辨率维度不重复建闸;headless resize 实测生效;首跑 PASS 退出码 0;闸归属归卡③裁点②候裁本批不入闸)。probe_gate 两形态实测:默认段全绿+--click --full 全绿四探针全 PASS 残留 0 2026-10-08 19:20:59 +08:00
DKChan 8029af5e07 修复: 卡①锚清障(续)——S1 用户裁甲三件锚漂移半成品审验补完落籍(前手中断遗作逐件核验全数成立零补刀):①菜单副标题锚「改造批」→「扫雷的因」(现行文案「扫雷的因 · 逐行兑现的果」ui_assembler.gd:132 逐字子串,全工程唯一命中 contains 语义)②战斗明细带提示锚「结算明细」→「上轮摘要」(现行「上轮摘要(回看归「生涯」)」battle_log_view.gd:47 唯一命中——摘要行文案系「上轮: …」不含「摘要」零碰撞,_log RichTextLabel 不在 Label 匹配面)③菜单帮助文腿整个退役(载体玩法速览牌 2026-10-06 用户令退役——shot_probe meta 键+shot_checker 断言段+头注断言清单三处同撤不重锚,06 在册口径=同撤)。render_gate 清障后首跑 shot_checker 全 PASS 实证:菜单·副标题 WCAG=8.44/战斗·明细带提示 WCAG=11.94 均 C-OK,A/C/D 类与 hero 面板全过 2026-10-08 19:20:49 +08:00
DKChan 3d04432f7a 修复: 卡①T1——渲染闸 tools/render_gate.sh 落码+shot_probe 扩屏七屏(设置面/生涯页/暂停层真实信号路径入屏,商店房考证不可达注记留 B 批)+board_shot_probe 取证三件套(headless 护栏/空纹理 fail/board_meta.json 取样坐标落盘)+golden_board_crop/golden_baseline_refresh 两辅助件;隔离档即时 apply 修正(真实档 fullscreen 态污染抓帧尺寸 2304x1440≠1280 基准档——探针侧环境修正零运行时 diff);取证段失败语义=闸红(Q7) 2026-10-08 19:19:22 +08:00
DKChan 0aa85ddb87 docs: 八敌立绘逐键定档 + 方案二排版批(美术线自立批讨论稿定稿,纯文档 + 管线脚本常量)
源委=P0 收口讨论批(2026-10-06,用户令「讨论期只改文档」)——派生自 3549 次
可读性实测(24 糊/32 可读/48 清楚/64 细节完整)与用户三体型约束(钩爪恐魔>灰矮人、
灰矮人<熊地精、食人魔酋长>熊地精)+ 定档总图用户确认。

① 八敌站桩源档由「全敌共用 48」改逐键定档(tools/pixelize_candidates.py 新增
   STANDEE_TIER_H:地精36/巨蜘蛛38/灰矮人46/钩爪恐魔58/熊地精62/食人魔酋长74/
   蛛化卓尔90/灰矮人石君王94;主角 48 不变,显示一律 ×2 整数 NEAREST=72–188)。
   旧 f_enemy=48/max_h 系数退役(它把普通怪压到 21–24px、全员低于可读门槛);
   SIZES 明确降级为「中间分辨率表」(决定中间图多细,不决定最终体量),并纠注
   ogre_chief=192 系分辨率选择非 Boss 档归属。派生管线 = pixel-1 紧裁 → 等比缩
   至各自档高 → dom_block_resize 块内众数降采样(禁走 recon / 重跑 remove_bg)。
② 排版改方案二:B 区 252→270(≈1/3 屏)/ C·D 548→530,扫雷盘 438×438 原尺寸
   不缩、格子不变(压缩由面板空档吸收);站桩内部重排=立绘双脚落石台上缘、血条
   +状态/名字行落底排全场一线;大体档(drider/duergar_king)头部探出盒顶压进光
   柱区,血条仍落底、意图徽标压胸;「血条悬浮头顶 + 盒内居中」排式退役。
③ 体量语义修订(character-design §5.2):强度先验 → 生物体型,小块精英与大体普
   通怪并存;§5.1 新增主角描边例外(深褐 40,19,13,浅砖面对比更高);§5.5 登记
   钩爪恐魔「宽≥高」豁免(58 高窄条长臂束状剪影,待样张批复验)。
④ 定值单点纪律(art-bible §8 头注):数字定值只落 §4.1 主色板 + §8.2,其余章指
   路禁复述;§4.1 新增色板 48 色上限 + 新色须与既有任一色 RGB 三通道差 ≥8。
⑤ §8.3 归档纪律(图片不入 git / 过程稿归档+对象存储 / 主文档禁引 artwork 散路径)
   + 三检查器挂点(色板检查器 / 路径核对器 / standee_asset_check 硬闸升级规格)。
⑥ 方向:=ission:24 rectifikace 地形色值对齐 §4.1(岩石 #8B755B→#C9AF83、地面
   #564232→#B39A78,两处提示词同步);生图渠道改为「远程对话式正主 + 本地
   ComfyUI 备选」;地形瓦片改拼表制正主(三步法),分张降为回退路径。
⑦ 对账更正:asset-path-map 废路径 production/mockups → artwork/mockups;
   art-status-checklist 格子样张 ⬜→✅、受击反馈/弹道 ⬜→◐(共 ✅4/◐8/⬜3)。
⑧ 06 新登记四条:站桩帧动画(Alpha 定版闸前)/ 主角描边素材侧复核 / 3349 草稿
   dry-run 整理 / 口号型条款机检化(三档标注格式已拍板)。

纯文档 + 1 个 Python 常量表改动,未出图未动引擎代码;重产与实装归后续任务书批。
doc 三闸/冒烟未跑(讨论批:非 loop 批且用户未点名,两入口铁规)。
2026-10-07 01:51:09 +08:00
DKChan b38ae07707 iter16ui T2:N1对比度七处落码(血数HP_BAR_BACK垫牌14.3:1/意图四墨垫PANEL_DATA牌·atk零换墨·buf换HERO_BLUE_DEEP#1E5A96·charge换GOLD_INK#74500B/槽两态STONE_DEEP#554D41+INK_LABEL/RAP显式INK_LABEL零改值)+art-bible §7.4合并豁免条款(P11 caption 12px+血数条带内读数)+新增ui_contrast_probe入probe_gate默认段(11对测点+裸Color8白名单25处/10文件过渡表+preload红线静态扫描) 2026-10-06 03:04:59 +08:00
DKChan d77a245bcc 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 2026-10-05 18:00:32 +08:00
DKChan cf799b32a3 退役批:12份已完成中间文档删除(用户令2026-10-05)——git rm 五任务书(视野迷雾/GP商店房重构/魔法道具同调/双层BD/美术圣经v3.5)+全局作用域变异任务书+挖掘风险不等式方案+ux-review+perfect-l1+三提案(秘宝底稿/A3奖励格差异/playnote机制);指路句改写13文件全数git留痕(roadmap六处/06/行动经济/entities三处/art-bible三处/地形变异改指调研§7/秘宝两处改指57da58c/冒险结构/关卡节点地图/元进度/clear_dominance_audit)+reward_expectation旧基准注释核正(七型79→九型77按reward.tres实证)+死亡清单四行勾销+执行注记⑤;死链闸6=基线同款零新增;秘宝提案八拍板/A3否决/playnote题二均git号留痕(57da58c/a404a65/12e934b) 2026-10-05 08:07:28 +08:00
DKChan 12428e56d7 判式换代批T5出口(迭代14②):改后锚跑(MC n400同窗+verifier双窗重跑exit0——首跑campaign段互踩静默死亡在册)+判读三件(β带u=1/2带内u=3登记态/δ敏感度行为无感保留+登记/条件二等号压线转绿·整数量级u=3微欠-1.1%登记面)+audit条件二面板升级机制同式实算(w_flag_hit四舍五入跟随GDScript)+出口报告(provisional追认单8项含damage_probe A1改前既有红灯在册)+roadmap✅落地标注;锚换代=runsum_m4iter14mineq_post_n200_20261005现行 2026-10-05 06:51:17 +08:00
DKChan 26374accb3 判式换代批T0-T3(迭代14②):audit常量刷新(池77/直伤6-8-8/heal2/清图24-40/AP8/off_guard-1/伏击退役/九型字典/β带+逐型输出——改前静态锚判值与方案报告§四逐位吻合)+runsum五字段落码(flag_placed/hit/miss/gain/penalty——行侧判据考证=授予行专带highlight,状态复发行排除,实测87行==87插旗1:1)+F1条款3重立三层口径(聚合健康式只留下限0/旗边际引理/条件二旗溢价δ=0.25登记已知破)+β带[1.2,2.5]判读入文+η读数入文+战斗结算gp/ap当量注记+验收条款3对账+难度联动表+6行+P1改判读回执+registry clause3_inequality重立条(改前锚+P7两点修正)+06破线条收口+07⑫旗溢价目检项;闸=冒烟747/0+doc三闸对基线零新增(worktree死链+2系gitignored路径环境性) 2026-10-05 03:43:42 +08:00
DKChan 9b920a9039 测试优化批(2026-10-03 用户裁「测试要快要准」): ①gdd_lint 规则分域——R1/R2 豁免清单/登记/概念文体裁文件(06/07 豁 R1;01/04/05/06/07 豁 R2;R3/R4/R7 不豁免),终结算 8/8 常红零信号(perf 报告 §6.2 实证)②00-05 文档手术 12 处——R3 日期批注括注迁出正文入各文版本历史表(02/03 追加行;00/01/04/05 新建版本历史节=R4 补齐),事件出处逐行注记,语义零变更③06 分级条补模拟档触发口径行——MC/verifier 仅数值验证触发不进每次变更闸,MC 日常 normal 为主(约8分钟)perfect 仅上界读数(约56分钟)调参随跑用 --quick;余 06/07 文档 R3/R4/R7 约 62 处待 T17 在飞批落地窗口手术(两文件系其在飞编辑区,本批回避防撞) 2026-10-03 00:33:30 +08:00
DKChan c9075f70fa merge: T17反馈批收官——硬锁v3.1点击重放+血量/选路修复平反恢复+减动效按钮语义化+出度≤2全套(第七检+十模板重建+层宽4+文档)+probe适配 2026-10-02 08:11:23 +08:00
DKChan be772cfb2f T17反馈批收官: ①结算演播硬锁v3.1——锁期点击缓存+演播完边沿自动重放(玩家操作零丢失——实机卡死感根因=锁期点击被吞无反馈)②恢复被平反的两修复——血量口径(置满/回血封顶含pct)+选路呈现(干线偏移+非候选降透明)——probe卡死真因=probe未适配迭代10 BonusPickOverlay(假阳性扣压平反)③减动效按钮——文案不刷新bug修+语义命名「结算演出动画:完整/快速」+操作提示内联④出度≤2全套(用户拍板)——level_table第七检fanout_violation+L2L3十张模板重建(tools/t17_fanout2_rebuild.py五骨架出度≤2/层宽≤4/类型序列保持/自校验四检)+层宽上限5废止(数学不相容)改4+钉固断言5处随新图+文档两处(生成v0.6/地图v1.3)⑤probe适配BonusPick三态(替换/result继续/待选确认)+预算耗尽放弃收口+排播豁免;闸=冒烟628/0+run_all 15套+三探针+doc三闸零新增;连带义务=MC读数基线随图变漂移全旧锚作废只测不判,重锚归下一测量批 2026-10-02 08:11:06 +08:00
DKChan 21420ba309 probe挂死灾害批——shot_probe headless fail-fast 护栏(headless 下 frame_post_draw 永不触发必挂根治,实测 0.68s 秒退 exit1)+轻闸正主 tools/probe_gate.sh(input 段默认必跑/click 段 --click 显式加跑带 240s 超时网/shot_probe 禁入自动闸归真人目检;三闸=每段 timeout 守卫+按本 game 路径精确预清段后清孤儿〔不误杀他会话〕+批末残留清点必须 0);验证=护栏秒退/默认闸 4.99s 全绿/人造僵尸×2 被预清拦截闸后归零;master 版 click 探针现状 5 分钟不收敛(apply_node_bonus 拒绝刷屏)归 probe适配批,修好后 --click 段自动转绿 2026-10-02 07:56:50 +08:00
DKChan a6833b6ac3 docs: 中间产物死亡清单 A/B 桶执行批——git rm 83 件(A1跟踪12+A2全部8+B1跟踪19+B2全部9含playtests/conversion-calibration/t5预览两目录)+指路句改写13文件37处改结论内联或git提交号(art-bible/level-map/07/魔法道具/HUD框架/难度曲线/关卡节点地图/元进度/entities/06/roadmap+三render脚本);删前核三过一留(alpha-acceptance-battle-screen系Alpha验收销项底单留待裁);在飞域四件挂债未碰;死亡清单补执行记录节(部分执行不自删);闸=死链4环境差+术语1既有+熵增PASS全回基线;依2026-10-01吸收即死铁律与doc-conventions§11 2026-10-02 05:39:51 +08:00
DKChan 08a0d88bd4 iter9-T9+T10: 卡⑮ 分辨率案甲落码+卡⑰b C 档黄金图基准——stretch aspect expand→**keep**(1920 档=等比 1.35×+左右黑边 ~96px〔16:10 设计在 16:9 窗口,非字面 1.5×——呈报落码注记如实修正〕;逻辑布局 1920/1280 逐键一致实测 7 键)+HUD框架两档条款修订(1280 基准档定值口径+1920 全局等比)+§8.2 案甲注记+06 分辨率条目收口+资产升档条目案乙裁决落文+美术资产规格两项条目移除(裁决一甲/二追认)+tools/golden_compare.py(容差口径:灰度差>16 占比 ≤2%,四屏黄金图 artwork/qa-golden-20260930 建基准自比 0.00% PASS——升档批换代须显式重制) 2026-09-30 15:59:03 +08:00
DKChan 053baeeef6 iter9-T8: 卡⑤ 整屏样张闸首跑+三裁决呈报——shot_checker 扩全机检面(文字框 WCAG 极性无关极端簇法/明度三档带 info>world>bottom/文字禁压纹理=中带纹理幅度 ≤18 判据〔设计内低幅石纹 3 过、busy 25+ 拒〕)+shot_probe 增控件实测几何 meta(shot_meta.json=checker 坐标源,禁硬编码像素档位自适应;副本探针 Variant 推断第三犯 typed 修);实测 PASS(WCAG 5.79-13.14/三档 204>79>55/幅度 0-12.9/骨架四屏过);1920 对照产出(artwork/qa-screens-1920-20260930——实测无统一策略原生重排:字号不放大/舞台 1422 非全宽/板区重算);三裁决呈报单=design/qa/m3-iter9-t8-rulings-2026-09-30.md(1920 策略三案荐甲/帧数=已冻事实核对荐追认关账/资产升档三案荐乙 Alpha 后);焦点预算=目检项归段闸人闸;T9/T10 挂裁决 2026-09-30 06:59:06 +08:00
DKChan 65e9016f7f iter9-T7: 卡⑰a B 档视口截图基建试点(测试分级批同窗件)——shot_probe 窗口化四屏截图探针(菜单/营地/关卡/战斗,真实按钮信号路径驱动+存档/元进度/设置三面隔离档,双帧+frame_post_draw 同步抓视口纹理)+tools/shot_checker.py B 档断言骨架(尺寸 1280×800/灰度 std≥8/唯一色数≥64);实测四屏全过(std 18.6-64.9/色数 495-1745)落 artwork/qa-screens-20260930(不入 git);探针须窗口化运行(headless 无渲染面),T8 整屏样张闸四断言在此骨架上扩 2026-09-30 06:11:01 +08:00
DKChan 7a847c7796 iter9-T1: 批 A 机检冻结——样张 v3 断言定值落锁(A3b Δ≥30 定值/A4 尺寸基线硬等 46×48+32×32/F6 沿用)+产物转正 sample-batch-v3-final+机检报告【冻结】+圣经 v3.1(四冻结①④重冻:E 格高墙 30% 词表+格底分档 L0.10+亮墨三档直画+色牌后备);机检 17/17 全绿;doc 三闸零新增 2026-09-30 04:32:57 +08:00
DKChan 4f6ac17531 feat(sample-v35-new): 用户三条指令逐条落地(基线=v3.4 文件,旧v3.5/v3.6视同不存在)——①(b)(c)墙顶同色:E墙面顶面材质原亮度直贴 ②(b)-(c)连接处无边框:格线跳过E/墙交界段 ③E墙面高度30%;机检17/17 2026-09-29 22:30:08 +08:00
DKChan be8dd13fa3 feat(sample-v35): 墙顶全板同色终裁落地——南向墙格暗条与D投影立面暗带废止,顶面材质原亮度直填零阴影;F6改墙顶同色断言(实测最大色差1.7);55%锁定 2026-09-29 20:26:27 +08:00
DKChan d92770cdf0 fix(sample-v34): E格墙面去底缘白线——墙面直接连接墙顶(用户裁:白边导致两截);三档对比图材质统一版重出 2026-09-29 19:53:08 +08:00
DKChan 08816a3ead feat(sample-v33): 墙面材质统一——墙的一切面(墙顶/E格墙面/南向厚度面)=同一岩块材质,面间只靠明度(100/85/80)+棱线分界,禁平涂新颜色;机检 17/17 2026-09-29 19:46:59 +08:00
DKChan e67c801e75 feat(sample-v32): 南向墙格立面暗条提亮(墙顶面全板同色观感修复)+E格立面高度参数化(FACADE_FRAC 0.55/0.80/1.00 三档对比图);机检 17/17 2026-09-29 19:16:52 +08:00
DKChan 85f1caed50 feat(sample-v31): E 格高墙立面(用户方案:地面格南邻墙→南部 55% 承接墙面展示,基色采样墙顶瓦片同源;连续墙体内侧不出立面);机检 17/17 全绿 2026-09-29 19:03:14 +08:00
DKChan 092aa277e0 docs(sample-v3): 样张 v3 方向稿批——格底分档 L0.08-0.14 带数值修正+亮墨直画+色牌后备+物件级装饰+B区舞台;机检 17/17 全绿;代拍板三项已追认落盘 2026-09-29 18:31:52 +08:00
DKChan 910d74cc89 merge: U2返工批落地——C1两刀终态+AC v1硬梯度重投+节点图池两规则重生成(模板0随重排)+完美L1杠杆提案+终态双窗读数(普通L2 10.6/13.6%完美L2 22/32.3%越带待批点丙);冒烟576/0五探针PASS doc三闸零新增 熵增闸PASS(design/qa图像白名单收编) 2026-09-29 05:22:27 +08:00