docs(提案 v2.1): 批 A 步骤重排为规则先行——登记→改规则→写测试代码→改闸机→改描述性文档→技能副本→验证(用户裁定);批 B 改列述形式,内容不变
This commit is contained in:
1 parent
fe9d2c11b0
commit
b4da36a835
1 file changed
+13
-27
@@ -78,38 +78,24 @@
|
||||
|
||||
## 七、执行方案(一个设计,两批落地,批 B 依赖批 A)
|
||||
|
||||
### 批 A:命名+频率+新冒烟测试(非迭代批;估 0.5–1 天)
|
||||
### 批 A:命名+频率+新冒烟测试(非迭代批;估 0.5–1 天;顺序=先立规则,再照规则施工,最后验证收口)
|
||||
|
||||
1. **登记**:待办清单立条目(第一动作)。
|
||||
2. **工具**:重写 `tools/run_smoke.py`(跑新冒烟);新建 `tools/run_system_test.py`(过渡期指向 smoke_all.gd);新建 `game/tests/smoke_boot.tscn/.gd`。
|
||||
3. **闸键映射**(闸机执行顺序=冒烟最先,秒级失败快停):
|
||||
|
||||
| 旧键 | 新键 | 说明 |
|
||||
|---|---|---|
|
||||
| 01 冒烟全量 | 01 系统测试 | 同一道闸换内容指向 |
|
||||
| (新增) | 00 冒烟测试 | 秒级,排最前 |
|
||||
| 02 单元套件 | 02 单元测试 | 仅改名 |
|
||||
|
||||
其余 12 键不动。`baseline.json` 同步改键;**重生成前先单跑 09 静态扫描核实现绿**(基线记 exit=1 已滞后,2026-10-22 16:20 回执为 exit=0);届时若红→停、查、禁带红重生成。
|
||||
4. **文档与规则**:
|
||||
- `process-conventions.md`:删三查条;§3 重编号+全仓「§3.N」式指针核对(AGENTS.md:19 在案);§3.4 环境准备保留;§9 加验证集清单维护锚。
|
||||
- `AGENTS.md`:单件直跑行、验收行、运行与验证小节路径更新。
|
||||
- `roadmap.md` loop 规范第 2/3/4 条重写(T0 零测试、轮内无闸、批末+合回全量)。
|
||||
- `game/tests/README.md`:术语表改标准四级;删「别被字面骗了」警告节(名字对了警告就死);订正滞后读数(「35 套」「29 个 .gd」);计数原则=挥发读数能删则删(以闸回执为准),必留的标口径+取数日。
|
||||
- `architecture.md`:测试架构节+:11 文档头实证行。
|
||||
- 轻闸/重闸词面清扫:`体验验证清单.md`、`待办清单.md`、`tools/probe_gate.sh` 注释、`tools/run_all_gates.sh` 注释(:2、:119)、`design/gdd/术语表.md` 退役词登记。
|
||||
- 实现期核对:`tests/run_all.gd` 对 integration/ 的扫描归属→闸 02 定名(单元测试,或单元与集成测试)。
|
||||
5. **技能副本**(实测更正):库外现行=`C:/Users/DK/.workbuddy/skills/iter/SKILL.md`;库内 `.zcode` 与 `.qoder` 两份改写并保持逐字一致(实测现一致);`.qoder-cn` 无技能副本。改技能重启会话生效。
|
||||
6. **验证**:全量域 `tools/run_all_gates.sh`(不带参数)跑绿;新冒烟变异验证(改坏启动→红→还原→复绿);闸机改动按 §6 变异验证。
|
||||
2. **改规则**(先立约):`process-conventions.md`——删三查条、§3 重编号+全仓「§3.N」式指针核对(AGENTS.md:19 在案)、§3.4 环境准备保留、§9 加验证集清单维护锚;`roadmap.md` loop 规范第 2/3/4 条重写(T0 零测试、轮内无闸、批末+合回全量);`design/gdd/术语表.md` 废弃词登记退役词对照;`AGENTS.md` 规则行(单件直跑行、验收行、运行与验证小节路径更新)。
|
||||
3. **写测试代码**(照约施工):新建 `game/tests/smoke_boot.tscn/.gd`(极小启动场景);重写 `tools/run_smoke.py`(跑新冒烟);新建 `tools/run_system_test.py`(过渡期指向 smoke_all.gd)+`game/tests/system_test.gd`(SceneTree+构造注入)。
|
||||
4. **改闸机**:`run_all_gates.sh` 闸键映射——01 冒烟全量→01 系统测试、新增 00 冒烟测试(排最前)、02 单元套件→02 单元测试,其余 12 键不动;`baseline.json` 同步改键,**重生成前先单跑 09 静态扫描核实现绿**(基线记 exit=1 已滞后,2026-10-22 16:20 回执为 exit=0);届时若红→停、查、禁带红重生成。实现期核对:`tests/run_all.gd` 对 integration/ 的扫描归属→闸 02 定名(单元测试,或单元与集成测试)。
|
||||
5. **改描述性文档**:`game/tests/README.md` 术语表改标准四级、删「别被字面骗了」警告节(名字对了警告就死)、订正滞后读数(挥发读数能删则删,必留标口径+取数日);`architecture.md` 测试架构节+:11 文档头实证行;「轻闸/重闸」词面清扫(`体验验证清单.md`、`待办清单.md`、`tools/probe_gate.sh` 注释、`tools/run_all_gates.sh` 注释 :2/:119)。
|
||||
6. **技能三副本**:库外现行 `C:/Users/DK/.workbuddy/skills/iter/SKILL.md`+库内 `.zcode`、`.qoder` 改写并保持逐字一致(实测 `.qoder-cn` 无副本);改技能重启会话生效。
|
||||
7. **验证**:全量域 `tools/run_all_gates.sh`(不带参数)跑绿;新冒烟变异验证(改坏启动→红→还原→复绿);闸机改动按 §6 变异验证。
|
||||
|
||||
### 批 B:断言迁移(用户特批免卡直改 game/;估 1.5–2 周)
|
||||
|
||||
- **Step 0**:`extract_checks.py` 生成验证集清单并冻结(基点 commit 在案);`smoke_all.gd` 冻结,批 B 期间不接受任何新增断言。
|
||||
- **迁移**:套=最小提交单元——迁一套、新宿主实跑该套、提交,红当套暴露;原子提交(新宿主落函数+源文件同 commit 删函数,无双重窗口)。迁移 2–4 天。
|
||||
- **按条变异**:约 1067 个静态断言点,每轮=改坏该断言守的生产代码→跑该断言→验红→`git checkout` 还原→`git status` 清洁确认→账本留痕(变异点文件:行、红输出摘要、还原确认);约 4–6 工作日;每约 200 轮抽点自查防疲劳失误。
|
||||
- **出口对账**:再提取与清单逐条 diff(标签/条件式/计数三对齐);全仓 grep `game/smoke`、`res://smoke`、`smoke_all` 清零(reports/ 历史件除外)。在案必改点:`run_all_gates.sh:206` PARITY_TOUCH_FACES(11 号闸触面判定逻辑,非注释)、`AGENTS.md` 在册入口、`tools/parity_anchor.py`、`tools/balance_verifier.py`、`sim-data/analyze.py`、`architecture.md`、`design/gdd/术语表.md` 豁免行、08d 闸在册行号指针重核。
|
||||
- **目录收尾**:删 `smoke_all.gd`;探针场景与宿主 `game/smoke/`→`game/probe/`;测量诊断件→`game/sim/`;熵增闸白名单+Project Layout 同批修订(硬性红线现成要求)。1–2 天。
|
||||
- **验收判据**:金字塔摆正(单元静态检查数>系统测试静态检查数);全量域闸绿;四重保证记录齐全。
|
||||
1. 生成并冻结验证集清单:`tools/extract_checks.py` 机器提取(基点 commit 在案);`smoke_all.gd` 冻结,批 B 期间不接受任何新增断言。
|
||||
2. 逐套循环约 40 次:搬一套(只剪切禁改写)→ 新宿主实跑该套 → 套内按条变异(全库约 1067 静态点;每轮=改坏该断言守的生产代码→跑该断言→验红→`git checkout` 还原→`git status` 清洁确认→账本留痕;每约 200 轮抽点自查防疲劳失误)→ 原子提交(新宿主落函数+源文件同 commit 删函数)。迁移本体 2–4 天+变异 4–6 工作日。
|
||||
3. 出口对账:再提取与清单逐条 diff(标签/条件式/计数三对齐)。
|
||||
4. 引用清零:全仓 grep `game/smoke`、`res://smoke`、`smoke_all`(reports/ 历史件除外);在案必改点——`run_all_gates.sh:206` PARITY_TOUCH_FACES(11 号闸触面判定逻辑,非注释)、`AGENTS.md` 在册入口、`tools/parity_anchor.py`、`tools/balance_verifier.py`、`sim-data/analyze.py`、`architecture.md`、`design/gdd/术语表.md` 豁免行、08d 闸在册行号指针重核。
|
||||
5. 目录收尾(1–2 天):删 `smoke_all.gd`;探针场景与宿主 `game/smoke/`→`game/probe/`;测量诊断件→`game/sim/`;熵增闸白名单+Project Layout 同批修订(硬性红线现成要求)。
|
||||
6. 终验:全量域闸绿+金字塔摆正(单元静态检查数>系统测试静态检查数);四重保证记录齐全。
|
||||
|
||||
## 八、时间汇总
|
||||
|
||||
|
||||
Reference in new issue
Block a user