docs(质量轨): 收口折账全量——质量模型 canonical 落位(+四层塔图)/ 数据飞轮折入回流半环(+半环图)/ 验收门与OpenGame历史化注 / sim§10 分界改口 / 注册表与_index对账 / 两设计档降留痕 / 工单板对账(F-1✅·R1-R6✅·W-MAT✅·决策③NO-GO hold·W-GENRE解锁)
Some checks failed
docs-gate / docs-gate (push) Has been cancelled

折账批次1(A/B/C/D 四组并行)+ 批次2(注册表/_index/降留痕)+ 批次3(docs-gate 七检绿+旧口径 grep 清零)。

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
lili 2026-07-02 21:02:43 -07:00
parent a3bc8365d7
commit 9fcfe61a0a
14 changed files with 482 additions and 43 deletions

View File

@ -152,13 +152,12 @@
> 8 条命中越多越好玩;命中 ≤3 条 ≈ catch-fruit 那种"能玩但无趣"。**设计阶段就过这张表,别等做出来才发现无趣。**
> **可机检子集(N≥4 必过 —— 接好玩门 / API 门 / per-game 断言)**:这 8 条里 **4 条可机检**,design 产出必须覆盖、且 code 必须实现:
> - **①即时反馈** = 主操作处真调 `particles-juice`(飘字/粒子)+ `audioMusic`(音效)→ code-presence 可查;
> - **②可见成长** = `score`/营收随操作上升 → H 门 `assertAfterPlay {path:score,op:increased}`;
> - **③下一个解锁** = 有解锁逻辑 + 阈值常量 → code-presence 可查;
> - **⑧音反馈** = 真调 `audioMusic.playSfx`(或引擎 zzfx)→ code-presence 可查。
> **机检硬门 vs LLM 评分维度(质量轨 2026-07-02 分界裁定)**:这 8 条里原标「4 条可机检」并不同质,`docs/architecture/架构/生成引擎/游戏质量与爆火能力.md` §3.3 拆成两类——纯代码存在性的三条降为 LLM 评分维度(rubric,非阻塞),经真玩校验的断言留作 L1 硬门(机器判定、可拒发):
> - **①即时反馈**(主操作真调 `particles-juice` 飘字/粒子 + `audioMusic` 音效)、**③下一个解锁**(解锁逻辑 + 阈值常量)、**⑧音反馈**(真调 `audioMusic.playSfx` 或引擎 zzfx):代码里存在调用不等于体验真成立,故交 LLM 验证 agent 评分,不落项目代码、不进九门;
> - **②可见成长** = `score`/营收随操作上升,经 H 门 `assertAfterPlay {path:score,op:increased}` 校验,属 L1 机制可玩,保留为阻塞硬断言、不软化;
> - **经营/进货品类**再加一条 per-game 运行时断言:买/进货时货币真减 → gatespec 产 `{path:"currency",op:"decreased"}`,同经 H 门 assertAfterPlay 校验,同属 L1 硬断言(**注:通用九门不加品类语义,断言是每局喂的**)。
>
> **经营/进货品类再加一条 per-game 运行时断言**:买/进货时货币真减 → gatespec 产 `{path:"currency",op:"decreased"}`(经现成 H 门 assertAfterPlay 校验;**注:通用九门不加品类语义,断言是每局喂的**)。其余(情感锚/放置回归/滚雪球)靠真玩判,不机检。
> 同名两物分工清楚:L1 断言判「机制上真发生」,rubric 判「体验上成立、有层次」;把真玩硬证据降成软评分会削 L1 的拒发权,方向恰好反了。其余(情感锚/放置回归/滚雪球)仍靠真玩判,不机检。
---

View File

@ -1,7 +1,7 @@
---
date: 2026-06-29
topic: 便宜档降AI参与-减摩擦与扩模板覆盖
status: 修订(Codex + Opus 双评审已过 · 据证据驱动重定位 · 认领为 plan① 切片一里程碑蓝图)· 主体已交付(减摩擦 + 数据点 + 丰富两步,M1 达标 2026-06-30);剩 §7 品类扩产工单(解锁待质量模型 SoT)
status: 修订(Codex + Opus 双评审已过 · 据证据驱动重定位 · 认领为 plan① 切片一里程碑蓝图)· 主体已交付(减摩擦 + 数据点 + 丰富两步,M1 达标 2026-06-30);剩 §7 品类扩产工单(解锁待质量模型 SoT;已于 2026-07-02 决策包⑦ 解锁,rubric v2 前置工单已完成)
sot-impact: 修订 生成引擎执行计划(切片一里程碑蓝图,plan① 认领)
上级: docs/plans/2026-06-25-生成引擎统一执行计划-AgentScope三档-plan.md
认领: plan① 切片一某里程碑(L2 API 母语化重构 + per-genre 脚手架)· 挂 WU-B 实例达标 / WU-C 5.4 能力面契约变更 / WU-F 达标门
@ -198,7 +198,7 @@ Opus:M1(紧迫性/live 语义·已改实 §1/§2)、M2(执行归属·已认领 p
| ③ few-shot 过门正例 | 阶段一 C1 | 匹配现契约(母语化后 API);范例签名 == 现契约走机器校验门,防成下一代漂移源 |
| ④ 品类 rubric + 金标 play-spec | cheap-worker 金标 fixtures | 丰富度 rubric 喂 LLM 验证 agent(非阻塞),按质量模型 SoT §3.3 计分制(逐条 0/1 标层 + L2/L3/L4 三分组小计);金标 spec 喂九门对照 |
> **前置小工单(单列,生成线 lane、不占品类件)**:rubric v2 评分尺升级(8→11 条 + 分组)+ 评分输出三分组小计落库(cheap-worker 一次性改造,现只落单一 richness 总分;数据飞轮回流语料的输入前置)。首个品类件开工前先落;验收 = 金标复验(分组小计漂移 ≤±1)+ 落库字段真出现。
> **前置小工单(单列,生成线 lane、不占品类件)**:rubric v2 评分尺升级(8→11 条 + 分组)+ 评分输出三分组小计落库(cheap-worker 一次性改造,现只落单一 richness 总分;数据飞轮回流语料的输入前置)。首个品类件开工前先落;验收 = 金标复验(分组小计漂移 ≤±1)+ 落库字段真出现。**已完成(commit `ba82e63c`,2026-07-02)**:8→11 条已落 L2×6/L3×3/L4×2 三分组小计,金标复验漂移 ≤±1、`richness.groups` 字段真出现,rubric 仍纯 LLM 非阻塞。
**工单六要素(每品类一个 opus 会话,plan 模式领单 → goal/ultracode 自治 + 自审)**:
@ -209,4 +209,4 @@ Opus:M1(紧迫性/live 语义·已改实 §1/§2)、M2(执行归属·已认领 p
- **坑**:双源同改漏一处即造新脏数据;`prompt.mjs` 禁反引号;范例签名机器校验门必须随③同步;worktree 缺 esbuild。
- **自审**:每件附真实 commit + 九门 verdict 路径;没全绿报 BLOCKED。fable 按质量模型 SoT 终审。
**解锁条件**:《游戏质量与爆火能力》SoT(质量模型,fable 主笔、在飞)定稿——它定义①④的上位标准(丰富分层 / 留存结构 / 传播钩子 / 丰富度预算档位),先批产会返工。
**解锁条件**:《游戏质量与爆火能力》SoT(质量模型,fable 主笔、在飞)定稿——它定义①④的上位标准(丰富分层 / 留存结构 / 传播钩子 / 丰富度预算档位),先批产会返工。**已解锁(决策包⑦ 2026-07-02 已批,该 SoT 档内草案值生效)**:①④照其 §3.3 rubric 计分制与 §3.6 档位观测线批产;该 SoT canonical 收口后落 `docs/architecture/架构/生成引擎/游戏质量与爆火能力.md`(折账中)。

View File

@ -1,7 +1,7 @@
---
date: 2026-07-02
topic: 数据飞轮回流环
status: 已批准(创始人 2026-07-02 决策包⑦ 同场,草案值生效)→ 收口折账中(§4 R2)
status: 已批准(创始人 2026-07-02 决策包⑦ 同场,草案值生效)→ 已折账收口(2026-07-02):回流半环折入数据飞轮 SoT 阶段三,本档降设计留痕
sot-impact: 修订 topic「数据飞轮」(其 §3.3 收益回流止于语料形态与消费方点名,本档补「语料→资产更新」回流半环机制;收口时折进该 SoT、本档降留痕,折账须同步改写其消费方清单——E2「推荐排序校准」措辞对齐为「产建议信号、算法与 quality_score 机制不动」,三消费方与本档六去向的对应关系写明);触点 = 游戏质量与爆火能力设计(其 §4 D5 校准单 = 本环首单实例)、2026-06-29 设计 §7(rubric v2 评分尺升级 + 三分组小计落库前置小工单已落其表后)、MVP作战清单(R6 telemetry 留存聚合字段工单已落);不新增契约、不改推荐算法、不改任何 harness/门代码
上级: docs/architecture/架构/生成引擎/数据飞轮.md
关联: docs/architecture/架构/生成引擎/数据飞轮.md §3.3 · docs/agent-specs/2026-07-02-游戏质量与爆火能力-设计.md §3.3/§3.4/§3.6/§3.8/§4 D5 · contracts/trace/README.md · cheap-worker/cheap_studio.py(richness 落库点)@ 1662eb0d
@ -10,6 +10,8 @@ sot-impact: 修订 topic「数据飞轮」(其 §3.3 收益回流止于语料形
# 数据飞轮回流环 · 设计(玩家数据 → 赢家模式固化回设计资产)
> **已折账(2026-07-02)**:本档为设计留痕(过程、评审史、拍点记录);生效机制以 canonical [数据飞轮](../architecture/架构/生成引擎/数据飞轮.md) 阶段三(回流半环)为准。
## 0 一图看懂
```mermaid

View File

@ -1,7 +1,7 @@
---
date: 2026-07-02
topic: 游戏质量与爆火能力
status: 已批准(创始人 2026-07-02 决策包⑦,档内草案值生效)→ 收口折账中(§4 D2)
status: 已批准(创始人 2026-07-02 决策包⑦,档内草案值生效)→ 已折账收口(2026-07-02):生效内容折入 canonical《游戏质量与爆火能力》,本档降设计留痕
sot-impact: 新建 topic「游戏质量与爆火能力」(收口后落 docs/architecture/架构/生成引擎/ 并登记注册表);修订触点 = 生成验收门(§2.4 消费口径历史化、D11 权重管辖移交)、「收窄 A–E」既有引用面(验收门 §2.4 本体及其失真蒸馏指针〔saa-graph-orchestration skill 2026-07-01 已重写、无该节〕、OpenGame对照 §3.5;_recall 判定录只读留痕不改)、数据飞轮(留存口径需求)、.agents/skills/sim-business-game-design.md(§10 可机检注记按本档 §3.3 第 5 条改口)、2026-06-29 设计 §7(品类 rubric 上位标准由本档给出);不改契约(contracts/)与九门 harness 代码
上级: docs/plans/2026-06-25-生成引擎统一执行计划-AgentScope三档-plan.md
关联: cheap-worker/cheap_verify.py · cheap-worker/bake_off.py · tier2/gen-worker/worker/run.py · tier2/harness/play-phaser.cdp.cjs · game-runtime/games/_wg1-gen/_shared/play.cdp.cjs · contracts/README.md(双量纲红线)@ 1662eb0d
@ -10,6 +10,8 @@ sot-impact: 新建 topic「游戏质量与爆火能力」(收口后落 docs/arch
# 游戏质量与爆火能力 · 设计(四层质量模型)
> **已折账(2026-07-02)**:本档为设计留痕(过程、评审史、拍点记录);生效口径以 canonical [游戏质量与爆火能力](../architecture/架构/生成引擎/游戏质量与爆火能力.md) 为准(四层模型/裁定/rubric 规范/档位生效值)。
## 0 一图看懂
```mermaid

View File

@ -7,11 +7,11 @@
| 设计 | 主题 | 状态 |
|---|---|---|
| [2026-06-30-配置控制面一次性按序实现-设计](2026-06-30-配置控制面一次性按序实现-设计.md) | 配置控制面(Nacos/RocketMQ/Sentinel 生产基建 + AgentScope 热配) | 阶段〇+一①+一② 已落地(一② SDD 收口 `526e9b3d`);下一步 = 阶段二(yudao⊕Nacos 配置中心)设计 |
| [2026-06-29-便宜档降AI参与-减摩擦与扩模板覆盖-设计](2026-06-29-便宜档降AI参与-减摩擦与扩模板覆盖-设计.md) | 便宜档减摩擦/扩模板 | 主体已交付(减摩擦+丰富两步+M1 达标);剩 §7 品类扩产工单(解锁=质量模型 SoT) |
| [2026-06-30-配置控制面一次性按序实现-设计](2026-06-30-配置控制面一次性按序实现-设计.md) | 配置控制面(Nacos/RocketMQ/Sentinel 生产基建 + AgentScope 热配) | 阶段〇+一①+一② 已落地(一② SDD 收口 `526e9b3d`);阶段二设计已成稿在评审(下行) |
| [2026-06-29-便宜档降AI参与-减摩擦与扩模板覆盖-设计](2026-06-29-便宜档降AI参与-减摩擦与扩模板覆盖-设计.md) | 便宜档减摩擦/扩模板 | 主体已交付(减摩擦+丰富两步+M1 达标);§7 品类扩产已解锁(决策包⑦ 2026-07-02,rubric v2 前置已落 `ba82e63c`),P11×4 批产在编排 |
| [2026-07-02-文档治理-SoT注册表与治理门-设计](2026-07-02-文档治理-SoT注册表与治理门-设计.md) | 文档治理(本轮) | 执行中;依据见同日 [普查裁决报告](2026-07-02-文档治理-全量普查与裁决-report.md) |
| [2026-07-02-游戏质量与爆火能力-设计](2026-07-02-游戏质量与爆火能力-设计.md) | 四层质量模型 + 丰富度预算档位 + 平衡门判法裁定(F-4);fable 主笔(轨2①) | 已过 Codex+Opus 双评审、发现项已修(2026-07-02)→ **待创始人拍决策包⑦**(拍点 7 项见其 §5);定稿解锁 W-GENRE |
| [2026-07-02-数据飞轮回流环-设计](2026-07-02-数据飞轮回流环-设计.md) | 收益回流的回流半环:校准单标准化 + 产出去向治理 + 就绪清单;fable 主笔(轨2②) | 已过 Codex+Opus 双评审、发现项已修(2026-07-02)→ **待创始人拍草案值**(拍点 4 项见其 §5);收口折进数据飞轮 SoT §3.3 |
| [2026-07-02-配置控制面阶段二-yudao配置中心-设计](2026-07-02-配置控制面阶段二-yudao配置中心-设计.md) | 配置中心版本源 = yudao MySQL 版本行(prompt MEDIUMTEXT 出 Nacos;Nacos 承路 B 小参下发) | 创始人已拍 B 并收稿;Codex+Opus 双评审中(Codex 已回=需回炉,待 Opus 合并修订) |
| [2026-07-02-M4广告SDK预接线-设计](2026-07-02-M4广告SDK预接线-设计.md) | M4 广告预接线:三层开关 / 回调验签 fail-closed / 不估算入账(联盟账单为唯一入账源) | 双评审回炉已修(验签加固代码在分支 r3-ad-hardening 待 merge);剩 SVG 门面图 |
## 在飞计划(docs/plans)

View File

@ -41,6 +41,7 @@ flowchart LR
| 生成验收门 | [生成引擎/验收门](架构/生成引擎/验收门.md) | canonical |
| prompt治理 | [生成引擎/prompt治理](架构/生成引擎/prompt治理.md) | canonical |
| 数据飞轮 | [生成引擎/数据飞轮](架构/生成引擎/数据飞轮.md) | canonical |
| 游戏质量与爆火能力 | [生成引擎/游戏质量与爆火能力](架构/生成引擎/游戏质量与爆火能力.md) | canonical |
| 后端域总览 | [后端/README](后端/README.md) | canonical |
| 数据模型 | [后端/数据模型](后端/数据模型.md) | canonical |
| 鉴权与权限 | [后端/鉴权与权限](后端/鉴权与权限.md) | canonical |

View File

@ -375,14 +375,14 @@ flowchart TB
上面 §3.1–§3.4 把"OpenGame 哪些设计值得抄、怎么落进 SAA 节点"按价值分了四类,那是**对照分析**。2026-06-22 把另一份决策记录(`git show 8ea97234:docs/plans/2026-06-20-关闭九门判定-全面参考OpenGame-决策与Phase0-4.md`,创始人当天拍板、当天把 gamedef 做到 91.7%)的 Phase 路线回收进来,补的是分析之外的另一半——**一条有编号、有消融杠杆量化、有达标 flip 条件的执行序列**。两份口径不同:对照档回答"抄什么",这条路线回答"按什么顺序抄、每步能抬多少、抬到什么程度就切默认"。
这条路线的**起跑线**,是验收口径的一次收窄,得先讲清,否则后面的 Phase 没有立足点:生成环的硬门已从"九门全过"收窄成"只认五道客观健康门 A–E"(A_boot/B_uncaught/C_frame/D_render/E_live),G_input/H_progress/I_control 三道 driver 依赖门降为不否决生成的参考门,F_wiring 移出客观硬门、改由 VLM 看截图判其"真用引擎/有特效"的语义。这一收窄是 gamedef 从 all-9 口径下约 50% 做到 **91.7%** 的直接原因之一(细节见 [验收门-W-G1 §2.4](验收门.md))。把九门里"靠 driver 才判得了"的那几道暂时摘出生成环的否决权之后,Phase 路线要补的就是"用别的、更对的东西把那几道门的语义重新接回来"——这正是下面几个 Phase 的主线。
这条路线的**起跑线**,是验收口径的一次收窄,得先讲清,否则后面的 Phase 没有立足点:生成环的硬门已从"九门全过"收窄成"只认五道客观健康门 A–E"(A_boot/B_uncaught/C_frame/D_render/E_live),G_input/H_progress/I_control 三道 driver 依赖门降为不否决生成的参考门,F_wiring 移出客观硬门、改由 VLM 看截图判其"真用引擎/有特效"的语义。这一收窄是 gamedef 从 all-9 口径下约 50% 做到 **91.7%** 的直接原因之一(细节见 [验收门-W-G1 §2.4](验收门.md))。把九门里"靠 driver 才判得了"的那几道暂时摘出生成环的否决权之后,Phase 路线要补的就是"用别的、更对的东西把那几道门的语义重新接回来"——这正是下面几个 Phase 的主线。(现行口径注:"收窄 A–E"已于 2026-07-02 随质量轨裁定历史化,现行验收 = driven 九门全量;本段只作这条路线当时的起跑线理解。)
各 Phase 与它们各自的消融杠杆(数字是 06-20 当天实测的 Build-Health 增量贡献):
- **Phase 2 · 模板-First + hook,杠杆最大(约 +10.1 BH)。** 给每个 archetype 预建一套**已验证过的 gamedef 骨架**,再让便宜模型在骨架上做 hook 覆写,而不是从零发明结构。这与 §3.1 那条"GDD 契约 + template_api 是最高价值缺口"是同一件事的执行版——预建骨架就是"填空靶子",hook 清单就是约束便宜模型不编造 API 的那份 `template_api`。它单点贡献最大,所以排在最前。
- **Phase 3 · 活调试协议 / 离线 linter(约 +6.9)。** 把生成中反复踩的坑沉淀进一个**版本化的匹配库**,在真玩之前先跑一道静态门把已知错挡掉、并回灌修复。这就是 §3.2 那条 Debug Skill 的落地——(签名,原因,修复)三元组加分组阈值升格,签名匹配纯算法零 LLM。它排第二,因为有了 Phase 2 的骨架打底,剩下的错才收敛到"可被 linter 模式化捕获"的程度。
- **模板族复用(约 +5.8)。** 对应 §3.2 的 Template Skill:把完成过的项目按物理三元组泛化成可复用的家族骨架,命中即复用整个家族。它的增量来自"同品类第二款起不必重走 Phase 2 的从头预建"。
- **Phase 4 · build-health + VLM 验证替换 driver 判定,并定 flip 达标条件。** 这一步把起跑线收窄时摘出去的 driver 门语义**正式接回来**——但不是接回 driver,而是接回"客观 build-health + VLM 看截图"两条:能不能跑用客观门 A–E 判,好不好看 / 是不是要的那个游戏用 VLM 判(对应 §3.3"player 软门做厚"和论文三轴里的 Visual Usability / Intent Alignment)。配套自修复封顶 **T=3**(同一道门最多自动修三次),达标后才 flip 成默认。
- **Phase 4 · build-health + VLM 验证替换 driver 判定,并定 flip 达标条件。** 这一步把起跑线收窄时摘出去的 driver 门语义**正式接回来**——但不是接回 driver,而是接回"客观 build-health + VLM 看截图"两条:能不能跑用客观门 A–E 判,好不好看 / 是不是要的那个游戏用 VLM 判(对应 §3.3"player 软门做厚"和论文三轴里的 Visual Usability / Intent Alignment)。配套自修复封顶 **T=3**(同一道门最多自动修三次),达标后才 flip 成默认。(现行口径注:driver 门语义已实际接回——2026-07-02 质量轨裁定后现行验收即 driven 九门全量,此 Phase 的"接回"目标已成事实。)
**flip 达标条件(这是 Phase 路线区别于纯分析的关键)**:任何新生成口径 / 新门在统一口径下成功率真达 80% 门,才把它切成默认、并把"失败即拦截"的门翻开。在此之前默认旁路、只观测、可回退对比,绝不一上来就改放行行为。(注:原文针对的「gamedef 路切默认产线、二分收敛退役 factory 路」已随 2026-06-21 gameDefinition 废弃而 moot——现行是 A-model 写真 src/、无 factory/gamedef 双轨、也无 cutover;此处保留的是通用 flip 纪律:新门默认旁路只观测、达标再 flip。)这条 flip 纪律与生成引擎 README §6 的达标门同源,落地时挂同一个 80% 达标判据,不各立一套。

View File

@ -0,0 +1,125 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1480 880" font-family="-apple-system,'PingFang SC','Microsoft YaHei',Segoe UI,sans-serif">
<defs>
<marker id="arr" markerWidth="11" markerHeight="11" refX="8" refY="3" orient="auto" markerUnits="strokeWidth"><path d="M0,0 L8,3 L0,6 Z" fill="#334155"/></marker>
<marker id="arrg" markerWidth="11" markerHeight="11" refX="8" refY="3" orient="auto" markerUnits="strokeWidth"><path d="M0,0 L8,3 L0,6 Z" fill="#15803d"/></marker>
<style>
.t{fill:#0f172a}.mut{fill:#475569}.sm{font-size:12px}.xs{font-size:11px}
.h1{font-size:24px;font-weight:700}.lbl{font-size:13px;font-weight:600}
.lt{font-size:15px;font-weight:700}
</style>
</defs>
<rect x="0" y="0" width="1480" height="880" fill="#f8fafc"/>
<!-- 标题区 -->
<text x="40" y="40" class="t h1">图 1 · 四层质量塔:机制可玩 → 内容丰富 → 留存结构 → 传播钩子</text>
<text x="40" y="62" class="mut sm">质量不是一个分,是四层递进的塔:机器门保「能玩」,LLM 评「有料」,结构要求保「想再玩」「想传出去」的前提;玩家真数据是 L3/L4 的最终裁判并回流校准。</text>
<rect x="40" y="74" width="46" height="20" rx="4" fill="#15803d"/><text x="63" y="88" text-anchor="middle" font-size="11" fill="#ffffff">质量</text>
<rect x="92" y="74" width="46" height="20" rx="4" fill="#475569"/><text x="115" y="88" text-anchor="middle" font-size="11" fill="#ffffff">数据</text>
<!-- 生效徽章 -->
<rect x="1150" y="20" width="290" height="30" rx="15" fill="#15803d"/>
<text x="1295" y="40" text-anchor="middle" font-size="13" font-weight="700" fill="#ffffff">决策包⑦ 已批准生效 · 2026-07-02</text>
<!-- L4 塔尖 -->
<rect x="450" y="195" width="360" height="115" rx="10" fill="#fff7ed" stroke="#b45309" stroke-width="2"/>
<rect x="736" y="203" width="66" height="22" rx="11" fill="#15803d"/><text x="769" y="218" text-anchor="middle" font-size="11" fill="#ffffff">非阻塞</text>
<text x="466" y="224" class="t lt">L4 传播钩子 — 想让别人看的结构前提</text>
<text x="466" y="248" class="mut xs">判定者:rubric 传播组(设计侧)+ share/remix 漏斗(上线后)</text>
<text x="466" y="266" class="mut xs">炫耀时刻 / 分享点位 / 同款可复刻(remix 预填元数据)</text>
<text x="466" y="284" class="mut xs">结构要求 ≠ 效果承诺;不做自动「爆火分」</text>
<!-- L3 -->
<rect x="400" y="325" width="460" height="115" rx="10" fill="#ecfeff" stroke="#0891b2" stroke-width="2"/>
<rect x="786" y="333" width="66" height="22" rx="11" fill="#15803d"/><text x="819" y="348" text-anchor="middle" font-size="11" fill="#ffffff">非阻塞</text>
<text x="416" y="354" class="t lt">L3 留存结构 — 想再玩的结构前提</text>
<text x="416" y="378" class="mut xs">判定者:rubric 留存组(设计侧)+ 完玩率 / 次留真数据(上线后)</text>
<text x="416" y="396" class="mut xs">目标梯度 / 难度节奏(×1.15 默认锚)/ 回归钩子(便宜档至少一种)</text>
<text x="416" y="414" class="mut xs">次留字段未落前用「完玩率 + 互动率」代理;真数据经 quality_score 影响分发</text>
<!-- L2 -->
<rect x="340" y="455" width="580" height="120" rx="10" fill="#f0fdf4" stroke="#16a34a" stroke-width="2"/>
<rect x="846" y="463" width="66" height="22" rx="11" fill="#15803d"/><text x="879" y="478" text-anchor="middle" font-size="11" fill="#ffffff">非阻塞</text>
<text x="356" y="484" class="t lt">L2 内容丰富 — 有料、耐玩吗</text>
<text x="356" y="508" class="mut xs">判定者:LLM 验证 agent 按品类 rubric · 逐条 0/1 + 一句理由 · 三分组小计,不设单一总分</text>
<text x="356" y="526" class="mut xs">通用底座 v2 = 11 条(L2 6 / L3 3 / L4 2,已实装)+ 品类扩展 ≥4 条(分母分开)</text>
<text x="356" y="544" class="mut xs">金标锚定:每品类 ≥1 正例 + ≥1 薄反例,评分尺变更漂移超 ±1 即回退</text>
<!-- L1 塔基 -->
<rect x="280" y="590" width="700" height="150" rx="10" fill="#fef2f2" stroke="#dc2626" stroke-width="2.5"/>
<rect x="800" y="598" width="164" height="22" rx="11" fill="#dc2626"/><text x="882" y="613" text-anchor="middle" font-size="11" fill="#ffffff">唯一拒发权 · 布尔</text>
<text x="296" y="620" class="t lt">L1 机制可玩 — 能玩、玩得通吗</text>
<text x="296" y="646" class="mut xs">判定者:机器真玩 · 九门(A_boot…I_control)+ 富游戏三门(仅多系统富游戏档位)+ 首局门 · 零 LLM</text>
<text x="296" y="666" class="mut xs">driven 时九门全量 AND = 现行口径(「收窄 A–E」已历史化);undriven 时 E_live/H_progress 自动降 advisory</text>
<text x="296" y="686" class="mut xs">平衡判定权威 = 真玩动态门(enforced);静态 economyConsistent 恒 advisory = 自检工具 + 反馈素材</text>
<text x="296" y="706" class="mut xs">失败反馈带数值证据:实测值 vs 期望值 + 为什么;赢线双源(游戏内赢线可调 / 验收外生线不可调)</text>
<text x="296" y="726" class="mut xs">工具层不代调平衡——判法不变、反馈变厚</text>
<!-- 左侧:各层权力注 -->
<text x="40" y="218" class="t sm" font-weight="700">观测:不做自动爆火分</text>
<text x="40" y="236" class="mut xs">结构要求 ≠ 效果承诺</text>
<text x="40" y="252" class="mut xs">爆款筛选与签约归运营</text>
<line x1="248" y1="230" x2="448" y2="248" stroke="#94a3b8" stroke-dasharray="4 3"/>
<text x="40" y="352" class="t sm" font-weight="700">推荐权在真数据</text>
<text x="40" y="370" class="mut xs">运营质量分 0–100 回灌 feed</text>
<text x="40" y="386" class="mut xs">rubric 分不直接改排序</text>
<line x1="248" y1="364" x2="398" y2="380" stroke="#94a3b8" stroke-dasharray="4 3"/>
<text x="40" y="486" class="t sm" font-weight="700">批次验收线,不拦单款</text>
<text x="40" y="504" class="mut xs">分组小计消费于品类件验收、</text>
<text x="40" y="520" class="mut xs">批次观测与回流分析</text>
<line x1="248" y1="498" x2="338" y2="512" stroke="#94a3b8" stroke-dasharray="4 3"/>
<text x="40" y="626" font-size="12" font-weight="700" fill="#dc2626">质量分层内唯一拒发权</text>
<text x="40" y="644" class="mut xs">单款放行只看这层(确定性证据)</text>
<text x="40" y="660" class="mut xs">发布链另有治理拒发权</text>
<text x="40" y="676" class="mut xs">(GP9 合规 / D12),在分层之外</text>
<line x1="248" y1="640" x2="278" y2="655" stroke="#94a3b8" stroke-dasharray="4 3"/>
<!-- 回流箭头:玩家真数据 → 校准 L2–L4 -->
<text x="915" y="205" text-anchor="middle" class="xs" fill="#15803d" font-weight="700">玩家真数据回流(放量后)</text>
<text x="915" y="222" text-anchor="middle" class="xs" fill="#15803d">校准 rubric / D11 权重 / 档位线</text>
<text x="915" y="239" text-anchor="middle" class="xs" fill="#15803d">修订走质量轨校准单</text>
<path d="M 812,250 C 950,285 968,440 924,505" fill="none" stroke="#15803d" stroke-width="1.8" stroke-dasharray="6 4" marker-end="url(#arrg)"/>
<!-- 右栏:档位线 -->
<text x="1020" y="136" class="t lbl">档位线(生效值 · 消费于品类小批验收与批次观测,不拦单款)</text>
<rect x="1020" y="148" width="420" height="148" rx="9" fill="#ffffff" stroke="#334155" stroke-width="1.6"/>
<text x="1036" y="172" class="t lbl">便宜档(AI 低参与)· per-gen &lt;¥10(图/音另线)</text>
<text x="1036" y="194" class="mut xs">实测基线 ¥0.25–0.9/款;预算余量优先买丰富、不买省钱</text>
<text x="1036" y="212" class="mut xs">结构下限:底线四件(成长轴 / 解锁阶梯 ≥3 级 / 第二动机 / 音反馈)</text>
<text x="1036" y="230" class="mut xs">+ 1 主循环 ≤2 主机制 + 首 3 分钟脚本(映射不动走申报,不许裸降)</text>
<text x="1036" y="248" class="mut xs">观测线:L2 组均分 ≥60% 组满分(区间 55–65% 待锁)且无恒 0 条目</text>
<text x="1036" y="266" class="mut xs">L3 组 ≥2/3 成立 · L4 组 ≥1/2 成立(品类小批 n=3–5)</text>
<rect x="1020" y="312" width="420" height="130" rx="9" fill="#ffffff" stroke="#334155" stroke-width="1.6"/>
<text x="1036" y="336" class="t lbl">tier2(AI 深参与)· per-gen &lt;¥50 · 目标 ≤¥3/成功款</text>
<text x="1036" y="358" class="mut xs">实测基线 ¥1.29/款</text>
<text x="1036" y="376" class="mut xs">结构下限:≥3 个耦合子系统 + 阶段目标长线;品类结构项由品类件承载</text>
<text x="1036" y="394" class="mut xs">观测线:rubric 均分 ≥70% 满分(区间 65–75% 待锁)</text>
<text x="1036" y="412" class="mut xs">通用 / 品类扩展两分母分开,品类扩展组无恒 0 条目</text>
<!-- 右栏:防 Goodhart 红线 -->
<rect x="1020" y="458" width="420" height="136" rx="9" fill="#fef2f2" stroke="#dc2626" stroke-width="2"/>
<text x="1036" y="482" class="lbl" fill="#dc2626">防 Goodhart 红线</text>
<text x="1036" y="506" class="mut xs">L2–L4 分数一律非阻塞;升门动议须回本档 SoT 并过创始人</text>
<text x="1036" y="526" class="mut xs">硬证据只有两种:机器真玩 + 玩家真实数据</text>
<text x="1036" y="546" class="mut xs">「好玩」终审归人(审核台);不造质量总分 / 爆火分</text>
<text x="1036" y="566" class="mut xs">量纲禁互灌:rubric 0–N / 生成 0–1 / 运营 0–100 / D11 0–100</text>
<!-- 右栏:D11 管辖 -->
<rect x="1020" y="610" width="420" height="112" rx="9" fill="#eff6ff" stroke="#2563eb" stroke-width="1.6"/>
<text x="1036" y="634" class="lbl" fill="#1d4ed8">D11 就绪分 = 开闸治理观测件(不属质量分层)</text>
<text x="1036" y="656" class="mut xs">权重管辖归质量轨(playability 0.5 / firstPlay 0.25</text>
<text x="1036" y="674" class="mut xs">/ stability 0.15 / efficiency 0.1);efficiency 错配为首个复核件</text>
<text x="1036" y="692" class="mut xs">放量后 ≥100 款样本 × 留存真数据校准;权重可整体回退上一版</text>
<!-- 底部:两套门消歧 -->
<rect x="40" y="760" width="950" height="62" rx="9" fill="#ffffff" stroke="#64748b" stroke-width="1.4"/>
<text x="56" y="782" class="t sm" font-weight="700">两套「门」消歧:L1 = 真玩九门 + 富三门 + 首局门(验收面);开闸六门 D12 / GP9 / 9d / D11 / D9 / 首局(放量治理面)不属质量分层</text>
<text x="56" y="802" class="mut xs">首局门 = H 门 additive 派生超集、FAIL 不推翻 H;富三门只随多系统富游戏档位(现 tier2 经营类),便宜档经营用 occupied 反应族 + score 递增断言(门不跨档、断言照常)</text>
<!-- 脚注 -->
<text x="40" y="850" class="mut xs">映射:游戏质量与爆火能力.md(四层模型 SoT 的门面图)|状态:现(2026-07-02 决策包⑦批准生效;观测线区间待首批品类件回填锁值)|设计变动须同步本图</text>
<text x="40" y="868" class="mut xs">注:塔基→塔尖 = 权力递减(唯一拒发 → 纯观测)、证据递软(机器真玩 → LLM 评分 → 结构存在性)、真判递晚(生成时 → 上线后)。</text>
</svg>

After

Width:  |  Height:  |  Size: 11 KiB

View File

@ -0,0 +1,114 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1480 860" font-family="-apple-system,'PingFang SC','Microsoft YaHei',Segoe UI,sans-serif">
<defs>
<style>
.t{fill:#0f172a}.mut{fill:#475569}.sm{font-size:12px}.xs{font-size:11px}
.h1{font-size:24px;font-weight:700}.gate{font-size:15px;font-weight:700;fill:#0f172a}
.lbl{font-size:13px;font-weight:700;fill:#0f172a}.lab{font-size:12.5px;font-weight:700;fill:#0f172a}
.bj{font-size:10.5px;font-weight:700;fill:#fff}
</style>
<marker id="ar" markerWidth="9" markerHeight="9" refX="7" refY="3" orient="auto" markerUnits="strokeWidth">
<path d="M0,0 L7,3 L0,6 z" fill="#334155"/>
</marker>
</defs>
<rect x="0" y="0" width="1480" height="860" fill="#f8fafc"/>
<text x="40" y="38" class="t h1">图 Q2 · 收益回流半环:语料 → 校准单 → 六去向 → 验证窗口</text>
<text x="40" y="60" class="mut sm">从真数据学赢家模式、经人审治理固化回设计资产;固化物永远人类可读、更新永远过验证窗口。首单 = 质量模型 D5(rubric × 留存校准)。</text>
<!-- 状态约定条 -->
<rect x="40" y="74" width="1400" height="46" rx="9" fill="#f1f5f9" stroke="#94a3b8" stroke-width="1.4"/>
<text x="58" y="94" class="t sm">整图状态:机制已批准(2026-07-02 决策包⑦,草案值生效);数据面随放量就绪——就绪清单③④已落,①②⑤未齐(降级口径见正文)。</text>
<text x="58" y="112" class="mut xs">三性质分色:绿 = 直接改(①②③,治理后半环自落)· 橙 = 转提案(④⑤,归质量 SoT 治理)· 蓝 = 建议报告(⑥,不改资产)。</text>
<rect x="1252" y="86" width="56" height="22" rx="5" fill="#15803d"/><text x="1280" y="101" class="bj" text-anchor="middle">生效</text>
<rect x="1318" y="86" width="56" height="22" rx="5" fill="#475569"/><text x="1346" y="101" class="bj" text-anchor="middle">数据</text>
<text x="40" y="152" class="lab">回流半环主流程(左 → 右),验证窗口回环闭合(下 → 左)</text>
<!-- 站1 数据采集 -->
<rect x="40" y="170" width="300" height="330" rx="11" fill="#fff" stroke="#334155" stroke-width="1.6"/>
<text x="58" y="198" class="gate">① 数据采集(回流语料)</text>
<text x="58" y="222" class="mut xs">以 gameId 为主键串三源 + 评分:</text>
<text x="58" y="246" class="t xs">· 生成特征:品类原型 / 就绪分 /</text>
<text x="58" y="264" class="t xs"> 九门一次过 / 模型档 / 血缘</text>
<text x="58" y="288" class="t xs">· rubric 三分组小计(L2/L3/L4)</text>
<text x="58" y="312" class="t xs">· 留存:D1 留存 · 完玩率</text>
<text x="58" y="336" class="t xs">· 收益:累计分账(稳定前旁证)</text>
<text x="58" y="360" class="t xs">· 成本维:单款成本(efficiency)</text>
<line x1="58" y1="378" x2="322" y2="378" stroke="#cbd5e1" stroke-width="1.2"/>
<text x="58" y="398" class="mut xs">窗口:自然月;≥100 款可提前</text>
<text x="58" y="416" class="mut xs">低产量期 = 观察单常态</text>
<text x="58" y="444" class="mut xs">就绪:③小计已落库(ba82e63c)</text>
<text x="58" y="462" class="mut xs">①②⑤未齐 → 降级跑并显式标注</text>
<!-- 站2 校准单六段 -->
<rect x="420" y="170" width="340" height="330" rx="11" fill="#fff" stroke="#334155" stroke-width="1.6"/>
<text x="438" y="198" class="gate">② 校准单(六段原子闭环)</text>
<rect x="438" y="214" width="304" height="34" rx="7" fill="#f8fafc" stroke="#cbd5e1" stroke-width="1.2"/>
<text x="452" y="236" class="t sm">触发:月度 = 治理带宽;≥100 可提前</text>
<rect x="438" y="254" width="304" height="34" rx="7" fill="#f8fafc" stroke="#cbd5e1" stroke-width="1.2"/>
<text x="452" y="276" class="t sm">输入:语料窗口切片(承接左侧)</text>
<rect x="438" y="294" width="304" height="34" rx="7" fill="#f8fafc" stroke="#cbd5e1" stroke-width="1.2"/>
<text x="452" y="316" class="t sm">分析:品类层 + 全局层(分层合并)</text>
<rect x="438" y="334" width="304" height="34" rx="7" fill="#f8fafc" stroke="#cbd5e1" stroke-width="1.2"/>
<text x="452" y="356" class="t sm">产出:人类可读修订提案(附证据)</text>
<rect x="438" y="374" width="304" height="34" rx="7" fill="#f8fafc" stroke="#cbd5e1" stroke-width="1.2"/>
<text x="452" y="396" class="t sm">治理:按六去向分级过门(见右侧)</text>
<rect x="438" y="414" width="304" height="34" rx="7" fill="#f8fafc" stroke="#cbd5e1" stroke-width="1.2"/>
<text x="452" y="436" class="t sm">验证:窗口对照,劣化即 revert</text>
<text x="438" y="468" class="mut xs">品类提案门槛:切片 ≥50 且赢家组 ≥10</text>
<text x="438" y="486" class="mut xs">全局层:按品类分层合并,禁全体裸取头部</text>
<!-- 站3 六去向 -->
<rect x="840" y="170" width="600" height="330" rx="11" fill="#fff" stroke="#334155" stroke-width="1.6"/>
<text x="858" y="198" class="gate">③ 六去向(三性质分色)</text>
<rect x="858" y="214" width="280" height="74" rx="8" fill="#f0fdf4" stroke="#16a34a" stroke-width="1.4"/>
<text x="872" y="238" class="lbl">① few-shot 正例替换</text>
<text x="872" y="258" class="mut xs">过九门 + 品类小批不降</text>
<rect x="1148" y="214" width="280" height="74" rx="8" fill="#f0fdf4" stroke="#16a34a" stroke-width="1.4"/>
<text x="1162" y="238" class="lbl">② skill 数值锚 / 范式权重</text>
<text x="1162" y="258" class="mut xs">双评审 + 品类小批复跑</text>
<rect x="858" y="296" width="280" height="74" rx="8" fill="#f0fdf4" stroke="#16a34a" stroke-width="1.4"/>
<text x="872" y="320" class="lbl">③ 脚手架默认值 / 结构</text>
<text x="872" y="340" class="mut xs">双评审 + 独立过九门 + 小批</text>
<rect x="1148" y="296" width="280" height="74" rx="8" fill="#fffbeb" stroke="#b45309" stroke-width="1.4"/>
<text x="1162" y="320" class="lbl">④ rubric / 档位观测线</text>
<text x="1162" y="340" class="mut xs">转质量 SoT:双评审 + 创始人</text>
<rect x="858" y="378" width="280" height="74" rx="8" fill="#fffbeb" stroke="#b45309" stroke-width="1.4"/>
<text x="872" y="402" class="lbl">⑤ D11 就绪分权重</text>
<text x="872" y="422" class="mut xs">转提案:创始人拍 · 可整体回退</text>
<rect x="1148" y="378" width="280" height="74" rx="8" fill="#eff6ff" stroke="#2563eb" stroke-width="1.4"/>
<text x="1162" y="402" class="lbl">⑥ 推荐侧建议报告</text>
<text x="1162" y="422" class="mut xs">建议信号;算法与 quality_score 不动</text>
<text x="858" y="478" class="mut xs">绿 = 直接改(低/中/高风险)· 橙 = 转提案 · 蓝 = 不改资产;金标 play-spec 不纳入回流面</text>
<!-- 主流程箭头 -->
<line x1="340" y1="335" x2="416" y2="335" stroke="#334155" stroke-width="2" marker-end="url(#ar)"/>
<text x="378" y="327" class="mut xs" text-anchor="middle">窗口切片</text>
<line x1="760" y1="335" x2="836" y2="335" stroke="#334155" stroke-width="2" marker-end="url(#ar)"/>
<text x="798" y="327" class="mut xs" text-anchor="middle">分级提案</text>
<!-- 去向落地 → 验证窗口 -->
<line x1="1140" y1="500" x2="1140" y2="536" stroke="#334155" stroke-width="2" marker-end="url(#ar)"/>
<text x="1152" y="524" class="mut xs">更新落地后绑定窗口</text>
<!-- 验证窗口带 -->
<rect x="420" y="540" width="1020" height="108" rx="10" fill="#fff" stroke="#334155" stroke-width="1.6"/>
<text x="438" y="568" class="gate">④ 验证窗口(回环闭合)</text>
<text x="438" y="592" class="t xs">对照基线:同品类存量未更新款(更新只作用于新生成款);曝光配比 / 玩家来源突变 → 结论降级为观察</text>
<text x="438" y="612" class="t xs">判据二分:即时(过门率 / rubric 分布)下一窗口坐实;滞后(留存)允许跨窗坐实,坐实前标观察期、不追加同去向变更</text>
<text x="438" y="632" class="t xs">劣化即 revert(资产全 git 版本化)并记因;同窗同品类只动一类去向;品类批产收工后才启动该品类校准</text>
<!-- 回环折线:验证窗口 → 数据采集 -->
<path d="M 418,594 L 190,594 L 190,504" fill="none" stroke="#334155" stroke-width="2" marker-end="url(#ar)"/>
<text x="204" y="582" class="mut xs">结论回下一单 · 新一批数据回采集</text>
<!-- 防学偏红线带 -->
<rect x="40" y="672" width="1400" height="96" rx="10" fill="#fef2f2" stroke="#dc2626" stroke-width="1.8"/>
<text x="58" y="698" class="sm" font-weight="700" fill="#dc2626">防学偏(Goodhart)五条 —— 回流环的硬边界</text>
<text x="58" y="718" class="mut xs">① 优化锚永远是真数据(留存/完玩,收益旁证),rubric 分只是特征;② 固化物永远人类可读(范式/数值锚/正例)且过人审;③ 权力红线:L2–L4 非阻塞不因回流变;</text>
<text x="58" y="736" class="mut xs">④ 验证窗口强制,没有「改完即成功」;⑤ 多样性非劣化门:侧写(品类分布 + AST 相似度)低于基线默认不采纳、创始人可豁免——与 D9 分工 = 微观批内 vs 宏观跨窗。</text>
<text x="58" y="754" class="mut xs">金标 play-spec 与验收基准有意不纳入回流面(防锚漂移);升门动议只能走质量模型 SoT 修订,回流半环无权把任何分数升成门。</text>
<!-- 脚注 -->
<text x="40" y="800" class="mut xs">映射:数据飞轮.md §3.3(回流半环)· 机制推理与评审史 = docs/agent-specs/2026-07-02-数据飞轮回流环-设计.md | 状态:机制已批准(决策包⑦)· 数据面随放量 | 设计变动须同步本图</text>
<text x="40" y="820" class="mut xs">首单 = 质量模型 D5:rubric 三分组小计 × 留存相关性 → 档位观测线与 D11 权重复审(含 efficiency 维错配复核);就绪清单五项齐 = 首单输入完整。</text>
</svg>

After

Width:  |  Height:  |  Size: 9.8 KiB

View File

@ -38,7 +38,7 @@ date: 2026-06-24
**资产市场要做成可检索、可复用、可流通、权利链清晰的资产层。** 创作者的私有素材库能升级成跨创作者可浏览的货架;每个素材带清晰的授权范围、锁风标签、分成规则;选用别人的素材进自己的草稿要走授权采购,采购产生的收益按分成规则结算给素材作者。它的工程边界是:素材的结构化、授权类型属于素材中心模块,流通的钱走 trade 模块,生成侧只负责"把选用的素材透传进生成上下文"并在血缘里记下素材来源。
**收益回流要做成统一 schema 的训练与评估语料,把生成数据和线上结果串成一条数据线。** 把生成全过程数据(输入/中间产物/九门裁决/就绪分)和线上数据(播放/留存/收益)按一张统一 schema 归档,供三个下游消费:校准 Template/Debug Skill 的"哪些品类骨架更容易过门"、校准推荐排序的"哪些游戏更容易留住玩家"、未来自训小模型的"生成什么更容易赚钱"。它要复用 agentic 集成架构的统一 trace 契约,不重复造数据管线。
**收益回流要做成统一 schema 的训练与评估语料,把生成数据和线上结果串成一条数据线,再经回流半环把学到的东西固化回资产。** 把生成全过程数据(输入/中间产物/九门裁决/就绪分)和线上数据(播放/留存/收益)按一张统一 schema 归档,供下游消费:校准品类资产(few-shot / skill 数值锚 / 脚手架)的"哪些品类骨架更容易过门又留得住人"、给质量模型出 rubric 档位观测线与 D11 权重的修订提案、为推荐排序产出建议信号(算法与 quality_score 机制不动)、以及远期自训小模型的"生成什么更容易赚钱"。它要复用 agentic 集成架构的统一 trace 契约,不重复造数据管线;从语料到资产的机制(校准单)见 §3.3。
三条共享一条总原则:**不重写任何主干,全部 additive。** 血缘是源项目 schema 的新增可选顶层字段加一张新血缘表;资产市场复用 `game_material` 加 trade 的入账原语;收益回流复用已有的 trace_json/trade_income/game_stat,只新增一层归档。任何一条都不动 GamePackage 产物 schema、不动九门、不动现有发布链。
@ -185,9 +185,9 @@ flowchart TB
资产市场的分期落地由此清晰:**先有素材契约(P-MAT 升级),并在创作者走选素材通道时用血缘 `assetRefs` 把"谁用了谁的素材"记起来(注意这要靠选素材通道接入、不是溯源链顺带产出);再等支付接通,才开授权采购与分成。** 在支付接通前,资产市场可以先做"只读"的一半——跨创作者素材货架的浏览、选用(免费/自有授权范围内),把流通的钱那一半留到支付就绪。
### 3.3 收益回流:训练语料的数据管线形态
### 3.3 收益回流:语料形态与回流半环
收益回流做的事,是把散在三个模块的数据按一张统一 schema 归档成训练与评估语料。它复用 agentic 集成架构预留的 `contracts/trace/` 统一轨迹契约,向收益侧延伸,不另造管线。
收益回流分前后两个半环。前半环管数据:把散在三个模块的数据按一张统一 schema 归档成训练与评估语料——复用 agentic 集成架构预留的 `contracts/trace/` 统一轨迹契约,向收益侧延伸,不另造管线。后半环管改进:从语料里学出赢家模式,经人审治理固化回设计资产,再用验证窗口证明改动没变差——回流单元叫「校准单」,机制于 2026-07-02 随回流环设计折入本节(创始人决策包⑦已批准、草案值生效;机制推理与评审史见 `docs/agent-specs/2026-07-02-数据飞轮回流环-设计.md`)。缺后半环的后果很具体:品类四件套(设计 skill / 脚手架 / few-shot / rubric)与质量模型的档位观测线、D11 就绪分权重,上线之日就是冻结之日——飞轮只进数据、不出改进,资产层就不是「越积越厚」而是静态存量。
**数据三源,生成侧已在库、收益与留存侧的连接键待补。** 缺的不只是归档,还有把三源"按一款游戏的生命周期串起来"所需的两个连接键(下图标⚠️处):
@ -210,17 +210,61 @@ flowchart LR
A2 --> D1
B1 --> D1
C1 --> D1
D1 --> E1["Template/Debug Skill 校准<br/>哪些品类骨架更容易过门"]
D1 --> E2["推荐排序校准<br/>哪些游戏更容易留住玩家"]
D1 --> E3["未来自训小模型语料<br/>生成什么更容易赚钱"]
D1 --> E1["品类资产校准(去向①②③)<br/>few-shot / skill 数值锚 / 脚手架"]
D1 --> E4["质量模型修订提案(去向④⑤)<br/>rubric·档位观测线 / D11 权重"]
D1 --> E2["推荐排序建议信号(去向⑥)<br/>算法与 quality_score 机制不动"]
D1 --> E3["远期自训小模型语料<br/>生成什么更容易赚钱"]
```
**归档语料的一条记录,以 gameId 为主键,把三源的特征拼到一起:** 生成侧的特征(品类原型 archetype、三维画像、就绪分、九门是否一次过、用了哪个模型档、血缘 depth/origin)、留存信号(次留、完玩率、播放量)、收益信号(该游戏累计广告分账、是否产生过收益)。这张归档表是离线的、append-only 的、按时间窗批量产出的——它不在生成热路径上,由一个离线 job 定期把三源 join 出来落档,所以对线上零影响。但有个现状前提:**"以 gameId join 三源"现在还做不到**,因为收益侧 `game_trade_income` 没有 game_id 列(join 不上)、留存侧 `game_telemetry_game_stat` 没有次留字段(口径还没有)。所以收益回流的前置不只是建归档 job,而是先把 §1 列的两个连接键补上(W4 给 trade_income 加 game_id、定义并新增留存聚合),否则这张归档表能拼出来的只有生成侧特征,收益和留存两列是空的。这条语料要学的是 HJ-GEN-001 GC10 那条——"什么样的生成特征,最终既过了门、又留住了人、又赚到了钱",正是现行进化语料漏掉的那一半,但它的原料(收益、留存的真实标签)依赖前置补齐才存在。
**归档语料的一条记录,以 gameId 为主键,把三源的特征拼到一起:** 生成侧的特征(品类原型 archetype、三维画像、就绪分、九门是否一次过、用了哪个模型档、血缘 depth/origin)、rubric 三分组小计(L2 丰富 / L3 留存结构 / L4 传播结构,已随评分尺 v2 落库,commit `ba82e63c`)、留存信号(次留、完玩率、播放量)、收益信号(该游戏累计广告分账、是否产生过收益)、成本维(单款生成成本,供 D11 efficiency 维复核)。这张归档表是离线的、append-only 的、按时间窗批量产出的——它不在生成热路径上,由一个离线 job 定期把三源 join 出来落档,所以对线上零影响。但有个现状前提:**"以 gameId join 三源"现在还做不到**,因为收益侧 `game_trade_income` 没有 game_id 列(join 不上)、留存侧 `game_telemetry_game_stat` 没有次留字段(口径还没有)。所以收益回流的前置不只是建归档 job,而是先把 §1 列的两个连接键补上(W4 给 trade_income 加 game_id、定义并新增留存聚合),否则这张归档表能拼出来的只有生成侧特征,收益和留存两列是空的。这条语料要学的是 HJ-GEN-001 GC10 那条——"什么样的生成特征,最终既过了门、又留住了人、又赚到了钱",正是现行进化语料漏掉的那一半,但它的原料(收益、留存的真实标签)依赖前置补齐才存在。
**为什么挂在统一 trace 契约下而不是新造。** agentic 集成架构已经定了 `contracts/trace/` 要做成"一个公共核心子集 + JSON 扩展列"的统一轨迹,记每次生成发生了什么。收益回流要的"生成全过程特征"和它高度重叠——轨迹本就含九门裁决、成本、就绪分。所以收益回流语料 = 统一 trace 的归档记录 + 一层从 telemetry/trade join 进来的"线上结果标签"。把它实现成 trace 契约的下游归档,而不是平行的第二套数据管线,避免"生成数据存两份、口径漂移"。这条依赖关系决定了收益回流**排在统一 trace 契约落地之后**——而统一 trace 契约本身是 agentic 集成架构标着"随控制面 phase-1 落地"的待建项。
**为什么是数据线(自有端内测)成型后的增量。** 收益信号要有意义,得先有真实收益——而真实收益依赖广告真实投放、依赖一定量的真实玩家留存数据。在自有端内测、数据量还小的时候,收益信号稀疏、噪声大,回流语料训不出有用的东西。所以创始人把它定为"数据线成型后的增量"是对的:**先让生成跑起来、让玩家玩起来、让广告真实计费,攒够数据,收益回流才有原料。** 它是飞轮转起来之后的加速器,不是飞轮的起点。
#### 从语料到资产:回流半环与校准单
![图 · 收益回流半环:语料 → 校准单 → 六去向 → 验证窗口](assets/quality-02-回流半环.svg)
上面的语料解决"数据怎么串成一条",回流半环解决"语料怎么变成资产的改进"——谁在什么节奏下做分析、赢家怎么定义、分析结果能改动哪些资产、改动谁批准、改坏了怎么退。回流半环的原子动作是**校准单**:一张单 = 一次"从数据到提案"的完整闭环,按触发、输入、分析、产出、治理、验证六段定义。学出来的永远是人类可读的设计模式(范式、数值锚、正例),固化永远过人审治理门,改完必须在验证窗口对照"同品类未更新款"证明没变差。
**触发**:放量后按自然月出单——月度节奏管的是治理带宽(人审可持续),不管结论资格;窗口内累计新增 ≥100 款可提前出单,防高产量期积压。低产量期月度单允许只出"观察单"(仅观察、无提案),这是常态不是失败。首单 = 质量模型 SoT(`架构/生成引擎/游戏质量与爆火能力.md`)的 D5:rubric 分组小计 × 留存真数据相关性 → 档位观测线与 D11 权重复审,含 D11 efficiency 维(BUDGET_RMB 与便宜档实际成本错配)的复核——该项是质量模型交给质量轨的首个复核件,随首单一并做。
**输入**:回流语料的窗口切片,特征集逐字承接上文归档记录:生成侧特征(品类原型 archetype、三维画像、就绪分、九门是否一次过、模型档、血缘 depth/origin)+ rubric 三分组小计(L2 丰富 / L3 留存结构 / L4 传播结构)+ 留存信号(D1 留存、完玩率)+ 收益信号(累计分账)+ 成本维(单款成本,供 efficiency 复核)。首单暂不消费三维画像与血缘 origin——留作特征库、消费面随后续单扩展,是有意暂缓,不是遗漏。
**分析**:赢家对照先行、回归其次,不上黑盒;分两层,样本资格各自独立。**品类层**出品类资产与档位观测线提案:品类内按"D1 留存 + 完玩率"双指标取头部分位(top 20%)为赢家组,对照其余组找特征差;出品类级提案的门槛 = 切片 ≥50 款且赢家组绝对数 ≥10,切片 30–49 款只出描述性观察,不足 30 不出品类结论。**全局层**出 D11 权重与 rubric 通用底座维度提案:必须按品类分层后再合并(品类内标准化或分层对照),禁止全体裸取头部分位——跨品类留存基线不可比,裸取会让"特征差"实为"品类差";全体窗口 ≥100 款才出全局级结论。放量初期(四品类均分、每品类 ≈25 款)首单大概率只够全局层:结论口径 = 分层合并的方向性结论 + 各品类描述性观察。收益信号在广告真实计费稳定前只作旁证、不作分组依据(稀疏期噪声大,与上文"数据线成型后的增量"同一判断)。这里的样本量是放量后真数据统计的固有要求,与生成侧 spike 验证的 n=5 收敛环(创始人既定口径)是两回事,不冲突。
**产出**:修订提案,人类可读、逐条给证据(特征差数据 + 建议改动 + 预期影响),绝不直接改资产;提案对象限于下面的六去向清单。**治理**:按去向分级过门,所有资产更新走 git(版本化、可 revert)。**验证**:每次更新绑定验证窗口,对照与判据都成立才算数。对照基线 = 同品类的存量未更新款:资产更新只作用于新生成款,存量款天然是对照组;跨窗品类曝光配比或玩家来源发生显著变化时,结论降级为观察;相邻未更新品类作旁证。判据分两类:即时判据(过门率、rubric 分布)在下一窗口坐实;滞后判据(留存)因"发布→玩→次日→聚合"的物理延迟,允许跨一个窗口延后坐实——坐实前该更新标"观察期",观察期内不对同一去向追加变更。劣化即 revert 并在下一张单记因;改进主张只有过了验证窗口才算坐实,校准单自身不宣称成功。
校准单的产出去向限定六类、三种性质,权责不同:
| 去向 | 例子 | 性质 | 治理门 |
|---|---|---|---|
| ① few-shot 过门正例 | 用赢家款替换品类 few-shot 正例 | 直接改(低风险) | 新正例本身过九门 + 用新正例生成的品类小批 n=3–5 过门率与 rubric 分布不降 |
| ② 品类设计 skill 的数值锚与范式权重 | 客流节奏区间、组合配方偏好、成长曲线锚 | 直接改(中风险) | Codex+Opus 双评审 + 品类小批复跑 |
| ③ 脚手架默认值与结构 | `_template-*` 骨架默认参数、结构件增删 | 直接改(高风险) | 双评审 + 脚手架独立过九门 + 品类小批 |
| ④ rubric 维度、档位观测线 | 某维度与留存零相关 → 重审;线区间锁值 | 转提案 | 归质量模型 SoT 管辖:双评审 + 创始人;评分尺变更须金标复验(分组小计漂移 ≤±1) |
| ⑤ D11 就绪分权重 | 效率维错配、维度权重回归 | 转提案 | 校准单提案 + 创始人拍;可整体回退上一版 |
| ⑥ 推荐侧建议 | 品类池配比、新品类扶持建议 | 建议报告 | 为推荐排序产出建议信号(算法与 quality_score 机制不动),只产报告交运营 |
三种性质的分界:①②③是治理后由回流半环直接落改的资产;④⑤只产提案,落地走质量模型 SoT 自己的修订治理;⑥不改任何资产。上文归档图里的消费方向与六去向一一对应——品类资产校准 = ①②③,质量模型修订提案 = ④⑤,推荐排序 = ⑥(只产建议信号,feed 算法与 quality_score 既有回灌机制不动),远期自训小模型语料不经校准单、语料备好即可。**金标 play-spec 与验收基准有意不纳入回流面**:验收基准若随数据漂移,跨窗可比性与防 Goodhart 的锚都会被破坏;基准变更只能走品类件修订 + 质量模型 SoT 治理,不走数据回流。另有三条并发与时序纪律防污染:同一窗口对同一品类只动一类去向(否则验证窗口归因不了功过);skill / 脚手架 / few-shot 的变更一律走各自既有的过门验收,回流半环不另立验收;品类四件套(W-GENRE)批产收工后才对该品类启动回流校准——批产期与校准期重叠,验证窗口就归因失效。
**防学偏(Goodhart)五条。** 其一,优化锚永远是真数据(留存 / 完玩,收益作旁证),rubric 分只是特征、不是优化目标——学"什么特征伴随留得住人",不学"怎么把 rubric 分刷高"。其二,固化物永远是人类可读的设计模式(范式描述、数值区间、正例),不是模型参数、不是自动 prompt 改写——每次固化都过人审,审的人看得懂改了什么。其三,质量模型的权力红线不因回流而变:L2–L4 依旧非阻塞,回流半环无权把任何分数升成门,升门动议只能走质量模型 SoT 修订。其四,验证窗口强制:没有"改完即成功",只有"对照组不劣化才算数"。其五,**多样性非劣化门**:校准单每期附多样性侧写(品类分布 + 品类小批的 AST 相似度,复用既有"多款不雷同"口径),提案采纳的前提是侧写不低于基线(阈值随首单定标);低于基线的提案默认不采纳,创始人显式豁免才放行。侧写与 D9 反同质化互补不重复:D9 观测生成批内相似度(微观、实时),侧写看回流导致的跨窗品类收窄(宏观、慢性)——后者正是"回流环把平台学窄"这个失败模式的探测器。
回流半环启动前,数据面有五项前置,项项有主:
| # | 前置 | 现状 | 归属与工单指针 |
|---|---|---|---|
| ① | `game_trade_income` 加 game_id(W4 四步链) | 缺列,join 不上 | 变现线既有挂账([变现与单位经济](../../运营/变现与单位经济.md) §按游戏粒度埋点),即本节前文两连接键之一 |
| ② | 次留聚合(D1 留存口径) | 聚合表无次留 | 工单已立 = MVP 作战清单 W-REAL R6:初期用旁路聚合表按"game_id × 日"粒度存 D1 回访数,不动既有聚合表结构、quality_score 回灌链路零风险;登录态用 userId,未登录对齐 telemetry 契约既有匿名标识口径 |
| ③ | rubric 三分组小计落库 | **已落**:评分尺 v2 升 11 条 + L2/L3/L4 三分组小计落库(commit `ba82e63c`) | 生成线前置小工单,已完成 |
| ④ | 统一 trace 归档载体 | 契约位已立(`contracts/trace/` 核心五字段、tier2/saa 两 schema),tier2 adapter 已接;cheap 线接入与统一落表待接 | 契约位 = agentic 集成架构既有;归档 job = 本节自有实现项 |
| ⑤ | 离线归档 join job | 未建 | 本节自有实现项,随①②④齐后落 |
五项齐 = 首单(D5)输入完整。降级路径分两类:①②未齐可降级跑(缺收益列则收益轴空、留存用完玩率 + 互动率代理),结论显式标注降级;**③没有替代轴**——rubric 分组小计是 D5 的自变量,它若断档(如后续评分尺变更未同步落库),首单只能退化为"纯留存 / 生成特征观察单"并显式标注,rubric×留存相关性结论顺延到落库恢复后的下一单,不可用别的轴降级替代。
回流半环自身也要仪器化。产单 owner = 质量轨,治理按六去向分级,运营建议(⑥)抄送人办侧;每张校准单尾部记两个健康度数——本窗"提案数 / 采纳数"、既往更新的"验证窗口通过率",校准单序列本身就是台账。连续两窗提案零采纳,或验证窗口通过率 < 50%,由质量轨发起机制修订(走双评审)——那说明分析口径或治理门有问题,修机制而不是硬出单。隐私边界不变:回流半环不引入新的玩家个体数据面,分析一律在游戏粒度聚合之上(脱敏对齐 §5 风险四)。
---
## 4. 分期落地:先后依赖
@ -264,7 +308,7 @@ flowchart TB
阶段二、三(资产市场):跨创作者素材货架可检索;选用市场素材进草稿、透传进生成、血缘 assetRefs 正确记录;支付接通后,授权采购走 trade 入账、素材作者按分成比例收到余额、`uk_source` 幂等不重复分账、账户恒等式 `balance+frozen+total_withdraw=total_income` 不破。
阶段四(收益回流):前置先验——`game_trade_income.game_id` 已透传(W4 四步链落地)、留存口径已定义并有聚合字段、统一 trace 契约已落地,这三者齐了 join 才成立;在此之上,归档 job 能把生成特征+留存+收益按 gameId join 成语料、离线产出对线上零影响;语料能喂给 Template/Debug Skill 校准与推荐排序;归档复用统一 trace 契约、不存第二份生成数据。
阶段四(收益回流):前置先验——`game_trade_income.game_id` 已透传(W4 四步链落地)、留存口径已定义并有聚合字段、统一 trace 契约已落地,这三者齐了 join 才成立;在此之上,归档 job 能把生成特征+留存+收益按 gameId join 成语料、离线产出对线上零影响;语料能支撑校准单出单(品类资产校准提案、质量模型修订提案、推荐排序建议信号,口径见 §3.3 六去向);归档复用统一 trace 契约、不存第二份生成数据。回流半环自身的验收在机制层:首单(D5)产出 ≥1 条有证据的修订提案且治理门走通,首个被采纳更新过验证窗口(留存判据允许跨窗坐实)。
**风险集中在四处。**
@ -291,3 +335,9 @@ flowchart TB
5. **收益回流语料的归属与使用授权。** 把创作者的生成数据、玩家的留存数据用作训练语料,需要在用户协议层面拿到授权(尤其未来用于自训小模型)。这条是产品/法务口径,工程上随 trace 脱敏规则走,但"能不能用、怎么告知用户"要创始人和律所定。
6. **P-FED-12 正式升 P0(创始人 2026-06-22 已定:走 RTM 升 P0)。** 创始人拍板正式升 P0:Doc A(`产品/需求清单.md`)的 P-FED-12 已由 P1 改 P0,前端档 §7.3 口径校准同步。阶段一据此按 P0 核心功能投入。注:P-FED-12 已计入 Doc A 现行的 55 P0(实测计数 = 55、含 P-FED-12;P-PUB-01 一键多渠道按"外部渠道受日历闸门阻塞"降 P1 抵平),所以全局"55 P0"头号口径不变、无需上调。
---
## 变更记录
- **2026-07-02** §3.3 折入回流半环机制(创始人决策包⑦批准、草案值生效):新增"从语料到资产:回流半环与校准单"一节——校准单六段(触发/输入/分析/产出/治理/验证)、六去向三性质治理、防学偏五条、数据就绪清单五项;消费方清单同步改写,消除两套并列分类——品类骨架校准细化为去向①②③,rubric 档位观测线与 D11 权重(去向④⑤)为质量模型修订提案面,推荐排序改为"为推荐排序产出建议信号(算法与 quality_score 机制不动)",远期自训语料不变;§2 目标与 §5 阶段四验收措辞随之对齐。机制推理与评审史 = `docs/agent-specs/2026-07-02-数据飞轮回流环-设计.md`(该档随本次折账降留痕)。

View File

@ -0,0 +1,144 @@
---
topic: 游戏质量与爆火能力
canonical: true
date: 2026-07-02
---
# 游戏质量与爆火能力:四层质量模型
![四层质量塔](assets/quality-01-四层质量塔.svg)
> **生效状态**:本模型经 Codex + Opus 双评审后,由创始人 2026-07-02 以决策包⑦一次拍定生效——四层定义与权力分配、档位观测线、rubric 计分制、平衡门判法五裁定、「收窄 A–E」历史化、富三门档位适用与断言分界、D11 权重管辖移交,七项俱批;档内数值草案即生效值,观测线区间待首批品类件回填分布后锁成单值(§10)。设计留痕 = `docs/agent-specs/2026-07-02-游戏质量与爆火能力-设计.md`。
质量不是一个分,是四层递进的塔:机器门保「能玩」(L1,质量分层内唯一拒发权),LLM 评「有料」(L2),结构要求保「想再玩」(L3)与「想传出去」(L4)的前提;玩家真实数据是 L3/L4 的最终裁判,并回流校准 L2–L4 评分与 D11 权重。本档立标准、判定归属与数值档位,是 W-GENRE 品类件 rubric、tier2 富三门反馈契约、数据飞轮留存口径的共同上位标准。它不重定义九门/富三门/首局门的具体判据(判据 SoT 仍是[验收门](验收门.md),本档只裁消费口径),不建留存/传播数据的采集管道(归 telemetry 线与[数据飞轮](数据飞轮.md)回流环),不替 agent 调平衡数值,不写各品类的完整 rubric(归 W-GENRE 品类件),不造统一「质量总分/爆火分」或任何自动爆火门,也不改开闸六门的治理设计(仅接管其中 D11 就绪分的权重管辖)。
## 1 命题与实证:为什么「过九门」不够
命题来自创始人两条既有裁定:「轻量≠简单——便宜档是低成本生成相对不复杂、又不易同质化的高质小游戏,不是产没人会玩的简单玩具」([agentic运行时架构图说](agentic运行时架构图说.md) §4.1);「便宜 = LLM 低参与度,不是游戏低质量,游戏底线 = 2D 丰富游戏(进货/解锁/成长/音乐/丰富玩法)」(创始人纠正,记于 `docs/agent-specs/2026-06-29-便宜档降AI参与-减摩擦与扩模板覆盖-设计.md` §6)。这不只是生成线的事:feed 分发的游戏若普遍单薄,推荐、广告、remix 同款这三条变现与增长线全部失去弹药——爆火能力是平台命题。
分层的必要性有三个实证。第一,**「过九门 ≠ 好玩」已被现网数据坐实**:M1 达标 bake-off 三品类 15/15 全过九门,但丰富度评分(旧 8 条口径,满分 8)均分只有 whack-mole 2.4、click-score 3.4、shop-serve 4.2。机器门保「能玩、玩得通」,对「有料、耐玩」不设防,也不该设防——判「有料」超出确定性信号的能力边界;缺的不是把九门加严,而是九门之上的分层标准。第二,**质量概念此前散落、无上位标准**:D11 就绪评分的权重自标占位待校准;丰富度清单已实装但只观测;GP12 王蓝莓黄金标尺、GP2 首局 30 秒、「完玩率 + 次日留存」散在产品域各处;W-GENRE 品类件的 rubric 明文一直在等上位标准,先批产会返工。第三,**平衡门判法此前双写悬而未裁**:判「平衡」一静一动两套(静态数值可达检查 advisory、真玩经济门 enforced),该谁说了算、失败后反馈里该有什么,tier2 n=5 收敛环 runbook(`docs/plans/2026-06-28-002-feat-tier2-n5收敛环-go-no-go-plan.md`,工单 F-4)明文挂到本模型一并裁定(§8)。
## 2 四层总览与权力分配
| 层 | 回答 | 判定者 | 量纲 | 权力 | 消费者 |
|---|---|---|---|---|---|
| **L1 机制可玩** | 能玩、玩得通吗 | 机器真玩(九门 + 富游戏三门 + 首局门),零 LLM | 布尔(过/不过) | **质量分层内唯一拒发权** | 生成环放行、生产复验 |
| **L2 内容丰富** | 有料、耐玩吗 | LLM 验证 agent 按品类 rubric,非阻塞 | 逐条 0/1 + 分组小计 | 观测 + 批次验收线,不拦单款 | 品类件验收、批次观测、回流分析 |
| **L3 留存结构** | 想再玩的结构前提在吗 | 生成时 rubric 留存组;上线后玩家真数据 | rubric 分;运营 0–100 | 观测;真数据经 quality_score 影响分发 | feed 排序、数据飞轮 |
| **L4 传播钩子** | 想让别人看的结构前提在吗 | 生成时 rubric 传播组;上线后 share/remix 漏斗 | rubric 分;漏斗率 | 观测;爆款筛选归运营 | remix 网络效应、爆款签约(P-IPX-06) |
层间纪律三条,是整个模型的权力宪法。
**质量侧的发布权只在 L1。** 一款游戏能不能进 feed,质量分层内由确定性证据说了算,L2–L4 任何分数都不拦发布。这是既有防 Goodhart 红线(效果层「绝不放行也绝不拒发」)在整个模型上的推广:LLM 评分与结构评分都是软信号,软信号一旦拿到拒发权,评分尺立刻变成被优化的目标。发布链上另有治理拒发权(GP9 合规、D12 控制平面),在本模型之外、不受本档约束。
**推荐权在真数据。** 玩家行为聚合成运营质量分(0–100)回灌 feed 决定「值不值得推」;生成侧 rubric 分只影响批次改进与回流分析,不直接改 feed 排序。
**「好玩」的终审归人。** 审核台人工终审保留,自动分只辅助排序与抽样。
另有一条贯穿 L3/L4 的诚实边界:设计侧 rubric 只测「结构存在性」(钩子在不在),它与真实留存/传播效果的相关性要到放量后校准(§10)才被验证;验证之前,L3/L4 分不得当作效果预测使用。
一处必须消歧:仓内有两套「门」。真玩九门(A_boot…I_control,harness 真玩判)是**验收面**;开闸六门(D12 控制平面/GP9 合规/9d trace/D11 就绪分/D9 反同质化/首局体验)是**放量治理面**。本模型的 L1 指前者加富游戏三门与首局门;开闸六门不属质量分层,其中与质量相关的观测件 D11 就绪分,权重管辖自本档定稿起归质量轨(§9)。
## 3 L1 机制可玩:唯一拒发权与两条口径裁定
判据本体在[验收门](验收门.md),本档不重抄:九门 = 客观健康门 A_boot/B_uncaught/C_frame/D_render/E_live 加 driver 依赖门 F_wiring/G_input/H_progress/I_control,真玩驱动、CDP 探针、零 LLM;富游戏三门 = tier2 多系统档专属(三联动/经济/latch);首局门 = H 门的 additive 派生超集(可玩 ≤2s/首反馈即时/60s 品类闭环),FAIL 不推翻 H。定稿时点的现状:便宜档 M1 三品类 15/15 达标;tier2 收敛环 conditional,卡在经济门与 H_progress——判法与反馈的解法见 §8。
**裁定一(消费口径):driven 时九门全量 AND 为现行 L1 口径,「收窄 A–E」历史化。** 验收门 §2.4 曾记「生成环消费从九门全过收窄成只认 A–E,G/H/I 降参考,F_wiring 改 VLM 判」——那是 gamedef 时代 driver 缺失、G/H/I 不可靠时的消费策略。现行便宜档在门跑前自动生成 play-spec 使 driven=true、九门全部致命,cheap 与 tier2 的判据代码都认九门全量与富门,M1 达标 15/15 正是这个口径。据此裁定:driven 时九门全量 AND 为现行 L1 口径;undriven 时 E_live/H_progress 自动降 advisory 的分级保留在 harness(已实装);「收窄 A–E」条款自本档定稿起历史化,消除文档-代码漂移,存量引用面随收口逐一改注,此后再发现的引用面一律改该处引用、不回改本裁定。F_wiring 保持机器硬门;VLM 视觉判定归 L3 视觉软检,永远软。
**裁定二(富三门档位适用):富游戏三门只随「多系统富游戏」档位走**(现为 tier2 经营类)。便宜档经营品类的进度判定 = occupied 反应族驱动 + score 递增断言,不引入 tier2 经济平衡门(盈利/破产双路判)——单循环游戏没有「经济死局」问题,把它强推到便宜档,是给 L1 加不属于该档位的判据。这里要分清「门」与「断言」两个层次:play-spec 里经 H 门校验的 per-game 真玩断言(score 递增,以及游戏含消费扣减时的 currency 扣减断言)是便宜档 L1 的正当判据,照常使用;本裁定挡的是门级判据跨档,不是禁用某类断言(断言与 rubric 的分界见 §4 规范五)。两档判据差异是档位事实,不是待统一的债。
## 4 L2 内容丰富:rubric 体系
丰富有一条结构底线,便宜档也必须有,这是创始人「2D 丰富游戏」裁定的工程化:**成长轴**(数值或等级)、**解锁阶梯**(≥3 级,任意时刻可见下一个)、**收集/装饰或等价第二动机**、**音反馈**。这四件是生成 agent 在设计阶段的交付物(品类设计 skill 的职责),不是九门判据——丰富的「生成」归生成 agent,丰富的「校验」归 LLM 验证 agent,两边都不落项目代码。
计分制先立住:每条 rubric 记 0/1(成立/不成立),逐条给一句理由;条目按层标注(L2/L3/L4),一次 LLM 评分同时产出**三个分组小计**(L2 丰富小计/L3 留存结构小计/L4 传播结构小计),不另起三套评分,也**不设单一总分**——单一总分好看,但会诱导 Goodhart;分组小计才对得上三层各自的消费点。通用底座与品类扩展**分母分开**,不混合平均。每条 rubric 的最小形状 = 编号/层标/一句可判定的判据/一对正反例;品类件照这个形状产条目,评分 agent 照它出「逐条判定 + 理由 + 三组小计」。
规范六条,W-GENRE 品类件照此产 rubric:
**规范一:通用底座 v2 = 11 条,已实装为现网评分尺。** 原 8 条(即时反馈/可见成长/下一个解锁/30 秒爽点/数值滚雪球/情感锚/放置回归/音反馈,与 `.agents/skills/sim-business-game-design.md` §10 同源)加新增 3 条:L3「首 3 分钟脚本成立:0–10s 零阅读上手/10–60s 首次升级/1–3min 露出 2–3 个后续锁」、L4「炫耀时刻:有可截图分享的结算/成就画面,不是打完就黑屏」、L4「同款钩子:品类原型 + 主题标签元数据可供 remix 预填」。分组归属:L2 = 即时反馈/可见成长/30 秒爽点/数值滚雪球/情感锚/音反馈共 6 条,L3 = 下一个解锁/放置回归/首 3 分钟脚本共 3 条,L4 = 炫耀时刻/同款钩子共 2 条。这 11 条已随 `cheap-worker/cheap_verify.py` 的 RICHNESS_CHECKLIST(commit ba82e63c)实装为便宜档丰富度验证 agent 的评分尺并落库三分组小计;实装遵守锚定纪律——原 8 条判据文本与顺序一字不改,新增 3 条追加于末尾,层标只是聚合归属、不改原条目的判据本身。新增 3 条的判据文本仍标草案,随首个品类件落地验证后确认或修订(修订须金标复验)。
**规范二:品类扩展 ≥4 条。** 每品类另加品类特有维度(经营范例:进货补货循环成立/客流节奏有紧张感/双货币分工明确/卡点「差一点」不卡死;其余品类由各品类件提出),同一字段形状、同样标层,分母独立小计。
**规范三:锚定纪律。** 每品类 ≥1 金标正例 + ≥1 薄反例;rubric 文本或评分 prompt 变更必须金标复验,单款分组小计漂移超 ±1 即回退。LLM 裁判的漂移用确定性锚点治,不用另一个 LLM 治。
**规范四:判定形态。** 纯 LLM、非阻塞、逐条给理由;绝不写成代码校验、不进九门、不进脚手架(创始人红线)。评分调用失败/超时/解析失败一律降级为「本次未评出」,不抛、不阻断生成、不进达标判定——非阻塞语义自带降级,也把错杀面封为零(评分再错也不拦游戏)。每款一次评分调用,成本占比可忽略(便宜档 <¥0.1 量级)。
**规范五:与 L1 断言的分界。** `sim-business-game-design` skill §10 曾注「4 条可机检」,这四条不同质,分两类处置:纯 code-presence 类(即时反馈/下一个解锁/音反馈——代码里存在调用 ≠ 体验成立)按红线软化为 LLM 评分维度,不落项目代码;经 H 门 assertAfterPlay 校验的 per-game 真玩断言(可见成长的 score/资源递增断言、经营的 currency 扣减断言)属 L1 机制可玩,保留为硬断言、不软化——把真玩硬证据降成软评分会削 L1 的拒发权,方向恰好反了。同名两物并存且分工明确:L1 断言判「机制上真发生」,L2 rubric 判「体验上成立、有层次」;skill §10 注记照此改口。
**规范六:消费点。** 分组小计消费于品类件验收与批次观测(档位观测线,§7)和回流分析(§10);逐条理由消费于品类件迭代——哪条维度长期不成立,就是品类设计 skill 或脚手架的改进信号。
## 5 L3 留存结构
设计侧三要素,进品类设计 skill 与 rubric、生成时交付:**目标梯度**(任意时刻「下一个目标」可见:解锁阶梯、任务清单)、**难度节奏**(爽点与平台期交替;成长曲线 ×1.15/级为默认锚;卡点造「差一点」的张力、不卡死)、**回归钩子**(每日首登奖励、离线收益、限时目标,便宜档至少一种)。首 3 分钟脚本是三要素在开局的浓缩,rubric v2 单列一条。
真判在上线后,口径立到可建字段的程度:**D1 留存** = 同一 game_id 下、同一稳定玩家标识(登录取 userId,未登录取匿名设备标识)在首玩自然日(平台时区)之后的第 1 个自然日内发生 ≥1 次开局事件,按「玩家 × 游戏 × 日」去重;**完玩率** = play_end 事件中 completed 占比。现状缺口:遥测聚合表没有次留字段(数据飞轮已挂账),字段或旁路的落地设计归数据飞轮回流环设计与 telemetry 线;字段落地前,用「完玩率 + 互动率(点赞收藏 ÷ 播放)」作代理,该缺口不阻塞品类批产与反馈契约两线。运营质量分(0–100)回灌 feed 的既有机制不动,本档不碰其算法。
三个「首 X 时间」口径就此对齐,免得下游各按各的:GP2「玩家首局 30 秒体验」是产品域体验命题,本模型不收编;首局门三断言(可玩 ≤2s/首反馈即时/60s 品类闭环)是它在 L1 的机器可判子集;rubric「首 3 分钟脚本」是它在设计侧的结构化前奏。三者消费场景不同,时间锚不强行统一;体验效果的真判(如前 30 秒流失率)留给放量后校准。
## 6 L4 传播钩子
三件结构要求,生成时交付:**炫耀时刻**(结算/成就画面可截图、可分享——游戏必须有结算展示场景,不是打完就黑屏)、**分享点位**(结算处一键分享,自愿不打断,与广告点位同一条体验原则)、**同款可复刻**(游戏页 remix 入口可用,是 GP10「爆款做同款」网络效应的供给侧前提;生成侧交付品类原型与主题标签元数据,供 remix 预填)。
真判 = share 事件与 remix_click/remix_submit 漏斗。本模型不改契约:share 是 telemetry 既有事件,remix 漏斗按数据飞轮已规划的增量契约落地;品类件或产品面若需新增事件,走契约变更流程(护城河与跨端契约终审)。红线一条:传播钩子是**结构要求(有没有),不是效果承诺(火不火)**。本模型保证「具备被传播的结构」;爆款是概率事件,筛选与签约(P-IPX-06)归运营,不做自动「爆火分」。
## 7 丰富度预算档位(生效值)
| 档位 | 成本红线(创始人 2026-06-25 拍) | 实测基线 | 丰富结构下限 | rubric 观测线(生效值,区间待锁) |
|---|---|---|---|---|
| **便宜档**(AI 低参与) | per-gen < ¥10(图/音另线) | ¥0.25–0.9/款 | 底线四件(成长轴/解锁阶梯 ≥3 级/第二动机/音反馈)+ 1 主循环 ≤2 主机制 + 首 3 分钟脚本;四件为默认底线,品类件须逐条确认可映射,映射不动的申报品类替代轴 | 品类小批(n=3–5):**L2 组均分 ≥60% 组满分**(区间 55–65% 待锁)且无恒 0 条目;L3 组 ≥2/3 成立;L4 组 ≥1/2 成立 |
| **tier2**(AI 深参与) | per-gen < ¥50,目标 ≤¥3/成功款 | ¥1.29/款 | 档位通用项:≥3 个耦合子系统 + 阶段目标长线;品类结构项(现行经营件 = 资源/合成/订单三系统、双终态真可达,即富三门)由品类件承载,扩品类时由对应品类件重定义 | 品类 rubric(通用 + 品类扩展,两分母)**均分 ≥70% 满分**(区间 65–75% 待锁),品类扩展组无恒 0 条目 |
消费纪律三条,防误用。
**其一,档位线消费于品类资产验收(W-GENRE 各件 n=3–5 小批)与批次观测,不消费于单款放行**——单款放行只看 L1。线拍高最坏也只是某品类件多一轮申报,不错杀单款、不阻塞主线。
**其二,观测线是拉升目标,不是现状描述。** 现网 8 条无分组口径下 shop-serve 4.2/8、click-score 3.4/8、whack-mole 2.4/8,全部低于线;线的意义是品类件(设计 skill + few-shot 到位后)必须把分布抬上来,区间值由首批品类件回填分布后锁成单值。品类件对观测线或结构下限的品类适配走申报机制:附理由申报、创始人批;反应类等天然薄品类须同时给出替代丰富轴(连击深度、模式变体等),纯叙事/非遗类可申报以章节推进、工艺步骤解锁等替代成长轴——不许裸降。
**其三,预算余量优先买丰富、不买省钱。** 软脚手架数据点显示,富化把单款成本从约 ¥0.7 抬到 ¥0.85(+21%),行数 892≈890 持平——多花的钱买到的是 combo/VIP 这类玩法富化,不是代码量;绝对值距 ¥10 红线余量巨大,这笔钱该花。reskin 锁循环省成本的路线已被创始人否为越线,不回潮。
## 8 平衡门判法:五条裁定
背景:tier2 收敛环 conditional 的失败集中在「盈利路赢不了」(经济门 profitPathWin 子检查)与「进度不成立」(H_progress),而判「平衡」这件事此前双写——静态 economyConsistent 从已落盘数据表算「数值可达」(开局金币 + 订单奖励之和 ≥ 赢线,advisory),真玩经济门把游戏真玩到 coins ≥ 阈值且 phase 为 win 且到终态(enforced)。该谁说了算、失败后反馈里该有什么,裁定五条如下(即 n=5 收敛环 runbook 的工单 F-4;下文 F-1 = 该 runbook 的富三门反馈补厚工单,F-2 = 干净复跑工单):
```mermaid
flowchart LR
A["agent 写玩法数值/数据表"] --> S["静态自检 economyConsistent<br/>毫秒级 · advisory · 自检工具"]
S -->|"数值差额即时提示"| A
A --> P["真玩动态门(权威)<br/>经济门 win/lose 双路 + H_progress"]
P -->|"失败:数值证据反馈(F-1)<br/>实测值 vs 期望值 + 为什么"| A
P -->|"全绿"| OK["L1 放行"]
```
**其一,平衡判定的权威 = 真玩动态门,不回退静态判。** 静态「数值可达」证明不了「真玩得到」——顾客耐心、时序、操作节奏只在真玩里存在;n=5 实测的失败全部发生在静态检查之后的真玩层。真玩是生成验收阶段的权威硬证据(§9 双硬证据口径的生成侧一半),这条与防 Goodhart 红线同源。
**其二,静态判据定位 = agent 自检工具 + 反馈素材,保持 advisory,不升门。** 它确定性可算、毫秒级,适合 agent 写完数值后即时自查(省一轮约十分钟的真玩往返),也适合折进失败反馈,但永远不是放行判据。静态与真玩结论组合是诊断信号,处置固定:真玩过、静态挂 → 放行,静态差额记 warning 进观测(复核静态判据模型);真玩挂、静态过 → 失败,反馈以真玩数值为主并注明「静态认为数值可达」——问题大概率在耐心/时序/操作节奏,不在数值总量;双挂 → 失败,两组证据并喂;真玩无有效观测(探针读不到 state、驱动不到终态)→ 走 harness/driver 故障路径(E/H 门失败处理),绝不以静态判替代放行。
**其三,反馈契约:平衡门失败必须喂回数值证据,不只喂门名。** 此前 tier2 富游戏门反馈只给失败子检查名(如 profitPathWin),把 harness 已算出的具体数值(coins 终值 vs 赢线、phase、是否到终态)丢弃;便宜档九门反馈反而带 before/after/why 细节。裁定:tier2 富三门反馈对齐便宜档厚度——每个失败子检查给「实测值 vs 期望值 + 一句为什么」,静态 economyConsistent 的差额一并折进。这是收敛环 conditional 的解法(agent 层)在判法侧的落点。两级验收别混:F-1 的「自修通过 ≥2 例」证的是反馈契约生效;tier2 的 go/no-go 仍以 F-2 干净复跑与收敛环判定为准,前者不替代后者。
**其四,平衡的「调」永远是 agent 的玩法职责,工具层不代调。** 不做数值模板、不补平衡骨架(创始人 2026-06-29 裁定);工具层的全部义务 = 把「为什么不平衡」讲清(其三)。判法不变、反馈变厚。
**其五,赢线双源分工,agent 只调自己那一半。** 「赢」有两个数:游戏内赢条件(agent 数据表里的目标值)是玩法设计职责,agent 可调;验收外生赢线(品类金标 play-spec 里的门槛)是验收基准,由品类件与档位表锚定,agent 不可调、也不该看着它反向凑数。真玩经济门要求两者同时成立(真玩到游戏内赢态、且量级过验收线),因此失败反馈必须同时暴露三个数——实测终值、游戏内赢线、验收外生线;agent 若把游戏内赢线设得低于验收地板,反馈应直接指出这个结构性错配,而不是让它对着改不动的阈值空转。
## 9 分数量纲与防 Goodhart 纪律
```mermaid
flowchart LR
R["rubric 分 0–N<br/>生成侧局部量纲"] --> C1["品类件验收 · 批次观测 · 回流分析"]
G["生成质量分 0–1<br/>aigc 域"] --> C2["生成域内部"]
Q["运营质量分 0–100<br/>telemetry→feed"] --> C3["feed 排序"]
D["D11 就绪分 0–100<br/>治理观测件"] --> C4["开闸治理看板"]
R -.禁止换算互灌.- G
G -.禁止换算互灌.- Q
```
量纲纪律:既有双量纲锁死不动——生成质量分(0–1,aigc 域)与运营质量分(0–100,telemetry→feed)不可互相回灌(`contracts/README.md` 双量纲红线);rubric 分(0–N)是生成侧局部量纲,只在品类验收、批次观测、回流分析消费,禁止换算回灌进前两者;**不新造统一「质量总分/爆火分」**。D11 就绪分(0–100,开闸治理观测件)的权重(playability 0.5/firstPlay 0.25/stability 0.15/efficiency 0.1)自本档起归质量轨管辖:放量前的起步值仍由生产 cutover plan 落定(其部署步已在修 efficiency 维 BUDGET_RMB 与便宜档实际成本的错配,该项列为质量轨接管后的首个复核件);放量后第一轮校准见 §10。
防 Goodhart 三条,贯穿全模型:**L2–L4 分数一律非阻塞**——任何丰富/留存/传播分都不得升为拒发门,升门动议须回本档改 SoT 并过创始人;**真玩与真实玩家数据是仅有的两种「硬」证据**——设计侧一切 LLM 评分都是软信号;**「好玩」的终审归人**(审核台)。rubric 被 Goodhart 或评分漂移的兜底与此同构:非阻塞设计把错杀面封为零,金标锚定 ±1 回退管住漂移,放量后真数据校准是最终纠偏——若 rubric 分与留存相关性为零或负,重审 rubric 维度,回滚面只在 rubric 文本与评分 prompt,不伤门与代码。
## 10 生效、校准与升级路径
生效态分三层:四层定义与权力分配、两条 L1 口径裁定、五条平衡门裁定即日生效;档位观测线以草案值生效(便宜档 L2 组均分 ≥60%、tier2 均分 ≥70%),区间(55–65%/65–75%)由首批品类件回填分布后锁成单值;rubric 通用底座 v2 的新增 3 条判据文本标草案,随首个品类件落地验证后确认或修订。
放量后第一轮校准归质量轨:回流环设计产校准单、opus 执行;输入 = 放量后足量样本(起步 ≥100 款)的 rubric 分组小计 × 留存真数据,含 D11 efficiency 维错配复核;判定 = 相关性方向为正,样本不足或回归不显著则维持占位值再观测一期;D11 权重变更整体可回退上一版(D11 只观测不拦,回退零风险)。此后一切档位线、rubric 维度、D11 权重的修订都走同一条路:质量轨提案,即[数据飞轮](数据飞轮.md)回流环的校准单机制——不在现场拍脑袋改阈值;L2–L4 任何升门动议同样须回本档改 SoT 并过创始人。
下游三线从本档直接开工,不再各自发明标准:W-GENRE 品类件照 §4 规范产 rubric、按 §7 档位观测线验收;tier2 富三门反馈契约照 §8 补厚(裁定即可执行,不依赖档位数值);数据飞轮与 telemetry 线照 §5 口径立留存字段。

View File

@ -76,7 +76,7 @@ flowchart TD
这三组门的取舍理由,可以浓缩成三条核心决策:
1. **D12 和 GP9 为什么必须硬阻塞?** 因为这两件事不做,后果都不可逆。后台的生成 worker 是**全局串行**的(一次只处理一个任务),不做控制平面,单个用户的并发请求就能把它压垮,所有人都生成不了;不做合规先行,违规内容会直接生成出来进入玩家信息流,这是法务红线,一旦发生无法回收。
2. **那 3 道落库门为什么第一版只观测、不拦截?** 因为底层那套"九门 harness"(在真实浏览器里跑游戏、用九道确定性检查判定能不能玩的测试夹具)已经是挡住坏游戏的**硬地板**了。这三道落库门是更上一层的质量观测,第一版若一上来就生效拦截,反而会**误杀好游戏**——所以先只记录数据,等积累够了再考虑收紧。(这里"九门硬地板"说的是**开闸放行**那一侧:一款游戏要进信息流,仍按完整九门要求。但**生成环在迭代生成时怎么消费九门裁决**已于 2026-06-20 收窄成"只认五道客观健康门 A–E",两套口径别混——详见 §2.4。)
2. **那 3 道落库门为什么第一版只观测、不拦截?** 因为底层那套"九门 harness"(在真实浏览器里跑游戏、用九道确定性检查判定能不能玩的测试夹具)已经是挡住坏游戏的**硬地板**了。这三道落库门是更上一层的质量观测,第一版若一上来就生效拦截,反而会**误杀好游戏**——所以先只记录数据,等积累够了再考虑收紧。(这里"九门硬地板"说的是**开闸放行**那一侧:一款游戏要进信息流,仍按完整九门要求。生成环迭代生成时的消费口径曾在 2026-06-20 收窄为"只认五道客观健康门 A–E",但已于 2026-07-02 由质量轨裁定回到 **driven 时九门全量 AND**、收窄 A–E 归为历史方案——沿革详见 §2.4。)
3. **真实计费为什么不在这一批?** 见 §1.2。
### 1.2 真实计费扣退为什么被拆出去(随 M4)
@ -156,6 +156,8 @@ flowchart TD
### 2.4 生成环消费九门的口径:硬门收窄成客观健康门 A–E(创始人 2026-06-22 历史回收判定捡回)
> **历史化注记(2026-07-02,质量轨裁定)**:本节记述的"生成环把九门收窄成只认 A–E 客观健康门",是 gamedef 时代 driver 常缺、G/H/I 三门不可靠时的消费策略。现行便宜档在门跑前自动生成 play-spec 使 driven=true,cheap 与 tier2 的判据代码都按九门全量与富游戏门取 AND(M1 达标 bake-off 15/15 正是这个口径);undriven 时 E_live/H_progress 自动降 advisory 的分级仍保留在 harness。因此 **driven 时九门全量 AND 为现行 L1 口径,"收窄 A–E"归为历史方案、不再是待选路线**;判定归属见同目录现行 canonical《游戏质量与爆火能力》(裁定 L1-a)。以下原文按历史记录保留,不删。
前面几节把九门 harness 讲成一道统一的"硬地板",这个说法在"开闸放行"这个语境里仍然成立——一款游戏要进信息流,确实要先过这套真玩检测。但要把一件 2026-06-20 拍下的口径变化讲清楚,否则架构档会和现行真相脱节:**生成环(SAA 管线)在迭代生成时怎么"消费"九门的裁决,已经从"九门全过才算成功"收窄成了"只认五道客观健康门 A–E"。** 这是九门收窄后、gamedef 路实测生成质量从 all-9 口径下的约 50% 做到 91.7% 的直接原因之一——实测样本 n=12:关闭 thinking 时过 8/12,启用 Anthropic 原生 thinking 分离协议后过 11/12(即 91.7%);创始人 2026-06-20 拍板以 n=12/91.7% 宣告达标(n≥30 只多给方差信息,不改"thinking-on 更好且过门"的结论)。gamedef 路虽已判错误路线废弃,但"九门收窄成 A–E 客观门"这条验收消费策略引擎无关、对现行 A-model 真 src/ 同样适用。
先把九道门按"判什么"分成两类。一类是**客观健康门**,它们不依赖 driver(driver 指真玩脚本里那段"知道这款游戏该点哪、该划哪"的操作逻辑)就能判定,纯看运行时本身健不健康:A_boot(能不能起来)、B_uncaught(有没有未捕获异常)、C_frame(跑不跑帧)、D_render(画面有没有真渲染)、E_live(进程活不活着)。另一类是**driver 依赖门**:G_input(响不响应输入)、H_progress(机制有没有进展)、I_control(可控性),这三道必须有一段能真玩这款游戏的 driver 才判得了;而 F_wiring(游戏事件有没有真触发 `rt.fx` 之类特效)同样依赖游戏被真玩起来,没有 driver 必挂。
@ -168,7 +170,7 @@ flowchart TD
这个收窄背后还藏着一条**必须记住的实现约束(030)**,它是客观门解耦能不能真正生效的前提。`SaaGenNodes.playNode` 判 pass 时,如果前置条件写成 `rc==0`(rc = 真玩脚本 `play.cdp.cjs` 的退出码),问题就来了:这个退出码本身是**九门聚合**的——只要任意一道门(含 driver 门)挂了,脚本就 exit 1。于是一旦某道 driver 门失败让 rc=1,它会**反向否决**掉"只认客观门 A–E"的解耦,让收窄形同虚设——2026-06-20 当天就是这个 bug 让 Phase 1 空转、白烧了 302K token。修法是在客观门模式下把判据改成 `pass = (rc==0 || rc==1) && objectiveGatesPass(verdict)`:不再拿聚合退出码当门,而是直接读 `verdict.json` 里 A–E 五道门的结果。谁要在生成环里重写 verdict 消费逻辑,这条耦合坑必须先避开,否则解耦白做。
> 口径归属:这次收窄和那条 rc 耦合坑已蒸馏进 `.agents/skills/saa-graph-orchestration.md` §3.5;决策与 Phase 路线记在 `git show 8ea97234:docs/plans/2026-06-20-关闭九门判定-全面参考OpenGame-决策与Phase0-4.md`。本节把它回填进架构档,是为了让"九门统一硬地板"这个旧讲法对齐到"开闸侧仍要完整九门、生成环只认客观门 A–E"的现行真相,避免后人据旧讲法去重写生成环又踩一遍 rc 坑。OpenGame对照档里那条 Phase 0–4 落地路线([OpenGame对照 §3.5](OpenGame对照.md))承接的正是这条收窄之后"往哪走"。
> 口径归属:那条 rc 耦合坑(客观门解耦被九门聚合退出码反向否决)的实现教训仍然有效,是日后重写生成环 verdict 消费逻辑时必须先避开的坑。它此前蒸馏在 `.agents/skills/saa-graph-orchestration.md` 的一节里,但该 skill 已于 2026-07-01 重写为 cheap-worker 主线、原 §3.5 不复存在;"收窄 A–E" 现属历史消费策略,现行口径与四层质量模型的裁定改以同目录 canonical《游戏质量与爆火能力》为准。这条收窄的原始决策与 Phase 0–4 路线仍可 `git show 8ea97234:docs/plans/2026-06-20-关闭九门判定-全面参考OpenGame-决策与Phase0-4.md` 查阅。OpenGame对照档里那条 Phase 0–4 落地路线([OpenGame对照 §3.5](OpenGame对照.md))承接的是收窄之后 SAA 线的远期设想,现行 cheap/tier2 主线已回到九门全量 AND。
---
@ -205,7 +207,7 @@ flowchart LR
### 3.2 三道门各自做什么
- **① 9d trace(公共底座)**:这是另外两道门的数据来源,所以**契约先行**——先改契约 `contracts/api-schemas/aigc.yaml` 里的 `DifyCallbackReqVO`,给它加一个 `trace` 字段(只增不改、可选),再改 Java 侧的值对象和 worker。worker 的 `build_callback_payload` 从 `result` 抽出 9d 子集回传,后端 `DifyCallbackTxService` 在回填段尽力(best-effort)落到 `game_aigc_task.trace_json`。这里定了一个**必填子集七项**作为"轨迹完整率"的分母:`{pass, repairs, wallS, models, attempts, gameId, stage}`;其余字段因为和具体生成路径相关、worker 走哪条路尚未定死,所以 schema 放宽、不绑死任何一条路径。
- **② D11 就绪评分(`ReadinessScorer`)**:读 trace,加权算出一个 0-100 的就绪度分数。权重是:可玩性 playability 占 0.5、首局体验 firstPlay 占 0.25、稳定性 stability 占 0.15、效率 efficiency 占 0.1(**这套权重是占位值,待质量轨用真实数据校准**)。一个重要的容错设计:**字段缺失时取中性值 0.5,而不是直接打 0 分**——免得因为某个可选字段没采到就把分数打到地板。算出的分落到 `readiness_score` 字段,并在审核台接口 `/task/page` 的返回里透出(前端那个 aigc 列表页是产品轨的后续工作,当前 game-admin 还没有这个页)。
- **② D11 就绪评分(`ReadinessScorer`)**:读 trace,加权算出一个 0-100 的就绪度分数。权重是:可玩性 playability 占 0.5、首局体验 firstPlay 占 0.25、稳定性 stability 占 0.15、效率 efficiency 占 0.1(**这套权重的管辖自 2026-07-02 起归质量轨;四维数值 0.5/0.25/0.15/0.1 不动,任何调整都走质量轨校准单提案 —— 见同目录现行 canonical《游戏质量与爆火能力》**)。一个重要的容错设计:**字段缺失时取中性值 0.5,而不是直接打 0 分**——免得因为某个可选字段没采到就把分数打到地板。算出的分落到 `readiness_score` 字段,并在审核台接口 `/task/page` 的返回里透出(前端那个 aigc 列表页是产品轨的后续工作,当前 game-admin 还没有这个页)。
- **③ D9 反同质化**:把生成早期 agent-loop-v1 编排器里的 `_norm_text`(归一化纯函数,几乎是原样复制)和 `mint_design_id` 的思路移植过来,在 worker 侧写一个 `dedup.py`,把游戏配置归一化后算出一个签名去查重。**撞到重复创意时只 `log.warn` 告警 + 把 `trace.similarity.dupHit` 落库,绝不拦截。**
### 3.3 组B 的非阻断硬约束、回滚与关键修复

View File

@ -26,26 +26,26 @@ canonical: true
## 队列〔🤖 opus 自治工单〕(按价值排序)
- [ ] **W-S1 · 切片一 M3 收尾(生成线头号)** → 工单 = [`M3 cutover plan`](../plans/2026-06-30-便宜档M3-生产cutover-plan.md) S0–S6(已批准,六要素在各步)。解锁 = 决策包③(执行授权 + 窗口;S1 worker 版本口径与配置控制面阶段一② 协同,见该 plan 状态注)。产出喂 S6 放行决策(决策包⑤)。
- [ ] **W-S2 · 切片二 follow-up** → 工单 = [`n=5 runbook`](../plans/2026-06-28-002-feat-tier2-n5收敛环-go-no-go-plan.md)「后续工单」节:**F-1 verdict 反馈质量改进(可立即动)** → F-2 干净复跑(解锁 = 决策包② 窗口);F-3 待网关补强档;F-4 归质量模型 SoT(fable)。
- [ ] **W-CFG · 配置控制面** → 阶段一② SDD ✅ 已收口(2026-07-02 `526e9b3d`,决策包① 已拍消费);剩 = **阶段二(yudao⊕Nacos 配置中心)设计**(挂 [配置控制面设计](../agent-specs/2026-06-30-配置控制面一次性按序实现-设计.md),过双评审)+ follow-up(真门窗口验证等,见 plan 尾注)。
- [ ] **W-S1 · 切片一 M3 收尾(生成线头号)** → 工单 = [`M3 cutover plan`](../plans/2026-06-30-便宜档M3-生产cutover-plan.md) S0–S6(已批准,六要素在各步)。解锁 = 决策包③(执行授权 + 窗口;S1 worker 版本口径与配置控制面阶段一② 协同,见该 plan 状态注)。产出喂 S6 放行决策(决策包⑤)。**2026-07-02 状态:决策③ = NO-GO hold**——同根性判定坐实 Service 壳流式聚合缺陷(我方 regression:崩 M3 并行 tool call、斩断续修 = 系统性菜单空壳);fix400 工单在飞(禁并行 call + 聚合补丁 + 2 局 e2e 含续修轮),全绿后再报窗口。
- [ ] **W-S2 · 切片二 follow-up** → 工单 = [`n=5 runbook`](../plans/2026-06-28-002-feat-tier2-n5收敛环-go-no-go-plan.md)「后续工单」节:**F-1 ✅ 完成并 merge(2026-07-02 `a3bc8365`:富三门反馈补厚——经济门三数+结构性错配直指;自修实证 2/2、金标 9/9+3/3 ACCEPT、70 单测绿)** → 下一步 F-2 干净复跑(解锁 = 决策包② 窗口,待创始人排);F-3 待网关补强档;F-4 已裁定入质量 canonical §8。
- [ ] **W-CFG · 配置控制面** → 阶段一② SDD ✅ 已收口(2026-07-02 `526e9b3d`,决策包① 已拍消费);**阶段二(yudao⊕Nacos 配置中心)设计已成稿并拍 B**(版本账本整体落 yudao MySQL、prompt MEDIUMTEXT 出 Nacos、Nacos 承路 B 小参;基线 `d4471b02`),双评审已回(Codex 需回炉 / Opus 修订后可发布)、修订单在飞;follow-up(真门窗口验证等)见 plan 尾注。
- [ ] **W-A11 · 切片三收尾** → 受计费真后端 e2e(解锁 = 决策包④ 窗口;plan = `git show 8ea97234:docs/plans/2026-06-28-003-feat-studio-A11-对话式调整回路-plan.md`,M1–M5 已完成、只余此项)。
- [ ] **W-REAL · 16 周真实化批次(各项独立、多数可立即动)**:
- **R1 telemetry MQ 异步聚合**——RocketMQ 已部署 mini-infra(阶段〇);指针 = [阶段〇 plan](../plans/2026-07-01-配置控制面-spike与阶段〇生产基建-plan.md) + `contracts/events.schema.json`;边界 = telemetry 模块;验收 = MQ 消费聚合真跑、quality_score 回灌行为不变、单测绿;坑 = rocketmq-spring `consumeThreadMax` 是死参数,有效并发 `consumeThreadNumber` 须 min=max。
- **R2 pay 模块接单体**——huijing 原生 pay 接入 + 积分充值 P0 骨架(真支付 mock gated 受日历闸);验收 = 单体启动 Flyway 绿 + charge mock e2e;补 55 P0 最后一块结构缺口(54/55→55/55)。
- **R3 M4 切真预接线**——穿山甲 / 优量汇 SDK 适配层藏 mock flag 后,资质下证当天可切;外部交互必处理超时 / 重试 / 幂等 / 验签;先出 1–2 页设计段过双评审再动码;验收 = mock↔真切换开关 + 单测 + 切换 runbook。
- **R4 评审遗留清欠对账**——06-24 评审 9 P1 / 7 P2(总账 §5「代码评审遗留」)逐条对现状判 moot / 存活(wg1 项随 Node 退役多半 moot;tier2 成本闸经阶段一① soft_budget 演进,核对后销账);存活项修(game-studio vue-i18n 卡类型门、品牌残留三处 + 门扫描面扩、CSP 注释失真);验收 = 对账表 + 存活项修完 + docs-gate / 单测绿。
- [ ] **W-REAL · 16 周真实化批次**(**R1/R2/R3/R4/R6 ✅ 2026-07-02 全部完成并 merge**;剩 R5 受 feed 内容解锁):
- ✅ **R1 telemetry MQ 异步聚合**(`f2d85a07`)——`/events/batch`·`/perf/beacon` 改投 RocketMQ 异步消费(灰度开关 `telemetry.mq.enabled` 默认关 = 现行行为逐字不变);59 单测绿 + mini-infra 真 broker 往返 IT 绿;`consumeThreadNumber=consumeThreadMax=8` 破死参数坑。
- ✅ **R2 积分充值 P0 骨架**(`d32d5965`)——按既有 payout 范式建 mock-gated charge SPI(真支付收单 P1 受日历闸门,huijing-module-pay 保持解耦待进件);V28 CAS 入账 + uk_biz_no 幂等;真 MySQL e2e IT 绿 + Flyway 28/28 replay 绿 + 单体编译绿;55 P0 结构缺口补上(54/55→55/55)。
- ✅ **R3 M4 切真预接线**(设计+加固 `00ebeedc`)——设计段过 Codex+Opus 双评审后回炉修订;回调验签 fail-closed 封铸币面(getStrict 不降级 mock / force-mock 只拒真实位 / 8 格矩阵单测);ad 模块 33 单测绿;剩 SVG 门面图随收口补。
- ✅ **R4 评审遗留清欠**(`bc0f486b`)——16+1 条对账 = 7 moot / 6 已修 / 3 修(G1 品牌门扩代码扫描面+负向测试、品牌漏网、ad-slot 契约补 callback)/ 1 存活(tier2 bootstrap X-User-Id,部署 smoke 接缝);对账表入总账 §5。
- **R5 链路③⑤真机走查闭口**——解锁 = feed 有内容(放量后,或参考件经主链入池);按 `ui-walkthrough-cdp` 走 mini-desktop。
- **R6 telemetry 留存聚合字段(D1 留存)**——按[质量模型设计档](../agent-specs/2026-07-02-游戏质量与爆火能力-设计.md) §3.4 口径(玩家×游戏×日去重、平台时区、未登录用匿名标识)新增次留聚合;数据飞轮回流语料与 D5 校准单的输入前置;与 R1 同模块,建议同一会话顺做;验收 = 聚合真跑 + 口径单测 + quality_score 回灌行为不变;坑 = 匿名标识稳定性先对齐 telemetry 契约既有 anonId 口径。
- [ ] **W-MAT · 人办材料包起草(最急:原定 06-30 就绪已过期)**——大模型登记 + 算法备案材料草稿(A1 看板 #9 #10,周期以月计、必须最早备料)、隐私 / 用户协议占位→正式稿框架(#7)、内容合规材料文本(#8);指针 = [A1闸门看板](./A1闸门看板.md) + [律所 brief](./律所合规咨询brief.md);验收 = 每件到「只差你提交」,人办清单状态同步更新。
- ✅ **R6 D1 次留旁路聚合**(`617abbb5`)——质量 canonical §5 口径(玩家×游戏×日去重 / 平台时区 / anonId);V27 旁路两表挂 R1 消费链 best-effort,quality_score 主链零风险;68 单测 + 真 MySQL 聚合 IT 绿。
- [x] **W-MAT · 人办材料包起草 ✅**(2026-07-02 `960da7c8`)——合规四件(大模型登记 / 算法备案 / 隐私+用户协议 / 内容合规)起草到「只差律所定稿 + 你提交」,落 `docs/ip/` 合规-01至04 四件,附待律所问题合计 28 项;[A1闸门看板](./A1闸门看板.md) #7-#10 与人办清单已同步。
- [ ] **W-DSGN · 生成线 SoT 欠账小工单**——A11 设计面补节、插件数核正(图说 §269「十一」vs 实际 12)、plan① 顶图 SVG redraw 纵切版(plan① §11 TODO ①⑤⑥);验收 = 图说 SoT 更新 + docs-gate 绿。
- [ ] **W-GENRE · 品类资产四件套批产(×4 品类)** → 工单 = [06-29 设计 §7](../agent-specs/2026-06-29-便宜档降AI参与-减摩擦与扩模板覆盖-设计.md)(每品类一个 opus 会话);**解锁 = 质量模型 SoT 定稿**(fable 轨2 ①)。
- [ ] **W-GENRE · 品类资产四件套批产(×4 品类)** → 工单 = [06-29 设计 §7](../agent-specs/2026-06-29-便宜档降AI参与-减摩擦与扩模板覆盖-设计.md);**已解锁**(决策包⑦ 2026-07-02;rubric v2 前置已落 `ba82e63c`);P11×4(fable)排在质量 canonical 折账 commit 后扇出。
## 队列〔fable 轨2〕
- [x] **《游戏质量与爆火能力》SoT 主笔**(2026-07-02 [设计档](../agent-specs/2026-07-02-游戏质量与爆火能力-设计.md)已成稿并过双评审、发现项已修)——四层质量模型 + 丰富度预算档位 + 平衡门判法五裁定(承接 runbook F-4);**余下一步 = 创始人拍决策包⑦**,定稿即解锁 W-GENRE,收口折账 = 其 §4 D2 工单。
- [x] **数据飞轮回流环设计**(2026-07-02 [设计档](../agent-specs/2026-07-02-数据飞轮回流环-设计.md)已成稿并过双评审、发现项已修)——校准单六段 + 六去向治理 + 就绪清单(R6 与 rubric 落库前置小工单已随之落账);**余下一步 = 创始人拍草案值**(其 §5 拍点 4 项);收口折进数据飞轮 SoT §3.3(可与质量 SoT D2 并单);数据源 = 放量后,首单 = 质量 SoT D5。
- [ ] **tier2 go/no-go 终审**——待 W-S2 F-1 / F-2 产出。
- [x] **《游戏质量与爆火能力》SoT 主笔**——✅ 全流程收口(2026-07-02):双评审修毕 → 决策包⑦ 已批 → **已折账成 canonical [游戏质量与爆火能力](../architecture/架构/生成引擎/游戏质量与爆火能力.md)**(注册表已登、原设计档降留痕);F-4 判法 = canonical §8。
- [x] **数据飞轮回流环设计**——✅ 全流程收口(2026-07-02):双评审修毕 → 决策包⑦ 已批 → **已折进数据飞轮 SoT 阶段三**(原设计档降留痕);就绪前置(R6 `617abbb5` / rubric v2 `ba82e63c`)均已落;首单 = 质量 canonical §10 校准(放量后)。
- [ ] **tier2 go/no-go 终审**——F-1 ✅(`a3bc8365`);待 F-2 干净复跑产出后终审。
- [ ] **护城河件与跨端契约变更终审**——九门 / 续修 / 门判 / 预算闸 / `contracts/` 动刀时看最后一眼。
- [x] **清单工程首轮写入**(2026-07-02:plan① / cutover / runbook / 06-29 设计 / 本板 / 人办清单 / 总账 / 在飞板 八处对账 + 工单落账)。

View File

@ -62,7 +62,7 @@ canonical: true
|---|---|---|---|
| ① | 配置控制面阶段一② plan 终评审 → 放行 SDD | ✅ **已拍并执行完成**(2026-07-02:3 决策收口、SDD T1–T3+终审 fix 全绿、`526e9b3d`) | W-CFG(转阶段二设计) |
| ② | 切片二下一步 | ✅ **已拍 = A**(2026-07-02):先 F-1 verdict 反馈改进,再 F-2 干净复跑;F-1 已派,F-2 需暂停 live 的窗口届时逐次报 | W-S2 / go-no-go 终审 |
| ③ | M3 cutover 执行授权 + 部署窗口(S0 起) | worker 版本口径已定:阶段一② 已落(`526e9b3d`)→ 按推荐一次更新到含 Service 壳版本,只动一次 live | W-S1 |
| ③ | M3 cutover 执行授权 + 部署窗口(S0 起) | **NO-GO hold(2026-07-02 同根性判定坐实)**:② 归并三接缝 cutover-ready,但 Service 壳流式聚合缺陷会崩 M3 并行 tool call(我方 regression,续修被斩断 = 系统性空壳);fix400 在飞(禁并行 call + 聚合补丁 + 2 局 e2e 含续修轮),全绿后我再报窗口供你拍 | W-S1 |
| ④ | A11 计费真后端 e2e 部署窗口 | 可与③同窗并 | W-A11 |
| ⑤ | 对外开闸放量节奏(6 门顺序 + S5a 种子内测规模) | 按 cutover plan §5 决策点三起步值;备案红线内(≤2 万人 / 不接广告 / 报备删档) | S6 放行 |
| ⑥ | 授权边界 | ✅ **已批准**(2026-07-02):可逆动作(iso/staging 部署、mini-desktop 窗口占用、材料起草等)免逐次请示;live 变更逐次报 | 全线节奏 |