[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71P22A03BFH2XD1YV1DB4DH":3,"skill-same:01M71P22A03BFH2XD1YV1DB4DH":85},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":30,"publishedAt":43,"linkOnly":44,"markdownContent":45,"markdownBody":46,"frontMatter":47,"refName":48,"commitSha":49,"skillDirectory":50,"forksCount":51,"repositoryHtmlUrl":52,"repositoryHomepageUrl":6,"ownerHtmlUrl":53,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":54,"install":55,"resources":68},"01M71P22A03BFH2XD1YV1DB4DH","gds-test-design",null,"Create comprehensive game test scenarios. Use when the user says \"test design\" or \"design tests\"","developAgent\u002Fbmad-start","developAgent","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F264530239?v=4","01M71J8X6CY24V5ZZHFGETRMSW","01M71J8X739FS28DGQAAY7V4QR",1,"MIT","https:\u002F\u002Fgithub.com\u002FdevelopAgent\u002Fbmad-start\u002Fblob\u002Fmain\u002F.kiro\u002Fskills\u002Fgds-test-design\u002FSKILL.md",[17,22,25],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000008","测试与质量","SCENARIO","使用场景",{"categoryNo":23,"categoryName":24,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000015","视觉设计",{"categoryNo":26,"categoryName":27,"taxonomyType":28,"taxonomyTypeDesc":29},"01JBSEEDCAT000000000000032","设计师","PROFESSION","适用职业",[31,32,33,34,35,36,37,38,39,40,41,42],"design","test","test design","gds test design","create","game","user","use","tests","test scenarios","when","scenarios","2026-11-10 10:56:23",false,"---\nname: gds-test-design\ndescription: 'Create comprehensive game test scenarios. Use when the user says \"test design\" or \"design tests\"'\n---\n\n# Game Test Design\n\n**Workflow ID**: `gds-test-design`\n**Version**: 1.0 (BMad v6)\n\n## Conventions\n\n- Bare paths (e.g. `template.md`) resolve from the skill root.\n- `{skill-root}` resolves to this skill's installed directory (where `customize.toml` lives).\n- `{project-root}`-prefixed paths resolve from the project working directory.\n- `{skill-name}` resolves to the skill directory's basename.\n\n## On Activation\n\n### Step 1: Resolve the Workflow Block\n\nRun: `python3 {project-root}\u002F_bmad\u002Fscripts\u002Fresolve_customization.py --skill {skill-root} --key workflow`\n\n**If the script fails**, resolve the `workflow` block yourself by reading these three files in base → team → user order and applying the same structural merge rules as the resolver:\n\n1. `{skill-root}\u002Fcustomize.toml` — defaults\n2. `{project-root}\u002F_bmad\u002Fcustom\u002F{skill-name}.toml` — team overrides\n3. `{project-root}\u002F_bmad\u002Fcustom\u002F{skill-name}.user.toml` — personal overrides\n\nAny missing file is skipped. Scalars override, tables deep-merge, arrays of tables keyed by `code` or `id` replace matching entries and append new entries, and all other arrays append.\n\n### Step 2: Execute Prepend Steps\n\nExecute each entry in `{workflow.activation_steps_prepend}` in order before proceeding.\n\n### Step 3: Load Persistent Facts\n\nTreat every entry in `{workflow.persistent_facts}` as foundational context you carry for the rest of the workflow run. Entries prefixed `file:` are paths or globs under `{project-root}` — load the referenced contents as facts. All other entries are facts verbatim.\n\n### Step 4: Load Config\n\nLoad config from `{project-root}\u002F_bmad\u002Fgds\u002Fconfig.yaml` and resolve:\n\n- `project_name`\n- `user_name`\n- `communication_language`\n- `output_folder`\n\n### Step 5: Greet the User\n\nGreet `{user_name}`, speaking in `{communication_language}`.\n\n### Step 6: Execute Append Steps\n\nExecute each entry in `{workflow.activation_steps_append}` in order.\n\nActivation is complete. Begin the workflow below.\n\n## Goal\n\nCreate comprehensive test scenarios for game projects, covering gameplay mechanics, progression systems, multiplayer functionality, and platform requirements. This workflow produces a prioritized test plan based on risk assessment and player impact.\n\n## Role\n\nYou are a Game QA Engineer specializing in test design. You analyze game design documentation to identify critical systems, assess risk, and create structured test scenarios that ensure gameplay quality across all platforms and player paths.\n\n---\n\n## WORKFLOW ARCHITECTURE\n\nThis workflow analyzes the game project and produces a complete test design document with prioritized scenarios, a coverage matrix, and automation recommendations.\n\n**Primary Output**: `{output_folder}\u002Fgame-test-design.md`\n\n**Supporting Components**:\n- Validation: `{installed_path}\u002Fchecklist.md`\n- Template: `{installed_path}\u002Ftest-design-template.md`\n\n**Knowledge Base References**:\n- `knowledge\u002Fplaytesting.md`\n- `knowledge\u002Fsave-testing.md`\n- `knowledge\u002Fmultiplayer-testing.md`\n- `knowledge\u002Fcertification-testing.md`\n- `knowledge\u002Fe2e-testing.md`\n- `knowledge\u002Ftest-priorities.md`\n\n\nLoad and resolve configuration from `{module_config}`:\n\n```yaml\noutput_folder: {from config}\nuser_name: {from config}\ncommunication_language: {from config}\ndocument_output_language: {from config}\ngame_dev_experience: {from config}\ndate: {system-generated}\n```\n\nResolve workflow variables:\n```yaml\ndesign_level: \"full\"    # full | targeted | minimal\nfocus_area: \"auto\"      # auto | gameplay | progression | multiplayer | performance\n```\n\nSearch the project for game design documentation before proceeding.\n\n---\n\n## EXECUTION\n\n### Preflight Requirements\n\nVerify before proceeding:\n- Game design documentation available (GDD, feature specs)\n- Understanding of target platforms\n- Knowledge of core gameplay loop\n\n---\n\n### Step 1: Gather Context\n\n#### Actions\n\n1. **Read Game Design Documentation**\n   - Locate GDD or game-design.md\n   - Identify core mechanics and features\n   - Note target platforms and certification requirements\n\n2. **Identify Critical Systems**\n   - Core gameplay loop\n   - Progression\u002Fsave systems\n   - Multiplayer (if applicable)\n   - Monetization (if applicable)\n\n3. **Assess Risk Areas**\n   - Player-facing features (highest priority)\n   - Data persistence (save\u002Fload)\n   - Platform certification requirements\n   - Performance-critical paths\n\n---\n\n### Step 2: Define Test Categories\n\n#### Core Gameplay Testing\n\n**Knowledge Base Reference**: `knowledge\u002Fplaytesting.md`\n\n| Category           | Focus                      | Priority |\n| ------------------ | -------------------------- | -------- |\n| Core Loop          | Primary mechanic execution | P0       |\n| Combat\u002FInteraction | Hit detection, feedback    | P0       |\n| Movement           | Physics, collision, feel   | P0       |\n| UI\u002FUX              | Menu navigation, HUD       | P1       |\n| Audio              | Sound triggers, music      | P2       |\n\n#### Progression Testing\n\n**Knowledge Base Reference**: `knowledge\u002Fsave-testing.md`\n\n| Category     | Focus              | Priority |\n| ------------ | ------------------ | -------- |\n| Save\u002FLoad    | Data persistence   | P0       |\n| Unlocks      | Content gating     | P1       |\n| Economy      | Currency, rewards  | P1       |\n| Achievements | Trigger conditions | P2       |\n\n#### Multiplayer Testing (if applicable)\n\n**Knowledge Base Reference**: `knowledge\u002Fmultiplayer-testing.md`\n\n| Category        | Focus               | Priority |\n| --------------- | ------------------- | -------- |\n| Connectivity    | Join\u002Fleave handling | P0       |\n| Synchronization | State consistency   | P0       |\n| Latency         | Degraded network    | P1       |\n| Matchmaking     | Player grouping     | P1       |\n\n#### Platform Testing\n\n**Knowledge Base Reference**: `knowledge\u002Fcertification-testing.md`\n\n| Category      | Focus               | Priority |\n| ------------- | ------------------- | -------- |\n| Certification | TRC\u002FXR requirements | P0       |\n| Input         | Controller support  | P0       |\n| Performance   | FPS, loading times  | P1       |\n| Accessibility | Assist features     | P1       |\n\n#### E2E Journey Testing\n\n**Knowledge Base Reference**: `knowledge\u002Fe2e-testing.md`\n\n| Category           | Focus                       | Priority |\n| ------------------ | --------------------------- | -------- |\n| Core Loop          | Complete gameplay cycle     | P0       |\n| Turn Lifecycle     | Full turn from start to end | P0       |\n| Save\u002FLoad Roundtrip| Save → quit → load → resume | P0       |\n| Scene Transitions  | Menu → Game → Back          | P1       |\n| Win\u002FLose Paths     | Victory and defeat conditions| P1      |\n\n---\n\n### Step 3: Create Test Scenarios\n\n#### Scenario Format\n\nFor each critical feature, create scenarios using this format:\n\n```\nSCENARIO: [Descriptive Name]\n  GIVEN [Initial state\u002Fpreconditions]\n  WHEN [Action taken]\n  THEN [Expected outcome]\n  PRIORITY: P0\u002FP1\u002FP2\u002FP3\n  CATEGORY: [gameplay\u002Fprogression\u002Fmultiplayer\u002Fplatform]\n```\n\n#### Example Scenarios\n\n**Gameplay - Combat**\n\n```\nSCENARIO: Basic Attack Hits Enemy\n  GIVEN player is within attack range of enemy\n  AND enemy has 100 health\n  WHEN player performs basic attack\n  THEN enemy receives damage\n  AND damage feedback plays (visual + audio)\n  AND enemy health decreases\n  PRIORITY: P0\n  CATEGORY: gameplay\n```\n\n**Progression - Save System**\n\n```\nSCENARIO: Save Preserves Player Progress\n  GIVEN player has 500 gold and 3 items\n  AND player is at checkpoint\n  WHEN game saves\n  AND game is reloaded\n  THEN player has 500 gold\n  AND player has same 3 items\n  AND player is at same checkpoint\n  PRIORITY: P0\n  CATEGORY: progression\n```\n\n**Multiplayer - Network Degradation**\n\n```\nSCENARIO: Gameplay Under High Latency\n  GIVEN 2 players in session\n  AND network latency is 200ms\n  WHEN Player 1 attacks Player 2\n  THEN damage is applied correctly\n  AND positions remain synchronized\n  AND no desync occurs\n  PRIORITY: P1\n  CATEGORY: multiplayer\n```\n\n#### E2E Scenario Format\n\nFor player journey tests, use this extended format:\n\n```\nE2E SCENARIO: [Player Journey Name]\n  GIVEN [Initial game state - use ScenarioBuilder terms]\n  WHEN [Sequence of player actions]\n  THEN [Observable outcomes]\n  TIMEOUT: [Expected max duration in seconds]\n  PRIORITY: P0\u002FP1\n  CATEGORY: e2e\n  INFRASTRUCTURE: [Required fixtures\u002Fbuilders]\n```\n\n**Example E2E Scenario**:\n\n```\nE2E SCENARIO: Complete Combat Encounter\n  GIVEN game loaded with player unit adjacent to enemy\n  AND player unit has full health and actions\n  WHEN player selects unit\n  AND player clicks attack on enemy\n  AND player confirms attack\n  AND attack animation completes\n  AND enemy responds (if alive)\n  THEN enemy health is reduced OR enemy is defeated\n  AND turn state advances appropriately\n  AND UI reflects new state\n  TIMEOUT: 15\n  PRIORITY: P0\n  CATEGORY: e2e\n  INFRASTRUCTURE: ScenarioBuilder, InputSimulator, AsyncAssert\n```\n\n---\n\n### Step 4: Prioritize Test Coverage\n\n**Knowledge Base Reference**: `knowledge\u002Ftest-priorities.md`\n\n| Priority | Criteria        | Unit | Integration | E2E        | Manual    |\n| -------- | --------------- | ---- | ----------- | ---------- | --------- |\n| P0       | Ship blockers   | 100% | 80%         | Core flows | Smoke     |\n| P1       | Major features  | 90%  | 70%         | Happy paths| Full      |\n| P2       | Secondary       | 80%  | 50%         | -          | Targeted  |\n| P3       | Edge cases      | 60%  | -           | -          | As needed |\n\n**Risk-Based Ordering**:\n\n1. **Critical Path** — Main gameplay loop\n2. **Data Integrity** — Save\u002Fload, progression\n3. **Platform Requirements** — Certification items\n4. **User Experience** — Feel, polish, accessibility\n\n---\n\n### Step 5: Generate Test Design Document\n\nWrite `{output_folder}\u002Fgame-test-design.md` using the `test-design-template.md` structure:\n\n```markdown\n# Game Test Design: [Project Name]\n\n## Overview\n\n- Game type and core mechanics\n- Target platforms\n- Test scope and objectives\n\n## Risk Assessment\n\n- High-risk areas identified\n- Mitigation strategies\n\n## Test Categories\n\n### Gameplay Tests\n\n[Scenarios...]\n\n### Progression Tests\n\n[Scenarios...]\n\n### Multiplayer Tests (if applicable)\n\n[Scenarios...]\n\n### Platform Tests\n\n[Scenarios...]\n\n## Coverage Matrix\n\n| Feature | P0  | P1  | P2  | P3  |\n| ------- | --- | --- | --- | --- |\n| Combat  | 5   | 10  | 8   | 4   |\n| ...     |     |     |     |     |\n\n## Automation Strategy\n\n- Unit test candidates\n- Integration test candidates\n- Manual-only scenarios\n\n## Next Steps\n\n1. Implement P0 tests\n2. Set up CI integration\n3. Plan playtesting sessions\n```\n\n---\n\n## Deliverables\n\n1. **Test Design Document** — `{output_folder}\u002Fgame-test-design.md`\n2. **Scenario List** — Prioritized test scenarios\n3. **Coverage Matrix** — Feature vs priority breakdown\n4. **Automation Recommendations** — What to automate vs manual test\n\n---\n\n## Output Summary\n\nAfter completing, provide:\n\n```markdown\n## Test Design Complete\n\n**Project**: {project_name}\n**Scenarios Created**: {count}\n**Priority Breakdown**:\n\n- P0 (Critical): {p0_count}\n- P1 (High): {p1_count}\n- P2 (Medium): {p2_count}\n- P3 (Low): {p3_count}\n\n**Focus Areas Covered**:\n\n- Core Gameplay\n- Progression\u002FSave\n- Platform Requirements\n- {Multiplayer if applicable}\n\n**Next Steps**:\n\n1. Review scenarios with team\n2. Use `automate` workflow to generate test code\n3. Use `playtest-plan` for manual testing sessions\n```\n\n---\n\n## Validation\n\nRefer to `checklist.md` for validation criteria.\n\n## On Complete\n\nRun: `python3 {project-root}\u002F_bmad\u002Fscripts\u002Fresolve_customization.py --skill {skill-root} --key workflow.on_complete`\n\nIf the resolved `workflow.on_complete` is non-empty, follow it as the final terminal instruction before exiting.\n","# Game Test Design\n\n**Workflow ID**: `gds-test-design`\n**Version**: 1.0 (BMad v6)\n\n## Conventions\n\n- Bare paths (e.g. `template.md`) resolve from the skill root.\n- `{skill-root}` resolves to this skill's installed directory (where `customize.toml` lives).\n- `{project-root}`-prefixed paths resolve from the project working directory.\n- `{skill-name}` resolves to the skill directory's basename.\n\n## On Activation\n\n### Step 1: Resolve the Workflow Block\n\nRun: `python3 {project-root}\u002F_bmad\u002Fscripts\u002Fresolve_customization.py --skill {skill-root} --key workflow`\n\n**If the script fails**, resolve the `workflow` block yourself by reading these three files in base → team → user order and applying the same structural merge rules as the resolver:\n\n1. `{skill-root}\u002Fcustomize.toml` — defaults\n2. `{project-root}\u002F_bmad\u002Fcustom\u002F{skill-name}.toml` — team overrides\n3. `{project-root}\u002F_bmad\u002Fcustom\u002F{skill-name}.user.toml` — personal overrides\n\nAny missing file is skipped. Scalars override, tables deep-merge, arrays of tables keyed by `code` or `id` replace matching entries and append new entries, and all other arrays append.\n\n### Step 2: Execute Prepend Steps\n\nExecute each entry in `{workflow.activation_steps_prepend}` in order before proceeding.\n\n### Step 3: Load Persistent Facts\n\nTreat every entry in `{workflow.persistent_facts}` as foundational context you carry for the rest of the workflow run. Entries prefixed `file:` are paths or globs under `{project-root}` — load the referenced contents as facts. All other entries are facts verbatim.\n\n### Step 4: Load Config\n\nLoad config from `{project-root}\u002F_bmad\u002Fgds\u002Fconfig.yaml` and resolve:\n\n- `project_name`\n- `user_name`\n- `communication_language`\n- `output_folder`\n\n### Step 5: Greet the User\n\nGreet `{user_name}`, speaking in `{communication_language}`.\n\n### Step 6: Execute Append Steps\n\nExecute each entry in `{workflow.activation_steps_append}` in order.\n\nActivation is complete. Begin the workflow below.\n\n## Goal\n\nCreate comprehensive test scenarios for game projects, covering gameplay mechanics, progression systems, multiplayer functionality, and platform requirements. This workflow produces a prioritized test plan based on risk assessment and player impact.\n\n## Role\n\nYou are a Game QA Engineer specializing in test design. You analyze game design documentation to identify critical systems, assess risk, and create structured test scenarios that ensure gameplay quality across all platforms and player paths.\n\n---\n\n## WORKFLOW ARCHITECTURE\n\nThis workflow analyzes the game project and produces a complete test design document with prioritized scenarios, a coverage matrix, and automation recommendations.\n\n**Primary Output**: `{output_folder}\u002Fgame-test-design.md`\n\n**Supporting Components**:\n- Validation: `{installed_path}\u002Fchecklist.md`\n- Template: `{installed_path}\u002Ftest-design-template.md`\n\n**Knowledge Base References**:\n- `knowledge\u002Fplaytesting.md`\n- `knowledge\u002Fsave-testing.md`\n- `knowledge\u002Fmultiplayer-testing.md`\n- `knowledge\u002Fcertification-testing.md`\n- `knowledge\u002Fe2e-testing.md`\n- `knowledge\u002Ftest-priorities.md`\n\n\nLoad and resolve configuration from `{module_config}`:\n\n```yaml\noutput_folder: {from config}\nuser_name: {from config}\ncommunication_language: {from config}\ndocument_output_language: {from config}\ngame_dev_experience: {from config}\ndate: {system-generated}\n```\n\nResolve workflow variables:\n```yaml\ndesign_level: \"full\"    # full | targeted | minimal\nfocus_area: \"auto\"      # auto | gameplay | progression | multiplayer | performance\n```\n\nSearch the project for game design documentation before proceeding.\n\n---\n\n## EXECUTION\n\n### Preflight Requirements\n\nVerify before proceeding:\n- Game design documentation available (GDD, feature specs)\n- Understanding of target platforms\n- Knowledge of core gameplay loop\n\n---\n\n### Step 1: Gather Context\n\n#### Actions\n\n1. **Read Game Design Documentation**\n   - Locate GDD or game-design.md\n   - Identify core mechanics and features\n   - Note target platforms and certification requirements\n\n2. **Identify Critical Systems**\n   - Core gameplay loop\n   - Progression\u002Fsave systems\n   - Multiplayer (if applicable)\n   - Monetization (if applicable)\n\n3. **Assess Risk Areas**\n   - Player-facing features (highest priority)\n   - Data persistence (save\u002Fload)\n   - Platform certification requirements\n   - Performance-critical paths\n\n---\n\n### Step 2: Define Test Categories\n\n#### Core Gameplay Testing\n\n**Knowledge Base Reference**: `knowledge\u002Fplaytesting.md`\n\n| Category           | Focus                      | Priority |\n| ------------------ | -------------------------- | -------- |\n| Core Loop          | Primary mechanic execution | P0       |\n| Combat\u002FInteraction | Hit detection, feedback    | P0       |\n| Movement           | Physics, collision, feel   | P0       |\n| UI\u002FUX              | Menu navigation, HUD       | P1       |\n| Audio              | Sound triggers, music      | P2       |\n\n#### Progression Testing\n\n**Knowledge Base Reference**: `knowledge\u002Fsave-testing.md`\n\n| Category     | Focus              | Priority |\n| ------------ | ------------------ | -------- |\n| Save\u002FLoad    | Data persistence   | P0       |\n| Unlocks      | Content gating     | P1       |\n| Economy      | Currency, rewards  | P1       |\n| Achievements | Trigger conditions | P2       |\n\n#### Multiplayer Testing (if applicable)\n\n**Knowledge Base Reference**: `knowledge\u002Fmultiplayer-testing.md`\n\n| Category        | Focus               | Priority |\n| --------------- | ------------------- | -------- |\n| Connectivity    | Join\u002Fleave handling | P0       |\n| Synchronization | State consistency   | P0       |\n| Latency         | Degraded network    | P1       |\n| Matchmaking     | Player grouping     | P1       |\n\n#### Platform Testing\n\n**Knowledge Base Reference**: `knowledge\u002Fcertification-testing.md`\n\n| Category      | Focus               | Priority |\n| ------------- | ------------------- | -------- |\n| Certification | TRC\u002FXR requirements | P0       |\n| Input         | Controller support  | P0       |\n| Performance   | FPS, loading times  | P1       |\n| Accessibility | Assist features     | P1       |\n\n#### E2E Journey Testing\n\n**Knowledge Base Reference**: `knowledge\u002Fe2e-testing.md`\n\n| Category           | Focus                       | Priority |\n| ------------------ | --------------------------- | -------- |\n| Core Loop          | Complete gameplay cycle     | P0       |\n| Turn Lifecycle     | Full turn from start to end | P0       |\n| Save\u002FLoad Roundtrip| Save → quit → load → resume | P0       |\n| Scene Transitions  | Menu → Game → Back          | P1       |\n| Win\u002FLose Paths     | Victory and defeat conditions| P1      |\n\n---\n\n### Step 3: Create Test Scenarios\n\n#### Scenario Format\n\nFor each critical feature, create scenarios using this format:\n\n```\nSCENARIO: [Descriptive Name]\n  GIVEN [Initial state\u002Fpreconditions]\n  WHEN [Action taken]\n  THEN [Expected outcome]\n  PRIORITY: P0\u002FP1\u002FP2\u002FP3\n  CATEGORY: [gameplay\u002Fprogression\u002Fmultiplayer\u002Fplatform]\n```\n\n#### Example Scenarios\n\n**Gameplay - Combat**\n\n```\nSCENARIO: Basic Attack Hits Enemy\n  GIVEN player is within attack range of enemy\n  AND enemy has 100 health\n  WHEN player performs basic attack\n  THEN enemy receives damage\n  AND damage feedback plays (visual + audio)\n  AND enemy health decreases\n  PRIORITY: P0\n  CATEGORY: gameplay\n```\n\n**Progression - Save System**\n\n```\nSCENARIO: Save Preserves Player Progress\n  GIVEN player has 500 gold and 3 items\n  AND player is at checkpoint\n  WHEN game saves\n  AND game is reloaded\n  THEN player has 500 gold\n  AND player has same 3 items\n  AND player is at same checkpoint\n  PRIORITY: P0\n  CATEGORY: progression\n```\n\n**Multiplayer - Network Degradation**\n\n```\nSCENARIO: Gameplay Under High Latency\n  GIVEN 2 players in session\n  AND network latency is 200ms\n  WHEN Player 1 attacks Player 2\n  THEN damage is applied correctly\n  AND positions remain synchronized\n  AND no desync occurs\n  PRIORITY: P1\n  CATEGORY: multiplayer\n```\n\n#### E2E Scenario Format\n\nFor player journey tests, use this extended format:\n\n```\nE2E SCENARIO: [Player Journey Name]\n  GIVEN [Initial game state - use ScenarioBuilder terms]\n  WHEN [Sequence of player actions]\n  THEN [Observable outcomes]\n  TIMEOUT: [Expected max duration in seconds]\n  PRIORITY: P0\u002FP1\n  CATEGORY: e2e\n  INFRASTRUCTURE: [Required fixtures\u002Fbuilders]\n```\n\n**Example E2E Scenario**:\n\n```\nE2E SCENARIO: Complete Combat Encounter\n  GIVEN game loaded with player unit adjacent to enemy\n  AND player unit has full health and actions\n  WHEN player selects unit\n  AND player clicks attack on enemy\n  AND player confirms attack\n  AND attack animation completes\n  AND enemy responds (if alive)\n  THEN enemy health is reduced OR enemy is defeated\n  AND turn state advances appropriately\n  AND UI reflects new state\n  TIMEOUT: 15\n  PRIORITY: P0\n  CATEGORY: e2e\n  INFRASTRUCTURE: ScenarioBuilder, InputSimulator, AsyncAssert\n```\n\n---\n\n### Step 4: Prioritize Test Coverage\n\n**Knowledge Base Reference**: `knowledge\u002Ftest-priorities.md`\n\n| Priority | Criteria        | Unit | Integration | E2E        | Manual    |\n| -------- | --------------- | ---- | ----------- | ---------- | --------- |\n| P0       | Ship blockers   | 100% | 80%         | Core flows | Smoke     |\n| P1       | Major features  | 90%  | 70%         | Happy paths| Full      |\n| P2       | Secondary       | 80%  | 50%         | -          | Targeted  |\n| P3       | Edge cases      | 60%  | -           | -          | As needed |\n\n**Risk-Based Ordering**:\n\n1. **Critical Path** — Main gameplay loop\n2. **Data Integrity** — Save\u002Fload, progression\n3. **Platform Requirements** — Certification items\n4. **User Experience** — Feel, polish, accessibility\n\n---\n\n### Step 5: Generate Test Design Document\n\nWrite `{output_folder}\u002Fgame-test-design.md` using the `test-design-template.md` structure:\n\n```markdown\n# Game Test Design: [Project Name]\n\n## Overview\n\n- Game type and core mechanics\n- Target platforms\n- Test scope and objectives\n\n## Risk Assessment\n\n- High-risk areas identified\n- Mitigation strategies\n\n## Test Categories\n\n### Gameplay Tests\n\n[Scenarios...]\n\n### Progression Tests\n\n[Scenarios...]\n\n### Multiplayer Tests (if applicable)\n\n[Scenarios...]\n\n### Platform Tests\n\n[Scenarios...]\n\n## Coverage Matrix\n\n| Feature | P0  | P1  | P2  | P3  |\n| ------- | --- | --- | --- | --- |\n| Combat  | 5   | 10  | 8   | 4   |\n| ...     |     |     |     |     |\n\n## Automation Strategy\n\n- Unit test candidates\n- Integration test candidates\n- Manual-only scenarios\n\n## Next Steps\n\n1. Implement P0 tests\n2. Set up CI integration\n3. Plan playtesting sessions\n```\n\n---\n\n## Deliverables\n\n1. **Test Design Document** — `{output_folder}\u002Fgame-test-design.md`\n2. **Scenario List** — Prioritized test scenarios\n3. **Coverage Matrix** — Feature vs priority breakdown\n4. **Automation Recommendations** — What to automate vs manual test\n\n---\n\n## Output Summary\n\nAfter completing, provide:\n\n```markdown\n## Test Design Complete\n\n**Project**: {project_name}\n**Scenarios Created**: {count}\n**Priority Breakdown**:\n\n- P0 (Critical): {p0_count}\n- P1 (High): {p1_count}\n- P2 (Medium): {p2_count}\n- P3 (Low): {p3_count}\n\n**Focus Areas Covered**:\n\n- Core Gameplay\n- Progression\u002FSave\n- Platform Requirements\n- {Multiplayer if applicable}\n\n**Next Steps**:\n\n1. Review scenarios with team\n2. Use `automate` workflow to generate test code\n3. Use `playtest-plan` for manual testing sessions\n```\n\n---\n\n## Validation\n\nRefer to `checklist.md` for validation criteria.\n\n## On Complete\n\nRun: `python3 {project-root}\u002F_bmad\u002Fscripts\u002Fresolve_customization.py --skill {skill-root} --key workflow.on_complete`\n\nIf the resolved `workflow.on_complete` is non-empty, follow it as the final terminal instruction before exiting.\n",{"name":5,"description":7},"main","1907bbe850fb749efa8b499b8da7ebb78a663519",".kiro\u002Fskills\u002Fgds-test-design",0,"https:\u002F\u002Fgithub.com\u002FdevelopAgent\u002Fbmad-start","https:\u002F\u002Fgithub.com\u002FdevelopAgent","2026-07-19 05:19:22",{"source":8,"skillName":5,"commands":56,"prompt":66,"zipAvailable":67},[57,60,63],{"tool":58,"command":59},"npx","npx skills add developAgent\u002Fbmad-start --skill gds-test-design",{"tool":61,"command":62},"bunx","bunx skills add developAgent\u002Fbmad-start --skill gds-test-design",{"tool":64,"command":65},"pnpm","pnpm dlx skills add developAgent\u002Fbmad-start --skill gds-test-design","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FdevelopAgent\u002Fbmad-start\u002Fblob\u002Fmain\u002F.kiro\u002Fskills\u002Fgds-test-design\u002FSKILL.md",true,[69,75,81],{"path":70,"resourceType":71,"resourceTypeDesc":72,"sizeBytes":73,"sourceHtmlUrl":74},"checklist.md","REFERENCE","参考文档",2018,"https:\u002F\u002Fgithub.com\u002FdevelopAgent\u002Fbmad-start\u002Fblob\u002Fmain\u002F.kiro\u002Fskills\u002Fgds-test-design\u002Fchecklist.md",{"path":76,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":79,"sourceHtmlUrl":80},"customize.toml","OTHER","其他",1650,"https:\u002F\u002Fgithub.com\u002FdevelopAgent\u002Fbmad-start\u002Fblob\u002Fmain\u002F.kiro\u002Fskills\u002Fgds-test-design\u002Fcustomize.toml",{"path":82,"resourceType":71,"resourceTypeDesc":72,"sizeBytes":83,"sourceHtmlUrl":84},"test-design-template.md",3676,"https:\u002F\u002Fgithub.com\u002FdevelopAgent\u002Fbmad-start\u002Fblob\u002Fmain\u002F.kiro\u002Fskills\u002Fgds-test-design\u002Ftest-design-template.md",[86,105,135,153,166,192],{"skillNo":87,"name":88,"nameZh":6,"description":89,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":90,"categories":91,"keywords":95,"publishedAt":104},"01M71R3M9DJTTY0ARFQ6K04NMP","gds-correct-course","Manage significant changes during sprint execution. Use when the user says \"correct course\" or \"propose sprint change\"","https:\u002F\u002Fgithub.com\u002FdevelopAgent\u002Fbmad-start\u002Fblob\u002Fmain\u002F.rovodev\u002Fskills\u002Fgds-correct-course\u002FSKILL.md",[92],{"categoryNo":93,"categoryName":94,"taxonomyType":28,"taxonomyTypeDesc":29},"01JBSEEDCAT000000000000039","教师与教育",[96,97,98,37,99,100,41,38,101,102,103],"gds correct course","course","correct","changes","change","execution","manage","sprint","2026-11-10 13:02:02",{"skillNo":106,"name":107,"nameZh":6,"description":108,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":109,"categories":110,"keywords":117,"publishedAt":104},"01M71R3GENSFD1A1XVZTTQG1KF","gds-code-review","Review code changes adversarially using parallel review layers (Blind Hunter, Edge Case Hunter, Acceptance Auditor) with structured triage into actionable categories. Use when the user says \"run code review\" or \"review this code\"","https:\u002F\u002Fgithub.com\u002FdevelopAgent\u002Fbmad-start\u002Fblob\u002Fmain\u002F.rovodev\u002Fskills\u002Fgds-code-review\u002FSKILL.md",[111,114],{"categoryNo":112,"categoryName":113,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000007","代码审查",{"categoryNo":115,"categoryName":116,"taxonomyType":28,"taxonomyTypeDesc":29},"01JBSEEDCAT000000000000030","开发工程师",[118,119,120,121,122,99,123,124,125,126,127,128,129,41,130,38,131,132,133,134],"code review","code","review","gds code review","categories","triage","review code","run","parallel","case","with","run code","acceptance","edge","actionable","layers","hunter",{"skillNo":136,"name":137,"nameZh":6,"description":138,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":139,"categories":140,"keywords":141,"publishedAt":104},"01M71R3DD098MQRD6F8S4GG0AW","gds-check-implementation-readiness","Verify GDD, UX, Architecture, and Epics alignment before production. Use when the user says \"check readiness\" or \"implementation readiness\"","https:\u002F\u002Fgithub.com\u002FdevelopAgent\u002Fbmad-start\u002Fblob\u002Fmain\u002F.rovodev\u002Fskills\u002Fgds-check-implementation-readiness\u002FSKILL.md",[],[142,143,144,145,146,147,37,148,149,150,151,41,38,152],"check","readiness","Implementation Readiness","gds check implementation readiness","implementation","check readiness","Production","ux","verify","architecture","alignment",{"skillNo":154,"name":155,"nameZh":6,"description":156,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":157,"categories":158,"keywords":159,"publishedAt":104},"01M71R3ACAA1G0NVQ330JQNJPK","gds-brainstorm-game","Facilitate game brainstorming sessions with game-specific techniques. Use when the user says \"brainstorm game\" or \"game ideas\"","https:\u002F\u002Fgithub.com\u002FdevelopAgent\u002Fbmad-start\u002Fblob\u002Fmain\u002F.rovodev\u002Fskills\u002Fgds-brainstorm-game\u002FSKILL.md",[],[160,36,161,37,162,128,41,38,163,164,165],"gds brainstorm game","brainstorm","brainstorming","techniques","sessions","ideas",{"skillNo":167,"name":168,"nameZh":6,"description":169,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":170,"categories":171,"keywords":175,"publishedAt":104},"01M71R377MJ6WJTTFARGKH3HX7","gds-agent-tech-writer","Technical documentation specialist and knowledge curator for game projects. Use when the user asks to talk to Paige or requests the Technical Writer.","https:\u002F\u002Fgithub.com\u002FdevelopAgent\u002Fbmad-start\u002Fblob\u002Fmain\u002F.rovodev\u002Fskills\u002Fgds-agent-tech-writer\u002FSKILL.md",[172],{"categoryNo":173,"categoryName":174,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000023","Skill与智能体开发",[176,177,178,179,38,180,181,182,183,41,37,184,185,186,187,188,189,190,36,191],"gds agent tech writer","tech","writer","technical writer","technical","knowledge","for","projects","technical documentation","talk","specialist","documentation specialist","knowledge curator","requests","documentation","curator",{"skillNo":193,"name":194,"nameZh":6,"description":195,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":196,"categories":197,"keywords":199,"publishedAt":104},"01M71R34RGT2ZX3TSFA2CRT0NC","gds-agent-game-solo-dev","Elite indie game developer for rapid prototyping and solo quick-flow development. Use when the user asks to talk to Indie or requests the Game Solo Dev.","https:\u002F\u002Fgithub.com\u002FdevelopAgent\u002Fbmad-start\u002Fblob\u002Fmain\u002F.rovodev\u002Fskills\u002Fgds-agent-game-solo-dev\u002FSKILL.md",[198],{"categoryNo":173,"categoryName":174,"taxonomyType":20,"taxonomyTypeDesc":21},[200,36,201,202,203,204,37,185,189,205,206,41,38,207,182,208,209],"solo","gds agent game solo dev","dev","flow","developer","RAPID","game developer","prototyping","development","quick"]