game-qa

GitHub

用于游戏构建的客观质量验证,通过证据化手段检查运行日志、渲染、输入交互、核心循环及本地化等,确保游戏可玩且符合设计契约。

skills/game-qa/SKILL.md worldwonderer/novel-to-game

Trigger Scenarios

测试生成游戏 QA游戏构建 检查游戏是否完整可玩 验证游戏构建版本

Install

npx skills add worldwonderer/novel-to-game --skill game-qa -g -y
More Options

Use without installing

npx skills use worldwonderer/novel-to-game@game-qa

指定 Agent (Claude Code)

npx skills add worldwonderer/novel-to-game --skill game-qa -a claude-code -g -y

安装 repo 全部 skill

npx skills add worldwonderer/novel-to-game --all -g -y

预览 repo 内 skill

npx skills add worldwonderer/novel-to-game --list

SKILL.md

Frontmatter
{
    "name": "game-qa",
    "description": "Verify a game with evidence on its selected target runtime. Launch the actual build and check logs, real rendering, input and state changes, the core loop, designed outcomes, restart, target display modes, interface language, first-time onboarding, and whether the core fantasy is actually performed — without dressing subjective fun up as a certain verdict. Use for test a generated game, QA a game build, check whether the game is fully playable, verify the build. 游戏证据化质量验证。在选定的目标运行环境中启动实际构建,检查日志、真实画面、输入与状态变化、核心循环、设计要求的结果、重开、目标显示模式、界面语言、首次上手与核心幻想是否真正出现,不把主观趣味包装成确定性结论。用于测试生成游戏、检查游戏能否完整游玩等需求。"
}

游戏质量验证

验证游戏能否可靠运行和完成,不给“好玩”伪造客观分数。

读取 qa-contract.md 定判据,读 test-design-method.md 定怎么设计这些检查。

产物语言由 PRODUCT_BRIEF.md 锁定;未锁定时跟随对话语言,不默认产出中文。

执行

  1. 先做 suite discovery:依次查 package/build manifest scripts、CI workflow 实际命令、测试 目录/文件、BUILD_BRIEF.md 声明的 runner,再对照 qa/evidence/verify.log。把结果写成 suite | discovered from | files | runner | observed in verify | result;发现 required suite 存在 却未被权威命令执行,报告 ORPHANED_TEST_SUITE,严重度 major。vendored/build output/ 明确 archived fixture 不算 suite,但例外必须写理由。
  2. 从项目脚本和 BUILD_BRIEF.md 发现目标平台、targetRuntimetestedRuntime 与启动方式, 使用当前环境中适合该运行时的测试能力;网页才使用浏览器测试。独立运行 brief 声明的 权威 verify,记录实际 command、exit code、duration、environment 和 source commit;不能只 接受实现方贴出的绿色摘要。提取不变量以 BUILD_BRIEF.md 回写后的「# 范围」与「最终范围对照」为依据;发现 brief 范围与代码 不一致(如 brief 三战、代码六战)先记 major 要求回写再验。同时逐字核对 PRODUCT_BRIEF.mdART_DIRECTION.mdVISUAL_TARGETS.mdBUILD_BRIEF.mdtargetFinish;任一缺失或不一致即 FAIL,不由 QA 猜一个等级。
  3. 审计 qa/verification.json:环境、verify、suites、completeRun、checkpoints 必须属于同一 source commit。复跑一条 clean start → 核心动作 → 设计结果 → restart,逐步核对 checkpoint; 同时核对 registry 的 discovered / registered / excluded / problems:发现项必须恰好由已执行通过 suite 覆盖或附非空排除理由;有测试目录时还要与真实测试文件重发现结果一致。缺字段、路径不存在 或只有临时目录路径时不得通过。等价结构只有在 BUILD_BRIEF 与 QA_REPORT 给出稳定映射时接受。
  4. testedRuntime 启动真实构建,记录构建/导出失败、运行日志错误、崩溃和关键资源失败。 若 testedRuntime 不等于 targetRuntime,把目标平台独有的输入、性能、打包和发布项列为 NOT_RUN,不得借替代版本判过。 对 focal 异步资产主动制造 404 / 解码失败:若运行时静默展示灰盒或程序化替身并继续形成 PASS 证据,按 major 处理;只有 manifest/ledger 明确批准为 degradable 且五项合同仍成立时才可继续。
  5. 证明画面非空且会变化;网页画布、引擎场景节点或窗口存在本身都不算渲染成功。 连续 3D 项目还要独立复核 collider-to-visible-anchor 映射、non-solid 清单、固定子步 / swept 防穿透、角点滑动与解穿透;浏览器至少实际接触每类路线 collider 并保存前后状态。只测一个箱体、 只看坐标变化或只走完整路线都不能证明碰撞完整。
  6. GAME_DESIGN.md 提取会改变结果的关键不变量:把每个数值门槛、结局条件、破裂/冷却 条件,以及「三段弧」每期的结束标记与新增动词 / 可达空间、BUILD_BRIEF 的「同玩法动词 清单」,抄成期望表落盘 qa/evidence/design-invariants.md,逐项对照引擎常量或运行态 取值,记录一致或漂移及证据。后两项要跑实测取证,核对文档写没写不算数。
  7. 使用真实输入走核心动作、进程变化、设计要求的结果和重开;确定性系统至少复现一次 相同状态与输入得到相同结果。对连续镜头控制,必须单独证明“取得输入控制权 → 真实输入改变 朝向 → 相机前向与移动前向一致 → 转向后移动 → 释放 / 失焦 / 暂停 / 恢复归零 → 拒绝时有 可操作反馈”。测试钩子直接写 heading、摇杆值或玩家坐标只能覆盖规则层,不能替代输入链; headless/shim 结果必须标运行器能力,目标运行时的真实锁定未跑就记 NOT_RUN
  8. 在目标分辨率、窗口模式或设备朝向下检查遮挡、溢出、文字和控件可操作性;逐一切换策划要求的界面语言, 检查缺字、截断、阅读顺序、术语一致性和关键玩法信息。 显示模式、界面语言、控制方式与内容尺度按 PRODUCT_BRIEF.md 的目标平台与分级核对: 竖屏/横屏、单局结构、交互约束是否兑现,内容是否落在批准的分级内(未逾越,也未被下游 悄悄收回到更保守)。
  9. 对文化关键名称、符号和提示抽查原作语义,避免翻译或本地化改变规则与角色关系。
  10. 走一遍首次上手:先跑前提传达门——起一名不给任何策划 / 构建文档的干净上下文子代理 (两分钟理解度沿用同一名),只喂常速冷启动第一分钟按序截取的画面,四问一并作答(我是 什么 / 我要什么 / 什么会终结这一局 / 这是哪一类游戏——我主要在反复做什么、像我玩过的 哪款游戏),判据见 qa-contract 的「前提传达门」,逐字落盘 qa/evidence/premise-gate.md; 未跑或记 NOT_RUN 时首次上手不得判 PASS。再在正常速度下实测首个有意义动作与冷启动 节拍;两分钟理解度("我是谁/要什么/往哪使劲")须由未接触任何策划/构建文档的干净上下文 子代理基于顺序真实画面裁决, 无该能力时理解度记 NOT_RUN,首次上手不得判 PASS。再逐条对照 CONCEPT.md/GAME_DESIGN.md 的体验支柱与其"可观察试玩证据",确认承诺的卖点在真实游玩里被演成了场面而非只剩数字, 并检查设计写明的失败现象有没有发生。判据与协议见 qa-contract.md
  11. VISUAL_TARGETS.md 对全部目标帧做独立逐帧评审:每帧分别裁决焦点、轮廓、空间层次、 材质 / 线条、光色、HUD、动作 / 反馈、伪影、与失败例冲突,不用总分抵消失败。reviewer 不读 实现辩解,只读批准目标包、真实 contact sheet 和可操作路径;记录身份、未参与实现的独立性 说明、逐帧问题、严重度、处置与复验证据。必需评审为 NOT_RUN 时可以完成记录,但只有 graybox 可以携带;playable 及以上必须由独立评审 PASS,并把评审时的 source fingerprint 与已校验视觉证据 manifest 哈希写入 release manifest。 实时 3D 还要审常速帧序列:固定镜头、直行、扫视、冲刺转弯和最重状态至少各一段,记录 静止差异、相邻帧变化、阴影 / LOD / 抗锯齿稳定性、动作接地与交互 longtask;单帧通过不能 抵消动态画面的 blocker/major。
  12. 每条 blocker/major 按 qa-contract 的归属定义标注 build/design/product 并写入 发现与回流表;标 design 的本轮不得 PASS;回流路由由总入口执行。

BUILD_BRIEF 含动态媒体台账(视频 / 关键帧驱动演出 / 实时 3D)时,强制启用生成媒体 检查:逐镜对照参考图做漂移证伪(首 / 中 / 尾帧)、相邻镜头边界接续检查、API 证据链 核对,以及 3D 后端降级与资源释放证据核对——判据见 qa-contract.md 的生成媒体节,无台账则该节不适用。

BUILD_BRIEF 含语音资产台账时,强制启用语音与 TTS 检查:逐句核对生成真值、说话人 / casting_id、性别呈现与年龄感、音色权利、字幕映射、解码 / 时长 / 响度、真实试听、静音与 缺音降级、运行期网络和客户端密钥暴露;短反馈、 长段、情绪、停顿、专名、数字与每种目标语言按实际采用范围取样。判据见 qa-contract.md 的《语音与 TTS 证据》,无台账则该节不适用。

优先使用游戏已有可观察状态;只有无法判断结果时才增加最小测试钩子。不要为了 QA 重构游戏或强制一种调试接口。

输出

生成 qa/QA_REPORT.md阻断交付物:无它不得报完成)与机器可读 qa/release-gates.json。后者显式逐字继承 targetFinish,并记录 source/evidence commit、 当前候选 sourceFingerprint、可递归复算的 sourceInputManifestdemonstratedTier、全部 pipeline gate、逐帧视觉裁决、独立 reviewer 身份 / 独立性 / 证据路径、 visualEvidenceManifests 的路径 / 字节哈希 / 内嵌 fingerprint,以及 manifest 内 captures / contact sheet / targets 的结构化路径与字节哈希、严格枚举的未决缺陷、release ledger、publication tier,以及所有结论的工作区 证据路径。每个 visual frame ID 必须一一对应已验证 target ID,其 evidence 只能引用已哈希验证的 capture / contact sheet,不能用 target 图冒充运行帧。manifest 同时列互斥的 focalReleaseAssetsdegradableReleaseAssets,并集必须覆盖 ledger 全部 release-gate 键;playable 的 focal 全部通过,degradable 逐项有有效 fallback。报告记录环境、命令、通过/失败项、 证据路径、未测试范围,必填「独立验证」与「发现与回流表」、附「模型试玩手记」,以及三项 主观-但-可观察裁决:首次上手 / 核心幻想演出 / 招牌帧符合(各节最小内容见 qa-contract.md)。 只有 graybox 可以携带视觉 NOT_RUN、visual major 或灰盒资产。playable 及以上只有零 blocker、零 major,加载、核心动作、主要结果和重开都有证据,且目标等级所需的 独立视觉评审和发布门禁均为 PASS 时才标记 PASS。playable 中 focal 资产 false 或 degradable 资产缺有效 fallback 必须 fail closed;polished / showcase 则要求每个 release-gate 资产均为 true,并满足 publicationTier <= demonstratedTier <= targetFinish。 把 PASS/FAIL 裁决与一句原因文本交回总入口,gate:qa 行由总入口核对后写入 _progress.md,本阶段不自记过门。趣味、长期平衡、留存 和商业完成度留给人工试玩,但试玩工具由本阶段交付:同时落盘 qa/PLAYTEST_PROTOCOL.md

commit ID 只作历史定位:若当前输入 fingerprint 已变化,旧 commit/evidence PASS 必须标历史、不能 证明当前候选。公开托管检查也记录 deployed fingerprint;只有与 release sourceFingerprint 完全 一致时才能 PASS

Version History

  • db8bc29 Current 2026-08-05 15:08

    新增首次上手体验验证(前提传达门);强化画面非空证明及碰撞检测细节;增加界面语言与文化语义审计步骤。

  • 9d7f873 2026-08-02 21:56

    新增受控且基于证据的TTS生产检查,将语音作为明确的艺术方向选择,包含权利证据、字幕映射、静音降级及强制人工试听等硬性否决项。

  • 470e35d 2026-07-31 13:49

    修复了合并合同带来的八个缺陷:统一了前提传达门的提问措辞以匹配合约判据;修正了先例组计数逻辑避免死锁;修复了动词清单缺失、标准不一致、时间窗口混淆等配置错误。

  • 827fb80 2026-07-30 20:19

Same Skill Collection

skills/game-concept/SKILL.md
skills/game-world-design/SKILL.md
skills/novel-game-analyze/SKILL.md
skills/game-art-direction/SKILL.md
skills/game-build/SKILL.md
skills/novel-to-game/SKILL.md

Metadata

Files
0
Version
4227c91
Hash
5a6b1377
Indexed
2026-07-30 20:19

Accueil - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-08-07 10:16
浙ICP备14020137号-1 $Carte des visiteurs$