Files
gplan-2/sim-data
DKChan 27812167ef refactor(状态规矩): 废除根目录会话状态文件 active.md 与全套执法件(2026-10-18 用户裁)
判据(对 869 个 ZCode 会话与 16 个 Qoder 会话的读写统计):active.md 被整文件读 448 次、
单次中位数 14 KB、累计 6.09 MB 进上下文,311/320 个碰它的会话把它当第一个工具调用读;
但 7311 个提及它的思考片段的语境分布是——写入与编号簿记 327 个会话、并行冲突与避让 234 个、
退役与失真核对 162 个,而明确写「从它所载内容得知某事实」的只有 20 个会话。
逐条核 41 个条目:独特且现行 2 条(另 3 个子句)、别处已有权威源 14 条、陈旧或自相矛盾 7 条、
已完结批次的历史叙述 18 条;按字节约 95% 属后三类。失实样本:architecture 版本记 v1.6 实为 v1.8、
规则文件数记 7 份实为 6 份、迭代 27/28 记「位预留追加卡」而 roadmap 记已完成、三个已删 worktree
仍记「在盘待删」、同一条既宣称「文档禁列闸清单」又自行列出 01–11 全套闸。
执法件已建一轮仍拦不住:08b 体量闸只测条目数/行数/编号/死链,测不出语义失真;钩子不随仓库传播,
只有 ZCode 在跑;10-15 清到 8.6 KB、10-17 回到 40 KB,用户为「只写不删」连续三次发火。

改动面:
- 删 active.md 与 tools/audit_active_state.py;run_all_gates.sh 摘除 08b 闸件与头注、
  baseline.json 删 08b 记录(现存 12 闸)、repo_structure_audit.py 根文件白名单去 active.md
- doc-conventions §10 改写为「仓库根不设状态文件」并留裁决与判据(保持 §11/§12 编号不漂);
  §11 表两行去状态文件口径;§4 适用范围去 active.md
- process-conventions §1 第 2/3 条(合回前查尾号防撞号、豁免面)、§3 第 12 条(批次完成后的
  登记义务)、§6 分级周期口径(闸件清单不再在文档重列)四处换代
- code-conventions「实现批收尾双登记」改为单登记;CLAUDE.md 目录节、规范导航行、worktree 豁免
  行三处换代,红线新增「仓库根禁止设会话状态文件」一条
- roadmap.md 顶部新增「当前位」三行(阶段/迭代位/下一步)接替原快照职责,头注、执行纪律第 3 条、
  loop 规范第 8 条、维护纪律四处改指 06 与本文;reports/README.md 与 sim-data/README.md 两处
  现行指路改口;architecture.md 文档域闸表行去 active.md 体量闸与触发路径
- 06-待办清单迁入七条真残值(原仅载于该文件):卡片入库纪律悬空待办、req-card 两副本取齐、
  魔法道具与罕见残留(实数 23/17 处,旧记约 30/18)、通关口径统一(gdd 内 188 处,旧记 273)、
  黑话第二波待发令、数据整改批九条存疑待抽查(该批未提交面所载)、发布前删除 main.gd:196 调试
  入口写死行(工程直入·待写卡)

harness 侧另批处理(.zcode/ 与用户级技能不入 git):session-snapshot.sh 与 config.json 注册、
worktree-guard.sh 的 active.md 豁免白名单、active-closing 技能、doc-consistency-check 第 8/9 项、
iter 与 req-card 技能里的「唯一例外=active.md」与查尾号条款。
2026-10-18 07:28:48 +08:00
..

sim-data — MC 缓存层

2026-10-03 立规:本目录整目录不入 git(根 .gitignore 强制)。语义=蒙特卡洛模拟试玩的磁盘缓存——最新一份 MC 锚+读数常驻留盘供分析直读,无数值调整禁重跑(触发细则见 CLAUDE.md「测试执行两入口铁规」MC 触发细则节)。

现行锚(分析取数唯一入口)

  • 锚:runsum_m3iter9exit_81000_n400_20261003.jsonl(N=400/档=普通 v3.4+perfect;种子 81000 起逐局独立;route=min;taken=hero_dmg+mine_dmg,口径对齐真人分析端)
  • 读数:读数_m3iter9exit81000_20261003.md(k=0.60、完美战役全通 59.0%、结构位移存档)
  • 换代义务:M-4 数值批投值时本锚随批作废,批内自取改前/改后锚(77000/78000 先例)

历史锚(只读不判)

其余 23 份 runsum_*.jsonl,文件名=批+锚名+日期可辨(迭代 8/9/10、numfix 各代 + M-4 迭代 11a/11b/12/14 各批)。出度≤2 重建后旧锚结构已失义,仅留换代对照;处置挂中间产物死亡清单随批处理。

MC 采集档位表(2026-10-03 用户四档立规——按用途定局数上限,禁惯例继承禁计划书自拟)

依据:单比例样本量 n=z²p(1−p)/E² / 两比例功效公式 / 零事件规则三(外部统计基准出处见 design/research/MC成本调研与规制方案-2026-10-03.md §3/§附);单局费率 normal 1.21s / perfect 8.47s(2026-10-02 性能报告实测;on 态同量级按 1.5× 预留)。

档 用途(唯一触发面) 局数上限 单次耗时 判读力(能下什么结论)
一档·调研 调研/数值分析 总量 >40(100+ 为常用锚量级);N 按分析方案:60/档=结构回归(80% 功效 ≥25pp)/ 100=95% CI ±9.8pp / 170=±7.5pp(15pp 带半宽)/ 400 满档=±4.9pp 贴边裁决(normal 独立满档 ~8 分钟同属一档) 16–65 分钟 带值判定/CI 结论仅本档可下;≥60 局须 N=5 pilot 前置
二档·验证 数值修改后回归验证 总量 ≤40(每档 ≤20) ~3.2 分钟 结构性大位移可判(≥~40pp;改前/改后同种子配对下 ~30pp)——带值判读不在本档
三档·小调 小调整后快检 总量 ≤20(每档 ≤10) ~1.6 分钟 只测不判——仅灾难级破坏(通关率腰斩级)可判
四档·微量 微调后确认没大问题 总量 ≤5 <1 分钟 零统计判读——通过判据=不崩+RUNSUM 字段完整+方向不反直觉

一档触发权(2026-10-03 补充裁定):一档只能由用户发起——任务书/计划书/agent 均无权发起,非用户发起的采集一律不构成一档授权;时长随用户发起时确认。

配套纪律:①档位上限=硬闸,超档停机呈报;窗口不足如实挂起(禁在二/三/四档下带值结论);②改前/改后锚同 seed0 配对、改前锚留盘即用禁补跑;③对拍断言=0 新跑(同种子复放,出口闸复验用锚内子集 ≤20);④读数缺陷≠轨迹失效——零 gameplay/RNG 触碰的修复走事件流重构补算,禁整套重跑;⑤同批同码态锚只取一次,「调整一下就重跑」禁止;⑥会话累计:二/三/四档合计 ≤20 分钟(一档时长随用户发起确认);⑦零数值改动=零 MC(现行铁规重申);⑧锚文件自本规起新锚统一=去前缀纯 JSONL、按种子升序(81000 旧形态带 RUNSUM 前缀+进度行,analyze.py 直读会炸),批耗时随锚记 active.md 台账。

四档仅承接 MC 触发细则的数值验证场景,两入口铁规不变。

工具与格式

  • 采集:game/smoke/adventure_monte_carlo.gd(git)——参数 n/seed0/policy,seed 逐局独立
  • 锚格式:stdout 捕获,每局一行 RUNSUM JSON(81000 锚=800 行=400×2 档);自 2026-10-03 档位规起新锚统一=去前缀纯 JSONL 按种子升序(旧形态 analyze.py 直读会炸,见上「MC 采集档位表」配套纪律⑧)
  • 分析:analyze.py+growth_model.py(git)。⚠ analyze.py 默认输入名系首批遗留(runsum_600.jsonl 已不存在),跑现行锚须 RUNSUM=<锚文件> 指定,其完成度%段对现行锚未验证
  • fulllog 全量日志不留盘(.gitignore 排除);iteration_log.md 系 Package B 时代批日志留盘不入库;新模拟批的读数与结论写在该批的 git 提交信息与 reports/ 报告里(2026-10-18 用户裁:根目录会话状态文件已废除)