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
|
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
|
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 |
|