lili d5865f57cd docs(prompts): 四道闸CI接线步骤0——registry 消费面三态对账(17条逐条+门焊口径)
用一手代码证据坐实 17 条 prompt 的 live/fossil/batch-relic 三态,防把 CI 焊在死面上白花钱:
- live 10 条:safety.prompt-check(SafetyCheckClient GP9 门真发 LLM)+ tier2×8(roles.py prompts.load 运行时读)+ config.cheap-system(cheap_roles.py)
- fossil 5 条:clicker/merge/idle/tycoon(AigcTemplateConstants.SUPPORTED_TEMPLATE_IDS 已整体下架、gamedef 产物形态已废)+ generic-coder(STUB,PromptResourceLoader 只为 isReady/schema 加载、不喂 LLM)
- batch-relic 2 条:quality.adversary-review / fix.design-revise(全仓无 live 代码消费方,仅已删 agent-loop v1 evalflow.py 批跑过)

门焊口径写进 registry 头部:段 A 离线版本闸对全部条目生效(改正文必升 version,纯结构纪律零成本);段 B 真模型闸只焊 live——有金标真跑(唯 safety)、无金标 fail-closed(cheap-system/tier2)、fossil/relic SKIP 豁免。

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-04 08:54:47 -07:00

185 lines
16 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 契约 #8 Prompt Registry —— Prompt 即契约Git 化注册表)
# owner各 prompt 归属工位 | 治理:见 .agents/skills/prompt-governance.md 与 docs/agent-specs/prompt治理体系-execution.md
# 引用方式Dify/aigc 用 {{registry:id@ver}} 引用;变更 prompt 必须升 version 并过四道闸CI
version: 1
# ─────────────────────────────────────────────────────────────────────────────
# 消费面三态对账W-PCI · 2026-07-04四道闸 CI 接线步骤 0用代码证据坐实、非凭注释推断
#
# 为什么要对账:四道闸 CI 只该焊在「真被 live 生产路径消费、喂给 LLM」的 prompt 上;焊在早已下架
# 的死面上,既白花真模型钱,又给出虚假的治理安全感。下表把 17 条逐条判定三态,段 B 真模型闸据此
# 决定跑还是豁免。三态定义:
# · live —— 现行生产生成路径运行时读它、渲染后发给 LLM改它会真影响线上生成质量
# · fossil —— 代码里仍有加载壳,但产物形态或模板白名单已废,现行不会有任务走到它(改它无线上影响)。
# · batch-relic —— 只被已删除的 agent-loop v1 批跑编排evalflow.py消费过无任何 live 代码消费方。
#
# 逐条结论(证据 = 一手代码,路径见括注):
# safety.prompt-check live SafetyCheckClient.java:51 构建期加载 01-safety/prompt-safety-check.md
# GP9 合规门渲染 {{input.prompt}} 真发 LLMgp9-safety独立于模板白名单
# config.clicker-designer fossil PromptResourceLoader.TEMPLATE_RESOURCES 仍构建期加载,但
# config.merge-designer fossil AigcTemplateConstants.SUPPORTED_TEMPLATE_IDS 已把旧四模板整体下架
# config.idle-designer fossil (白名单 = generic + 5 品类):提交抛 AIGC_TEMPLATE_NOT_EXISTS、
# config.tycoon-designer fossil 执行判 no_template_match 不烧 LLM。它们产的 GameConfig 是已废 gamedef 形态。
# config.generic-coder fossil registry 自标 STUB 0.0.1PromptResourceLoader 加载它只为 isReady()
# 通过 + schema 进校验缓存,其类注释明写「后端不在进程内渲染/喂 LLM 该 prompt」
# generic 任务实走外置 Python cheap-worker用 cheap-system.md非本条
# quality.adversary-review batch-relic 全仓 grep 无任何 .py/.java live 消费方;仅 agent-loop v1 evalflow.py已删批跑过。
# fix.design-revise batch-relic 同上,无 live 消费方。
# tier2.design-system live tier2 gen-worker roles.py 经 prompts.load 运行时读design_team 兜底)。
# tier2.design-systems-designer live roles.py:245 prompts.load 运行时读(阶段 1 工作室专家)。
# tier2.design-economy-designer live roles.py:246 prompts.load 运行时读。
# tier2.design-level-designer live roles.py:247 prompts.load 运行时读。
# tier2.design-presentation-designer live roles.py:248 prompts.load 运行时读。
# tier2.design-leader-system live roles.py:264 prompts.load 运行时读(阶段 1 leader带参 brief
# tier2.writer-system live roles.py:280 prompts.load 运行时读(阶段 2 单写 agent 前缀)。
# tier2.player-system live roles.py:297 prompts.load 运行时读L3 视觉软检玩家)。
# config.cheap-system live cheap-worker cheap_roles.py _load_system_prompt() 运行时读(便宜档 A-model 生成)。
#
# 门焊接口径(据上表):
# · 段 A 离线版本闸check_version_bump.py对全部 contracts/prompts/ 条目生效——「改正文必升 version」是
# 纯结构纪律、零成本,无需区分三态,一律强制。
# · 段 B 真模型闸eval_gate.py只焊 live 条目safety + tier2×8 + cheap-system
# - live 且有金标集 → 真跑四道闸(当前仅 safety.prompt-check见其 eval/ 10 条负例);
# - live 但无金标集cheap-system / 8 条 tier2本表 eval 字段待建)→ fail-closed 报「金标缺失」,绝不假绿;
# - fossil / batch-relic → 显式 SKIP 豁免clicker/merge/idle/tycoon/generic-coder/quality/fix不花真模型钱。
# · 注04-config 下 business-sim/narrative/puzzle/trpg/heritage 五个 -designer.md 是 SUPPORTED_TEMPLATE_IDS 内
# 的 live 白名单模板,但同 generic 一样「只进 schema 缓存、不喂 LLM」且未登记进本 registry不在本次对账 17 条内。
# ─────────────────────────────────────────────────────────────────────────────
prompts:
# 【三态·段B处置】safety.prompt-check = liveSafetyCheckClient GP9 合规门真发 LLM且有 eval/ 10 条负例金标集
# → 段 B 真模型闸对它真跑四道闸当前唯一「live 且有金标」的条目)。
- id: safety.prompt-check
version: 1.0.0
stage: "01-safety" # 8 阶段01-safety 02-intent 03-template 04-config 05-asset 06-quality 07-fix 08-meta
owner: WS2 # 归属工位
file: 01-safety/prompt-safety-check.md
desc: 创作者 Prompt 安全/注入检测(生成链路第 1 节点)
eval: eval/safety.prompt-check/ # Golden eval 集四道闸Schema/成功率/回归diff/成本延迟)
# —— agent 化生成 QA 闭环 v1 三件套HJ-AGENT-LOOP-EXEC-001 §5v1 仅 clicker 走批跑)——
# 【三态·段B处置】以下 clicker/merge/idle/tycoon 四策划模板 = fossil已废 gamedef 线SUPPORTED_TEMPLATE_IDS
# 已整体下架、不可被生成)→ 段 B 真模型闸对它们 SKIP 豁免(保留条目不删,见头部对账总表)。
- id: config.clicker-designer
version: 1.1.0 # v1.1.0batch-001 冻结告警→新增 designIntent 模板内约束(加规则不改口径)
stage: "04-config"
owner: WS2
file: 04-config/clicker-designer.md
desc: agent 闭环独立策划创意一句话→GameDesign 三段designIntent/expectedPlaySeconds/configconfig 受 contracts/templates/clicker.schema.json 约束)
eval: eval/config.clicker-designer/ # 每批 evalflow.py 强制回流inputs/labels JSONL+ C1 spike 52 条种子D3 转入)
- id: config.merge-designer
version: 1.0.0 # 首版merge 模板策划(结构对齐 clicker-designer按 merge schema 改字段约束)
stage: "04-config"
owner: WS2
file: 04-config/merge-designer.md
desc: agent 闭环 merge 模板策划创意一句话→GameDesign 三段designIntent/expectedPlaySeconds/configconfig 受 contracts/templates/merge.schema.json 约束)
eval: eval/config.merge-designer/ # 新建 Golden 目录首版无种子随批回流§4.5
- id: config.idle-designer
version: 1.0.0 # 首版idle 模板策划(结构对齐 clicker/merge-designer按 idle schema 改字段约束)
stage: "04-config"
owner: WS2
file: 04-config/idle-designer.md
desc: agent 闭环 idle 模板策划创意一句话→GameDesign 三段designIntent/expectedPlaySeconds/configconfig 受 contracts/templates/idle.schema.json 约束)
eval: eval/config.idle-designer/ # 新建 Golden 目录(首版无种子,随批回流)
- id: config.tycoon-designer
version: 1.0.0 # 首版tycoon 模板策划(结构对齐 clicker/merge-designer按 tycoon schema 改字段约束)
stage: "04-config"
owner: WS2
file: 04-config/tycoon-designer.md
desc: agent 闭环 tycoon 模板策划创意一句话→GameDesign 三段designIntent/expectedPlaySeconds/configconfig 受 contracts/templates/tycoon.schema.json 约束)
eval: eval/config.tycoon-designer/ # 新建 Golden 目录(首版无种子,随批回流)
# —— P3 生成主线编码 promptW-G12026-06-14范式=编码出 bundle 源码,非策划出 GameConfig——
# 【三态·段B处置】generic-coder = fossil·STUBPromptResourceLoader 只为 isReady/schema 加载它、不喂 LLM
# generic 任务实走外置 cheap-worker 的 cheap-system.md→ 段 B SKIP 豁免。
- id: config.generic-coder
version: 0.0.1 # ⚠️ STUB 占位骨架04-config/generic-coder.md 仅 frontmatter+三要点提纲,非正式 promptL1 出正式草案时整体替换并升版,两处 version 同步
stage: "04-config"
owner: WS2
file: 04-config/generic-coder.md
desc: P3 编码 prompt创意一句话→GameHostFactory 源码→esbuild 打 __GameBundle bundle非策划出 GameConfig。【当前为 STUB 占位骨架·L1 出正式草案替换】
eval: eval/config.generic-coder/ # 新建 Golden eval 目录(首版无种子,随 bake-off 批回流)
# 【三态·段B处置】quality.adversary-review 与 fix.design-revise = batch-relic无 live 代码消费方,仅
# 已删的 agent-loop v1 evalflow.py 批跑过)→ 段 B SKIP 豁免(有金标集也不跑真模型,见头部对账总表)。
- id: quality.adversary-review
version: 1.1.2 # v1.1.2:细则①追加 merge 域示例P0/P1 口径文字仍未动)
stage: "06-quality"
owner: WS2
file: 06-quality/adversary-review.md
desc: agent 闭环对抗策划GameDesign→findings[]P0/P1/P2 口径写死;只批不改、不下结论、不可见试玩数据)
eval: eval/quality.adversary-review/ # 每批 evalflow.py 强制回流;批末稳定性重测一致率素材
- id: fix.design-revise
version: 1.0.1 # v1.0.1+template_schema 注入段/:48 括注中性化
stage: "07-fix"
owner: WS2
file: 07-fix/design-revise.md
desc: agent 闭环 fix 变体:原 GameDesign+findings(P1) 回灌重出(只修指出项,未指出字段原样保留;回炉额度合计 1 轮)
eval: eval/fix.design-revise/ # 每批 evalflow.py 强制回流fix 前后对照跨目录按 rootDesignId 关联§16 D2-a
# ── tier2 富游戏自治生成线 prompt09-tier2-richgamerange=tier2/gen-worker/worker/roles.py─────────────
# 【三态·段B处置】以下 8 条 tier2 = liveroles.py 经 prompts.load 运行时读),但 eval 字段待建、当前无金标集
# → 段 B 真模型闸对它们 fail-closed 报「金标缺失」(绝不假绿;补金标后即真跑,见头部对账总表)。
# 范式AgentScope 2.0.2 ReAct 两阶段角色(阶段 1 工作室多 agent 设计 / 阶段 2 单写 ReAct + L3 软检玩家),
# 【非】cheap-line 的策划/编码出 GameConfig|bundle 范式。与 Tier0/1 既有条目01-safety~07-fix完全隔离、互不影响。
# 消费方 = roles.py 经 worker/prompts.py 运行时读本段 file 指向的正文;读不到/脏 → 回落 roles.py 内置原文best-effort绝不中断生成
# 首版正文 = roles.py 内置原文逐字节对齐(带参的存 {{input.*}} 模板),故默认行为字节不变;调一条 prompt = 改对应 .md 正文升 version 重跑。
# 注eval 字段暂留待建(图说 B 族明示 tier2 eval/灰度门当前不存在,配置改动只「下次生效+轨迹留痕」两层保护,非设计缺陷)。
- id: tier2.design-system
version: 1.0.0
stage: "09-tier2-richgame"
owner: WS2
file: 09-tier2-richgame/design-system.md
desc: 阶段 1 单 design agent 兜底题面→富游戏设计稿七要点design_team 失败时 degrade 回落用)
- id: tier2.design-systems-designer
version: 1.1.0 # v1.1.0:策划知识包 v2——加第 5 条策划判据(可判定句式;不给平衡数值)
stage: "09-tier2-richgame"
owner: WS2
file: 09-tier2-richgame/design-systems-designer.md
desc: 阶段 1 工作室专家·系统设计师(核心循环/多系统拆解/耦合点/可观测语义 state
- id: tier2.design-economy-designer
version: 1.1.0 # v1.1.0:策划知识包 v2——加第 5 条策划判据(可判定句式;不给平衡数值)
stage: "09-tier2-richgame"
owner: WS2
file: 09-tier2-richgame/design-economy-designer.md
desc: 阶段 1 工作室专家·经济数值设计师(数据表/经济流转/胜负条件含失败态/难度曲线)
- id: tier2.design-level-designer
version: 1.1.0 # v1.1.0:策划知识包 v2——加第 5 条策划判据(可判定句式;不给平衡数值)
stage: "09-tier2-richgame"
owner: WS2
file: 09-tier2-richgame/design-level-designer.md
desc: 阶段 1 工作室专家·玩法关卡设计师(玩法节奏/关卡阶段编排/操作手感/失败-重试体验)
- id: tier2.design-presentation-designer
version: 1.1.0 # v1.1.0:策划知识包 v2——加第 5 条策划判据(可判定句式;不给平衡数值)
stage: "09-tier2-richgame"
owner: WS2
file: 09-tier2-richgame/design-presentation-designer.md
desc: 阶段 1 工作室专家·表现层与可玩性设计师Phaser scene 树/UI-HUD 布局与命中映射/进展反馈/可玩性)
- id: tier2.design-leader-system
version: 1.0.0
stage: "09-tier2-richgame"
owner: WS2
file: 09-tier2-richgame/design-leader-system.md
desc: 阶段 1 工作室 leader拆题面→调四专家工具→汇总成连贯设计稿带参 input.brief
- id: tier2.writer-system
version: 1.0.0
stage: "09-tier2-richgame"
owner: WS2
file: 09-tier2-richgame/writer-system.md
desc: 阶段 2 单写 agent system 固定前缀(任务/九工具/工作纪律铁律/典型循环节奏;题面+品类靶+设计稿三块由 roles.py 按入参条件追加)
- id: tier2.player-system
version: 1.1.0 # v1.1.0打磨不降档——fun=5 须记忆点、fun≥4 才 passscoreOnly 软检,纯评语口径、零行为影响)
stage: "09-tier2-richgame"
owner: WS2
file: 09-tier2-richgame/player-system.md
desc: L3 视觉软检玩家 agent看截图+语义 state 判富游戏体验;只评分绝不当门;带参 input.persona
# ── cheap-worker 便宜档 A-model 生成线 prompt04-configrange=cheap-worker/cheap_roles.py──────────
# 【三态·段B处置】config.cheap-system = livecheap_roles.py 运行时读,便宜档生成主力面),但无 eval 金标集
# → 段 B 真模型闸 fail-closed 报「金标缺失」(补金标后即真跑,见头部对账总表)。
# 消费方 = cheap_roles.py 经 _load_system_prompt() 运行时读本段 file 指向的正文;
# 读不到/脏/缺文件 → 回落 cheap_roles._SYSTEM_PROMPTbest-effort绝不中断生成
# 首版正文 = _SYSTEM_PROMPT 内置原文逐字节对齐(含 ⟦G⟧/⟦SCAFFOLD_DESC⟧ 占位符),默认行为字节不变;
# 调一条 prompt = 改 04-config/cheap-system.md 正文 + 升 version下次生成自动生效。
- id: config.cheap-system
version: 1.6.1 # v1.6.1:起局鲁棒性 + targets 键契约进红线——①起局/交互按钮命中矩形必须在状态进入点 onEnter 确定性建立、render 只画(治并发 rAF 饥饿下卡 menu②点目标玩法 state 键名固定 `targets`(驱动器契约 C5 依赖,改名=盲驱动器选错族=H 门挂。v1.6.0:打磨不降档(创始人 07-04 定调「档位切 scope 不切 polish」——删 spike「能跑能玩即可」残留、hitstop 出禁项改结算标配、设计块强制落盘+finish 前收尾自查、新增 ⑩ 难度曲线、⑨ 经营决策模式指针。v1.5.0:策划知识包 v2——⑨ 否决项加判定句式+内嵌正反例8/9 条计数口径统一prompt.mjs 冻结为 A/B 史料不再双源同改。v1.4.0W-GENRE 品类路由并集(剧情+6/TRPG+7/非遗+8/解谜+9
stage: "04-config"
owner: WS2
file: 04-config/cheap-system.md
desc: 便宜档 LittleJS A-model 生成 agent system prompt轻量 AI 参与档,入口契约+插件+红线+输入契约+完成判据;运行时热取,回落 cheap_roles._SYSTEM_PROMPT
# 其余 prompt 待各工位 Day-0 抽取迁入Dify 节点/OpenGame 内嵌 prompt → 本 Registry