with one click
game-audit-workflow
BoardGame 规则审计与证据链流程。用于规则、卡牌、技能、状态、交互的描述-实现对照,以及审计报告和测试证据。
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
BoardGame 规则审计与证据链流程。用于规则、卡牌、技能、状态、交互的描述-实现对照,以及审计报告和测试证据。
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
BoardGame 项目内参考图生成 Three.js 程序化模型流程。用于 img2threejs、图生模型、参考图重建、Three.js 游戏资产原型、书本/棋盘/卡牌/道具 3D 模型任务;在动手写模型前先拆参考图结构并建立“参考图区域到模型部件/材质”的追踪表,禁止把参考图当整面贴图贴皮,也禁止脱离参考图生成泛主题模型。
BoardGame 线上反馈批量收口流程。用于未关闭反馈、排重、真假 bug 分诊、并行修复、状态回写、关闭误报/重复反馈。
BoardGame 规则 bug 修复流程。用于卡牌、技能、Token、状态、阶段、伤害、资源、升级/基础差异、结算顺序和审计漏审。
BoardGame Git 操作入口。用于提交、推送、同步主分支、pre-push 阻塞、PR、worktree、fork、merge 等协作场景。
BoardGame 新游戏创建或资源/data intake 流程。用于新增游戏、只给图片/位置先开工;按现有游戏模式分阶段推进并验收。
BoardGame 截图交付流程。用于打开图、给我看图、看截图、图呢、端到端截图;最终验收图默认走图片预览站。
| name | game-audit-workflow |
| description | BoardGame 规则审计与证据链流程。用于规则、卡牌、技能、状态、交互的描述-实现对照,以及审计报告和测试证据。 |
本技能用于所有游戏的审计工作:从权威规则/图片/说明出发,对实现做全链路对照,并按 D 维度库输出可复查审计证据(含测试/截图链路)。
必读权威维度索引:docs/ai-rules/testing-audit-dimensions.md;按命中维度再打开对应主题分卷。
docs/ai-rules/testing-audit.md。docs/ai-rules/testing-audit-core-principles.md。references/dimensions.md(索引/提示)。blocked/disputed/待建合同,结论必须写成“已有录入入口但合同未锁定/归属未裁定”,不得说成“用户没录入数据”或“需要重新录入”。blocked/disputed 并写清缺的是哪一类证据;不得在审计流程里临时查 Wiki、网页资料、在线文本包、旧脚本 bundle 或第三方数据库来补成“权威结论”,也不得直接因此改机制代码。locked、实现矩阵、测试证据或历史 evidence 时,普通续跑先消费这些现有材料进入实现对照、真实入口、负向断言、回放/重复消费和 L3/L4 补证。只有能点名具体缺失字段、冲突对象或用户要求复核,才允许单独开录入复核任务;不得用“数据录入可能不扎实”作为泛化理由倒退阶段。blocked/disputed,等待明确进入录入复核;不能把缺口处理伪装成审计继续。blocked 转 locked、从 locked 降级为 disputed,或从待建合同进入实现审计,都必须写入 evidence/<gameId>/ 的审计文档;临时矩阵可以辅助,但不能替代正式 evidence。phase/阶段推进、pending/continuation、共享伤害链、共享状态/token 消费链、选择支付/拒绝、来源例外、攻击后续结算,正式判定“已审过/已收口”前,必须先逐项回答下面四问;缺任一项,默认继续审,不得收口:
HP/资源/token/区域/阶段/final state 哪一项?若当前只看到 prompt/overlay/pending/sourceAbilityId/currentChoice 之类中间态,只能算命中了流程中段,不能算完成。phase/queue/interaction/pending/continuation 是否按规则收口?必须至少补 1 条负向断言,明确证明“不会误跳阶段 / 不会残留 pending / 不会卡在 halt / 不会吞后续链”中的至少一项。docs/ai-rules/testing-audit.md、docs/ai-rules/testing-audit-core-principles.md、docs/ai-rules/testing-audit-dimensions.md 和 docs/ai-rules/audit-evidence-template.md 作为动作清单真相源;执行者不得自行发明“链审计”“代表链差不多看过了”“我这轮主要补了几条测试所以算全面审计”之类缩写口径来替代对象全集、子句矩阵、D 维度、L1-L4、共享链判等和旧结论回写。scripts/verify/audit-evidence-completeness.mjs 或同级机器门禁,并在审计后用本轮 evidence 复跑 npm run audit:evidence:selfcheck -- <evidence 文件>;否则只能汇报“规则已补,但审计后自检未补”,不得说防再犯已完成。该自检不默认阻塞发布。sys.interaction.current、simple-choice、prompt、状态横幅或等价交互时,不能只把系统状态存在当成 L3 证据。必须继续证明真实 Board/PromptOverlay/StatusBanners/手牌区/棋盘区显示了对应按钮、候选或高亮,并且点击提交的是同一份 optionId/value;缺这条只能写“领域交互已创建”,不得写 UI 链路已收口。tutorial / 新手引导 / 教学步骤 / onboarding,审计时必须把每一步提示的“点击对象/高亮目标/按钮文案”与正式牌桌或正式流程里的真实交互承接点逐项对照。禁止出现“正式游玩点按钮,教程却让人点牌堆”“正式游玩点手牌,教程却高亮说明面板”这类分叉;也不得因为底层命令相同,就把教程里错误的点击对象判成通过。tutorial / 新手引导 / 教学步骤 / onboarding,除了交互一致,还必须同步阅读 docs/ai-rules/tutorial-design.md,逐项核对:是否先讲赢法、是否解释行动收益、是否有真实案例、是否让玩家看到计分或等价结果反馈。只能证明“教程能走通/按钮点对了”,不得判为教程合格。docs/ai-rules/** 或其它通用层,必须先确认这条结论约束的是“怎么识别教程问题”,而不是在替当前这个游戏预写“哪章合并、哪章先教、哪条路线更适合示范”。离开当前游戏就不成立的内容,只能下沉到该游戏专项文档、覆盖矩阵或教程实现,不得借“审计经验”之名抬升成通用规则。tutorial / 新手引导 / 教学步骤 / onboarding,如果文案主要在复述完整规则、堆术语、解释按钮顺序,或离开长段文案后玩家仍不知道为什么这么做,审计结论必须直接判为“不合格/需重写教学结构”;不得因为步骤能推进、断言能通过,就降格判成“教程基本可用”。tutorial / 新手引导 / 教学步骤 / onboarding,审计时必须额外核对教程关键步骤是否把主要判断交给了真实局面本身,而不是靠长段文案直接告诉玩家“现在该拿哪张/该丢哪张”。若去掉这段长说明后,牌面自身无法解释强弱,默认判为案例设计缺陷,不得用“文案已经解释清楚了”收口。tutorial / 新手引导 / 教学步骤 / onboarding,必须额外核对:说明步是不是只在提醒玩家该看什么,动作步是不是只在教玩家点哪里。若一个 requireAction 步同时在替玩家下结论、解释收益、又指挥点击对象,默认判为教学结构失焦,需要拆步或重写。tutorial / 新手引导 / 教学步骤 / onboarding,并且争议涉及“先选行动还是先选目标”“先点按钮还是先点地图/卡牌”“横幅是不是交互入口”“为什么教程从某个地区起手”,审计必须先产出一张 一级交互审查表。至少写清:规则书回合骨架、正式 UI 当前一级行动入口、后续目标/地区/支付入口、提示 UI 与真实交互载体的区别,以及教程是否把它们教反。没有这张表,不得进入教程实现或给出“教程已修好”的结论。一级交互审查表 就必须先按规则或权威真相源列出同层一级行动的完整全集,再逐项映射到当前 UI。不得只因为某几个入口当前更显眼、案例正好走到、E2E 更容易拍,就跳过同层别的一级入口,例如 打牌、升级军备、势力行动、轮盘行动、结束、公开区拿牌、桌面对象直点 等。默认预选、真实可点击对象、玩家已确认选择。不得把默认预选写成“玩家先选了这里”,也不得因为画面上已有高亮,就跳过“这一步真正承接点击的是谁”的核对。来源区 / 出发对象 / 支付对象 / 已确认主动作对象,后续地图点击、列表重聚焦、逻辑区切换或默认高亮变化都只能改变“当前焦点/当前候选”,不能反向改写这份已锁来源。审计时必须单列:当前焦点对象、已锁来源对象、真实提交对象;三者混成一个字段或一个 UI 语义时,直接判为交互合同错误。支付 / 弃牌 / 二级目标 / 地图目标 / 战后 / 年度结算 这类后续步骤,任何不承接点击的摘要卡、步骤标题、状态条、右侧说明、横幅文案,都不得再把 默认焦点 / 默认候选 / 已锁来源区 / 当前候选区 包装成“现在第一步先点它/从这里开始/进攻这里/查看这里”。这类文案只能说明当前动作层、当前步骤目的、剩余次数、结果约束;若一个非点击摘要同时承担了“点击指令 + 地区主语 + 步骤主语”,直接判为交互合同错误。开局公共推进、一级行动入口、支付/弃牌、二级目标选择、地图目标选择、待结算战斗、战后选择、年度/阶段结算。任一类目未落表,不得声称“主要交互已审完”。首回合动作顺序表。至少写清:规则书从正式主入口开始要求玩家依次决定什么、当前正式局每一步首先暴露的真实对象、哪些属于一级动作、哪些只是后续目标/支付/确认、默认预选在该步只是弱聚焦还是已经进入正式确认。没补这张表前,不得把任何教程开场步骤或正式流程入口判成正确。当前屏幕可见可点对象盘点。必须把该阶段玩家第一眼能看到并可能尝试点击的对象逐项标成 一级动作入口 / 二级目标 / 支付对象 / 确认控件 / 提示UI / 非当前步骤对象;不得只按最后成功点击的那个对象,反推这一步的主入口。implementation-map / 覆盖矩阵 / 教程脚本草案 / 目录重组草案 / 实施前映射 只能证明“计划怎么改”,不能证明“当前正式局已经这样工作”。只要结论里出现“正式进行页已有这个入口/这一章已实现/新游戏可收工”,证据必须来自当前 worktree 的正式源码、当前运行态截图或真实 E2E,而不是计划文档。primary-interaction-audit / formal-flow-audit / runtime-closeout-audit 这类明确面向运行态的专项审计文档,以及 implementation-map / 覆盖矩阵 / 教程脚本草案 这类计划文档,那么凡是“正式局当前有没有这个入口”“当前还能不能报收工”的判断,一律以运行态审计文档为准;计划文档只能作为待实施输入,不得反压运行态审计结论。primary-interaction-audit / formal-flow-audit / runtime-closeout-audit 仍保留旧状态,默认动作必须是先把这份运行态审计文档回写到当前真相,再继续用它指导后续实现、教程判断或收工结论;不得一边知道文档已失真,一边继续引用里面的旧句子推进任务。真实可用 / 抽象替代 / 教程注入专供 / 尚未实现。没补这张表前,不得用“正式流程已具备”口径。一级交互审查表 / 首回合动作顺序表 / 当前屏幕可见可点对象盘点 / 正式进行页一级入口核对表 / 主要交互清单表 只能证明“缺口被锁定”,不能单独证明“问题已解决”。只要表里仍有 抽象替代 / 尚未实现 / 文案误导顺序 / 提示 UI 冒充交互 / 默认聚焦语义错误 / 教程与正式局不一致,执行者必须继续回到当前源码、当前门禁和当前截图链处理;不得停在审计文档或口头结论。规则书同层动作 / 当前状态字段 / command 或 event / builder / reducer / 当前 E2E 入口 反查出来;截图只能验证已列出的行,不能用几张图反推出“主要交互只有这些”。若没有逐项覆盖这些运行态来源,不得说“所有交互已审完”。可立即真修 / 需要建模或真相源补齐 / 明确暂不处理且说明原因。可立即真修 行必须继续落到源码、语言包、测试或截图链;需要建模或真相源补齐 行必须点名缺的是对象真相、素材合同、状态字段拆分、交互承接物还是阶段收口。没有这层分流,不得说“所有交互已审完”。抽象替代 / 教程注入专供 / 尚未实现 的同层一级动作,就不得把某条教程示范链、某个隐藏续章、某个默认预选路线或某个局部 E2E,包装成“基础流程完整”“正式局已经能看出怎么运作”或“新游戏已收工”。审计结论必须同时保留这些正式入口缺口,并继续回到真实承接物实现。低保真预览 / 错 atlas / 混入别类对象 / 没有规则级身份,审计状态只能写成 低保真替代 / 局部真实可用 / 正式缺口,不得记成“正式入口已具备”。素材清单 / atlas 裁切合同 / cardDefId 真相表 / 规则级对象映射 锁真相。固定顺序房间池 / 固定顺序牌堆 / 固定遭遇池 / 假随机结果 / 占位房间对象 / 占位卡牌对象 / 教程注入专供入口 / 调试入口替代正式入口 这类实现,审计结论必须明确降级为“正式规则未完成”。即便教程、截图或代表性 E2E 已跑通,也不得写成“游戏完成 / 第一剧本完成 / 可归档”。写入 seam -> 共享消费者 -> 清理/后续 -> 已验证入口。只证明“多张牌都能写这个状态”不等于状态家族已到 L4;至少要继续查 stack limit / accept-decline / upkeep / passiveTrigger / transfer / cleanup 这些共享消费者。SELECT_ABILITY、按钮点击或 modal 选择,只能证明对象进入了流程,不能直接算对象级 L3。若真合同是“先建 pendingAttack,再由 ADVANCE_PHASE / Continue / 选择确认收口”,审计必须把这两段都补齐。damage(unblockable=true) 或文案写“不可防御”时,不能直接判定收口。还必须反查 isDefendable 的共享来源是 ability/variant tags、choice effect patch、ATTACK_MADE_UNDEFENDABLE 还是其他 seam,并补证据证明真实流程不会误开防御窗口。AGENTS.md(项目级规则)。src/games/<gameId>/rule/*.md(规则/录入核对/真相源表)scripts/scrape-wiki-with-descriptions.mjs → scripts/final-wiki-code-comparison.mjs 流程执行(除非用户指定以本地图为准)。逐项核对:定义 → 注册 → 执行 → 状态 → 验证 → UI → i18n → 测试。
房间/场地效果审计表(强制):
空间对象 -> 规则效果 -> 实现入口 -> 证据等级 表。已打穿 / 仅空间合同 / 仅资源合同 / 效果未审 / 录入缺合同 / 阻塞卡牌具体效果实现审计表(强制):
卡牌对象 -> 文本子句 -> 具体效果实现 -> 证据等级 表。已打穿 / 仅对象真相 / 仅牌堆归属 / 效果实现未审 / 录入缺合同 / 阻塞教程交互对齐表(强制):
教程提示动作 -> 正式游玩承接点 对照表,逐步写清:
一级交互审查表(强制):
规则骨架 -> 一级行动 -> 二级目标 -> 真实承接物 -> 提示 UI 对照表,逐项写清:
主要交互清单表(强制):
交互类目 -> 进入条件 -> 第一眼入口 -> 真实承接物 -> 后续步骤 -> 当前问题 清单表。首回合动作顺序表(强制):
规则顺序 -> 当前正式局先暴露对象 -> 动作层级 -> 当前状态 对照表。当前屏幕可见可点对象盘点(强制):
当前对象 -> 玩家第一眼可见性 -> 真实语义 -> 是否当前该点 盘点表。一级动作入口 / 二级目标 / 支付对象 / 确认控件 / 提示UI / 非当前步骤对象 哪一类正式进行页一级入口核对表(强制):
规则书一级动作 -> 当前正式局入口 -> 当前承接物 -> 当前状态 对照表。真实可用 / 抽象替代 / 教程注入专供 / 尚未实现 哪一类Board.tsx、当前交互 builder、当前截图或当前 E2Eimplementation-map / 教程脚本草案 / 覆盖矩阵 代替这张表的运行态证据。教程教学闭环表(强制):
教学目标 -> 真实案例 -> 结果反馈 对照表,逐步写清:
代词/指代消歧(强制,D1/D5/D15/D18 高频漏审点):
时机正确性语义核对(强制,D1/D5/D18 高频漏审点):
rollLimit:还能再投几轮selectCount:本轮允许选择多少颗骰子maxRerollCount:奖励骰总共还能重投几次rerollDieLimit:像防御重投这类“下一轮至多可重投几颗”的共享校验prompt/overlay 打开、rollLimit 提高、或 bonusDiceSettlement 存在,就把“可重掷至多 N 颗”判成已实现;必须继续追到真实 commandValidation / interaction consumption / UI 锁定态。offensiveRoll / targetingRoll,并且玩家动作后还存在 pendingAttack、currentChoiceSourceAbilityId、bonus settlement 或其他 continuation,必须继续追到真实 ADVANCE_PHASE / Continue / 选择确认后的收口。CHOICE_RESOLVED / token 响应后才改写“不可防御 / 目标 / 伤害范围”,必须同时验证“选择前中间态正确”和“选择后共享合同已改写并成功收口”。grantStatus、customAction、choiceResolved、phase hook 还是其它特殊入口stack limit、accept/decline、upkeep、passiveTrigger、cleanup、transfer、damage gate)L4 或“只差治理尾项”。replaceAbility、升级牌写槽、双面切换能力集或其它“先替换定义,再由新定义继续运行”的对象时,必须拆成两层:
abilityLevel、upgradeCardByAbilityId 或能力集切换是否真实成立trigger / variants / customAction / tags / postDamage continuation 是否真实成立L4;这只能证明壳层成立,不能替代 replacement ability 本体审计。rollDie、BONUS_DIE_ROLLED、奖励骰特写或 displayOnlySettlement 时,必须继续拆成三层:
drawCard / grantToken / damage / status / extraAttack / selectPlayer / damageShield 哪一类消费者postDamage、额外进攻、选择确认或其它后续时序BONUS_DIE_ROLLED / displayOnlySettlement,就把它们判成同一 L4 family;真正的判等边界必须落在后续消费者与 continuation。docs/ai-rules/testing-audit-dimensions.md 入口索引。playerId/targetId 归属)。声明值 -> 消费点 -> 证据。测试策略必须与问题类型匹配:
凡出现“骰子特写/奖励骰特写/重掷入口/显示-only 结算(displayOnly)”,E2E 证据必须满足最小闭环:
缺任一段,只能标“待补证据”,不得写“已收口/已一致”。
判定门槛补充(强制):
生效时机判定(强制,避免把 Wild West 与 Righteousness/Zanshin 混为一谈):
凡出现“选择 1/多名目标玩家”“至多 N 名目标玩家”“目标玩家/敌方玩家/任意玩家”等交互,E2E 证据必须满足最小闭环:
缺任一段,只能标“待补证据”,不得写“已完成/已验证”。
审计必须明确区分“资源/指示物(token)”与“攻击修正汇总(attack modifier / bonus damage)”的 UI 归因,避免把 token 的变化误当作伤害修正已展示:
若同一张卡/同一交互包含“立即生效 + 延迟结算后再生效”的两段效果(如固定加伤 + 奖励骰结算加伤):
docs/automated-testing.md 的截图规范。evidence/<gameId>/。references/evidence-template.md。只到入口、仍待补 L3/L4、对象级未实现 等句子,必须把这些高风险正文行一并改掉,或在对应行内直接标成“历史轨迹/当前以某文档为准”。只在文首追加“以新文档为准”但正文旧结论不动,不算完成回写。docs/ai-rules/animation-effects.mddocs/ai-rules/ui-ux.mddocs/ai-rules/engine-systems.mddocs/ai-rules/data-entry.mdreferences/dimensions.md:D 维度使用提示与索引references/evidence-template.md:审计文档模板