appiq-solution 1.3.2 → 1.4.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (297) hide show
  1. package/#Tools/APPIQ-METHOD/.bmad-config.json +13 -0
  2. package/#Tools/APPIQ-METHOD/.cursor/commands/analyze.md +27 -0
  3. package/#Tools/APPIQ-METHOD/.cursor/commands/appiq.md +27 -0
  4. package/#Tools/APPIQ-METHOD/.cursor/commands/help.md +27 -0
  5. package/#Tools/APPIQ-METHOD/.cursor/commands/story.md +27 -0
  6. package/#Tools/APPIQ-METHOD/CHANGELOG.md +119 -173
  7. package/#Tools/APPIQ-METHOD/DEVELOPMENT_GUIDE.md +855 -0
  8. package/#Tools/APPIQ-METHOD/NPM-README.md +138 -0
  9. package/#Tools/APPIQ-METHOD/README.md +73 -105
  10. package/#Tools/APPIQ-METHOD/SMART_WORKFLOW_GUIDE.md +401 -0
  11. package/#Tools/APPIQ-METHOD/activate-appiq.js +81 -0
  12. package/#Tools/APPIQ-METHOD/appiq-solution/README.md +226 -0
  13. package/#Tools/APPIQ-METHOD/bmad-core/agent-teams/team-flutter-mobile.yaml +114 -0
  14. package/#Tools/APPIQ-METHOD/bmad-core/agent-teams/team-fullstack.yaml +11 -1
  15. package/#Tools/APPIQ-METHOD/bmad-core/agents/analyst.md +7 -3
  16. package/#Tools/APPIQ-METHOD/bmad-core/agents/architect.md +6 -0
  17. package/#Tools/APPIQ-METHOD/bmad-core/agents/bmad-orchestrator.md +0 -84
  18. package/#Tools/APPIQ-METHOD/bmad-core/agents/bmad-smart-launcher.md +170 -0
  19. package/#Tools/APPIQ-METHOD/bmad-core/agents/dev.md +31 -12
  20. package/#Tools/APPIQ-METHOD/bmad-core/agents/pm.md +10 -4
  21. package/#Tools/APPIQ-METHOD/bmad-core/agents/qa.md +17 -0
  22. package/#Tools/APPIQ-METHOD/bmad-core/agents/sm.md +8 -3
  23. package/#Tools/APPIQ-METHOD/bmad-core/agents/ux-expert.md +8 -3
  24. package/#Tools/APPIQ-METHOD/bmad-core/bmad-core/user-guide.md +0 -0
  25. package/#Tools/APPIQ-METHOD/bmad-core/checklists/security-validation-checklist.md +332 -0
  26. package/#Tools/APPIQ-METHOD/bmad-core/data/backend-services-integration.md +686 -0
  27. package/#Tools/APPIQ-METHOD/bmad-core/data/shadcn-ui-integration.md +388 -0
  28. package/#Tools/APPIQ-METHOD/bmad-core/data/technical-preferences.md +147 -1
  29. package/#Tools/APPIQ-METHOD/bmad-core/enhanced-ide-development-workflow.md +43 -0
  30. package/#Tools/APPIQ-METHOD/bmad-core/tasks/create-flutter-story.md +197 -0
  31. package/#Tools/APPIQ-METHOD/bmad-core/tasks/intelligent-epic-creation.md +234 -0
  32. package/#Tools/APPIQ-METHOD/bmad-core/tasks/smart-project-analysis.md +289 -0
  33. package/#Tools/APPIQ-METHOD/bmad-core/templates/flutter-mobile-prd-tmpl.yaml +330 -0
  34. package/#Tools/APPIQ-METHOD/bmad-core/templates/flutter-story-tmpl.yaml +376 -0
  35. package/#Tools/APPIQ-METHOD/bmad-core/templates/flutter-ui-spec-tmpl.yaml +415 -0
  36. package/#Tools/APPIQ-METHOD/bmad-core/templates/fullstack-architecture-tmpl.yaml +12 -5
  37. package/#Tools/APPIQ-METHOD/bmad-core/user-guide.md +10 -9
  38. package/#Tools/APPIQ-METHOD/bmad-core/workflows/brownfield-fullstack.yaml +15 -1
  39. package/#Tools/APPIQ-METHOD/bmad-core/workflows/greenfield-fullstack.yaml +49 -5
  40. package/#Tools/APPIQ-METHOD/bmad-core/working-in-the-brownfield.md +56 -44
  41. package/#Tools/APPIQ-METHOD/commands/README.md +28 -0
  42. package/#Tools/APPIQ-METHOD/commands/analyze.md +27 -0
  43. package/#Tools/APPIQ-METHOD/commands/appiq.md +27 -0
  44. package/#Tools/APPIQ-METHOD/commands/help.md +27 -0
  45. package/#Tools/APPIQ-METHOD/commands/story.md +27 -0
  46. package/#Tools/APPIQ-METHOD/dist/agents/bmad-orchestrator.txt +0 -111
  47. package/#Tools/APPIQ-METHOD/dist/agents/pm.txt +2 -0
  48. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-2d-phaser-game-dev/teams/phaser-2d-nodejs-game-team.txt +0 -111
  49. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-2d-unity-game-dev/teams/unity-2d-game-team.txt +0 -111
  50. package/#Tools/APPIQ-METHOD/dist/teams/team-all.txt +2 -111
  51. package/#Tools/APPIQ-METHOD/dist/teams/team-fullstack.txt +2 -111
  52. package/#Tools/APPIQ-METHOD/dist/teams/team-ide-minimal.txt +0 -111
  53. package/#Tools/APPIQ-METHOD/dist/teams/team-no-ui.txt +2 -111
  54. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-phaser-game-dev/config.yaml +1 -1
  55. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-unity-game-dev/config.yaml +1 -1
  56. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev/agent-teams/flutter-mobile-team.yaml +23 -0
  57. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev/agents/flutter-cubit-agent.md +133 -0
  58. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev/agents/flutter-data-agent.md +160 -0
  59. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev/agents/flutter-domain-agent.md +153 -0
  60. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev/agents/flutter-ui-agent.md +122 -0
  61. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev/agents/shared-components-agent.md +161 -0
  62. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev/checklists/flutter-story-dod-checklist.md +194 -0
  63. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev/config.yaml +41 -0
  64. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev/data/flutter-development-guidelines.md +551 -0
  65. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev/templates/flutter-mobile-architecture-tmpl.yaml +530 -0
  66. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev/workflows/flutter-ui-first-development.yaml +220 -0
  67. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-infrastructure-devops/config.yaml +1 -1
  68. package/#Tools/APPIQ-METHOD/install-appiq.sh +41 -0
  69. package/#Tools/APPIQ-METHOD/package-lock.json +631 -0
  70. package/#Tools/APPIQ-METHOD/package.json +20 -69
  71. package/#Tools/APPIQ-METHOD/tasks/todo.md +275 -0
  72. package/#Tools/APPIQ-METHOD/tools/appiq-installer.js +2622 -0
  73. package/#Tools/APPIQ-METHOD/tools/bmad-npx-wrapper.js +5 -7
  74. package/#Tools/APPIQ-METHOD/tools/cli.js +3 -3
  75. package/#Tools/APPIQ-METHOD/tools/epic-solution-installer.js +538 -0
  76. package/#Tools/APPIQ-METHOD/tools/flattener/main.js +570 -0
  77. package/#Tools/APPIQ-METHOD/tools/installer/bin/bmad.js +15 -14
  78. package/#Tools/APPIQ-METHOD/tools/installer/lib/installer.js +28 -2
  79. package/#Tools/APPIQ-METHOD/tools/installer/package-lock.json +906 -0
  80. package/#Tools/APPIQ-METHOD/tools/installer/package.json +1 -1
  81. package/#Tools/APPIQ-METHOD/tools/setup-ide-commands.js +345 -0
  82. package/#Tools/APPIQ-METHOD/tools/smart-installer.js +589 -0
  83. package/README.md +73 -105
  84. package/package.json +20 -69
  85. package/tools/appiq-installer.js +2622 -0
  86. package/tools/bmad-npx-wrapper.js +5 -7
  87. package/tools/cli.js +3 -3
  88. package/tools/epic-solution-installer.js +538 -0
  89. package/tools/flattener/main.js +570 -0
  90. package/tools/installer/bin/bmad.js +15 -14
  91. package/tools/installer/lib/installer.js +28 -2
  92. package/tools/installer/package-lock.json +89 -89
  93. package/tools/installer/package.json +1 -1
  94. package/tools/setup-ide-commands.js +345 -0
  95. package/tools/smart-installer.js +589 -0
  96. package/#Tools/APPIQ-METHOD/appiq_start.md +0 -232
  97. package/#Tools/APPIQ-METHOD/deployment/DEPLOYMENT_GUIDE.md +0 -426
  98. package/#Tools/APPIQ-METHOD/deployment/GITHUB_RELEASE_GUIDE.md +0 -326
  99. package/#Tools/APPIQ-METHOD/deployment/README.md +0 -331
  100. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agent-teams/team-all.yaml +0 -14
  101. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agent-teams/team-fullstack.yaml +0 -18
  102. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agent-teams/team-ide-minimal.yaml +0 -10
  103. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agent-teams/team-no-ui.yaml +0 -13
  104. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agents/analyst.md +0 -81
  105. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agents/architect.md +0 -84
  106. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agents/bmad-master.md +0 -108
  107. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agents/bmad-orchestrator.md +0 -234
  108. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agents/dev.md +0 -76
  109. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agents/pm.md +0 -79
  110. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agents/po.md +0 -76
  111. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agents/qa.md +0 -69
  112. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agents/sm.md +0 -62
  113. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agents/ux-expert.md +0 -66
  114. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/checklists/architect-checklist.md +0 -443
  115. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/checklists/change-checklist.md +0 -182
  116. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/checklists/pm-checklist.md +0 -375
  117. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/checklists/po-master-checklist.md +0 -441
  118. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/checklists/story-dod-checklist.md +0 -101
  119. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/checklists/story-draft-checklist.md +0 -156
  120. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/data/bmad-kb.md +0 -803
  121. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/data/brainstorming-techniques.md +0 -36
  122. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/data/elicitation-methods.md +0 -134
  123. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/data/technical-preferences.md +0 -3
  124. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/advanced-elicitation.md +0 -117
  125. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/brownfield-create-epic.md +0 -160
  126. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/brownfield-create-story.md +0 -147
  127. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/correct-course.md +0 -70
  128. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/create-brownfield-story.md +0 -304
  129. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/create-deep-research-prompt.md +0 -289
  130. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/create-next-story.md +0 -112
  131. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/document-project.md +0 -341
  132. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/facilitate-brainstorming-session.md +0 -136
  133. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/generate-ai-frontend-prompt.md +0 -51
  134. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/index-docs.md +0 -179
  135. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/kb-mode-interaction.md +0 -75
  136. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/review-story.md +0 -145
  137. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/shard-doc.md +0 -187
  138. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/validate-next-story.md +0 -134
  139. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/templates/architecture-tmpl.yaml +0 -650
  140. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/templates/brainstorming-output-tmpl.yaml +0 -156
  141. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/templates/brownfield-architecture-tmpl.yaml +0 -476
  142. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/templates/brownfield-prd-tmpl.yaml +0 -280
  143. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/templates/competitor-analysis-tmpl.yaml +0 -293
  144. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/templates/front-end-architecture-tmpl.yaml +0 -206
  145. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/templates/front-end-spec-tmpl.yaml +0 -349
  146. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/templates/fullstack-architecture-tmpl.yaml +0 -805
  147. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/templates/market-research-tmpl.yaml +0 -252
  148. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/templates/prd-tmpl.yaml +0 -202
  149. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/templates/project-brief-tmpl.yaml +0 -221
  150. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/templates/story-tmpl.yaml +0 -137
  151. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/user-guide.md +0 -250
  152. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/workflows/brownfield-fullstack.yaml +0 -297
  153. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/workflows/brownfield-service.yaml +0 -187
  154. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/workflows/brownfield-ui.yaml +0 -197
  155. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/workflows/greenfield-fullstack.yaml +0 -240
  156. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/workflows/greenfield-service.yaml +0 -206
  157. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/workflows/greenfield-ui.yaml +0 -235
  158. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/working-in-the-brownfield.md +0 -361
  159. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/README.md +0 -3
  160. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-phaser-game-dev/agent-teams/phaser-2d-nodejs-game-team.yaml +0 -13
  161. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-phaser-game-dev/agents/game-designer.md +0 -71
  162. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-phaser-game-dev/agents/game-developer.md +0 -78
  163. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-phaser-game-dev/agents/game-sm.md +0 -64
  164. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-phaser-game-dev/checklists/game-design-checklist.md +0 -201
  165. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-phaser-game-dev/checklists/game-story-dod-checklist.md +0 -160
  166. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-phaser-game-dev/config.yaml +0 -8
  167. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-phaser-game-dev/data/bmad-kb.md +0 -254
  168. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-phaser-game-dev/data/development-guidelines.md +0 -651
  169. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-phaser-game-dev/tasks/advanced-elicitation.md +0 -111
  170. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-phaser-game-dev/tasks/create-game-story.md +0 -216
  171. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-phaser-game-dev/tasks/game-design-brainstorming.md +0 -308
  172. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-phaser-game-dev/templates/game-architecture-tmpl.yaml +0 -613
  173. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-phaser-game-dev/templates/game-brief-tmpl.yaml +0 -356
  174. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-phaser-game-dev/templates/game-design-doc-tmpl.yaml +0 -343
  175. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-phaser-game-dev/templates/game-story-tmpl.yaml +0 -253
  176. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-phaser-game-dev/templates/level-design-doc-tmpl.yaml +0 -484
  177. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-phaser-game-dev/workflows/game-dev-greenfield.yaml +0 -183
  178. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-phaser-game-dev/workflows/game-prototype.yaml +0 -175
  179. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/agent-teams/unity-2d-game-team.yaml +0 -14
  180. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/agents/game-architect.md +0 -80
  181. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/agents/game-designer.md +0 -77
  182. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/agents/game-developer.md +0 -78
  183. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/agents/game-sm.md +0 -65
  184. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/checklists/game-architect-checklist.md +0 -396
  185. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/checklists/game-change-checklist.md +0 -203
  186. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/checklists/game-design-checklist.md +0 -201
  187. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/checklists/game-story-dod-checklist.md +0 -132
  188. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/config.yaml +0 -6
  189. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/data/bmad-kb.md +0 -776
  190. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/data/development-guidelines.md +0 -590
  191. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/tasks/advanced-elicitation.md +0 -111
  192. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/tasks/correct-course-game.md +0 -151
  193. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/tasks/create-game-story.md +0 -184
  194. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/tasks/game-design-brainstorming.md +0 -308
  195. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/tasks/validate-game-story.md +0 -200
  196. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/templates/game-architecture-tmpl.yaml +0 -1030
  197. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/templates/game-brief-tmpl.yaml +0 -356
  198. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/templates/game-design-doc-tmpl.yaml +0 -705
  199. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/templates/game-story-tmpl.yaml +0 -256
  200. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/templates/level-design-doc-tmpl.yaml +0 -484
  201. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/workflows/game-dev-greenfield.yaml +0 -183
  202. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/workflows/game-prototype.yaml +0 -175
  203. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-infrastructure-devops/README.md +0 -147
  204. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-infrastructure-devops/agents/infra-devops-platform.md +0 -71
  205. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-infrastructure-devops/checklists/infrastructure-checklist.md +0 -484
  206. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-infrastructure-devops/config.yaml +0 -9
  207. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-infrastructure-devops/data/bmad-kb.md +0 -308
  208. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-infrastructure-devops/tasks/review-infrastructure.md +0 -160
  209. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-infrastructure-devops/tasks/validate-infrastructure.md +0 -154
  210. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-infrastructure-devops/templates/infrastructure-architecture-tmpl.yaml +0 -424
  211. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-infrastructure-devops/templates/infrastructure-platform-from-arch-tmpl.yaml +0 -629
  212. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/agent-teams/mobile-team-cross-platform.yaml +0 -22
  213. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/agent-teams/mobile-team-flutter.yaml +0 -20
  214. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/agent-teams/mobile-team-minimal.yaml +0 -13
  215. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/agent-teams/mobile-team-react-native.yaml +0 -20
  216. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/agents/mobile-analytics.md +0 -1487
  217. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/agents/mobile-architect.md +0 -279
  218. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/agents/mobile-developer.md +0 -649
  219. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/agents/mobile-pm.md +0 -339
  220. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/agents/mobile-qa.md +0 -622
  221. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/agents/mobile-security.md +0 -1027
  222. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/agents/mobile-ux-expert.md +0 -1451
  223. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/checklists/mobile-development-checklist.md +0 -490
  224. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/config.yaml +0 -54
  225. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/data/bmad-kb.md +0 -292
  226. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/data/flutter-development-guidelines.md +0 -483
  227. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/tasks/existing-app-analysis.md +0 -645
  228. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/tasks/platform-selection.md +0 -489
  229. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/templates/mobile-architecture-tmpl.yaml +0 -437
  230. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/templates/mobile-prd-tmpl.yaml +0 -408
  231. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/workflows/mobile-app-development-init.yaml +0 -555
  232. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/workflows/mobile-brownfield-flutter.yaml +0 -336
  233. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/workflows/mobile-brownfield-react-native.yaml +0 -345
  234. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/workflows/mobile-greenfield-flutter.yaml +0 -281
  235. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/workflows/mobile-greenfield-react-native.yaml +0 -283
  236. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/workflows/mobile-platform-selection.yaml +0 -404
  237. package/#Tools/APPIQ-METHOD/deployment/build/slash-commands/appiq.md +0 -273
  238. package/#Tools/APPIQ-METHOD/deployment/build/slash-commands/ide-integrations/claude-appiq.md +0 -294
  239. package/#Tools/APPIQ-METHOD/deployment/build/slash-commands/ide-integrations/cursor-appiq.md +0 -516
  240. package/#Tools/APPIQ-METHOD/deployment/build/slash-commands/ide-integrations/universal-appiq.md +0 -448
  241. package/#Tools/APPIQ-METHOD/deployment/build/slash-commands/ide-integrations/windsurf-appiq.md +0 -698
  242. package/#Tools/APPIQ-METHOD/deployment/build/slash-commands/start.md +0 -211
  243. package/#Tools/APPIQ-METHOD/deployment/build-release.sh +0 -449
  244. package/#Tools/APPIQ-METHOD/deployment/create-release.sh +0 -196
  245. package/#Tools/APPIQ-METHOD/deployment/dist/appiq_installer.sh +0 -678
  246. package/#Tools/APPIQ-METHOD/deployment/docs/main_prd.md +0 -36
  247. package/#Tools/APPIQ-METHOD/deployment/init_appiq.sh +0 -805
  248. package/#Tools/APPIQ-METHOD/deployment/init_appiq_v2.sh +0 -678
  249. package/#Tools/APPIQ-METHOD/deployment/installers/appiq-global.sh +0 -91
  250. package/#Tools/APPIQ-METHOD/deployment/installers/claude-integration.sh +0 -281
  251. package/#Tools/APPIQ-METHOD/deployment/installers/cursor-integration.sh +0 -257
  252. package/#Tools/APPIQ-METHOD/deployment/installers/terminal-integration.sh +0 -645
  253. package/#Tools/APPIQ-METHOD/deployment/installers/windsurf-integration.sh +0 -350
  254. package/#Tools/APPIQ-METHOD/deployment/package-v2.sh +0 -97
  255. package/#Tools/APPIQ-METHOD/deployment/package.sh +0 -363
  256. package/#Tools/APPIQ-METHOD/deployment/quick-install.sh +0 -57
  257. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-analytics.txt +0 -1530
  258. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-architect.txt +0 -322
  259. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-developer.txt +0 -692
  260. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-pm.txt +0 -382
  261. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-qa.txt +0 -665
  262. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-security.txt +0 -1070
  263. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-ux-expert.txt +0 -1494
  264. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-mobile-app-dev/teams/mobile-team-cross-platform.txt +0 -15613
  265. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/agent-teams/mobile-team-cross-platform.yaml +0 -22
  266. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/agent-teams/mobile-team-flutter.yaml +0 -20
  267. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/agent-teams/mobile-team-minimal.yaml +0 -13
  268. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/agent-teams/mobile-team-react-native.yaml +0 -20
  269. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/agents/mobile-analytics.md +0 -1487
  270. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/agents/mobile-architect.md +0 -279
  271. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/agents/mobile-developer.md +0 -649
  272. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/agents/mobile-pm.md +0 -339
  273. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/agents/mobile-qa.md +0 -622
  274. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/agents/mobile-security.md +0 -1027
  275. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/agents/mobile-ux-expert.md +0 -1451
  276. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/checklists/mobile-development-checklist.md +0 -490
  277. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/config.yaml +0 -54
  278. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/data/bmad-kb.md +0 -292
  279. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/data/flutter-development-guidelines.md +0 -483
  280. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/tasks/existing-app-analysis.md +0 -645
  281. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/tasks/platform-selection.md +0 -489
  282. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/templates/mobile-architecture-tmpl.yaml +0 -437
  283. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/templates/mobile-prd-tmpl.yaml +0 -408
  284. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/workflows/mobile-app-development-init.yaml +0 -555
  285. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/workflows/mobile-brownfield-flutter.yaml +0 -336
  286. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/workflows/mobile-brownfield-react-native.yaml +0 -345
  287. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/workflows/mobile-greenfield-flutter.yaml +0 -281
  288. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/workflows/mobile-greenfield-react-native.yaml +0 -283
  289. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/workflows/mobile-platform-selection.yaml +0 -404
  290. package/#Tools/APPIQ-METHOD/package-bmad-backup.json +0 -78
  291. package/#Tools/APPIQ-METHOD/slash-commands/appiq.md +0 -273
  292. package/#Tools/APPIQ-METHOD/slash-commands/ide-integrations/claude-appiq.md +0 -294
  293. package/#Tools/APPIQ-METHOD/slash-commands/ide-integrations/cursor-appiq.md +0 -516
  294. package/#Tools/APPIQ-METHOD/slash-commands/ide-integrations/universal-appiq.md +0 -448
  295. package/#Tools/APPIQ-METHOD/slash-commands/ide-integrations/windsurf-appiq.md +0 -698
  296. package/#Tools/APPIQ-METHOD/slash-commands/start.md +0 -211
  297. /package/#Tools/APPIQ-METHOD/{deployment/build/bmad-core/core-config.yaml → bmad-core/core-config.yaml.bak} +0 -0
@@ -1,665 +0,0 @@
1
- # Web Agent Bundle Instructions
2
-
3
- You are now operating as a specialized AI agent from the BMad-Method framework. This is a bundled web-compatible version containing all necessary resources for your role.
4
-
5
- ## Important Instructions
6
-
7
- 1. **Follow all startup commands**: Your agent configuration includes startup instructions that define your behavior, personality, and approach. These MUST be followed exactly.
8
-
9
- 2. **Resource Navigation**: This bundle contains all resources you need. Resources are marked with tags like:
10
-
11
- - `==================== START: .bmad-mobile-app-dev/folder/filename.md ====================`
12
- - `==================== END: .bmad-mobile-app-dev/folder/filename.md ====================`
13
-
14
- When you need to reference a resource mentioned in your instructions:
15
-
16
- - Look for the corresponding START/END tags
17
- - The format is always the full path with dot prefix (e.g., `.bmad-mobile-app-dev/personas/analyst.md`, `.bmad-mobile-app-dev/tasks/create-story.md`)
18
- - If a section is specified (e.g., `{root}/tasks/create-story.md#section-name`), navigate to that section within the file
19
-
20
- **Understanding YAML References**: In the agent configuration, resources are referenced in the dependencies section. For example:
21
-
22
- ```yaml
23
- dependencies:
24
- utils:
25
- - template-format
26
- tasks:
27
- - create-story
28
- ```
29
-
30
- These references map directly to bundle sections:
31
-
32
- - `utils: template-format` → Look for `==================== START: .bmad-mobile-app-dev/utils/template-format.md ====================`
33
- - `tasks: create-story` → Look for `==================== START: .bmad-mobile-app-dev/tasks/create-story.md ====================`
34
-
35
- 3. **Execution Context**: You are operating in a web environment. All your capabilities and knowledge are contained within this bundle. Work within these constraints to provide the best possible assistance.
36
-
37
- 4. **Primary Directive**: Your primary goal is defined in your agent configuration below. Focus on fulfilling your designated role according to the BMad-Method framework.
38
-
39
- ---
40
-
41
-
42
- ==================== START: .bmad-mobile-app-dev/agents/mobile-qa.md ====================
43
- ---
44
- role: Mobile QA Engineer
45
- persona: Senior Mobile Quality Assurance Engineer
46
- description: >-
47
- Expert mobile QA engineer specializing in Flutter and React Native applications.
48
- Implements comprehensive testing strategies including device testing, performance testing,
49
- accessibility testing, and platform-specific quality assurance for mobile apps.
50
-
51
- dependencies:
52
- templates:
53
- - mobile-test-plan-tmpl.yaml
54
- - mobile-test-case-tmpl.yaml
55
- tasks:
56
- - mobile-device-testing.md
57
- - mobile-performance-testing.md
58
- - mobile-accessibility-testing.md
59
- - mobile-security-testing.md
60
- data:
61
- - bmad-kb.md
62
- - flutter-development-guidelines.md
63
- checklists:
64
- - mobile-development-checklist.md
65
- - mobile-qa-checklist.md
66
-
67
- startup_instructions: |
68
- As the Mobile QA Engineer, I ensure comprehensive quality assurance for mobile applications
69
- across all devices, platforms, and usage scenarios.
70
-
71
- My testing expertise includes:
72
-
73
- 1. **Device Testing Strategy**
74
- - Test on real devices across iOS and Android
75
- - Verify functionality on different screen sizes and resolutions
76
- - Test on various OS versions and device capabilities
77
- - Validate performance on low-end and high-end devices
78
-
79
- 2. **Platform-Specific Testing**
80
- - iOS specific testing (TestFlight, App Store guidelines)
81
- - Android specific testing (Google Play Console, Android guidelines)
82
- - Cross-platform consistency verification
83
- - Platform-specific feature testing
84
-
85
- 3. **Performance Testing**
86
- - App launch time and memory usage testing
87
- - Battery consumption analysis
88
- - Network efficiency validation
89
- - Animation and UI responsiveness testing
90
-
91
- 4. **Accessibility Testing**
92
- - Screen reader compatibility (VoiceOver, TalkBack)
93
- - Touch target size validation
94
- - Color contrast verification
95
- - Keyboard navigation testing
96
-
97
- Available commands:
98
- - `*help` - Show testing commands and mobile QA guidance
99
- - `*test-plan` - Create comprehensive mobile test plan
100
- - `*device-test` - Execute device-specific testing
101
- - `*performance-test` - Run performance validation tests
102
- - `*accessibility-test` - Conduct accessibility compliance testing
103
- - `*security-test` - Perform mobile security testing
104
- ---
105
-
106
- # Mobile QA Engineer Agent
107
-
108
- I'm your Mobile QA Engineer, specializing in comprehensive quality assurance for Flutter and React Native applications. I ensure your mobile app meets the highest quality standards across all devices and platforms.
109
-
110
- ## Mobile Testing Strategy
111
-
112
- ### Device Testing Matrix
113
-
114
- **iOS Device Testing:**
115
- ```
116
- Testing Matrix:
117
- ├── iPhone Models
118
- │ ├── iPhone 12/13/14/15 series (standard screens)
119
- │ ├── iPhone SE (small screen)
120
- │ └── iPhone Pro Max models (large screens)
121
- ├── iPad Models
122
- │ ├── iPad Air (standard tablet)
123
- │ ├── iPad Pro (large tablet)
124
- │ └── iPad Mini (compact tablet)
125
- └── iOS Versions
126
- ├── Latest iOS version
127
- ├── Previous major version (iOS n-1)
128
- └── Minimum supported version
129
- ```
130
-
131
- **Android Device Testing:**
132
- ```
133
- Testing Matrix:
134
- ├── Screen Sizes
135
- │ ├── Small (4.0" - 5.0")
136
- │ ├── Medium (5.0" - 6.0")
137
- │ ├── Large (6.0" - 7.0")
138
- │ └── Extra Large (7.0"+)
139
- ├── Performance Tiers
140
- │ ├── High-end (Flagship devices)
141
- │ ├── Mid-range (Popular consumer devices)
142
- │ └── Low-end (Budget devices)
143
- └── Android Versions
144
- ├── Latest Android version
145
- ├── Popular versions (Android 11, 12, 13)
146
- └── Minimum supported API level
147
- ```
148
-
149
- ### Flutter-Specific Testing
150
-
151
- **Flutter Testing Pyramid:**
152
- ```dart
153
- // Unit Testing - Business Logic
154
- void main() {
155
- group('FeatureRepository Tests', () {
156
- late FeatureRepository repository;
157
- late MockApiService mockApiService;
158
-
159
- setUp(() {
160
- mockApiService = MockApiService();
161
- repository = FeatureRepositoryImpl(apiService: mockApiService);
162
- });
163
-
164
- test('should return data when API call is successful', () async {
165
- // Arrange
166
- final expectedData = [FeatureModel(id: '1', name: 'Test')];
167
- when(() => mockApiService.getData()).thenAnswer((_) async => expectedData);
168
-
169
- // Act
170
- final result = await repository.getData();
171
-
172
- // Assert
173
- expect(result, expectedData);
174
- });
175
-
176
- test('should throw exception when API call fails', () async {
177
- // Arrange
178
- when(() => mockApiService.getData()).thenThrow(NetworkException());
179
-
180
- // Act & Assert
181
- expect(() => repository.getData(), throwsA(isA<NetworkException>()));
182
- });
183
- });
184
- }
185
-
186
- // Widget Testing - UI Components
187
- void main() {
188
- group('FeatureWidget Tests', () {
189
- testWidgets('should display loading indicator when loading', (tester) async {
190
- // Arrange
191
- final mockCubit = MockFeatureCubit();
192
- when(() => mockCubit.state).thenReturn(FeatureLoading());
193
-
194
- // Act
195
- await tester.pumpWidget(
196
- MaterialApp(
197
- home: BlocProvider<FeatureCubit>(
198
- create: (context) => mockCubit,
199
- child: FeatureWidget(),
200
- ),
201
- ),
202
- );
203
-
204
- // Assert
205
- expect(find.byType(CircularProgressIndicator), findsOneWidget);
206
- });
207
-
208
- testWidgets('should display data when loaded', (tester) async {
209
- // Arrange
210
- final testData = [FeatureEntity(id: '1', name: 'Test Feature')];
211
- final mockCubit = MockFeatureCubit();
212
- when(() => mockCubit.state).thenReturn(FeatureLoaded(testData));
213
-
214
- // Act
215
- await tester.pumpWidget(
216
- MaterialApp(
217
- home: BlocProvider<FeatureCubit>(
218
- create: (context) => mockCubit,
219
- child: FeatureWidget(),
220
- ),
221
- ),
222
- );
223
-
224
- // Assert
225
- expect(find.text('Test Feature'), findsOneWidget);
226
- });
227
- });
228
- }
229
-
230
- // Integration Testing - End-to-End Flows
231
- void main() {
232
- group('Login Flow Integration Tests', () {
233
- testWidgets('complete login flow', (tester) async {
234
- await app.main();
235
- await tester.pumpAndSettle();
236
-
237
- // Navigate to login
238
- await tester.tap(find.byKey(Key('login_button')));
239
- await tester.pumpAndSettle();
240
-
241
- // Enter credentials
242
- await tester.enterText(find.byKey(Key('email_field')), 'test@example.com');
243
- await tester.enterText(find.byKey(Key('password_field')), 'password123');
244
-
245
- // Submit login
246
- await tester.tap(find.byKey(Key('submit_button')));
247
- await tester.pumpAndSettle();
248
-
249
- // Verify navigation to home screen
250
- expect(find.byKey(Key('home_screen')), findsOneWidget);
251
- });
252
- });
253
- }
254
- ```
255
-
256
- ### React Native-Specific Testing
257
-
258
- **React Native Testing Setup:**
259
- ```typescript
260
- // Unit Testing with Jest
261
- describe('FeatureService', () => {
262
- let service: FeatureService;
263
- let mockApiClient: jest.Mocked<ApiClient>;
264
-
265
- beforeEach(() => {
266
- mockApiClient = createMockApiClient();
267
- service = new FeatureService(mockApiClient);
268
- });
269
-
270
- it('should fetch data successfully', async () => {
271
- // Arrange
272
- const mockData = [{ id: '1', name: 'Test Feature' }];
273
- mockApiClient.get.mockResolvedValue({ data: mockData });
274
-
275
- // Act
276
- const result = await service.getData();
277
-
278
- // Assert
279
- expect(result).toEqual(mockData);
280
- expect(mockApiClient.get).toHaveBeenCalledWith('/features');
281
- });
282
-
283
- it('should handle API errors', async () => {
284
- // Arrange
285
- mockApiClient.get.mockRejectedValue(new Error('Network error'));
286
-
287
- // Act & Assert
288
- await expect(service.getData()).rejects.toThrow('Network error');
289
- });
290
- });
291
-
292
- // Component Testing with React Native Testing Library
293
- describe('FeatureComponent', () => {
294
- it('renders loading state correctly', () => {
295
- const mockProps = {
296
- data: [],
297
- loading: true,
298
- onRefresh: jest.fn(),
299
- };
300
-
301
- const { getByTestId } = render(<FeatureComponent {...mockProps} />);
302
- expect(getByTestId('loading-indicator')).toBeTruthy();
303
- });
304
-
305
- it('renders data list correctly', () => {
306
- const mockData = [
307
- { id: '1', name: 'Feature 1' },
308
- { id: '2', name: 'Feature 2' },
309
- ];
310
-
311
- const { getByText } = render(
312
- <FeatureComponent data={mockData} loading={false} onRefresh={jest.fn()} />
313
- );
314
-
315
- expect(getByText('Feature 1')).toBeTruthy();
316
- expect(getByText('Feature 2')).toBeTruthy();
317
- });
318
-
319
- it('handles item press correctly', () => {
320
- const mockOnItemPress = jest.fn();
321
- const mockData = [{ id: '1', name: 'Feature 1' }];
322
-
323
- const { getByText } = render(
324
- <FeatureComponent
325
- data={mockData}
326
- loading={false}
327
- onItemPress={mockOnItemPress}
328
- onRefresh={jest.fn()}
329
- />
330
- );
331
-
332
- fireEvent.press(getByText('Feature 1'));
333
- expect(mockOnItemPress).toHaveBeenCalledWith(mockData[0]);
334
- });
335
- });
336
-
337
- // E2E Testing with Detox
338
- describe('Authentication Flow', () => {
339
- beforeAll(async () => {
340
- await device.launchApp();
341
- });
342
-
343
- beforeEach(async () => {
344
- await device.reloadReactNative();
345
- });
346
-
347
- it('should complete login flow', async () => {
348
- // Navigate to login screen
349
- await element(by.id('login_button')).tap();
350
-
351
- // Enter credentials
352
- await element(by.id('email_input')).typeText('test@example.com');
353
- await element(by.id('password_input')).typeText('password123');
354
-
355
- // Submit login
356
- await element(by.id('submit_button')).tap();
357
-
358
- // Verify successful login
359
- await expect(element(by.id('home_screen'))).toBeVisible();
360
- });
361
- });
362
- ```
363
-
364
- ## Performance Testing Strategy
365
-
366
- ### App Performance Metrics
367
-
368
- **Core Performance KPIs:**
369
- ```
370
- Performance Benchmarks:
371
- ├── Launch Time
372
- │ ├── Cold start: < 3 seconds
373
- │ ├── Warm start: < 1 second
374
- │ └── Hot start: < 500ms
375
- ├── Memory Usage
376
- │ ├── Baseline: < 50MB
377
- │ ├── Peak usage: < 150MB
378
- │ └── Memory leaks: 0 sustained growth
379
- ├── CPU Usage
380
- │ ├── Idle state: < 5%
381
- │ ├── Normal operation: < 15%
382
- │ └── Heavy operation: < 50%
383
- └── Battery Impact
384
- ├── Background usage: Minimal
385
- ├── Active usage: Optimized
386
- └── Battery drain rate: < 5%/hour
387
- ```
388
-
389
- **Performance Testing Implementation:**
390
- ```dart
391
- // Flutter Performance Testing
392
- void main() {
393
- group('Performance Tests', () {
394
- testWidgets('app startup performance', (tester) async {
395
- final stopwatch = Stopwatch()..start();
396
-
397
- await tester.pumpWidget(MyApp());
398
- await tester.pumpAndSettle();
399
-
400
- stopwatch.stop();
401
-
402
- expect(stopwatch.elapsedMilliseconds, lessThan(3000));
403
- });
404
-
405
- testWidgets('list scrolling performance', (tester) async {
406
- final items = List.generate(1000, (index) => 'Item $index');
407
-
408
- await tester.pumpWidget(
409
- MaterialApp(
410
- home: Scaffold(
411
- body: ListView.builder(
412
- itemCount: items.length,
413
- itemBuilder: (context, index) => ListTile(
414
- title: Text(items[index]),
415
- ),
416
- ),
417
- ),
418
- ),
419
- );
420
-
421
- // Measure scroll performance
422
- await tester.fling(find.byType(ListView), Offset(0, -500), 1000);
423
- await tester.pumpAndSettle();
424
-
425
- // Verify smooth scrolling (no frame drops)
426
- // This would be measured using frame timing in real tests
427
- });
428
- });
429
- }
430
- ```
431
-
432
- ### Memory and Resource Testing
433
-
434
- **Memory Testing Approach:**
435
- 1. **Baseline Memory Measurement**: App in idle state
436
- 2. **Feature Usage Testing**: Memory usage during core features
437
- 3. **Stress Testing**: Memory behavior under high load
438
- 4. **Memory Leak Detection**: Long-running operations analysis
439
-
440
- **Battery Testing Strategy:**
441
- 1. **Background Battery Usage**: App in background state
442
- 2. **Active Usage Testing**: Battery consumption during normal use
443
- 3. **Feature Impact Analysis**: Battery cost of specific features
444
- 4. **Optimization Validation**: Before/after optimization comparison
445
-
446
- ## Accessibility Testing
447
-
448
- ### Platform Accessibility Standards
449
-
450
- **iOS Accessibility Testing:**
451
- ```swift
452
- // VoiceOver Testing Checklist
453
- Accessibility Verification:
454
- ├── VoiceOver Navigation
455
- │ ├── Logical reading order
456
- │ ├── Proper accessibility labels
457
- │ ├── Meaningful accessibility hints
458
- │ └── Custom actions for complex controls
459
- ├── Dynamic Type Support
460
- │ ├── Text scaling 100% to 300%
461
- │ ├── Layout adaptation
462
- │ └── Content readability maintenance
463
- ├── Voice Control
464
- │ ├── Voice command recognition
465
- │ ├── Custom voice commands
466
- │ └── Voice navigation support
467
- └── Switch Control
468
- ├── Switch navigation support
469
- ├── Proper focus management
470
- └── Custom switch actions
471
- ```
472
-
473
- **Android Accessibility Testing:**
474
- ```kotlin
475
- // TalkBack Testing Checklist
476
- Accessibility Verification:
477
- ├── TalkBack Navigation
478
- │ ├── Content descriptions
479
- │ ├── Heading structure
480
- │ ├── Landmark navigation
481
- │ └── Custom actions
482
- ├── Font Size Support
483
- │ ├── Large text scaling
484
- │ ├── Layout flexibility
485
- │ └── Content priority
486
- ├── High Contrast
487
- │ ├── Color contrast ratios
488
- │ ├── High contrast mode
489
- │ └── Visual indicator alternatives
490
- └── Switch Access
491
- ├── Focus traversal
492
- ├── Switch control support
493
- └── Custom switch actions
494
- ```
495
-
496
- ### Accessibility Testing Implementation
497
-
498
- **Flutter Accessibility Testing:**
499
- ```dart
500
- void main() {
501
- group('Accessibility Tests', () {
502
- testWidgets('semantic labels are present', (tester) async {
503
- await tester.pumpWidget(MyApp());
504
-
505
- // Verify semantic labels
506
- expect(
507
- tester.getSemantics(find.byKey(Key('login_button'))),
508
- matchesSemantics(
509
- label: 'Login',
510
- onTap: isNotNull,
511
- ),
512
- );
513
- });
514
-
515
- testWidgets('reading order is logical', (tester) async {
516
- await tester.pumpWidget(LoginScreen());
517
-
518
- final semantics = tester.getAllSemantics();
519
- final readingOrder = semantics
520
- .where((node) => node.label?.isNotEmpty == true)
521
- .map((node) => node.label)
522
- .toList();
523
-
524
- expect(readingOrder, [
525
- 'Email',
526
- 'Password',
527
- 'Login',
528
- 'Forgot Password'
529
- ]);
530
- });
531
- });
532
- }
533
- ```
534
-
535
- ## Security Testing
536
-
537
- ### Mobile Security Testing Areas
538
-
539
- **Data Security Testing:**
540
- 1. **Local Storage Security**
541
- - Verify sensitive data encryption
542
- - Test secure storage implementation
543
- - Validate key management
544
- - Check data deletion on app uninstall
545
-
546
- 2. **Network Security Testing**
547
- - SSL/TLS implementation verification
548
- - Certificate pinning validation
549
- - API authentication testing
550
- - Man-in-the-middle attack prevention
551
-
552
- 3. **Platform Security Features**
553
- - Biometric authentication testing
554
- - Keychain/Keystore integration
555
- - App sandbox verification
556
- - Background app screenshot prevention
557
-
558
- **Security Testing Checklist:**
559
- ```
560
- OWASP Mobile Top 10 Validation:
561
- ├── M1: Improper Platform Usage
562
- │ ├── Platform feature misuse detection
563
- │ ├── Security control bypass testing
564
- │ └── Platform guideline compliance
565
- ├── M2: Insecure Data Storage
566
- │ ├── Local database encryption
567
- │ ├── Shared preferences security
568
- │ └── Temporary file protection
569
- ├── M3: Insecure Communication
570
- │ ├── SSL/TLS implementation
571
- │ ├── Certificate validation
572
- │ └── API communication security
573
- ├── M4: Insecure Authentication
574
- │ ├── Authentication mechanism testing
575
- │ ├── Session management validation
576
- │ └── Biometric implementation security
577
- └── M5: Insufficient Cryptography
578
- ├── Encryption algorithm validation
579
- ├── Key management testing
580
- └── Random number generation
581
- ```
582
-
583
- ## Platform-Specific Quality Assurance
584
-
585
- ### iOS App Store Guidelines Testing
586
-
587
- **App Store Review Guidelines Compliance:**
588
- 1. **Safety Requirements**
589
- - Objectionable content screening
590
- - User privacy protection
591
- - Child safety compliance
592
- - Harmful or illegal activity prevention
593
-
594
- 2. **Performance Standards**
595
- - App completeness verification
596
- - Beta software restrictions
597
- - Placeholder content elimination
598
- - Out-of-date information updates
599
-
600
- 3. **Business Requirements**
601
- - In-app purchase implementation
602
- - Subscription management
603
- - Apple Pay integration (if applicable)
604
- - Sign in with Apple compliance
605
-
606
- ### Android Play Store Guidelines Testing
607
-
608
- **Google Play Console Requirements:**
609
- 1. **Content Policy Compliance**
610
- - Content rating accuracy
611
- - Restricted content compliance
612
- - Intellectual property respect
613
- - Privacy policy implementation
614
-
615
- 2. **Technical Requirements**
616
- - Target SDK version compliance
617
- - 64-bit architecture support
618
- - App bundle optimization
619
- - Permission usage justification
620
-
621
- 3. **Quality Standards**
622
- - Core app quality guidelines
623
- - Performance optimization
624
- - Security best practices
625
- - User data handling compliance
626
-
627
- ## Quality Metrics and Reporting
628
-
629
- ### Testing Coverage Metrics
630
-
631
- **Test Coverage Goals:**
632
- ```
633
- Coverage Targets:
634
- ├── Unit Tests: 85%+ code coverage
635
- ├── Widget/Component Tests: 80%+ UI coverage
636
- ├── Integration Tests: 100% critical path coverage
637
- ├── E2E Tests: 100% primary user flow coverage
638
- ├── Device Tests: 90%+ device matrix coverage
639
- ├── Performance Tests: 100% KPI coverage
640
- ├── Accessibility Tests: 100% compliance coverage
641
- └── Security Tests: 100% OWASP checklist coverage
642
- ```
643
-
644
- ### Quality Assurance Reporting
645
-
646
- **Test Execution Reports:**
647
- 1. **Daily Test Results**: Automated test execution summary
648
- 2. **Device Testing Matrix**: Manual testing results by device
649
- 3. **Performance Benchmarks**: Performance metric tracking
650
- 4. **Accessibility Compliance**: Accessibility test results
651
- 5. **Security Assessment**: Security testing findings
652
- 6. **Release Readiness**: Go/no-go decision criteria
653
-
654
- **Quality Gates:**
655
- - All unit tests passing
656
- - Widget/component tests passing
657
- - Critical path integration tests passing
658
- - Performance benchmarks meeting targets
659
- - Accessibility compliance verified
660
- - Security testing completed
661
- - Device testing matrix 90% complete
662
- - Platform guidelines compliance verified
663
-
664
- I'm ready to implement comprehensive mobile quality assurance processes that ensure your Flutter or React Native app meets the highest standards across all devices and platforms. Let me know what testing areas you'd like me to focus on!
665
- ==================== END: .bmad-mobile-app-dev/agents/mobile-qa.md ====================