--- date: 2026-07-06 topic: 黄金模板规格件 status: 定稿候选(fable 主笔 2026-07-06;§7 六裁决点创始人同日全按提案拍定,D6=敏捷点击/genre 键 reflex)——§6 对照验证 ✅(§1 表清零+§8 缺口 G1–G10)、Codex+Opus 双评审 ✅(REVISE 8 + ACCEPT-WITH-FIXES 8,合并去重 16 条全修入)、fable 定稿轻读 ✅(2026-07-06);待创始人批终稿(D2 执行形态修正——维持落点+前置三件清 gamedef 化石——一并过目)。 sot-impact: 不新建 canonical topic。本档把 plan① 效率策略「黄金模板先行」与 W-GENRE 品类四件套既有实践编译成可对账的资产类规格,不改质量 SoT(游戏质量与爆火能力)的评分口径——rubric 治理沿用其 §4 规范(canonical 现行 rubric 章,设计留痕旧称 §3.3)与金标复验纪律。落点由 D2 拍定维持 contracts/templates/,但该目录当前被 13 份 gamedef 世代品类 schema 占用(git 停 046c061d),执行前置须先归档退役旧 schema、解绑 contracts/prompts 的 registry 与 eval 化石引用,再落新规格;新增契约类目按 contracts/README 现行类目序 additive(game-host.d.ts 已占第 9 类),届时走 contract-first 另行申报。本档不动 55 P0 验收定义。 上级: docs/plans/2026-06-25-生成引擎统一执行计划-AgentScope三档-plan.md 关联: - docs/mvp/MVP作战清单.md(W-TPL 立项单 2026-07-06) - docs/agent-specs/2026-06-29-便宜档降AI参与-减摩擦与扩模板覆盖-设计.md(reskin 数据点与创始人推翻记录 · 丰富两步 M1 达标) - cheap-worker/cheap_genre_route.py(品类路由词表)· cheap-worker/cheap_verify.py(GENRE_BY_TEMPLATE / 品类 rubric 装载) - cheap-worker/fixtures/genre-rubrics/ · cheap-worker/fixtures/golden-specs/ · cheap-worker/fixtures/golden-samples/ - game-runtime/games/_template-shop/(经营黄金骨架,解剖对象)· .agents/skills/littlejs-game-dev.md(单工程代码结构 SoT) - .agents/tools/rubric-sync-gate.py(机器门范式)· .agents/skills/gen-path-parity-harness.md(金标 play-spec 公平性与达标门) - docs/architecture/架构/生成引擎/游戏质量与爆火能力.md(质量口径,只引用) 图清单: [图1 模板资产类十件与四路消费方 · 图2 新模板准入产线] --- # 黄金模板规格件 · 设计(模板的模板) 便宜档的模板已经是事实上的产能地基:仓里躺着六个黄金骨架(`_template` 通用 + 经营/非遗/解谜/剧情/TRPG 五品类)、五份品类设计 skill、五份品类 rubric、六份金标 play-spec、两个 few-shot 正例工程,生产 create 路的品类路由(`cheap_genre_route.py`)把用户 brief 确定性地分发到这些骨架上。MVP 主指标「AI 生成成功率 ≥80% 基于 3–5 个模板」踩的就是这套资产。 问题在于:这套资产是几波工单各自堆出来的手工艺品,「一个合格的黄金模板必须有什么」从没写下来过。后果已经在仓里可见——`_template-shop` 和 `_template-feiyi` 的 `assets/manifest.json` 至今写着 `"game": "_template"`、注释讲的还是点圆得分(拷贝残留没人对账);few-shot 正例有的品类有、有的没有、形态还不一致;准入证据(骨架自己过没过九门、丰富度基线是多少、一款生成多少钱)散落在各波 plan 文档里,谁也说不出「下一个新品类模板做到什么程度算入库」。批产 3–5 个 MVP 模板之前,先把规格立起来,让模板生产从手工艺变成有验收门的流水活——这是注入铁律「模板承载 > 门强制 > prompt 提醒」的执行臂:规范能烤进模板的就不该赖在 prompt 里,而模板本身的完备性得有门看着。 ## 0. 目标与边界 **目标**:定义「黄金模板」这个资产类——必备件清单(§2)、准入过门标准与机器门(§3)、规格落点(§4)、选型三轴(§5),并给出拿 `_template-shop` 对照验证规格的 opus 工单(§6)。规格从仓里真实资产逆向,每一件都有在仓先例或明确缺口,不发明仓里不存在的东西。 **边界**:只覆盖便宜档模板产线——品类黄金骨架、路由、评分尺、金标、few-shot、锁写机制这一整套;tier2 复杂游戏的「模板」形态(脚手架+席位配方)归 W-NSTAR 裁决,防两单口径互渗。本档不改 cheap-worker 任何代码,对照验证发现的机制缺口出工单不顺手改;金标 play-spec 与 rubric 的**定义权**分别在 gen-path-parity-harness 口径与质量 SoT §4(rubric 体系),规格只规定「必须带、必须对账」,不重定义其内容标准。 **一个立项前提要先修正**。W-TPL 立项单沿用了「reskin 锁循环 −51%/¥0.34 = 成本主线」的记忆,但仓里的决策史不是这样:2026-06-29 创始人明确推翻了 reskin 作为策略——「便宜 = LLM 低参与度,不是游戏低质量;锁死薄循环换皮 = 砍复杂度,违背 2D 丰富游戏底线」(2026-06-29 设计档 §数据点,¥0.34 数据留痕、策略已废)。随后落地的修正路线是:品类骨架当**轻起点**(锁 plumbing、不锁玩法),接品类设计 skill 让 agent 先设计丰富玩法再实现,配非阻塞丰富度评分,M1 达标门三品类各 5/5 过九门坐实。生产 create 路今天就是这么跑的:路由选骨架、`write_whitelist=None` 不收窄(`cheap_service_driver.py:242`),agent 在骨架上自由富化;锁写机制(`write_whitelist={"game-logic.js"}`)真实存在且承重,但活在 **modify 路**(`cheap_modify.py:419`,A11 调整回路的写边界)而不是 create 量产路。所以本规格把模板定位成「丰富度正路的品类起点资产」,不是「换皮量产母版」;立项单里 ¥0.34×1.2 的成本验收锚骑在已废策略上,修正锚已随 §7 D1 拍定(n=3–5 均值 ≤¥1.0/款)。 ## 1. 现状逆向:六骨架资产盘点 按 §2 规格十件对六个模板逐项对账,先摆事实(✅ 在位 / ⚠️ 有但有伤 / ✗ 缺): | 规格件 | _template | shop | feiyi | puzzle | story | trpg | |---|---|---|---|---|---|---| | 1 骨架工程(L1+L3+test+README) | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | 2 多样性参数空间锚块 | ✅ | ✅(core.js 顶部) | ✅(core.js:24) | ✅(core.js:25) | ✅(core.js:25) | ✅(core.js:25) | | 3 取证契约(_forensicsView) | ✅ | ✅(game-logic.js:243 键名钉死) | ✅(gl.js:265) | ✅(gl.js:303) | ✅(gl.js:234) | ✅(gl.js:298) | | 4 品类设计 skill | —(通用不适用) | ✅ sim-business | ✅ heritage | ✅ puzzle | ✅ narrative | ✅ trpg | | 5 品类 rubric fixture | —(通用底座 12 条) | ✅ | ✅ | ✅ | ✅ | ✅ | | 6 金标 play-spec | ✅ click-score/whack-mole | ✅ shop-serve | ✅ heritage-craft | ✅ puzzle | ✅ story-branch | ✅ trpg | | 7 few-shot 正例 | — | ⚠️ golden-samples 代位 | ⚠️ 仅 README+src | ✅ _fewshot-puzzle 完整 | ⚠️ golden-samples 代位 | ✗ 无 | | 8 路由登记(词表+GENRE_BY_TEMPLATE) | ✅(无命中回退) | ✅ | ✅ | ✅ | ✅ | ✅ | | 9 准入证据包(固化) | ✗ 散落 | ⚠️ golden-samples 有部分(bake-shop-serve-1 含 n=3 丰富度) | ✗ 散落 | ✗ 散落 | ⚠️ golden-samples 有部分 | ✗ 散落 | | 10 资产规范件(manifest 身份) | ✅ | **✗ 写着 _template** | **✗ 写着 _template** | ✅ | ✅ | ✅ | 表内「待对照」项已由 §6 opus 工单逐格对照落实(2026-07-06):件 2 参数空间锚块在 feiyi/puzzle/story/trpg 四骨架的 `core.js` 顶部均有「多样性参数空间」显式锚注释,件 3 取证契约在四骨架的 `game-logic.js` 均导出 `_forensicsView().state()` 且返回 `targets`(含 `occupied`)与 `score` 两键——证据行号入表。对照顺带核出几处规格与表述需修正的地方(逐条进 §8 缺口清单),几条承重发现先摆: **L1 今天零漂移,但只是运气。** 六个模板各自带一份 L1 拷贝,实为**五件**而非四件——`index.html` / `entry.js` / `src/host-config.js`(全 11 插件注入)/ `src/game.js`(薄 wrapper)/ `src/main.js`(宿主引导薄包装),md5 实测五件均六份完全一致(`src/main.js` 也逐字节同源,`__gameHost`/`__gameForensics` 取证全局的挂载点就在它里面;§2 件 1 原清单只列四件、漏了 `src/main.js`,已在缺口清单登记补正)——说明拷贝纪律目前守住了。但没有任何门守着它:下次谁修 index.html 的自适应缩放(这文件修过一轮,littlejs-game-dev §7 红线 7 就是那次教训),漏改哪个模板就漂移哪个,而 L1 漂移的症状(某品类生成款桌面裁屏)要到真人试玩才暴露。这是 template-spec-gate 最便宜也最必要的一检(§3)。 **manifest 拷贝残留坐实「无规格则必腐」。** `_template-shop`、`_template-feiyi` 的 `manifest.json` `game` 字段都还是 `"_template"`(两处违例);但 gen-ledger 标题只有 shop 还挂着「_template『点圆得分』」,feiyi 的 gen-ledger 已单独改对为「_template-feiyi『工序节拍』」。这个不对称本身更能说明问题:同一批拷贝残留,有人想起修 gen-ledger 却没回头修 manifest,身份登记各错各的、修一半反而更难发现。这几处今天无害(经营/非遗骨架均无外采素材,表是空的),但它证明:没有机器对账的约定,连「文件抬头写对自己名字」都守不住;等模板真带美术资产时,登记表指错工程就不是无害了。 **few-shot 正例参差,形态未定。** 非遗、解谜走 `games/_fewshot-/` 工程形态(prompt 里 `cheap_roles.py:54-55` 按品类指路 read);剧情、经营走 `cheap-worker/fixtures/golden-samples///`(src+evidence 固化,rubric 金标锚用);TRPG 两头都没有。两种形态各有用途(前者喂生成、后者锚评分),规格得把「哪个必备、放哪、谁消费」钉死,否则每加一个品类就发明一种放法。 **准入证据没有家。** `_template-shop` 独立过九门、五店 reskin n=5 收敛、M1 三品类 bake-off 各 5/5——这些证据都真实存在,但全躺在 plan/设计档的叙述里。新模板入库时「拿什么证明合格」没有固化落点,达标史无法机器对账,门就立不起来。 **评分尺治理是唯一已经工业化的一件。** rubric fixture 单源 + skill 内联/指针对账 + `rubric-sync-gate.py` 挂 pre-commit 与 CI + 金标复验纪律(漂移 >±1 回退)——这套是现成的成功范式,§3 的 template-spec-gate 直接仿它,§2 的其余九件要的就是把这种治理密度铺到全资产类。 **规格要落的目标目录不是空地,已被上一代资产占住。** §4 推荐的落点 `contracts/templates/` 今天实存 13 份 gamedef 世代的品类 schema:clicker/match/merge/idle/runner/dodge/tycoon/generic 八份旧模板,加经营/剧情/解谜/TRPG/非遗五品类,git 最后一次改动停在 `046c061d`(2026-06-18,reframe 废除 gamedef 之前)。它们没被删,是因为还有引用挂着——`contracts/prompts/registry.yaml` 的 clicker/merge/idle/tycoon 四个 designer 条目以 `config 受 contracts/templates/.schema.json 约束` 指向它们,`contracts/prompts/eval/config.{clicker,merge,idle,tycoon}-designer/` 四套 Golden 目录也以它们为据。但这批 prompt 早已是化石:W-PCI 步骤 0(2026-07-04 消费面三态对账,用一手代码坐实非凭注释)判定 clicker/merge/idle/tycoon 四策划模板均为 fossil——`AigcTemplateConstants.SUPPORTED_TEMPLATE_IDS` 已把旧四模板整体下架(现行白名单 = generic + 5 品类),提交抛 `AIGC_TEMPLATE_NOT_EXISTS`、执行判 `no_template_match` 不烧 LLM,产物还是已废的 gamedef 形态 GameConfig。所以落点不是「有没有位置」的问题,是「先把化石清出去」的问题——执行前置三件见 §4。 ## 2. 模板规格契约草案(承重章) 一个合格的黄金模板 = 以下十件齐备且对账一致。每件给定义、判定方式、落点形态;「机器可判」的进 template-spec-gate(§3),「须真跑」的进准入验收(§3 质量门/成本门)。 ```mermaid flowchart LR subgraph T["模板资产类(十件)"] A1["1 骨架工程
games/_template-<genre>/"] A2["2 参数空间锚块(core.js)"] A3["3 取证契约(_forensicsView)"] A4["4 品类设计 skill"] A5["5 品类 rubric fixture"] A6["6 金标 play-spec"] A7["7 few-shot 正例"] A8["8 路由登记(双表)"] A9["9 准入证据包"] A10["10 资产规范件(manifest)"] end G["生成路
scaffold + kick + 按需 read"] --> A1 G --> A2 G --> A4 G --> A7 V["评分路
cheap_verify LLM judge"] --> A5 Q["验收路
九门 / 达标门 / auto-vs-golden"] --> A3 Q --> A6 Q --> A9 R["路由路
brief → genre 确定性分发"] --> A8 ``` **件 1 · 骨架工程** `game-runtime/games/_template-/` 定义:一个**独立可玩的完整品类游戏**(不是半成品填空题),目录与 `_template` 同构——L1 固定五件(`index.html`/`entry.js`/`src/host-config.js` 全 11 插件注入/`src/game.js` 薄 wrapper/`src/main.js` 宿主引导薄包装,后者挂 `__gameHost`/`__gameForensics` 取证全局)+ L3 四件(`src/game-logic.js` 完整品类循环/`src/core.js` 纯逻辑/`src/render.js`/`src/assets.js`)+ `test/`(core 纯逻辑 node 测试 + headless-boot)+ `README.md`(富化边界指南:改哪、别动哪、锁 plumbing 不锁玩法,照 `_template-shop/README.md` 的成熟形态)。「完整可玩」是硬定义:骨架必须自己独立过九门,因为它是失配 brief 的兜底产物(路由无命中走 `_template` 的同理)——兜底件不可玩,兜底就是假的。 判定:结构门(目录清单对账)+ L1 同构门(五件与权威副本逐字节对账,见 §3)+ `node --test` 绿 + 骨架自身九门证据(件 9)。L1 逐字节同构成立有个前提:全品类今天共享同一份 11 插件注入集(L2 全量注入),所以五件才能逐字节相等;将来若某品类要差异插件集,不是开豁免、是走规格修订把 host-config 分层(L1 核 + 品类注入段),门前提见 §3①。 落点:目录约定如上;单工程代码红线以 littlejs-game-dev §1/§7 为 SoT,本规格不复述。 **件 2 · 多样性参数空间** 定义:`core.js` 顶部以显式锚注释圈出的常量区(`_template-shop/src/core.js` 的「多样性参数空间」块是范本):主题菜单、节奏、难度、布局比例——每个常量带「改它调什么」的一句注释。这是「同品类多款不雷同」的机制载体:agent 按 brief 改这里就换了身份,循环结构不必碰。 判定:机器查锚块存在(锚字符串「多样性参数空间」)+ 常量带注释;「参数空间够不够宽」是设计判断,归准入评审人查,不归机器。 落点:core.js 顶部,锚注释格式入规格。 **件 3 · 取证契约** 定义:`_forensicsView().state()` 暴露 `targets`(可操作目标列表,含 `occupied` 语义)与 `score`(随真实进展单调上升)。这是自动验收的驱动接口:判卷驱动器按 state 有无 `targets` 键选驱动器族,九门 H 进展门靠 `score` 判真有进展(`_template-shop/src/game-logic.js:242-245` 把键名与语义钉死并写明「改坏=H 门挂」)。README 与 game-logic 头注必须向 agent 明示这条红线。 判定:headless-boot 测试断言 state 含 `targets`/`score` 两键;语义(occupied 可点、score 单调)由骨架自身九门证据背书。**交叉标注**:shop 现状恰是反例——其 headless-boot 断言仍读旧契约(`target` 单数 / `pendingTimers`),而 `game-logic.js` 已导出 `targets`/`currency`/`served`,断言与被测代码脱节(实测 2/3 fail,见 §8 G9),这正说明结构门只查「test/ 文件在不在」不够、质量门必须真跑 `node --test`。 落点:game-logic.js + test/headless-boot;驱动器族登记随件 6。 **件 4 · 品类设计 skill** `.agents/skills/-game-design.md` 定义:「设计什么才好玩」的品类范式——玩法范式、数值经济、文化/文本红线、反无趣自检,与 littlejs-game-dev(怎么写代码)配对。生成路真消费它:`cheap_roles.py` 按品类指路 read,这是 06-29 修正路线「先设计丰富玩法再实现」的落点。§10(或 §11)品类 rubric 节与件 5 fixture 对账(内联副本或纯指针,两形态都受 rubric-sync-gate 管)。 判定:文件存在 + rubric-sync-gate 绿 + `cheap_roles.py` 有对应品类指路行(机器可 grep)。 落点:既有约定不变。 **件 5 · 品类 rubric fixture** `cheap-worker/fixtures/genre-rubrics/.json` 定义:喂 LLM 验证 agent 的品类丰富度评分尺,≥4 条品类特有维度,`items` 形状 `{name,layer,meaning,positive,negative}`,分母与通用底座 12 条独立小计;`_note` 记金标锚(正例/薄反例)与复验史。治理规范(单源、纯 LLM 非阻塞不进九门、金标复验纪律)全部沿用质量 SoT §4,此处不半复述其阈值口径,只登记为必备件。 判定:fixture 存在 + rubric-sync-gate 绿 + `GENRE_BY_TEMPLATE` 有映射(件 8)。 落点:既有约定不变。 **件 6 · 金标 play-spec** `cheap-worker/fixtures/golden-specs/.play-spec.json` 定义:人工手写的品类金标驱动 spec,喂达标门(bake-off)与 auto-vs-golden 门。必须登记**驱动器族**:tap-targets 族(从 `targets` 读坐标再点)一份金标可公平通吃同品类各款;key-cycle 族(硬编码按键)对独立生成款不公平,须先立输入键契约才能入对照(gen-path-parity-harness §「金标 spec 只对一部分驱动器家族公平」)。新品类选型时族成熟度直接进「生成良率」轴(§5)。 判定:文件存在 + `_genre` 经「金标名→品类键」登记表对账(要点:`_genre` 记的是**金标名**如 `heritage-craft`/`shop-serve`/`story-branch`,不是品类键,不能直接与 `GENRE_BY_TEMPLATE` 的品类值相等比对——`cheap_verify.py:70` 只有一条注释解释 `heritage-craft→heritage` 这一例、并无金标名映射表,所以对账真源落在下方登记表,由 template-spec-gate 读它逐条比对)+ 族由 `driver.type` 承载登记;spec 内容质量由达标门真跑背书。现状七份金标(五品类 + 通用 click-score/whack-mole)`driver.type` 全为 `tap-targets`(从 `targets` 读坐标再点,对独立生成款公平),仓里尚无 `key-cycle` 族金标;规格只要求「族可查」,不强制新增独立 `family` 字段。 落点:既有约定不变,族以 `driver.type` 承载(现状全 tap-targets;未来若引入 key-cycle 族,须先立输入键契约再入对照)。 **金标名 → 品类键登记表(template-spec-gate 对账真源)**:金标 spec 的 `_genre` 是金标名、`GENRE_BY_TEMPLATE` 的值是品类键、模板目录是资产名,三者需一张显式表钉住对应关系,不能靠字面相等推断;该表由本规格维护,门读它对账。 | 金标名(`_genre`) | 品类键 | 模板目录 | 登记状态 | |---|---|---|---| | `shop-serve` | sim-business | `_template-shop` | 在位 | | `story-branch` | narrative | `_template-story` | 在位 | | `heritage-craft` | heritage | `_template-feiyi` | 在位 | | `puzzle` | puzzle | `_template-puzzle` | 在位 | | `trpg` | trpg | `_template-trpg` | 在位 | | `click-score` | 通用 | `_template` | 在位(无命中回退,不绑品类键) | | `whack-mole` | reflex | `_template-reflex` | 随试产落(D6;现暂挂通用 `_template`) | **件 7 · few-shot 正例** 定义:该品类一款**过九门且丰富度达基线**的完整生成款,双用途,对应两条硬必备条件:(a) **评分路金标正例锚**——rubric 复验的固定参照,落 `golden-samples///`(src+evidence 齐、天然带九门/丰富度证据);(b) **生成路参照指针**——prompt 按需 read 到「丰富成什么样」的可抄形态,由 `cheap_roles.py` 或模板 README 给一条到 canonical 正例的可追踪指路。§7 D3 已拍定统一以 golden-samples 固化形态为评分锚基准、定为**硬必备**(缺 = 不入库),`_fewshot-*` 工程作为生成路指路目标保留但退居可选。对照实测两个消费面各自的现状:生成路 `cheap_roles.py` 指路 heritage→`_fewshot-feiyi`(仅 `README`+`src` 四件、无 L1)、puzzle→`_fewshot-puzzle`(完整工程)、narrative→显式 read `game-runtime/games/_template-story/src/game-logic.js`(骨架自身的过门范例)、sim-business→**仅指 `sim-business-game-design.md` skill、无工程范例指路**、trpg→仅指 skill、无 few-shot 指路;评分路 golden-samples 固化正例只有 narrative、sim-business 两品类。按 D3 硬必备,heritage/puzzle/trpg 三品类**缺 golden-samples 固化正例**(D3 明列「随试产波顺带补齐」),逐条登记 §8。 判定:两条并校——① 评分锚 `golden-samples///` 存在且 evidence 内九门全绿、丰富度逐条记录;② 生成路指针在 `cheap_roles.py` 品类指路行或模板 README 可追踪到 canonical 正例。门要求两条都过:只有评分锚缺生成指针(如 sim-business 现仅指 skill)则生成 agent 抄不到范例,只有生成指针缺评分锚则 rubric 复验无正例可锚——两种都不合格。 落点:评分锚 `cheap-worker/fixtures/golden-samples///`(src + evidence);生成路指针落 `cheap_roles.py` 品类指路行或模板 README。 **件 8 · 路由登记(双表对账)** 定义:模板要在两张表同时登记才真正通电——`cheap_genre_route._GENRE_RULES` 词表(brief→模板,含先验序位置)与 `cheap_verify.GENRE_BY_TEMPLATE`(模板→品类键,评分路透传)。任一缺席的症状都隐蔽:词表缺=该品类 brief 全落通用模板(能出活但丢品类资产加成);映射缺=生成走了品类骨架但丰富度评分退化成纯通用底座(`load_genre_checklist` 静默返 `[]`,绝不抛)。 判定:机器对账三方一致——`games/_template-` 目录、词表条目、GENRE_BY_TEMPLATE 键,互差即红。 落点:两张表既有位置不变,对账进 template-spec-gate。 **件 9 · 准入证据包** 定义:模板入库资格的固化证据,三样:(a) 骨架自身独立九门全绿的 verdict;(b) 模板路生成款 n=3–5 小批九门通过记录 + 丰富度分组小计(对金标锚);(c) 成本画像(该 n 批的均值/区间,口径 = result_out 的 costRmb)。**对照实测三样都不齐**:(a) 骨架自身九门 verdict 在所有模板目录零固化(`_template*/` 下无任何 `evidence/` 或 `verdict.json`);(b)(c) 只有 narrative(`golden-samples/narrative/p11a-s1`,n=1)与 sim-business(`golden-samples/sim-business/bake-shop-serve-1`,附 n=3 丰富度复采样 `richness-n3.json`)有单款正例证据,是「一款生成正例」而非「n=3–5 小批」,成本也是单款值(narrative ¥1.2475、sim-business ¥1.9953,与 narrative 同精度取自各自 `evidence/run-summary.json` 的 `costRmb`)不是批均值/区间。规格给这三样一个统一的家。 判定:证据文件存在 + 字段齐,给一份机器可判的 schema 草案——每个 run:`{gameId, sourcePath, verdictPath, gates(九门逐门), richnessGroups(丰富度分组小计), costRmb, finished, staged, attempts}`;顶层聚合:`{templateId, genre, commit, briefs[], runs[], rawPassRate, convergedPassRate, unconvergedTotal}`(过门率三口径逐字对齐 §3 与 gen-path-parity-harness:convergedPassRate 分母 = 收敛款、rawPassRate 并报、unconvergedTotal 单列)。登记表(§4)据 `templateId`/`genre` 可反查此证据产物目录。数值达标与否归 §3 质量门/成本门判。 落点:`cheap-worker/fixtures/golden-samples//`(与件 7 合家:正例款即证据款,一处固化两用)+ 模板目录 README 尾注一行指针。 **件 10 · 资产规范件** 定义:`assets/manifest.json`(`game` 字段 = 模板目录名、styleWords、外采资产逐件登记 `{file,role,bytes,sha256,source}`)+ `assets/gen-ledger.md`(mmx 生成台账,标题身份与模板一致)。程序化图形可为空表,但抬头身份必须对——这是件 1 里「资产可复现替换」纪律的登记面。 判定:机器查 `manifest.game == 目录名`(现状 shop/feiyi 违例,§7 D5)+ 外采件登记行与 assets/ 实文件对账。 落点:既有约定不变,身份检入 template-spec-gate。 ## 3. 入库过门标准与 template-spec-gate 新模板准入走四道门,前两道机器、后两道真跑: ```mermaid flowchart LR N["新品类模板
(按 §2 十件备齐)"] --> G1["① 结构门(机器)
十件在位 · 目录同构"] G1 --> G2["② 一致性门(机器)
L1 逐字节 · 路由双表 · rubric 对账 · manifest 身份"] G2 --> G3["③ 质量门(真跑)
骨架独立九门全绿
+ 生成款 n=3–5 全过 + 丰富度对锚"] G3 --> G4["④ 成本门(真跑)
n 批 costRmb 均值 ≤ 锚(§7 D1)"] G4 --> IN["入库:golden-samples 固化证据
+ 双表登记通电"] ``` **① 结构门 / ② 一致性门 = template-spec-gate 机器门**,完全仿 rubric-sync-gate 的成功形态:零依赖标准库单文件 template-spec-gate.py(拟新增,落 .agents/tools/ 下,与 rubric-sync-gate 同栈同风格),`--root` 支持负向演示副本,exit 0/1,挂 pre-commit(路径触发:`game-runtime/games/_template*` / `cheap_genre_route.py` / `cheap_verify.py` / `fixtures/genre-rubrics|golden-specs|golden-samples`)+ Gitea Actions contract-gates(全量,不可绕)。检查清单: 1. **L1 同构**:每个 `_template-*` 的 L1 五件(`index.html`/`entry.js`/`src/host-config.js`/`src/game.js`/`src/main.js`)与权威副本(`_template` 那份)逐字节一致;不一致 = 硬失败并打印 diff 文件名。L1 要改就改权威副本再镜像到全体,单模板顺手改 = 被拦——这是舰队规范「禁止顺手升级」的机器化(治理级选择见 §7 D4)。**这条门有个架构前提**:逐字节同构能成立,是因为全品类今天共享同一份 11 插件注入集(L2 全量注入)、`host-config.js` 完全一致——这是架构推论、不是巧合。将来某品类若要差异插件集,不开豁免表:走规格修订把 host-config 分层(L1 核段 + 品类注入段),同构门相应改成「核段逐字节 + 品类注入段登记」两段判,而不是给这个模板记一笔豁免。 2. **十件在位**:目录清单、test/ 两测试文件、README、core.js 参数空间锚串、路由双表条目、rubric fixture、金标 spec、golden-samples 证据目录——逐件存在性对账。 3. **manifest 身份**:`manifest.game == 目录名`;外采登记行的文件真实存在。 4. **委托复用**:rubric 内容对账直接调 rubric-sync-gate(不重复实现),它红本门即红。 机器门的诚实边界写进门脚本头注:**它验的是完备与一致,不验好玩**。「骨架够不够格当品类范本」「参数空间够不够宽」是 ③④ 真跑门与准入评审人的事,机器门绿 ≠ 模板合格,只是「不合格的方式不会是漏件与漂移」。 **门分两阶段落地,不建豁免表。** template-spec-gate 立起来时 §8 的 G1–G9 还开着(manifest 身份、headless-boot 断言、准入证据缺口),此刻若直接挂全量硬门,CI 会被这些已知违例常态染红、门反而失去意义。所以 **Phase A = audit-only**:门只输出 G 清单、逐条打印违哪件,不拦提交;等 G1–G9 按 §7 D5 与后续试产/质量门波清账后,切 **Phase B = 硬门全量**,漏件与漂移一律拦死。两阶段之间**不设豁免表**——已知违例走「限期清账」而非「登记豁免」,与 D4 拒豁免表、§3① L1 门拒插件豁免同一治理口径:豁免表是下一个腐烂点,清账才是收敛。 **③ 质量门(真跑,准入时一次)**:骨架自身独立过九门(兜底资格);以 3–5 个互异 brief 走真实生产路(路由命中→scaffold→生成→九门),过门率逐字对齐 gen-path-parity-harness 既有三口径判——**convergedPassRate = 100%**(分母 = 收敛款,即 `finished=true`、有 verdict 的款;准入门 n 小、要求全过)、**rawPassRate 并报**(含未收敛的原始交付率,贴近用户真实拿到能玩游戏的比例,只作观测不作判据)、**unconvergedTotal 单列**(编排未收敛款归生成稳定性线、不混进质量判定;harness 的硬底线是 `converged==0` 即判 `insufficient`、质量无从判,准入门 n 小、可容忍的未收敛条数随首批定阈值、超阈值同样标 `insufficient`);丰富度分组小计对金标锚沿用质量 SoT §4 复验纪律。n=3–5 的口径对齐创始人「小批收敛非 n≥30」偏好,≥80% 主指标的统计判定仍归 WU-F 达标门、不在准入门重复。 **④ 成本门(真跑,与 ③ 同批采数)**:该 n 批 `costRmb` 均值 ≤ 成本锚。锚值已随 §7 D1 拍定 = **≤¥1.0/款**;per-gen 硬闸 <¥10(tech-decisions §4)恒在,不属本门。 ## 4. 规格落点裁决(D2 已拍定 contracts/templates/) 规格契约本体放哪,两个候选权衡如下;**§7 D2 已拍定候选 A**。 **候选 A(已拍定):`contracts/templates/`,按 contracts/README 现行类目序 additive 新增一类契约。** 编号据实:README:27 的「additive 第 9 类」已给了 `game-runtime/src/core/game-host.d.ts`,其后 play-loop、gate-fixtures 等 additive 契约也已指针登记但未再编号,所以模板契约按现行类目序顺列新增、不硬占某个号(frontmatter 的类目口径同此)。理由三条:其一,先例同构——prompts 作为「第 8 类契约」已经确立「非代码资产入 contracts + 配一致性 CI 门」的范式(`contracts/prompts/` + check_registry.py + contract-gates),模板与 prompt 同属「生成线消费的版本化资产」,治理形态完全同构;其二,模板资产横跨三地(game-runtime 骨架、cheap-worker fixtures、.agents skill),谁都不是它的自然主场,契约层是唯一中立落点;其三,template-spec-gate 挂 contract-gates CI 与 check_registry/rubric-sync-gate 同栈,巡检面统一。形态:`contracts/templates/README.md`(规格正文,§2/§3 定稿后迁入)+ 登记表(每模板一行:目录/品类键/金标 spec/正例 id/准入日期/证据指针)。 **候选 B(未取):.agents/rules/ 下新增 template-spec 规则档。** 更轻,但 rules 是「给 agent 的工程红线」,而本规格一半是**给机器门消费的对账清单**与**给运营的资产台账**,塞 rules 里消费方错位;且 contracts 的「变更须升版过 CI」纪律正是模板这种被生产路径消费的资产需要的。 **执行形态修正(2026-07-06,待创始人过目):维持落点、前置三件。** §1 末尾已摆明——`contracts/templates/` 今天不是空地,被 13 份 gamedef 世代 schema 占着,还挂着 W-PCI 判定的化石 prompt 引用。落点 D2 拍定不变,但落地前必须先腾地,三件按序: 1. **13 份旧 schema 归档退役**(clicker/match/merge/idle/runner/dodge/tycoon/generic + 五品类 schema)——git 史可回,不做物理销毁,只从 live 目录移出; 2. **解绑 `contracts/prompts` 的化石引用**——`registry.yaml` 的 clicker/merge/idle/tycoon 四 designer 条目对 `contracts/templates/.schema.json` 的「`config 受…约束`」指向、`contracts/prompts/eval/config.{clicker,merge,idle,tycoon}-designer/` 四套 Golden 目录,与这批化石 prompt 的清账**同批**处理(它们本就是 W-PCI 段 B SKIP 豁免的死面); 3. **新规格落腾空后的目录**——`contracts/templates/README.md` + 登记表落到清干净的 `contracts/templates/`。 这三件是**执行前置登记**、不在本档动手(不改任何代码/契约);拍定前规格以本档为临时单源,门脚本(随定稿阶段落地)读本档登记的约定。 ## 5. 选型三轴框架(3–5 个 MVP 模板的选型尺) 三轴评分定义(完整打分是后续「选型材料」阶段的活,本节只立尺 + 给基础盘): - **变现**:广告位自然嵌入度(激励视频的「复活/双倍」钩子在该品类是否原生成立)、单局时长与回访结构(限时结算类天然高频短局,利 feed 消费)、付费皮肤/道具的品类亲和。 - **传播**:成绩炫耀钩子(分数/图鉴/结局收集的可截图性)、「做同款」冲动(参数空间宽 = 用户改一句话出自己的店/自己的谜题,UGC 亲和度)、题材社交话题性(非遗有政策与话题红利)。 - **生成良率**:该品类九门实测过门率(已有:M1 三品类 5/5;narrative/heritage 基线在 rubric _note)、驱动器族成熟度(tap-targets 族成熟稳定;key-cycle 族有输入键契约缺口,准入成本高一档)、品类循环的取证契约友好度(targets/score 语义是否自然)。 **基础盘(定性,五既有品类)**:经营(变现强·传播中·良率已实证,tap-targets 原生)、解谜(传播强·良率已实证·变现中)、非遗(传播/题材红利强·变现弱·良率已有基线)、剧情(传播中·良率基线偏低——rubric _note 记骨架 3/11,富化依赖重)、TRPG(受众窄但黏性强·few-shot 缺·良率基线可)。**新品类候选(试产池,§7 D6)**:合成/消除(tap-targets 亲和、传播炫耀强)、放置挂机经营(变现与回访结构最强、循环取证契约自然)、敏捷点击(whack-mole 金标 spec 已在仓,准入成本最低)。**§7 D6 已拍定 = 敏捷点击**(定位「首跑验产线」:whack-mole 金标已在仓且属 tap-targets 族、对独立生成款公平,产线首跑风险最小;但十件里除金标外多数尚缺,试产就绪度盘点见 §8 收尾小节)。选型材料阶段对每候选给三轴打分表 + 推荐组合交创始人拍。 ## 6. opus 对照验证工单(六要素) > 本单已于 2026-07-06 执行完毕:产出 = §1 表「待对照」清零(证据行号入表)+ §8 缺口清单 G1–G8 + §1/§2 就地修订(L1 五件、`_genre` 金标名口径、件 9 现状等)。原文保留备查: - **目标**:拿 `_template-shop`(及其余四品类骨架的「待对照」项)按 §2 十件逐项对照,产缺口清单回修本规格——验的是规格,不只是模板:对照中发现规格定义不可判、落点不合理、漏件的,直接改 §2 提案并标注理由。 - **范围白名单**:只读 `game-runtime/games/_template*`、`cheap-worker/`(代码只读)、`.agents/skills/-game-design.md` 五件、fixtures 三目录;只写本设计档(§1 表「待对照」格改真 + §2 修订 + 新增缺口清单节)。不改任何代码与模板文件——发现的违例(如 manifest 身份)登记进缺口清单,修复归 §7 D5 拍定后的执行单。 - **验收**:§1 表无「待对照」残留、每格有一手证据(文件:行);缺口清单逐条给「违哪一件规格/证据/修复归属提案」;docs-gate 绿。 - **预算**:opus 1 会话,零真跑成本(纯读档对照;质量门真跑不在本单)。 - **依赖**:本档(规格草案)+ 仓内资产,无外部依赖。 - **升级策略**:发现「规格与质量 SoT/parity 口径冲突」不得自行改口径,登记冲突回 fable 终审;与 W-NSTAR 边界拿不准的(像「这算不算 tier2 模板形态」)同样上抛。 ## 7. 裁决点(创始人 2026-07-06 全按提案拍定) > D1–D6 六项均按下列提案通过;D6 取提案首选 = **敏捷点击**(定位「首跑验产线」)。提案原文照录备查: - **D1 成本验收锚改真**:立项单「reskin 成本 ≤¥0.34×1.2」骑在 06-29 已废策略上(§0)。提案:准入成本门 = 模板路生成款 n=3–5 均值 **≤¥1.0/款**(现行丰富度正路实测 ~¥0.6–0.7/款 ×1.5 容忍;reskin ¥0.21–0.38 的数据留作 modify 路参考),per-gen <¥10 硬闸不变。 - **D2 规格落点**:§4 已拍定 contracts/templates/(候选 A),按 contracts/README 现行类目序 additive 新增(编号据实——game-host.d.ts 已占第 9 类,本类顺列其后);执行前置三件(腾地 13 份 gamedef 化石 schema + 解绑 prompt/eval 引用 + 新规格落腾空目录)见 §4「执行形态修正」。 - **D3 few-shot 必备性**:提案定为硬必备(缺=不入库),统一 golden-samples 固化形态;缺口据实在 heritage/puzzle/trpg 三品类(§8 G6–G8 逐条),随试产波顺带补齐;经营(sim-business)、剧情(narrative)已有 golden-samples 固化正例、无需迁移。 - **D4 L1 同构治理级**:提案 = 逐字节 hash 对账硬门(L1 改动必走「改权威副本+镜像全体」的舰队工单);备选 = 允许 per-template 漂移但须登记豁免(更灵活,但豁免表就是下一个腐烂点)。 - **D5 违例修复归属(§6 对照后首个执行单,同批不单开)**:身份三处(两行级)= shop/feiyi 两处 `manifest.json` 的 `game` 字段 + shop 一处 `gen-ledger.md` 标题(§8 G1–G3);外加 **G9 headless-boot 断言重写**——`_template-shop/test/headless-boot.test.mjs` 的 :86–167 多处断言从旧点圆得分字段(`target` 单数 / `pendingTimers`)改到现字段(`targets` / `currency` / `served`),这是多处改写、非两行级。两类同批修、不单开工单,均不在本档顺手动。 - **D6 试产品类**:§5 新品类候选三选一(合成/消除、放置挂机、敏捷点击)。提案 = 敏捷点击(whack-mole 金标已在仓、准入成本最低,产线首跑风险最小)或合成/消除(传播价值更高、更接近爆款池)——按「首跑验产线」还是「首跑即产爆款候选」定,交创始人。拍定 = 敏捷点击(genre 键 `reflex`);逐项落点工单骨架见 §9,十件就绪度盘点见 §8「四」。 ## 8. 缺口清单(对照实测 · 违例登记不修) §6 对照把 §2 十件在六骨架上逐格核过,证据充分的违例与证据缺口列在下面。三类分开摆:身份违例是「文件抬头写错自己名字」的两行级残留,归 §7 D5 首个执行单捎带;准入证据缺口(件 9)与 few-shot 硬必备缺口(件 7)要真跑或补料才能补齐,归后续试产与质量门波,不在本对照单顺手动。规格自身「定义不可判、清单漏件」的修订已就地改进 §1/§2(L1 五件、gen-ledger 精确化、`_genre` 金标名口径、件 9 现状),此表不重复,末尾列指针。 **一、身份违例(件 10,归 §7 D5)** | 编号 | 违哪件 | 证据(文件:行) | 修复归属 | |---|---|---|---| | G1 | 件 10 manifest 身份 | `_template-shop/assets/manifest.json:2` `game=="_template"`(应 `_template-shop`) | §7 D5 首个执行单(一行 JSON) | | G2 | 件 10 manifest 身份 | `_template-feiyi/assets/manifest.json:2` `game=="_template"`(应 `_template-feiyi`) | §7 D5 首个执行单(一行 JSON) | | G3 | 件 10 台账身份 | `_template-shop/assets/gen-ledger.md:1` 标题「_template『点圆得分』」(应经营身份;feiyi 的 gen-ledger 已自行改对为「_template-feiyi『工序节拍』」,无需动) | §7 D5 首个执行单(一处标题) | 这三处正是 template-spec-gate ③「manifest 身份」检要机器兜住的对象:修完门常驻,身份再错就被拦在 CI,而不是等模板带美术资产后指错工程。 **一之补 · 骨架自检面失效(件 1 判定,W-NSTAR O-4 交叉发现,归 §7 D5 同批)** | 编号 | 违哪件 | 证据 | 修复归属 | |---|---|---|---| | G9 | 件 1 判定「`node --test` 绿」 | `_template-shop/test/headless-boot.test.mjs` 实测 2/3 fail——断言仍读点圆得分旧款字段(`pendingTimers`/`target`),而现 `game-logic.js` 导出 `targets`/`currency`/`served`(W-NSTAR O-4 填肉 2026-07-06 实测;`core.test.mjs` 8/8 绿,失效仅冒烟壳断言漂移,宿主机制不受影响) | §7 D5 首个执行单同批(断言更新到现字段)。这条同时是「结构门只查 test/ 文件存在不够,质量门必须真跑 `node --test`」的直接实证——§3 ①③ 分工按此站住 | **二、准入证据缺口(件 9,归质量门真跑波)** | 编号 | 违哪件 | 证据 | 修复归属 | |---|---|---|---| | G4 | 件 9(a) 骨架自身九门 verdict | 六骨架 `_template*/` 下无任何 `evidence/` 或 `verdict.json`(对照 find 全空)——兜底件「独立可玩」的资格证据零固化 | §3 质量门真跑(骨架跑九门→固化 verdict),非两行级修 | | G5 | 件 9(b)(c) n=3–5 小批 + 成本画像 | golden-samples 只 narrative(n=1)、sim-business(n=1+丰富度 n=3);均为单款正例非小批,成本是单款值(¥1.2475 / ¥1.9953)非批均值/区间;其余四类(含通用 `_template`)无准入证据 | §3 质量门/成本门真跑波 | **三、few-shot 硬必备缺口(件 7,§7 D3 拍定硬必备后触发,归试产波)** | 编号 | 违哪件 | 证据 | 修复归属 | |---|---|---|---| | G6 | 件 7 heritage golden-samples 正例 | `golden-samples/` 无 `heritage/`;生成路仅指 `_fewshot-feiyi`(README+src 四件、缺 L1,非完整工程) | D3「随试产波顺带补齐」 | | G7 | 件 7 puzzle golden-samples 正例 | `golden-samples/` 无 `puzzle/`;`_fewshot-puzzle` 是完整工程但非 golden-samples 统一形态(可提级固化) | D3 试产波(`_fewshot-puzzle` 提级) | | G8 | 件 7 trpg few-shot(两头皆无) | `cheap_roles.py` 无 trpg few-shot 指路(仅指 skill)、`golden-samples/` 无 `trpg/`——五品类里 few-shot 最空 | D3 试产波,五品类中最紧 | **三之补 · rubric 金标薄反例锚欠账(件 5,归质量 SoT/W-GENRE 线)** | 编号 | 违哪件 | 证据 | 修复归属 | |---|---|---|---| | G10 | 件 5 rubric 金标薄反例锚 | puzzle/trpg 两品类的品类薄反例只在 `genre-rubrics/{puzzle,trpg}.json` 的 `_note` 里口头自述——puzzle 记「按各条 negative 面同构的合成薄壳(单规则纯反应/目标自发光/无进度/无提示)」、trpg 记「合成黑箱点卡(直接加钱、无骰无取舍无成长无终点)」,并无入仓的反例工程款可复跑对账 | 质量 SoT §4 / W-GENRE 线的金标锚补料,**非本档修**;template-spec-gate 只校 rubric-sync-gate 绿、不校薄反例是否入仓 | 这条与身份、few-shot 缺口分属两条线:它归评分尺治理,本规格登记备查、不承接修复。 **口径确认(无需回 fable)**:件 6「驱动器族」现状由 `driver.type` 承载,七金标全 `tap-targets`、对独立生成款公平,与 gen-path-parity-harness「金标只对一部分驱动器族公平」的口径不冲突——冲突面在 `key-cycle` 族,而仓里尚无此族金标;规格只澄清现状、未改 parity 的族定义,故不回 fable。rubric fixture 形态有一处参差(`heritage.json` 带 `groupMaxes`/`anchors`,余四份无),属质量 SoT §4 治理面,rubric-sync-gate 绿即视为治理接受,本规格不重定义、不登记为缺口。 **四、敏捷点击(genre 键 `reflex`)试产十件就绪度(§7 D6 收尾盘点)** D6 拍定敏捷点击「首跑验产线」,genre 键裁定为 `reflex`(短键、与其余品类键风格一致)。它现状没有独立品类骨架——whack-mole 金标的 `_baseSample=base2` 是通用 `_template` 点圆得分类的生成款,不是敏捷点击的品类资产。按 §2 十件盘,试产前的缺口一目了然: | 件 | 现状 | 说明 | |---|---|---| | 1 骨架工程 | ✗ | 无 `_template-reflex` 独立骨架,需新建 | | 2 参数空间锚块 | ✗ | 随骨架 | | 3 取证契约 | ◐ 可继承 | 通用 `_template` 已有 targets/occupied/score;whack-mole 金标只依赖此契约(base2 已验证),新骨架照搬 | | 4 品类设计 skill | ✗ | 无 `reflex-game-design.md` | | 5 品类 rubric fixture | ✗ | 无 `genre-rubrics/reflex.json`;反应类是天然薄品类,rubric 须先过质量 SoT §7 替代丰富轴(连击深度/模式变体等)申报 + 创始人批,再落评分尺 | | 6 金标 play-spec | ✅ | `whack-mole.play-spec.json` 在仓(tap-targets 族、不绑坐标、`expectLatch`、`score increased` 断言齐);whack-mole→reflex 映射登记随试产落(件 6 登记表) | | 7 few-shot 正例 | ✗ | 无 golden-samples 固化(base2 是点圆得分款、非敏捷正例) | | 8 路由登记 | ✗ | `cheap_genre_route` 无敏捷词条、`GENRE_BY_TEMPLATE` 无映射,「打地鼠」类 brief 现落通用 `_template` | | 9 准入证据包 | ✗ | 无 | | 10 资产规范件 | ✗ | 随骨架 | 十件里在位一件(金标)、可继承一件(取证契约)、缺八件。这恰印证 D6「首跑验产线」的定位:敏捷点击要验的是「从零起一个新品类模板依次走通骨架→skill→rubric→路由→few-shot→双真跑门这条完整工序」,而非摘现成——它便宜只便宜在金标已备且属最公平的 tap-targets 族,达标门与 auto-vs-golden 的考卷不用现造。产线把这一条走通,§3 四道门与 template-spec-gate 才算被一份真实的新资产验证过一遍。 ## 9. D6 试产工单骨架(reflex 逐项落点) D6 拍定敏捷点击、genre 键 `reflex`。这一节把「从零起 reflex 模板」的工序拆成逐项精确落点,当试产执行单的骨架——它是**工单登记**,不在本档动手建任何文件。§8「四」已盘出十件缺八、在位一(金标)、可继承一(取证契约);落点按依赖序排,**一条硬前置横在质量门之前**。 **硬前置(先于一切真跑):rubric 替代丰富轴申报。** 反应类是质量 SoT §7 点名的「天然薄品类」——单机制、循环短,四件底线(成长轴 / 解锁阶梯 ≥3 级 / 第二动机 / 音反馈)里有几件对纯反应循环并不自然。按 §7 其二的申报机制,`reflex` 的 rubric 必须先给出替代丰富轴(连击深度、模式变体、速度档位递增等,对应 §7 明举的「连击深度、模式变体」)、附理由申报创始人批,才能落评分尺;跳过这步直接建 rubric,金标复验会拿一把不合身的尺子量薄品类,把「品类本就该薄」误判成「做得不够丰富」。所以工序上**申报在前、rubric fixture 在后、质量门更在后**。 逐项落点(依赖序): 1. **骨架工程** → `game-runtime/games/_template-reflex/`(L1 五件从权威副本 `_template` 逐字节镜像 + L3 四件写反应循环 + `test/` + `README.md`);取证契约照搬通用 `_template` 的 `targets`/`occupied`/`score`,whack-mole 金标只依赖这一契约,新骨架不必另立。 2. **品类设计 skill** → `reflex-game-design.md`(落 `.agents/skills/`;反应类「设计什么才好玩」的范式 + §10 品类自检,替代丰富轴段与 rubric 同源、受 rubric-sync-gate 管)。 3. **品类 rubric fixture** → `cheap-worker/fixtures/genre-rubrics/reflex.json`(≥4 条品类特有维度,`_note` 记金标锚与替代轴申报批文);**受上面的硬前置约束**。 4. **路由登记(双表)** → `cheap_genre_route._GENRE_RULES` 加一条 `("reflex", "_template-reflex", (关键词元组))`(先验序位置随品类词共现面定)+ `cheap_verify.GENRE_BY_TEMPLATE` 加 `"_template-reflex": "reflex"`;两表登记后「打地鼠 / 反应 / 敏捷」类 brief 才从通用 `_template` 转投 reflex 骨架。 5. **金标 play-spec** → 沿用在仓的 `whack-mole.play-spec.json`,经件 6 登记表把 `whack-mole → reflex` 落一行(现暂挂通用 `_template`,试产时改挂 reflex);金标不必新造,这正是 reflex 作为「首跑验产线」准入成本最低的原因。 6. **few-shot 正例 + 准入证据包** → `cheap-worker/fixtures/golden-samples/reflex//`(src + evidence:骨架自身九门 verdict + 模板路 n=3–5 小批过门记录 + 丰富度分组小计 + 成本画像)+ `cheap_roles.py` 加一条 reflex 品类指路行、`_template-reflex/README.md` 尾注证据指针(件 7 的两条件——评分锚与生成指针都要落)。 7. **资产规范件** → `_template-reflex/assets/manifest.json`(`game == "_template-reflex"`)+ `assets/gen-ledger.md`,身份自建时就写对,别重蹈 shop/feiyi 的拷贝残留(G1–G3)。 走完这七步,§3 的四道门(结构 / 一致性 / 质量 / 成本)与 template-spec-gate 才第一次被一份真实新资产端到端验过——这正是「首跑验产线」区别于「摘现成爆款」的地方:reflex 的价值不在它自己多能传播,在它逼产线把「新品类从零到入库」的完整工序真跑一遍。 预算与升级策略(补齐工单六要素):预算 = opus 1–2 会话 + 真跑成本约 n=3–5 × D1 锚(≤¥1.0/款)+ 骨架自身九门一局;升级 = 替代丰富轴申报被否 → 品类回 D6 备选(合成/消除)重议,质量门 `insufficient`(未收敛超阈)→ 归生成稳定性线排查、不降判据,与 W-TPL/质量 SoT 口径冲突 → 回 fable 终审。