games-development-ai/docs/plans/2026-07-09-001-feat-生成线验收换轴三波-plan.md
lili 5d0f351050 docs(cheap-gen): W-AXIS 波0 文档批——诊断档+SoT×4 修订+两份 plan+策展层勘误
2026-07-09 创始人方向性质疑经五路审计坐实,正式推翻两个历史结论(80% 天花板=口径混淆
+stripCode 污染;玩法坏死主因=判卷合约缺口误标),病根三条=判定语义膨胀/判卷合约反噬/
真相层缺失。本批为纯文档批:

- 诊断档 docs/brainstorms/2026-07-09-生成线harness方向性诊断与换轴方向.md(人审版)
- SoT 修订×4(双评审修入、docs-gate 绿):质量模型裁定三(L1 双证据=机械预筛∧独立模型
  玩法判定,fail-closed+金标校准)/图说护城河改「分层验收」/验收门 §2.4/AGENTS.md §3.1
- 执行版 plan×2:07-09 三波换轴 + 07-10 验收v2(测试agent替E/G/H,创始人已批,
  含附录A SoT 修订逐字终文与波0-3 工单拆分)
- 策展层定点勘误:tech-decisions/三份生成线 skill 追加 2026-07-09 勘误注记(过九门
  自此只算机械预筛),feature-design-doc 固化「人审版=brainstorm/SoT、执行版=plan」定位
- 在飞板登记 W-AXIS

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-10 04:27:17 -07:00

9.5 KiB
Raw Blame History

date, topic, status, 上级, sot-impact, 关联
date topic status 上级 sot-impact 关联
2026-07-09 cheap-gen-acceptance-axis-shift-plan 草稿(待双评审;方向与验收权威已由创始人 2026-07-09 拍板) docs/plans/2026-06-25-生成引擎统一执行计划-AgentScope三档-plan.md 已回写——质量模型 SoT 裁定三、运行时图说护城河段、验收门 §2.4 再修订、AGENTS.md §3.1(同工作树,与本 plan 同批提交);本 plan 只执行、不再改 SoT cheap-worker/ + game-runtime/tools/amodel-gen/tools.mjs + game-runtime/games/_wg1-gen/_shared/play.cdp.cjs + tier2/gen-worker/worker/gate_judge.py + contracts/prompts/04-config/cheap-system.md @ d3baf86e

生成线验收换轴三波 · 执行计划(W-AXIS)

人审版(方向诊断)= docs/brainstorms/2026-07-09-生成线harness方向性诊断与换轴方向.md;判定归属的权威文本 = 质量模型 SoT 裁定三。本 plan 是执行版:波 0(并行勘误)+ 三波主体 + 收尾重测,波内可派单、波间有依赖。创始人已拍:三波连打、模型判定升为阻断;每波收口按 §6.13 真浏览器验收,报可提交状态等指令。执行位 = opus(工单六要素即下表各波),主会话验真终审。

波 0 · 污染引用面定点勘误(小,半天;与波 1 并行)

  • 目标:被 2026-07-09 审计推翻的两个结论(「~80%=MiniMax 天花板」「主导根因=玩法坏死」)及「九门 pass=验收通过」旧语义,在策展层的引用点全部勘误;留痕层(docs/plans、docs/brainstorms、agent-specs 历史档)一律不改——它们是带日期的快照,git 即历史。
  • 边界:只改策展层 = .agents/**docs/architecture/**docs/mvp/**AGENTS.md(已改)、auto-memory(已勘误两档);不重写历史,不删数据文件(results/*.json、_wg1-gen 产物全保留)。
  • 输入:grep 关键词族(「80%」「天花板」「玩法坏死」「九门.*(通过|达标|放行)」「verdictPass」),诊断档 §2.5 的证据。
  • 产出:勘误点清单(文件:行 → 改法)+ 逐点修正(有日期的勘误注记,不抹原文);.agents/skills/cheap-model-game-generation.md §11 等生成线 skill 的结论段对齐新口径。
  • 验收:清单里每点给 diff;再跑同一 grep,策展层无残留旧口径(历史档命中属预期,标注即可)。
  • 回滚:纯文档,git revert 即回。

波 1 · 真相层(先行,其余波的验证前提)

  • 目标:从此每个生成 run 的完整链路可读、可归档、可归因——「模型每轮写了什么、harness 每轮回了什么」不再是物理缺失的数据。
  • 边界:只动 cheap-worker 落盘/归档层与 evidence 卫生;不改门判定、不改 prompt、不动 tier2。
  • 输入:现 trace sink(事件骨架)、Service 事件流、_write_session_cfg/collector 收口点;诊断档 §2.3 的 F0-a/b/c 三缺口。
  • 产出:①逐 turn 全文落盘(模型文本、工具调用全参、工具返回文本、门反馈/续修注入文本),落 amgen-<gid>/turns.jsonl,带单文件上限与轮转,密钥类字段脱敏;②per-run 归档——重跑同 gid 前把上一 run 的 amgen 目录与 evidence 整体移入带时间戳的归档位,批次账每 run 记归档指针;③evidence 清理清单化——scaffold 时按固定清单清残留(verdict-feedback/world-snapshot/play-report 等全列,不再只清两个文件);④失败归因三层字段(driver 合约失败/机械失败/玩法判定失败)进 verdict 消费层与批次账,回喂反馈按真实层次措辞。
  • 验收:拿两个历史案回放——xt-puzzle-huarong「合约缺口被误标空壳」案与 heritage「黑屏」案:新链路下从批次账出发 ≤3 步到达逐 turn 全文与正确归因层;跑一局真生成,turns.jsonl 里能原文看到门反馈与模型响应。
  • 回滚:落盘/归档是纯增量旁路,关开关即回;归因字段只加不减。

波 2 · 判定语义重置(依赖波 1;SoT 裁定三的代码兑现)

  • 目标:验收 = 机械预筛 ∧ 独立模型玩法判定;误导模型的残笼拆除。
  • 边界:cheap 路 verdict 消费层、cheap_verify 升级、cheap-system prompt 清洗、amodel-gen 静态门实现替换;九门 harness 判据本体不动(动消费语义,与 2026-06-22 收窄同一条边界纪律);tier2 双路门不动。
  • 输入:质量模型 SoT 裁定三(四条细则:预筛降位/判定契约/fail-closed/校准纪律);波 1 的证据链;现 cheap_verify LLM judge 接线位。
  • 产出:①判定器——输入 brief + 真玩证据链(first-paint/after-play/局中连拍截图、game-log、取证状态时间线),输出布尔裁决 + 逐条理由(schema 固定),阻断放行,理由原文进续修反馈;判定模型走 new-api 可配置(默认便宜多模态档,单局判定成本目标 ≤¥0.3,草案值随首批校准),评不出 fail-closed 标 degraded;degraded 的落点(内测期口径,防孤儿设计):不建独立队列 UI——落批次账 + result_out 标 degraded、按生成失败回调(用户可重试),人工复核从批次账捞、放行走现有审核台通道,独立复核队列显式 defer 至量起来再立;阻断带 genconfig 开关(整体回退位);②ok 语义切换——ok = 预筛 ∧ 判定:verdict 物理保留 pass 字段(语义收窄为「预筛通过」,不改名不删),新增 accepted(= 预筛 ∧ 判定)与 judge 段(裁决/理由/degraded),字段只加不减;跨模块影响面同批核清——game-cloud 回调消费(GateVerdict/status 分类)与 OTLP 观测(gen_task_total{status}、gen_gate_fail_total{gate})需新增「玩法判定失败」类目与 degraded 态,防观测线静默漏计,核对结论列入本波验收;③拆残笼——清休眠 reskin 机器(build_reskin_system_prompt 与 create 路白名单管路,保 modify 路语义收窄)、红线八条的判定从 stripCode 正则换 AST/词法级事实(esbuild/acorn 通道已有)、prompt 清洗(「两层奖励」改纯游戏设计语并删「围盲驱动器」「绕正则」措辞;删已失效的恐吓式熔断警告)、edit_file 锚点容错(空白归一/近似定位提示);④判定校准包——每品类金标正反例(含审计在册的五份空心 pass 作反例种子),漂移复采样纪律同 rubric 规范三。
  • 验收:现存五份 score-only pass 全部进金标标注(创始人/主会话亲玩定标)——判定器对标注为反例的必须判不过、对标注为正例的必须判过,不预设五份全是反例;任何样本不得仅凭预筛通过自动验收,判定评不出的 fail-closed 入人工复核;跑 n=3 冒烟,判定理由与创始人抽玩结论一致 ≥2/3;一局含字符串 // 的游戏红线判定不再假阴;edit 锚点 5 连拒案例在容错下 ≤2 次收敛;全程真浏览器截图硬证。
  • 回滚:判定阻断开关回退到修订前口径;prompt 走 registry 版本回退;AST 红线与正则实现可并跑对照一批再切。

波 3 · 知识层补强(与波 2 尾部可并行)

  • 目标:补对标 TapTap 清单的三个真缺口,把「存在但没喂」的资产接进模型面。
  • 边界:只动知识资产与 check 的类型检查通道;不动插件实现;不新建品类模板(idle/action 归 W-GENRE)。
  • 输入:知识层审计盘点表(诊断档 §三);littlejs.d.ts(277KB 现货)、11 份 PLUGIN.md、6 个暗插件、ENGINE-CAPABILITIES.md。
  • 产出:①类型硬门——tsc 对游戏源 × api.d.ts/受控面 d.ts 做真类型检查,先 advisory 跑一批校准噪声再转阻断,报错原文进 check 反馈;②examples 索引(「要做 X → 读 Y」)+ 35 篇高频 recipes(命中矩形/计时器/资产回退/场景机/结算演出);③暗资产接线——6 个未注入插件逐个裁定(注入+文档化,或明确移出库面),PLUGIN.md 进模型可读指针,引擎能力摘要蒸馏 ≤3KB 版;④防漂移对账门——插件目录 vs prompt 白名单 vs host-config 注入清单三方一致性检查进 CI。
  • 验收:tsc 门对金标语料零误伤——金标 = cheap-worker/fixtures/golden-samples(现 2 款)+ game-runtime/games 下 6 套 _template* 脚手架与 2 款 _fewshot* 良品,清单随工单固化(评审更正:此前「amodel-gen 29 金标」为误记,该处只有单测无金标);新对账门在 CI 红绿可证;抽一局生成,模型 read_file 命中新索引/recipes(turns.jsonl 佐证)。
  • 回滚:tsc 门 advisory→阻断分两步,阻断前可停在 advisory;知识文件纯增量。

收尾 · n=5 重测基线(依赖波 1+2)

  • 目标:作废全部污染数字,在新链路、新语义下重锚便宜档真实率与单局成本;所有容量/成本/品类难度类结论以新基线为准。
  • 边界:只测便宜档 5 已覆盖品类,纯度量、不改代码;idle/action 无模板品类不入本轮(归 W-GENRE)。
  • 输入:波 1 的真相层(turns.jsonl/归档/归因)+ 波 2 的新验收语义与判定器;批跑脚本沿用 hard_genre_batch 族。
  • 产出:5 品类 × n=5(按 tier2-validation 口径),每局四件套证据 + 判定理由 + 归因层;真浏览器亲玩抽验;基线报告回写进度总账与质量模型 §7 实测列。
  • 验收:创始人抽玩 ≥3 款与判定结论一致;基线报告过主会话终审。
  • 回滚:纯度量任务无回滚面(N/A)——数字不达预期就是结论本身,作废重跑即可。

风险与依赖

判定器自身会假阳假阴——靠金标校准+抽玩+阻断开关兜,绝不回退到机械门独裁;判定成本上升被拆笼后的重试下降对冲(审计:14 倍成本方差主要是 harness 摩擦);targets 取证合约本计划保留(归因修正后它只是取证接口,不再是隐性验收目标),整体退役(agent 亲手试玩驱动)列为判定 v2 的后续评估项,不在本三波。