games-development-ai/docs/agent-specs/_archive/2026-06-14-WG1-bakeoff天花板与Claude-free评估门-execution.md
zizi 7f24a344d0 docs(agent-specs): B2 归档——64 个闭线工作记录移入 _archive/,热目录顶层 90→26
承接目录治理:上轮只压缩内容未减文件数,闭线工作记录仍平铺致目录看着仍一堆(创始人指出)。本次执行 B2 归档。

64 个 ≤06-15 闭线档(25 压缩桩 + 闭线 review/report/纪要/edit-plan)git mv 入 docs/agent-specs/_archive/(文件名不变、仍 git 跟踪可查)。热目录 ≤06-15 仅留 13 活档(决策/纲领/SoT/活spike)+13 个 06-16 在飞。

活资产 20 处旧路径引用(.agents/docs/memory/_index)同步改 _archive/,引用断裂复测=0;_index 活地图 + 治理档状态收口。约束:0 个 06-16 被移、orchestrator 等未跟踪在飞档零误纳。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-16 13:26:19 +00:00

13 KiB
Raw Blame History

《W-G1 · 最小 agentic studio(黄金模板先行)+ 模型路由三阶段》执行版 master spec

状态:执行版 master spec · 2026-06-14 重写(supersede 单角色 bake-off 框架)· 待 Round-2 review。 上游:review 版 §8(决策+战略扩展+守护栏,创始人已确认);Round-1 四评审(对抗/可行/范围/一致)findings 已纳入本版。 本 lane:wg1/gen-worker。代码 wg1/gen-worker/ + game-runtime/games/_wg1-gen/;judge rubric → contracts/prompts/(或先暂存 lane,见 §9)。零改冻结契约 / 不碰主线 / 不推 dev·2.0.0。 定位转变(关键):这不是"便宜模型写代码",是 agentic 多角色 studio——一队便宜模型 agent(设计/代码/修复/player panel)在 AgentScope 上协作产出游戏,player agent 真玩真判,studio 闭环修到"真能玩+好玩"。Opus=脚手架(建门/校准/改 agent scope),建好即退,生产无 Claude。


结论先行

  1. 主干:最小 studio = 设计→代码→七门(确定性地板)→player panel(M3 视觉+flash 文本)真玩真判→回喂修复 ≤5。黄金模板先行:先在**一款(打砖块 Breakout)**打磨透整条闭环,再克隆扩。
  2. 模型 = 可替换配置旋钮,分三阶段:Stage1 flash/M2.7(便宜双家)+M3 先跑通 → Stage2 pro+M3 再生成对比 → Stage3 逐 agent×逐模型 评分矩阵 → model routing。
  3. 命门验真闸(不可省):player agent 判"好玩"必须对创始人亲玩锚定(含"能跑但无聊"反例集),证便宜 player 真跟人类相关再信。否则是 vibes。
  4. 交付即资产:打磨过的 agent 层(角色/循环/门/自修复)+ 模型性能矩阵(喂 routing)+ player 校准结论 + 引擎/插件库缺口清单。

1. 目标与范围

本期目标(可验收)

  1. 最小 studio 闭环(on AgentScope 进程内多 agent):Breakout 一款,设计→代码→七门→player panel→自修复 ≤5,端到端真跑通(非桩)。
  2. player panel + 校准件:M3 视觉位 + flash 文本位多人格;校准 panel↔创始人亲玩一致率(含反例集)。
  3. 模型路由三阶段:Stage1 跑通(flash+M3)→ Stage2 对比(pro+M3 再生成一版)→ Stage3 逐 agent×模型评分矩阵。
  4. Opus 改 agent scope 的 lift(单变量隔离、held-out、分布对照——见 §9 方法约束)。
  5. 缺口清单:Breakout 暴露的引擎/插件库短板(为克隆扩款做准备)。

非目标(本期不做)

  • art/music 生成角色(后续波次走 MiniMax/mmx-cli)、全 20+ 款 bake-off、4 档全靶集、生产接线、quality_score MQ 化。
  • 不 fork AgentScope 内核(只改我方 agent 层);Opus 不进生产环;音乐质量不硬判(无验证音频模态)。

2. 前置条件(均已核实 · 2026-06-14)

前置 状态 证据
AgentScope 2.0.1 ✅ 三闸全过 spikes/agentscope-wg1/VERDICT.md(分布式/持久化/L1 开销);进程内多 agent 单机即可,避 #1868 多实例 bug
文本模型 flash/pro ✅ 可路由 网关探活;flash ¥0.0015/1k out、pro ¥0.0058/1k out
视觉模型 M3 ✅ 能看且准 双色图实测答对"左红右绿";¥0.0175/1k out(贵 11×,输出限短)
七门真玩 harness ✅ 可信 _wg1-gen/_shared/play.cdp.cjs;golden-path 自检无假绿
L1 worker 底座 ✅ 已落地 wg1/gen-worker/worker/(含薄自修复循环,Simon 2 重试真过)
MiniMax 生图/音乐 ✅ 能力在 mmx-cli skill;后续 art/music 波次用
创始人好玩基线 v2 rubric ⚠️ 未定稿 W-T1b §4"待过目";故 player 校准锚=创始人亲玩本人,不依赖未定稿 rubric(见 §6)

3. 总体架构

flowchart TB
    OPUS["Opus 脚手架(写角色prompt/人格·校准·改agent scope·建好即退)"]
    subgraph STUDIO["最小 agentic studio · AgentScope 进程内多 agent · 模型=配置旋钮"]
        BRIEF["brief"] --> DESIGN["设计 agent"]
        DESIGN --> CODE["代码 agent(玩法/机制/平衡/关卡/脚本=生成域)"]
        CODE --> VAL["静态校验门"] --> BUNDLE["esbuild __GameBundle"] --> PLAY
        PLAY["七门真玩(确定性地板·假绿守卫)"] -->|"挂:门+证据"| FIX["自修复 agent"]
        FIX -->|"≤5(含模型升档)"| CODE
        PLAY -->|"过七门"| PANEL["player panel:M3视觉位 + flash文本位·多人格<br/>真玩→判完整度+好玩+具体问题"]
        PANEL -->|"问题回喂"| FIX
    end
    OPUS -. "写/校准" .-> DESIGN & CODE & PANEL
    PANEL --> ANCHOR["校准件:panel ↔ 创始人亲玩一致率(含'能跑但无聊'反例集)"]
    style STUDIO fill:#1a2a3a,stroke:#4090c0,color:#fff
    style ANCHOR fill:#3a2a2a,stroke:#c06060,color:#fff

4. 模型路由(本版新增核心 · per-agent 配置旋钮)

原则:模型可替换 → per-agent 模型在 config(worker/models.yaml)声明,不硬编码。换配置即换模型,支撑对比与后续路由。

三阶段:

阶段 配置 目的
Stage 1 先跑通 文本 deepseek-v4-flash + MiniMax-M2.7(便宜双家)· 视觉 MiniMax-M3 验 studio 闭环端到端通 + 早期 DeepSeek×MiniMax 跨家对比信号(M2.7 输出贵些但要跨家信号)
Stage 2 出对比 文本 deepseek-v4-pro · 视觉 M3,同款再生成一版 同 brief/同 studio 只换模型 → 对比真实效果(过门率/好玩/手感)
Stage 3 评+路由 逐 agent × 逐候选模型 跑,采集各 agent 输出 模型性能评估矩阵(哪个模型配哪个角色)→ 喂 engine 优化 + model routing

默认起步配置(Stage 1):

Agent Stage1 模型 说明
设计 / 代码 / 自修复 flash + M2.7(便宜双家,逐 agent 可配) 先跑通 + 早期跨家对比(同款各跑一版)
player·视觉位 MiniMax-M3 唯一视觉;输出强制短(结构化 verdict+一句理由)控成本
player·文本位 deepseek-v4-flash 只读结构态,给 panel 异构
(后续)art 生成/判定 MiniMax 生图 / M3 判 走 mmx-cli;本期不接
(后续)music 生成 MiniMax 音乐 走 mmx-cli;质量留人/指标

成本纪律:Stage1 最省(flash 统一);pro/对比开销 Stage2 才花;实验期"测而不闸"(照测 ¥/款,不拿 ¥0.15 卡质量),出分级结论。reasoning 档(flash/pro)给够 max_tokens;M3 非 reasoning 快、输出限短。


5. 角色契约(契约先行 · 最小集)

Agent 输入 输出 默认模型
设计 brief 题面 设计稿{机制/胜负/操作/juice 要点} flash
代码 设计稿 GameHostFactory 源码(默认导出,只调插件面+6 受控面) flash→(Stage2)pro
自修复 失败门(七门哪挂)+证据 + player 问题 修订源码 跟随代码档;连败升档(flash→pro)
player(视觉) 截图序列 + 结构态探针 {完整度判, 好玩判, 具体问题[]} M3
player(文本) 结构态探针 同上(无截图) flash

玩法/机制/平衡/关卡/脚本本期合于代码 agent 生成域(模板哲学);拆细为独立 agent 属后续波次。


6. player panel 校准(命门验真闸 · Round-1 BLOCKER-2 存活形态)

  • 锚 = 创始人亲玩本人(非未定稿 rubric、非 Opus):一组样本(含故意"能跑但无聊"反例:单机制/无失败惩罚/无进度感)→ 创始人亲玩打分 vs player panel 打分 → 量一致率 + 区分力(panel 能否把反例判否)。
  • 达标才信:一致率/区分力达标→panel 判进流程;不达标→该维度退回创始人亲玩,并记"便宜 player 判不了 X"为天花板结论(无论达标与否都是有效交付)。
  • 七门是前置地板:player 只玩过七门的件(挡"对坏游戏幻觉好玩")。

7. 涉及文件

模块 路径 动作
模型路由 config wg1/gen-worker/worker/models.yaml(新) per-agent 模型声明
agent 编排层 wg1/gen-worker/worker/agent_loop/(新·框架中性名) AgentScope 角色/进程内编排/状态;框架适配隔离
复用底座 worker/{_client,prompt,validate,run,cost}.py 以现有薄自修复循环增量,非搬 agent-loop-v1 1269 行
player 驱动 _wg1-gen/_shared/play.cdp.cjs 加 player 感知钩子(截图导出 + 结构态);采集项待 panel 设计
校准件 wg1/gen-worker/calibration/(新) 反例集 + 创始人亲玩打分录入 + 一致率算
judge rubric contracts/prompts/(或暂存 lane) Opus 派生(对齐创始人 eval 门,未定稿则暂存)
黄金款产物 game-runtime/games/_wg1-gen/breakout/ factory + bundle + evidence

8. 波次

波次 内容 完成条件
P0 跑通 AgentScope 进程内 设计→代码→七门→player→自修复 闭环,Breakout 一款,Stage1 配置(flash/M2.7 + M3) 一款端到端真跑通(非桩)+ shakedown 初裁
P1 校准 player panel 多人格 + 校准件(创始人亲玩 vs panel,含反例) 一致率/区分力表 + "信哪些维度"结论
P2 对比 Stage2:pro+M3 同款再生成 → 与 Stage1 对比真实效果 模型对比表(过门率/好玩/手感/¥)
P3 评+路由 Stage3:逐 agent×模型评分矩阵 + Opus 改 agent scope 测 lift 模型性能矩阵 + lift 报告(单变量/held-out)
(后续) art/music 角色(MiniMax)、克隆扩款、4 档靶集、获奖压测 下一 spec

9. 边界失败路径(纳入 Round-1 findings)

失败 处置
AgentScope 进程内编排不稳 退薄 Python 编排(--no-agentscope);记 shakedown
创始人 eval 门 rubric 未定稿 player 校准锚用创始人亲玩本人,不阻塞;rubric 我起草、事后采纳
player panel 一致率不达标 该维度退创始人亲玩 + 记"便宜 player 判不了 X"(有效交付,非失败)
自修复 5 次仍不过 kill,记 unrepairable+失败门分布 + 缺口
获奖/超界款 仅源码证伪的硬边界(3D)豁免;tilemap/网格/文本/swipe 是 🟡 半缺口,造不出算真失败、三分类归因(3D硬界/模型顶/未尽改进),不许用"超界"洗低产出
成本超 ¥0.15 运行时记 over-budget(测而不闸,主力档可加软闸)
Opus 在环泄漏 CI 断言生产路径(七门+断言+便宜 player)零 Claude 依赖
lift 归因混淆 单变量隔离改进(一次只改一类)、held-out brief 验集(调测分离)、N≥3 重复取分布、temperature=0;≤2 轮收敛,禁反复调凑 lift

10. 验证 / 完成 / 回滚

验证:P0 单款真跑通(非桩);七门全过;校准一致率/区分力表;Stage1↔Stage2 对比表;模型矩阵;lift(单变量/分布/显著性);CI 断 Claude;每结论标【实测】/【推断】/【假设】。 完成:Breakout 闭环跑通 + player 校准结论 + 模型对比 + 矩阵 + lift + 缺口清单 + shakedown 裁决 + 沉淀 .agents/。 回滚:全 lane,git revert 净回滚;--no-repair 退已验收 L1 裸路;--no-agentscope 退薄编排;judge rubric 先 lane 再并 Registry。


风险与假设(诚实标注)

  • [verified·2026-06-14] AgentScope 2.0.1 三闸过、flash/pro/M3 可路由、M3 视觉准、七门可信、L1 底座在——均带证据(§2)。
  • [inferred] 便宜 agent 队能产 Breakout 级可玩+好玩件——待 P0/P1 验。
  • [assumption·核心待验] 便宜 player 判好玩跟人类相关——靠 §6 校准定论;不相关则退亲玩。
  • [assumption] agent-scope lift 显著为正(harness 复利)——单变量/held-out 测;证伪则记模型天花板。
  • [守护栏·创始人确认] 只改我方 agent 层、AgentScope 可替换不 fork、Opus 建好即退不进生产、便宜模型生产 in-loop、模型 per-agent 可配置可路由。

执行进展回填(L1,2026-06-15)

本轮创始人定档「driver 残留闭口 + P2 对照(L1 自主)」;P1 校准放量 blocked-on-founder。详见 driver-coverage 闭口与 P2 对照报告。

  • P0 跑通 ✅:studio 多角色闭环(设计→代码→七门→player panel→自修复)Breakout 端到端真跑通(非桩),Stage1/Stage1_mmx/Stage2 三档均有数据。
  • P1 校准 ⚠️(N=4 命门结论已出,放量 blocked-on-founder):calibration/report.json 实证 M3视觉/flash文本 player gatekeeper_ok=false——便宜 player 高估碰撞 bug 件(pro 件两 player 给 fun4,创始人亲玩 fun2/fix),坐实 review §8「player panel 有结构性天花板、人锚不可替代」。放量需创始人对更多款亲玩补 labels.json 锚。
  • P2 对比 ✅(N=1 Breakout):同款三档对照表(flash ¥0.194 / M2.7 ¥0.514 / pro ¥0.417;过门率/自修复轮/¥/player 分 + 创始人锚)已成。多题面横比留 P3。
  • driver-coverage 6 款闭口 ✅:scale-20 余 6 款失败全部归因,0 个模型造不出 / 0 个 3D 硬界。harness driver 1→8 型(新增 flap-to-gap vy 前瞻 / paddle-intercept 弃守排空 / drag-aiming / aim-fire),四因归因铁律(宿主门面 / driver 太朴素 / 可测性边界 / 实例缺陷≠模型)入 game-e2e skill §8。
  • P3 评分矩阵 / agent-loop-v1 处置 / 全 20 款补全:留后续波次。