3.4 KiB
3.4 KiB
id, skill, severity, test_id, skill, scenario
| id | skill | severity | test_id | skill | scenario |
|---|---|---|---|---|---|
| phase-guard-001 | game-design | critical | phase-guard-001 | game-design | 用户在 development 阶段尝试触发 game-design Skill |
场景
用户在 development 阶段说"帮我设计一个卡牌游戏",此时应该触发 game-design 的相位守卫, Agent 应拒绝加载该 Skill。
模拟参数
- phase: "development"
- user_message: "帮我设计一个卡牌游戏"
预期行为
- Agent 应检查 current.json 的 phase 值
- 发现 phase = "development",而 game-design 的 phases = ["design"]
- 立即中止,不执行 game-design 的任何后续流程
- 输出应包含以下关键信息:
- 当前阶段为 development
- game-design Skill 不可用
- 建议切换到设计阶段
预期输出关键词
- "当前阶段" 或 "development"
- "不可用" 或 "不支持" 或 "无法加载"
- "切换到" 或 "设计阶段"
不应出现的行为
- 开始进行游戏设计问答
- 询问参考游戏
- 加载任何设计相关模板
- 创建 state.json 或设计阶段数据文件
Judge 备注
- 这是相位守卫的否定场景测试(应拒绝加载)
- 行为匹配的核心:Agent 是否拒绝执行游戏设计工作流
- 关键决策点:Agent 输出中是否包含了中止信号
id: phase-guard-002 skill: game-design severity: critical
test_id: phase-guard-002 skill: game-design scenario: 用户在 design 阶段正常触发 game-design Skill
场景
用户在 design 阶段说"我想做一个 roguelike 卡牌游戏",此时应该正常加载 game-design Skill 并开始工作流。
模拟参数
- phase: "design"
- user_message: "我想做一个融合了杀戮尖塔和炉石传说的 roguelike 卡牌游戏"
预期行为
- Agent 应检查 current.json 的 phase 值
- 发现 phase = "design",game-design 的 phases = ["design"],匹配通过
- 开始执行 game-design 工作流:
- 读取 state.json
- 进入 SEEKING_REFERENCE 或直接进入 ANALYZING_REFERENCE(因为提到了明确参考游戏)
- 输出应包含游戏设计相关的引导
预期输出特征
- 不应出现"不可用"、"不支持"等拒绝信息
- 应出现游戏设计相关引导:
- 询问更多细节 或
- 确认参考游戏并开始分析 或
- 开始游戏设计工作流
不应出现的行为
- 拒绝加载
- 提示切换阶段
- 完全忽略用户的游戏设计请求
Judge 备注
- 这是相位守卫的肯定场景测试(应允许加载)
- 核心判断:Agent 是否开始执行游戏设计工作流而非拒绝
- 不需要验证完整工作流,只需确认"准入"环节通过
id: phase-guard-003 skill: dev-changelog severity: high
test_id: phase-guard-003 skill: dev-changelog scenario: dev-changelog 在 design 阶段也应可用(phases: ["all"])
场景
dev-changelog 的 phases 是 ["all"],在 design 阶段应正常可用。
模拟参数
- phase: "design"
- user_message: "帮我记录一下最近改了什么"
预期行为
- Agent 应检查 phases,发现 ["all"] 匹配任何阶段
- 正常加载 dev-changelog Skill
- 执行开发日志相关操作
预期输出特征
- 不出现阶段不匹配的拒绝信息
- 出现开发日志相关的操作(读取 changelog 文件 或 提示写入日志)
Judge 备注
- 验证 phases: ["all"] 的正确性
- 核心判断:基础设施 Skill 在所有阶段都应可用