43 lines
5.1 KiB
Markdown
43 lines
5.1 KiB
Markdown
# sim-data — MC 缓存层
|
||
|
||
> 2026-10-03 立规:本目录整目录不入 git(根 .gitignore 强制)。语义=蒙特卡洛模拟试玩的磁盘缓存——最新一份 MC 锚+读数常驻留盘供分析直读,**无数值调整禁重跑**(触发细则见 AGENTS.md「测试执行两入口铁规」MC 触发细则节)。
|
||
|
||
## 现行锚(分析取数唯一入口)
|
||
|
||
- 锚:`runsum_iter56reanchor_81000_n50both_20261108.jsonl`(N=50/档=普通+perfect;种子 81000 起逐局独立;route=min;taken=hero_dmg+mine_dmg,口径对齐真人分析端)
|
||
- 规模口径:**50/档(2026-11-08 用户批准)**——95% CI 约 ±14pp(p≈0.5 处),结构级位移(≥25pp)可判;更细精度需下一次合法触发(如数值标定窗口)时由用户加采
|
||
- 换代缘由:封印受理即揭示改版(迭代 56——挖封印格被拒/清图口径=挖开∪封印/sim 策略对齐)改变玩法行为,改前锚失效
|
||
- 改前改后对照读数(迭代 56 R11——改前代码 2026-11-08 现跑 50 局 vs 新锚 50 局,同 seed0):normal 通关 0%→0%、踩雷均值 6.48→5.40、标中 21.34→19.60、标空 6.74→7.86、封印数 52.2→49.9;perfect 通关 0%→4%(封印计入清图的利好方向)、标中 45.96→48.28、封印数 91.1→96.1——无结构性恶化;错触直挖注入单局实测触发(st.mine_slips=5;RUNSUM 无此字段,解析口径注记)
|
||
|
||
## 历史锚(只读不判)
|
||
|
||
- `runsum_m3iter9exit_81000_n400_20261003.jsonl`(迭代 56 前任现行锚,N=400/档)——**其 perfect 通关 59% 系 2026-10-03 旧代码读数**:0 格连锁算子补齐等两月演进已使模拟行为漂移,改前代码 2026-11-08 现跑 50 局 perfect 通关 0%——带值引用须注明「旧行为基线」口径
|
||
- 其余 23 份 `runsum_*.jsonl`,文件名=批+锚名+日期可辨。出度≤2 重建后旧锚结构已失义,仅留换代对照;处置挂中间产物死亡清单随批处理。
|
||
|
||
|
||
其余 23 份 `runsum_*.jsonl`,文件名=批+锚名+日期可辨。出度≤2 重建后旧锚结构已失义,仅留换代对照;处置挂中间产物死亡清单随批处理。
|
||
|
||
## MC 采集档位表(2026-10-03 用户四档立规——按用途定局数上限,禁惯例继承禁计划书自拟)
|
||
|
||
依据:单比例样本量 n=z²p(1−p)/E² / 两比例功效公式 / 零事件规则三(沿革查 git 提交史);单局费率 normal 1.21s / perfect 8.47s(on 态同量级按 1.5× 预留)。
|
||
|
||
| 档 | 用途(唯一触发面) | 局数上限 | 单次耗时 | 判读力(能下什么结论) |
|
||
|---|---|---|---|---|
|
||
| 一档·调研 | 调研/数值分析 | 总量 >40(100 为常用锚量级);N 按分析方案两选一:50=95% CI ±13.9pp / 100=95% CI ±9.8pp | 8–16 分钟 | 带值判定/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 直读会炸)。
|
||
|
||
四档仅承接 MC 触发细则的数值验证场景,两入口铁规不变。
|
||
|
||
## 工具与格式
|
||
|
||
- 采集:`game/sim/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/` 报告里
|