bmad-studio 0.1.0 → 1.0.0

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 (1077) hide show
  1. package/README.md +6 -0
  2. package/package.json +27 -2
  3. package/packages/client/dist/assets/index-CWL4J-eZ.css +1 -0
  4. package/packages/client/dist/assets/index-DBqsFqD5.js +535 -0
  5. package/packages/client/dist/assets/inter-tight-cyrillic-400-normal-DPRou3KO.woff +0 -0
  6. package/packages/client/dist/assets/inter-tight-cyrillic-400-normal-G7BuwYWK.woff2 +0 -0
  7. package/packages/client/dist/assets/inter-tight-cyrillic-700-normal-DDZiLR3d.woff +0 -0
  8. package/packages/client/dist/assets/inter-tight-cyrillic-700-normal-DtWWjp29.woff2 +0 -0
  9. package/packages/client/dist/assets/inter-tight-cyrillic-800-normal-CC_RRmyd.woff2 +0 -0
  10. package/packages/client/dist/assets/inter-tight-cyrillic-800-normal-ChWbk4mt.woff +0 -0
  11. package/packages/client/dist/assets/inter-tight-cyrillic-ext-400-normal-CKO3cWyd.woff2 +0 -0
  12. package/packages/client/dist/assets/inter-tight-cyrillic-ext-400-normal-DiHHcP5k.woff +0 -0
  13. package/packages/client/dist/assets/inter-tight-cyrillic-ext-700-normal-BFcoPt71.woff +0 -0
  14. package/packages/client/dist/assets/inter-tight-cyrillic-ext-700-normal-D_7NT8eF.woff2 +0 -0
  15. package/packages/client/dist/assets/inter-tight-cyrillic-ext-800-normal-CzCOBUhR.woff2 +0 -0
  16. package/packages/client/dist/assets/inter-tight-cyrillic-ext-800-normal-WowoGRZX.woff +0 -0
  17. package/packages/client/dist/assets/inter-tight-greek-400-normal-BLLSFQTx.woff +0 -0
  18. package/packages/client/dist/assets/inter-tight-greek-400-normal-Br_GQm5W.woff2 +0 -0
  19. package/packages/client/dist/assets/inter-tight-greek-700-normal-DU8XoIeX.woff +0 -0
  20. package/packages/client/dist/assets/inter-tight-greek-700-normal-RgALSHS4.woff2 +0 -0
  21. package/packages/client/dist/assets/inter-tight-greek-800-normal-CxHmUlv4.woff +0 -0
  22. package/packages/client/dist/assets/inter-tight-greek-800-normal-X9eW6L67.woff2 +0 -0
  23. package/packages/client/dist/assets/inter-tight-greek-ext-400-normal-C3GMUg_S.woff2 +0 -0
  24. package/packages/client/dist/assets/inter-tight-greek-ext-400-normal-DMqR5RoS.woff +0 -0
  25. package/packages/client/dist/assets/inter-tight-greek-ext-700-normal-D0RkHJEE.woff2 +0 -0
  26. package/packages/client/dist/assets/inter-tight-greek-ext-700-normal-mW3dmpoD.woff +0 -0
  27. package/packages/client/dist/assets/inter-tight-greek-ext-800-normal-DNWjXg9N.woff2 +0 -0
  28. package/packages/client/dist/assets/inter-tight-greek-ext-800-normal-DfP-QoiQ.woff +0 -0
  29. package/packages/client/dist/assets/inter-tight-latin-400-normal-BLrFJfvD.woff +0 -0
  30. package/packages/client/dist/assets/inter-tight-latin-400-normal-iW8qmuJY.woff2 +0 -0
  31. package/packages/client/dist/assets/inter-tight-latin-700-normal-BZKd_v_8.woff2 +0 -0
  32. package/packages/client/dist/assets/inter-tight-latin-700-normal-DvYAVZQd.woff +0 -0
  33. package/packages/client/dist/assets/inter-tight-latin-800-normal-CRGCHRPv.woff2 +0 -0
  34. package/packages/client/dist/assets/inter-tight-latin-800-normal-D2te1T7i.woff +0 -0
  35. package/packages/client/dist/assets/inter-tight-latin-ext-400-normal-BQQeeQrv.woff +0 -0
  36. package/packages/client/dist/assets/inter-tight-latin-ext-400-normal-DN7wyBvd.woff2 +0 -0
  37. package/packages/client/dist/assets/inter-tight-latin-ext-700-normal-BpKPOkj3.woff2 +0 -0
  38. package/packages/client/dist/assets/inter-tight-latin-ext-700-normal-CrlzIQ10.woff +0 -0
  39. package/packages/client/dist/assets/inter-tight-latin-ext-800-normal-A39zhqaD.woff +0 -0
  40. package/packages/client/dist/assets/inter-tight-latin-ext-800-normal-DfKN99cy.woff2 +0 -0
  41. package/packages/client/dist/assets/inter-tight-vietnamese-400-normal-CqzIqjuX.woff2 +0 -0
  42. package/packages/client/dist/assets/inter-tight-vietnamese-400-normal-kSDs3Vd1.woff +0 -0
  43. package/packages/client/dist/assets/inter-tight-vietnamese-700-normal-Cn_DV52A.woff2 +0 -0
  44. package/packages/client/dist/assets/inter-tight-vietnamese-700-normal-DwHBAXeT.woff +0 -0
  45. package/packages/client/dist/assets/inter-tight-vietnamese-800-normal-CbYrLkxo.woff +0 -0
  46. package/packages/client/dist/assets/inter-tight-vietnamese-800-normal-OJoDhpMd.woff2 +0 -0
  47. package/packages/client/dist/index.html +13 -0
  48. package/packages/server/dist/app.d.ts +12 -0
  49. package/packages/server/dist/app.d.ts.map +1 -0
  50. package/packages/server/dist/app.js +94 -0
  51. package/packages/server/dist/app.js.map +1 -0
  52. package/packages/server/dist/app.test.d.ts +2 -0
  53. package/packages/server/dist/app.test.d.ts.map +1 -0
  54. package/packages/server/dist/app.test.js +72 -0
  55. package/packages/server/dist/app.test.js.map +1 -0
  56. package/packages/server/dist/core/errors.d.ts +29 -0
  57. package/packages/server/dist/core/errors.d.ts.map +1 -0
  58. package/packages/server/dist/core/errors.js +49 -0
  59. package/packages/server/dist/core/errors.js.map +1 -0
  60. package/packages/server/dist/core/errors.test.d.ts +2 -0
  61. package/packages/server/dist/core/errors.test.d.ts.map +1 -0
  62. package/packages/server/dist/core/errors.test.js +37 -0
  63. package/packages/server/dist/core/errors.test.js.map +1 -0
  64. package/packages/server/dist/core/file-store.d.ts +40 -0
  65. package/packages/server/dist/core/file-store.d.ts.map +1 -0
  66. package/packages/server/dist/core/file-store.js +160 -0
  67. package/packages/server/dist/core/file-store.js.map +1 -0
  68. package/packages/server/dist/core/file-store.test.d.ts +2 -0
  69. package/packages/server/dist/core/file-store.test.d.ts.map +1 -0
  70. package/packages/server/dist/core/file-store.test.js +75 -0
  71. package/packages/server/dist/core/file-store.test.js.map +1 -0
  72. package/packages/server/dist/core/ide-skill-generator.d.ts +58 -0
  73. package/packages/server/dist/core/ide-skill-generator.d.ts.map +1 -0
  74. package/packages/server/dist/core/ide-skill-generator.js +270 -0
  75. package/packages/server/dist/core/ide-skill-generator.js.map +1 -0
  76. package/packages/server/dist/core/ide-skill-generator.test.d.ts +2 -0
  77. package/packages/server/dist/core/ide-skill-generator.test.d.ts.map +1 -0
  78. package/packages/server/dist/core/ide-skill-generator.test.js +257 -0
  79. package/packages/server/dist/core/ide-skill-generator.test.js.map +1 -0
  80. package/packages/server/dist/core/module-installer.d.ts +165 -0
  81. package/packages/server/dist/core/module-installer.d.ts.map +1 -0
  82. package/packages/server/dist/core/module-installer.js +445 -0
  83. package/packages/server/dist/core/module-installer.js.map +1 -0
  84. package/packages/server/dist/core/module-installer.test.d.ts +2 -0
  85. package/packages/server/dist/core/module-installer.test.d.ts.map +1 -0
  86. package/packages/server/dist/core/module-installer.test.js +509 -0
  87. package/packages/server/dist/core/module-installer.test.js.map +1 -0
  88. package/packages/server/dist/core/module-registry.d.ts +5 -0
  89. package/packages/server/dist/core/module-registry.d.ts.map +1 -0
  90. package/packages/server/dist/core/module-registry.js +109 -0
  91. package/packages/server/dist/core/module-registry.js.map +1 -0
  92. package/packages/server/dist/core/module-registry.test.d.ts +2 -0
  93. package/packages/server/dist/core/module-registry.test.d.ts.map +1 -0
  94. package/packages/server/dist/core/module-registry.test.js +280 -0
  95. package/packages/server/dist/core/module-registry.test.js.map +1 -0
  96. package/packages/server/dist/core/project-detector.d.ts +14 -0
  97. package/packages/server/dist/core/project-detector.d.ts.map +1 -0
  98. package/packages/server/dist/core/project-detector.js +67 -0
  99. package/packages/server/dist/core/project-detector.js.map +1 -0
  100. package/packages/server/dist/core/project-detector.test.d.ts +2 -0
  101. package/packages/server/dist/core/project-detector.test.d.ts.map +1 -0
  102. package/packages/server/dist/core/project-detector.test.js +73 -0
  103. package/packages/server/dist/core/project-detector.test.js.map +1 -0
  104. package/packages/server/dist/core/websocket.d.ts +16 -0
  105. package/packages/server/dist/core/websocket.d.ts.map +1 -0
  106. package/packages/server/dist/core/websocket.js +30 -0
  107. package/packages/server/dist/core/websocket.js.map +1 -0
  108. package/packages/server/dist/core/websocket.test.d.ts +2 -0
  109. package/packages/server/dist/core/websocket.test.d.ts.map +1 -0
  110. package/packages/server/dist/core/websocket.test.js +64 -0
  111. package/packages/server/dist/core/websocket.test.js.map +1 -0
  112. package/packages/server/dist/core/write-service.d.ts +32 -0
  113. package/packages/server/dist/core/write-service.d.ts.map +1 -0
  114. package/packages/server/dist/core/write-service.js +173 -0
  115. package/packages/server/dist/core/write-service.js.map +1 -0
  116. package/packages/server/dist/core/write-service.test.d.ts +2 -0
  117. package/packages/server/dist/core/write-service.test.d.ts.map +1 -0
  118. package/packages/server/dist/core/write-service.test.js +156 -0
  119. package/packages/server/dist/core/write-service.test.js.map +1 -0
  120. package/packages/server/dist/index.d.ts +2 -0
  121. package/packages/server/dist/index.d.ts.map +1 -0
  122. package/packages/server/dist/index.js +133 -0
  123. package/packages/server/dist/index.js.map +1 -0
  124. package/packages/server/dist/parsers/agent-parser.d.ts +4 -0
  125. package/packages/server/dist/parsers/agent-parser.d.ts.map +1 -0
  126. package/packages/server/dist/parsers/agent-parser.js +88 -0
  127. package/packages/server/dist/parsers/agent-parser.js.map +1 -0
  128. package/packages/server/dist/parsers/agent-parser.test.d.ts +2 -0
  129. package/packages/server/dist/parsers/agent-parser.test.d.ts.map +1 -0
  130. package/packages/server/dist/parsers/agent-parser.test.js +66 -0
  131. package/packages/server/dist/parsers/agent-parser.test.js.map +1 -0
  132. package/packages/server/dist/parsers/config-parser.d.ts +14 -0
  133. package/packages/server/dist/parsers/config-parser.d.ts.map +1 -0
  134. package/packages/server/dist/parsers/config-parser.js +39 -0
  135. package/packages/server/dist/parsers/config-parser.js.map +1 -0
  136. package/packages/server/dist/parsers/config-parser.test.d.ts +2 -0
  137. package/packages/server/dist/parsers/config-parser.test.d.ts.map +1 -0
  138. package/packages/server/dist/parsers/config-parser.test.js +56 -0
  139. package/packages/server/dist/parsers/config-parser.test.js.map +1 -0
  140. package/packages/server/dist/parsers/csv-parser.d.ts +4 -0
  141. package/packages/server/dist/parsers/csv-parser.d.ts.map +1 -0
  142. package/packages/server/dist/parsers/csv-parser.js +50 -0
  143. package/packages/server/dist/parsers/csv-parser.js.map +1 -0
  144. package/packages/server/dist/parsers/csv-parser.test.d.ts +2 -0
  145. package/packages/server/dist/parsers/csv-parser.test.d.ts.map +1 -0
  146. package/packages/server/dist/parsers/csv-parser.test.js +44 -0
  147. package/packages/server/dist/parsers/csv-parser.test.js.map +1 -0
  148. package/packages/server/dist/parsers/ide-config-parser.d.ts +9 -0
  149. package/packages/server/dist/parsers/ide-config-parser.d.ts.map +1 -0
  150. package/packages/server/dist/parsers/ide-config-parser.js +28 -0
  151. package/packages/server/dist/parsers/ide-config-parser.js.map +1 -0
  152. package/packages/server/dist/parsers/ide-config-parser.test.d.ts +2 -0
  153. package/packages/server/dist/parsers/ide-config-parser.test.d.ts.map +1 -0
  154. package/packages/server/dist/parsers/ide-config-parser.test.js +32 -0
  155. package/packages/server/dist/parsers/ide-config-parser.test.js.map +1 -0
  156. package/packages/server/dist/parsers/index-builder.d.ts +20 -0
  157. package/packages/server/dist/parsers/index-builder.d.ts.map +1 -0
  158. package/packages/server/dist/parsers/index-builder.js +155 -0
  159. package/packages/server/dist/parsers/index-builder.js.map +1 -0
  160. package/packages/server/dist/parsers/index-builder.test.d.ts +2 -0
  161. package/packages/server/dist/parsers/index-builder.test.d.ts.map +1 -0
  162. package/packages/server/dist/parsers/index-builder.test.js +57 -0
  163. package/packages/server/dist/parsers/index-builder.test.js.map +1 -0
  164. package/packages/server/dist/parsers/module-yaml-parser.d.ts +16 -0
  165. package/packages/server/dist/parsers/module-yaml-parser.d.ts.map +1 -0
  166. package/packages/server/dist/parsers/module-yaml-parser.js +62 -0
  167. package/packages/server/dist/parsers/module-yaml-parser.js.map +1 -0
  168. package/packages/server/dist/parsers/module-yaml-parser.test.d.ts +2 -0
  169. package/packages/server/dist/parsers/module-yaml-parser.test.d.ts.map +1 -0
  170. package/packages/server/dist/parsers/module-yaml-parser.test.js +156 -0
  171. package/packages/server/dist/parsers/module-yaml-parser.test.js.map +1 -0
  172. package/packages/server/dist/parsers/package-parser.d.ts +4 -0
  173. package/packages/server/dist/parsers/package-parser.d.ts.map +1 -0
  174. package/packages/server/dist/parsers/package-parser.js +29 -0
  175. package/packages/server/dist/parsers/package-parser.js.map +1 -0
  176. package/packages/server/dist/parsers/package-parser.test.d.ts +2 -0
  177. package/packages/server/dist/parsers/package-parser.test.d.ts.map +1 -0
  178. package/packages/server/dist/parsers/package-parser.test.js +34 -0
  179. package/packages/server/dist/parsers/package-parser.test.js.map +1 -0
  180. package/packages/server/dist/parsers/skill-parser.d.ts +4 -0
  181. package/packages/server/dist/parsers/skill-parser.d.ts.map +1 -0
  182. package/packages/server/dist/parsers/skill-parser.js +58 -0
  183. package/packages/server/dist/parsers/skill-parser.js.map +1 -0
  184. package/packages/server/dist/parsers/skill-parser.test.d.ts +2 -0
  185. package/packages/server/dist/parsers/skill-parser.test.d.ts.map +1 -0
  186. package/packages/server/dist/parsers/skill-parser.test.js +49 -0
  187. package/packages/server/dist/parsers/skill-parser.test.js.map +1 -0
  188. package/packages/server/dist/parsers/team-parser.d.ts +4 -0
  189. package/packages/server/dist/parsers/team-parser.d.ts.map +1 -0
  190. package/packages/server/dist/parsers/team-parser.js +108 -0
  191. package/packages/server/dist/parsers/team-parser.js.map +1 -0
  192. package/packages/server/dist/parsers/team-parser.test.d.ts +2 -0
  193. package/packages/server/dist/parsers/team-parser.test.d.ts.map +1 -0
  194. package/packages/server/dist/parsers/team-parser.test.js +142 -0
  195. package/packages/server/dist/parsers/team-parser.test.js.map +1 -0
  196. package/packages/server/dist/parsers/workflow-parser.d.ts +4 -0
  197. package/packages/server/dist/parsers/workflow-parser.d.ts.map +1 -0
  198. package/packages/server/dist/parsers/workflow-parser.js +266 -0
  199. package/packages/server/dist/parsers/workflow-parser.js.map +1 -0
  200. package/packages/server/dist/parsers/workflow-parser.test.d.ts +2 -0
  201. package/packages/server/dist/parsers/workflow-parser.test.d.ts.map +1 -0
  202. package/packages/server/dist/parsers/workflow-parser.test.js +318 -0
  203. package/packages/server/dist/parsers/workflow-parser.test.js.map +1 -0
  204. package/packages/server/dist/plugins/agents-plugin.d.ts +3 -0
  205. package/packages/server/dist/plugins/agents-plugin.d.ts.map +1 -0
  206. package/packages/server/dist/plugins/agents-plugin.js +129 -0
  207. package/packages/server/dist/plugins/agents-plugin.js.map +1 -0
  208. package/packages/server/dist/plugins/agents-plugin.test.d.ts +2 -0
  209. package/packages/server/dist/plugins/agents-plugin.test.d.ts.map +1 -0
  210. package/packages/server/dist/plugins/agents-plugin.test.js +94 -0
  211. package/packages/server/dist/plugins/agents-plugin.test.js.map +1 -0
  212. package/packages/server/dist/plugins/commands-plugin.d.ts +16 -0
  213. package/packages/server/dist/plugins/commands-plugin.d.ts.map +1 -0
  214. package/packages/server/dist/plugins/commands-plugin.js +38 -0
  215. package/packages/server/dist/plugins/commands-plugin.js.map +1 -0
  216. package/packages/server/dist/plugins/datasources-plugin.d.ts +3 -0
  217. package/packages/server/dist/plugins/datasources-plugin.d.ts.map +1 -0
  218. package/packages/server/dist/plugins/datasources-plugin.js +211 -0
  219. package/packages/server/dist/plugins/datasources-plugin.js.map +1 -0
  220. package/packages/server/dist/plugins/files-plugin.d.ts +3 -0
  221. package/packages/server/dist/plugins/files-plugin.d.ts.map +1 -0
  222. package/packages/server/dist/plugins/files-plugin.js +77 -0
  223. package/packages/server/dist/plugins/files-plugin.js.map +1 -0
  224. package/packages/server/dist/plugins/files-plugin.test.d.ts +2 -0
  225. package/packages/server/dist/plugins/files-plugin.test.d.ts.map +1 -0
  226. package/packages/server/dist/plugins/files-plugin.test.js +107 -0
  227. package/packages/server/dist/plugins/files-plugin.test.js.map +1 -0
  228. package/packages/server/dist/plugins/modules-plugin.d.ts +3 -0
  229. package/packages/server/dist/plugins/modules-plugin.d.ts.map +1 -0
  230. package/packages/server/dist/plugins/modules-plugin.js +1313 -0
  231. package/packages/server/dist/plugins/modules-plugin.js.map +1 -0
  232. package/packages/server/dist/plugins/modules-plugin.test.d.ts +2 -0
  233. package/packages/server/dist/plugins/modules-plugin.test.d.ts.map +1 -0
  234. package/packages/server/dist/plugins/modules-plugin.test.js +2124 -0
  235. package/packages/server/dist/plugins/modules-plugin.test.js.map +1 -0
  236. package/packages/server/dist/plugins/outputs-plugin.d.ts +3 -0
  237. package/packages/server/dist/plugins/outputs-plugin.d.ts.map +1 -0
  238. package/packages/server/dist/plugins/outputs-plugin.js +75 -0
  239. package/packages/server/dist/plugins/outputs-plugin.js.map +1 -0
  240. package/packages/server/dist/plugins/outputs-plugin.test.d.ts +2 -0
  241. package/packages/server/dist/plugins/outputs-plugin.test.d.ts.map +1 -0
  242. package/packages/server/dist/plugins/outputs-plugin.test.js +79 -0
  243. package/packages/server/dist/plugins/outputs-plugin.test.js.map +1 -0
  244. package/packages/server/dist/plugins/overview-plugin.d.ts +3 -0
  245. package/packages/server/dist/plugins/overview-plugin.d.ts.map +1 -0
  246. package/packages/server/dist/plugins/overview-plugin.js +70 -0
  247. package/packages/server/dist/plugins/overview-plugin.js.map +1 -0
  248. package/packages/server/dist/plugins/search-plugin.d.ts +3 -0
  249. package/packages/server/dist/plugins/search-plugin.d.ts.map +1 -0
  250. package/packages/server/dist/plugins/search-plugin.js +46 -0
  251. package/packages/server/dist/plugins/search-plugin.js.map +1 -0
  252. package/packages/server/dist/plugins/settings-plugin.d.ts +3 -0
  253. package/packages/server/dist/plugins/settings-plugin.d.ts.map +1 -0
  254. package/packages/server/dist/plugins/settings-plugin.js +61 -0
  255. package/packages/server/dist/plugins/settings-plugin.js.map +1 -0
  256. package/packages/server/dist/plugins/settings-plugin.test.d.ts +2 -0
  257. package/packages/server/dist/plugins/settings-plugin.test.d.ts.map +1 -0
  258. package/packages/server/dist/plugins/settings-plugin.test.js +144 -0
  259. package/packages/server/dist/plugins/settings-plugin.test.js.map +1 -0
  260. package/packages/server/dist/plugins/skills-plugin.d.ts +3 -0
  261. package/packages/server/dist/plugins/skills-plugin.d.ts.map +1 -0
  262. package/packages/server/dist/plugins/skills-plugin.js +72 -0
  263. package/packages/server/dist/plugins/skills-plugin.js.map +1 -0
  264. package/packages/server/dist/plugins/teams-plugin.d.ts +3 -0
  265. package/packages/server/dist/plugins/teams-plugin.d.ts.map +1 -0
  266. package/packages/server/dist/plugins/teams-plugin.js +162 -0
  267. package/packages/server/dist/plugins/teams-plugin.js.map +1 -0
  268. package/packages/server/dist/plugins/teams-plugin.test.d.ts +2 -0
  269. package/packages/server/dist/plugins/teams-plugin.test.d.ts.map +1 -0
  270. package/packages/server/dist/plugins/teams-plugin.test.js +171 -0
  271. package/packages/server/dist/plugins/teams-plugin.test.js.map +1 -0
  272. package/packages/server/dist/plugins/validation-plugin.d.ts +3 -0
  273. package/packages/server/dist/plugins/validation-plugin.d.ts.map +1 -0
  274. package/packages/server/dist/plugins/validation-plugin.js +102 -0
  275. package/packages/server/dist/plugins/validation-plugin.js.map +1 -0
  276. package/packages/server/dist/plugins/validation-plugin.test.d.ts +2 -0
  277. package/packages/server/dist/plugins/validation-plugin.test.d.ts.map +1 -0
  278. package/packages/server/dist/plugins/validation-plugin.test.js +161 -0
  279. package/packages/server/dist/plugins/validation-plugin.test.js.map +1 -0
  280. package/packages/server/dist/plugins/workflows-plugin.d.ts +3 -0
  281. package/packages/server/dist/plugins/workflows-plugin.d.ts.map +1 -0
  282. package/packages/server/dist/plugins/workflows-plugin.js +227 -0
  283. package/packages/server/dist/plugins/workflows-plugin.js.map +1 -0
  284. package/packages/server/dist/plugins/workflows-plugin.test.d.ts +2 -0
  285. package/packages/server/dist/plugins/workflows-plugin.test.d.ts.map +1 -0
  286. package/packages/server/dist/plugins/workflows-plugin.test.js +115 -0
  287. package/packages/server/dist/plugins/workflows-plugin.test.js.map +1 -0
  288. package/packages/server/dist/static.d.ts +3 -0
  289. package/packages/server/dist/static.d.ts.map +1 -0
  290. package/packages/server/dist/static.js +23 -0
  291. package/packages/server/dist/static.js.map +1 -0
  292. package/packages/shared/src/agents.ts +4 -0
  293. package/packages/shared/src/config.ts +26 -0
  294. package/packages/shared/src/connections.ts +11 -8
  295. package/packages/shared/src/index.ts +13 -0
  296. package/packages/shared/src/modules.ts +42 -0
  297. package/packages/shared/src/registry.ts +26 -0
  298. package/packages/shared/src/types.test.ts +41 -4
  299. package/.prettierrc +0 -8
  300. package/CONTRIBUTING.md +0 -109
  301. package/_bmad/_config/agent-manifest.csv +0 -11
  302. package/_bmad/_config/bmad-help.csv +0 -57
  303. package/_bmad/_config/files-manifest.csv +0 -646
  304. package/_bmad/_config/ides/claude-code.yaml +0 -5
  305. package/_bmad/_config/manifest.yaml +0 -42
  306. package/_bmad/_config/skill-manifest.csv +0 -48
  307. package/_bmad/_config/task-manifest.csv +0 -1
  308. package/_bmad/_config/tool-manifest.csv +0 -1
  309. package/_bmad/_config/workflow-manifest.csv +0 -1
  310. package/_bmad/bmb/config.yaml +0 -13
  311. package/_bmad/bmb/module-help.csv +0 -7
  312. package/_bmad/bmb/skills/bmad-agent-builder/SKILL.md +0 -65
  313. package/_bmad/bmb/skills/bmad-agent-builder/assets/SKILL-template.md +0 -97
  314. package/_bmad/bmb/skills/bmad-agent-builder/assets/autonomous-wake.md +0 -37
  315. package/_bmad/bmb/skills/bmad-agent-builder/assets/init-template.md +0 -47
  316. package/_bmad/bmb/skills/bmad-agent-builder/assets/memory-system.md +0 -129
  317. package/_bmad/bmb/skills/bmad-agent-builder/assets/quality-report-template.md +0 -282
  318. package/_bmad/bmb/skills/bmad-agent-builder/assets/save-memory.md +0 -29
  319. package/_bmad/bmb/skills/bmad-agent-builder/bmad-manifest.json +0 -24
  320. package/_bmad/bmb/skills/bmad-agent-builder/bmad-skill-manifest.yaml +0 -1
  321. package/_bmad/bmb/skills/bmad-agent-builder/build-process.md +0 -199
  322. package/_bmad/bmb/skills/bmad-agent-builder/quality-optimizer.md +0 -208
  323. package/_bmad/bmb/skills/bmad-agent-builder/quality-scan-agent-cohesion.md +0 -272
  324. package/_bmad/bmb/skills/bmad-agent-builder/quality-scan-enhancement-opportunities.md +0 -277
  325. package/_bmad/bmb/skills/bmad-agent-builder/quality-scan-execution-efficiency.md +0 -181
  326. package/_bmad/bmb/skills/bmad-agent-builder/quality-scan-prompt-craft.md +0 -245
  327. package/_bmad/bmb/skills/bmad-agent-builder/quality-scan-script-opportunities.md +0 -262
  328. package/_bmad/bmb/skills/bmad-agent-builder/quality-scan-structure.md +0 -183
  329. package/_bmad/bmb/skills/bmad-agent-builder/references/metadata-reference.md +0 -126
  330. package/_bmad/bmb/skills/bmad-agent-builder/references/quality-dimensions.md +0 -46
  331. package/_bmad/bmb/skills/bmad-agent-builder/references/script-opportunities-reference.md +0 -385
  332. package/_bmad/bmb/skills/bmad-agent-builder/references/skill-best-practices.md +0 -218
  333. package/_bmad/bmb/skills/bmad-agent-builder/references/standard-fields.md +0 -103
  334. package/_bmad/bmb/skills/bmad-agent-builder/references/template-substitution-rules.md +0 -72
  335. package/_bmad/bmb/skills/bmad-agent-builder/references/universal-scan-schema.md +0 -267
  336. package/_bmad/bmb/skills/bmad-agent-builder/report-quality-scan-creator.md +0 -138
  337. package/_bmad/bmb/skills/bmad-agent-builder/scripts/bmad-manifest-schema.json +0 -103
  338. package/_bmad/bmb/skills/bmad-agent-builder/scripts/generate-html-report.py +0 -1002
  339. package/_bmad/bmb/skills/bmad-agent-builder/scripts/manifest.py +0 -420
  340. package/_bmad/bmb/skills/bmad-agent-builder/scripts/prepass-execution-deps.py +0 -368
  341. package/_bmad/bmb/skills/bmad-agent-builder/scripts/prepass-prompt-metrics.py +0 -476
  342. package/_bmad/bmb/skills/bmad-agent-builder/scripts/prepass-structure-capabilities.py +0 -636
  343. package/_bmad/bmb/skills/bmad-agent-builder/scripts/scan-path-standards.py +0 -253
  344. package/_bmad/bmb/skills/bmad-agent-builder/scripts/scan-scripts.py +0 -745
  345. package/_bmad/bmb/skills/bmad-workflow-builder/SKILL.md +0 -65
  346. package/_bmad/bmb/skills/bmad-workflow-builder/assets/SKILL-template.md +0 -117
  347. package/_bmad/bmb/skills/bmad-workflow-builder/assets/quality-report-template.md +0 -260
  348. package/_bmad/bmb/skills/bmad-workflow-builder/bmad-manifest.json +0 -23
  349. package/_bmad/bmb/skills/bmad-workflow-builder/bmad-skill-manifest.yaml +0 -1
  350. package/_bmad/bmb/skills/bmad-workflow-builder/build-process.md +0 -208
  351. package/_bmad/bmb/skills/bmad-workflow-builder/quality-optimizer.md +0 -209
  352. package/_bmad/bmb/skills/bmad-workflow-builder/quality-scan-enhancement-opportunities.md +0 -273
  353. package/_bmad/bmb/skills/bmad-workflow-builder/quality-scan-execution-efficiency.md +0 -322
  354. package/_bmad/bmb/skills/bmad-workflow-builder/quality-scan-prompt-craft.md +0 -328
  355. package/_bmad/bmb/skills/bmad-workflow-builder/quality-scan-script-opportunities.md +0 -261
  356. package/_bmad/bmb/skills/bmad-workflow-builder/quality-scan-skill-cohesion.md +0 -340
  357. package/_bmad/bmb/skills/bmad-workflow-builder/quality-scan-workflow-integrity.md +0 -280
  358. package/_bmad/bmb/skills/bmad-workflow-builder/references/classification-reference.md +0 -61
  359. package/_bmad/bmb/skills/bmad-workflow-builder/references/complex-workflow-patterns.md +0 -523
  360. package/_bmad/bmb/skills/bmad-workflow-builder/references/metadata-reference.md +0 -126
  361. package/_bmad/bmb/skills/bmad-workflow-builder/references/quality-dimensions.md +0 -45
  362. package/_bmad/bmb/skills/bmad-workflow-builder/references/script-opportunities-reference.md +0 -354
  363. package/_bmad/bmb/skills/bmad-workflow-builder/references/skill-best-practices.md +0 -218
  364. package/_bmad/bmb/skills/bmad-workflow-builder/references/standard-fields.md +0 -121
  365. package/_bmad/bmb/skills/bmad-workflow-builder/references/template-substitution-rules.md +0 -85
  366. package/_bmad/bmb/skills/bmad-workflow-builder/references/universal-scan-schema.md +0 -267
  367. package/_bmad/bmb/skills/bmad-workflow-builder/report-quality-scan-creator.md +0 -134
  368. package/_bmad/bmb/skills/bmad-workflow-builder/scripts/bmad-manifest-schema.json +0 -103
  369. package/_bmad/bmb/skills/bmad-workflow-builder/scripts/generate-html-report.py +0 -1002
  370. package/_bmad/bmb/skills/bmad-workflow-builder/scripts/manifest.py +0 -420
  371. package/_bmad/bmb/skills/bmad-workflow-builder/scripts/prepass-execution-deps.py +0 -313
  372. package/_bmad/bmb/skills/bmad-workflow-builder/scripts/prepass-prompt-metrics.py +0 -285
  373. package/_bmad/bmb/skills/bmad-workflow-builder/scripts/prepass-workflow-integrity.py +0 -485
  374. package/_bmad/bmb/skills/bmad-workflow-builder/scripts/scan-path-standards.py +0 -213
  375. package/_bmad/bmb/skills/bmad-workflow-builder/scripts/scan-scripts.py +0 -745
  376. package/_bmad/bmm/agents/analyst.md +0 -69
  377. package/_bmad/bmm/agents/architect.md +0 -59
  378. package/_bmad/bmm/agents/bmad-skill-manifest.yaml +0 -39
  379. package/_bmad/bmm/agents/dev.md +0 -66
  380. package/_bmad/bmm/agents/pm.md +0 -63
  381. package/_bmad/bmm/agents/qa.md +0 -89
  382. package/_bmad/bmm/agents/quick-flow-solo-dev.md +0 -61
  383. package/_bmad/bmm/agents/sm.md +0 -67
  384. package/_bmad/bmm/agents/tech-writer/bmad-skill-manifest.yaml +0 -3
  385. package/_bmad/bmm/agents/tech-writer/tech-writer.md +0 -67
  386. package/_bmad/bmm/agents/ux-designer.md +0 -58
  387. package/_bmad/bmm/config.yaml +0 -16
  388. package/_bmad/bmm/data/project-context-template.md +0 -26
  389. package/_bmad/bmm/module-help.csv +0 -32
  390. package/_bmad/bmm/teams/default-party.csv +0 -20
  391. package/_bmad/bmm/teams/team-fullstack.yaml +0 -12
  392. package/_bmad/bmm/workflows/1-analysis/bmad-create-product-brief/SKILL.md +0 -6
  393. package/_bmad/bmm/workflows/1-analysis/bmad-create-product-brief/bmad-skill-manifest.yaml +0 -1
  394. package/_bmad/bmm/workflows/1-analysis/bmad-create-product-brief/product-brief.template.md +0 -10
  395. package/_bmad/bmm/workflows/1-analysis/bmad-create-product-brief/steps/step-01-init.md +0 -170
  396. package/_bmad/bmm/workflows/1-analysis/bmad-create-product-brief/steps/step-01b-continue.md +0 -158
  397. package/_bmad/bmm/workflows/1-analysis/bmad-create-product-brief/steps/step-02-vision.md +0 -193
  398. package/_bmad/bmm/workflows/1-analysis/bmad-create-product-brief/steps/step-03-users.md +0 -196
  399. package/_bmad/bmm/workflows/1-analysis/bmad-create-product-brief/steps/step-04-metrics.md +0 -199
  400. package/_bmad/bmm/workflows/1-analysis/bmad-create-product-brief/steps/step-05-scope.md +0 -213
  401. package/_bmad/bmm/workflows/1-analysis/bmad-create-product-brief/steps/step-06-complete.md +0 -159
  402. package/_bmad/bmm/workflows/1-analysis/bmad-create-product-brief/workflow.md +0 -55
  403. package/_bmad/bmm/workflows/1-analysis/bmad-product-brief-preview/SKILL.md +0 -88
  404. package/_bmad/bmm/workflows/1-analysis/bmad-product-brief-preview/agents/artifact-analyzer.md +0 -60
  405. package/_bmad/bmm/workflows/1-analysis/bmad-product-brief-preview/agents/opportunity-reviewer.md +0 -44
  406. package/_bmad/bmm/workflows/1-analysis/bmad-product-brief-preview/agents/skeptic-reviewer.md +0 -44
  407. package/_bmad/bmm/workflows/1-analysis/bmad-product-brief-preview/agents/web-researcher.md +0 -49
  408. package/_bmad/bmm/workflows/1-analysis/bmad-product-brief-preview/bmad-manifest.json +0 -17
  409. package/_bmad/bmm/workflows/1-analysis/bmad-product-brief-preview/bmad-skill-manifest.yaml +0 -1
  410. package/_bmad/bmm/workflows/1-analysis/bmad-product-brief-preview/prompts/contextual-discovery.md +0 -57
  411. package/_bmad/bmm/workflows/1-analysis/bmad-product-brief-preview/prompts/draft-and-review.md +0 -86
  412. package/_bmad/bmm/workflows/1-analysis/bmad-product-brief-preview/prompts/finalize.md +0 -75
  413. package/_bmad/bmm/workflows/1-analysis/bmad-product-brief-preview/prompts/guided-elicitation.md +0 -70
  414. package/_bmad/bmm/workflows/1-analysis/bmad-product-brief-preview/resources/brief-template.md +0 -60
  415. package/_bmad/bmm/workflows/1-analysis/research/bmad-domain-research/SKILL.md +0 -6
  416. package/_bmad/bmm/workflows/1-analysis/research/bmad-domain-research/bmad-skill-manifest.yaml +0 -1
  417. package/_bmad/bmm/workflows/1-analysis/research/bmad-domain-research/domain-steps/step-01-init.md +0 -137
  418. package/_bmad/bmm/workflows/1-analysis/research/bmad-domain-research/domain-steps/step-02-domain-analysis.md +0 -229
  419. package/_bmad/bmm/workflows/1-analysis/research/bmad-domain-research/domain-steps/step-03-competitive-landscape.md +0 -238
  420. package/_bmad/bmm/workflows/1-analysis/research/bmad-domain-research/domain-steps/step-04-regulatory-focus.md +0 -206
  421. package/_bmad/bmm/workflows/1-analysis/research/bmad-domain-research/domain-steps/step-05-technical-trends.md +0 -234
  422. package/_bmad/bmm/workflows/1-analysis/research/bmad-domain-research/domain-steps/step-06-research-synthesis.md +0 -444
  423. package/_bmad/bmm/workflows/1-analysis/research/bmad-domain-research/research.template.md +0 -29
  424. package/_bmad/bmm/workflows/1-analysis/research/bmad-domain-research/workflow.md +0 -49
  425. package/_bmad/bmm/workflows/1-analysis/research/bmad-market-research/SKILL.md +0 -6
  426. package/_bmad/bmm/workflows/1-analysis/research/bmad-market-research/bmad-skill-manifest.yaml +0 -1
  427. package/_bmad/bmm/workflows/1-analysis/research/bmad-market-research/research.template.md +0 -29
  428. package/_bmad/bmm/workflows/1-analysis/research/bmad-market-research/steps/step-01-init.md +0 -184
  429. package/_bmad/bmm/workflows/1-analysis/research/bmad-market-research/steps/step-02-customer-behavior.md +0 -239
  430. package/_bmad/bmm/workflows/1-analysis/research/bmad-market-research/steps/step-03-customer-pain-points.md +0 -251
  431. package/_bmad/bmm/workflows/1-analysis/research/bmad-market-research/steps/step-04-customer-decisions.md +0 -261
  432. package/_bmad/bmm/workflows/1-analysis/research/bmad-market-research/steps/step-05-competitive-analysis.md +0 -173
  433. package/_bmad/bmm/workflows/1-analysis/research/bmad-market-research/steps/step-06-research-completion.md +0 -478
  434. package/_bmad/bmm/workflows/1-analysis/research/bmad-market-research/workflow.md +0 -49
  435. package/_bmad/bmm/workflows/1-analysis/research/bmad-technical-research/SKILL.md +0 -6
  436. package/_bmad/bmm/workflows/1-analysis/research/bmad-technical-research/bmad-skill-manifest.yaml +0 -1
  437. package/_bmad/bmm/workflows/1-analysis/research/bmad-technical-research/research.template.md +0 -29
  438. package/_bmad/bmm/workflows/1-analysis/research/bmad-technical-research/technical-steps/step-01-init.md +0 -137
  439. package/_bmad/bmm/workflows/1-analysis/research/bmad-technical-research/technical-steps/step-02-technical-overview.md +0 -239
  440. package/_bmad/bmm/workflows/1-analysis/research/bmad-technical-research/technical-steps/step-03-integration-patterns.md +0 -248
  441. package/_bmad/bmm/workflows/1-analysis/research/bmad-technical-research/technical-steps/step-04-architectural-patterns.md +0 -202
  442. package/_bmad/bmm/workflows/1-analysis/research/bmad-technical-research/technical-steps/step-05-implementation-research.md +0 -233
  443. package/_bmad/bmm/workflows/1-analysis/research/bmad-technical-research/technical-steps/step-06-research-synthesis.md +0 -487
  444. package/_bmad/bmm/workflows/1-analysis/research/bmad-technical-research/workflow.md +0 -50
  445. package/_bmad/bmm/workflows/1-analysis/research/market-steps/step-01-init.md +0 -182
  446. package/_bmad/bmm/workflows/1-analysis/research/market-steps/step-02-customer-behavior.md +0 -237
  447. package/_bmad/bmm/workflows/1-analysis/research/market-steps/step-03-customer-pain-points.md +0 -249
  448. package/_bmad/bmm/workflows/1-analysis/research/market-steps/step-04-customer-decisions.md +0 -259
  449. package/_bmad/bmm/workflows/1-analysis/research/market-steps/step-05-competitive-analysis.md +0 -177
  450. package/_bmad/bmm/workflows/1-analysis/research/market-steps/step-06-research-completion.md +0 -476
  451. package/_bmad/bmm/workflows/1-analysis/research/research.template.md +0 -29
  452. package/_bmad/bmm/workflows/2-plan-workflows/bmad-create-ux-design/SKILL.md +0 -6
  453. package/_bmad/bmm/workflows/2-plan-workflows/bmad-create-ux-design/bmad-skill-manifest.yaml +0 -1
  454. package/_bmad/bmm/workflows/2-plan-workflows/bmad-create-ux-design/steps/step-01-init.md +0 -135
  455. package/_bmad/bmm/workflows/2-plan-workflows/bmad-create-ux-design/steps/step-01b-continue.md +0 -127
  456. package/_bmad/bmm/workflows/2-plan-workflows/bmad-create-ux-design/steps/step-02-discovery.md +0 -190
  457. package/_bmad/bmm/workflows/2-plan-workflows/bmad-create-ux-design/steps/step-03-core-experience.md +0 -217
  458. package/_bmad/bmm/workflows/2-plan-workflows/bmad-create-ux-design/steps/step-04-emotional-response.md +0 -220
  459. package/_bmad/bmm/workflows/2-plan-workflows/bmad-create-ux-design/steps/step-05-inspiration.md +0 -235
  460. package/_bmad/bmm/workflows/2-plan-workflows/bmad-create-ux-design/steps/step-06-design-system.md +0 -253
  461. package/_bmad/bmm/workflows/2-plan-workflows/bmad-create-ux-design/steps/step-07-defining-experience.md +0 -255
  462. package/_bmad/bmm/workflows/2-plan-workflows/bmad-create-ux-design/steps/step-08-visual-foundation.md +0 -225
  463. package/_bmad/bmm/workflows/2-plan-workflows/bmad-create-ux-design/steps/step-09-design-directions.md +0 -225
  464. package/_bmad/bmm/workflows/2-plan-workflows/bmad-create-ux-design/steps/step-10-user-journeys.md +0 -242
  465. package/_bmad/bmm/workflows/2-plan-workflows/bmad-create-ux-design/steps/step-11-component-strategy.md +0 -249
  466. package/_bmad/bmm/workflows/2-plan-workflows/bmad-create-ux-design/steps/step-12-ux-patterns.md +0 -238
  467. package/_bmad/bmm/workflows/2-plan-workflows/bmad-create-ux-design/steps/step-13-responsive-accessibility.md +0 -265
  468. package/_bmad/bmm/workflows/2-plan-workflows/bmad-create-ux-design/steps/step-14-complete.md +0 -171
  469. package/_bmad/bmm/workflows/2-plan-workflows/bmad-create-ux-design/ux-design-template.md +0 -13
  470. package/_bmad/bmm/workflows/2-plan-workflows/bmad-create-ux-design/workflow.md +0 -36
  471. package/_bmad/bmm/workflows/2-plan-workflows/bmad-edit-prd/SKILL.md +0 -6
  472. package/_bmad/bmm/workflows/2-plan-workflows/bmad-edit-prd/bmad-skill-manifest.yaml +0 -1
  473. package/_bmad/bmm/workflows/2-plan-workflows/bmad-edit-prd/steps-e/step-e-01-discovery.md +0 -242
  474. package/_bmad/bmm/workflows/2-plan-workflows/bmad-edit-prd/steps-e/step-e-01b-legacy-conversion.md +0 -204
  475. package/_bmad/bmm/workflows/2-plan-workflows/bmad-edit-prd/steps-e/step-e-02-review.md +0 -245
  476. package/_bmad/bmm/workflows/2-plan-workflows/bmad-edit-prd/steps-e/step-e-03-edit.md +0 -250
  477. package/_bmad/bmm/workflows/2-plan-workflows/bmad-edit-prd/steps-e/step-e-04-complete.md +0 -165
  478. package/_bmad/bmm/workflows/2-plan-workflows/bmad-edit-prd/workflow.md +0 -63
  479. package/_bmad/bmm/workflows/2-plan-workflows/bmad-validate-prd/SKILL.md +0 -6
  480. package/_bmad/bmm/workflows/2-plan-workflows/bmad-validate-prd/bmad-skill-manifest.yaml +0 -1
  481. package/_bmad/bmm/workflows/2-plan-workflows/bmad-validate-prd/data/domain-complexity.csv +0 -15
  482. package/_bmad/bmm/workflows/2-plan-workflows/bmad-validate-prd/data/prd-purpose.md +0 -197
  483. package/_bmad/bmm/workflows/2-plan-workflows/bmad-validate-prd/data/project-types.csv +0 -11
  484. package/_bmad/bmm/workflows/2-plan-workflows/bmad-validate-prd/steps-v/step-v-01-discovery.md +0 -221
  485. package/_bmad/bmm/workflows/2-plan-workflows/bmad-validate-prd/steps-v/step-v-02-format-detection.md +0 -188
  486. package/_bmad/bmm/workflows/2-plan-workflows/bmad-validate-prd/steps-v/step-v-02b-parity-check.md +0 -206
  487. package/_bmad/bmm/workflows/2-plan-workflows/bmad-validate-prd/steps-v/step-v-03-density-validation.md +0 -171
  488. package/_bmad/bmm/workflows/2-plan-workflows/bmad-validate-prd/steps-v/step-v-04-brief-coverage-validation.md +0 -211
  489. package/_bmad/bmm/workflows/2-plan-workflows/bmad-validate-prd/steps-v/step-v-05-measurability-validation.md +0 -225
  490. package/_bmad/bmm/workflows/2-plan-workflows/bmad-validate-prd/steps-v/step-v-06-traceability-validation.md +0 -214
  491. package/_bmad/bmm/workflows/2-plan-workflows/bmad-validate-prd/steps-v/step-v-07-implementation-leakage-validation.md +0 -202
  492. package/_bmad/bmm/workflows/2-plan-workflows/bmad-validate-prd/steps-v/step-v-08-domain-compliance-validation.md +0 -240
  493. package/_bmad/bmm/workflows/2-plan-workflows/bmad-validate-prd/steps-v/step-v-09-project-type-validation.md +0 -260
  494. package/_bmad/bmm/workflows/2-plan-workflows/bmad-validate-prd/steps-v/step-v-10-smart-validation.md +0 -206
  495. package/_bmad/bmm/workflows/2-plan-workflows/bmad-validate-prd/steps-v/step-v-11-holistic-quality-validation.md +0 -261
  496. package/_bmad/bmm/workflows/2-plan-workflows/bmad-validate-prd/steps-v/step-v-12-completeness-validation.md +0 -239
  497. package/_bmad/bmm/workflows/2-plan-workflows/bmad-validate-prd/steps-v/step-v-13-report-complete.md +0 -229
  498. package/_bmad/bmm/workflows/2-plan-workflows/bmad-validate-prd/workflow.md +0 -62
  499. package/_bmad/bmm/workflows/2-plan-workflows/create-prd/data/domain-complexity.csv +0 -15
  500. package/_bmad/bmm/workflows/2-plan-workflows/create-prd/data/prd-purpose.md +0 -197
  501. package/_bmad/bmm/workflows/2-plan-workflows/create-prd/data/project-types.csv +0 -11
  502. package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-01-discovery.md +0 -224
  503. package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-02-format-detection.md +0 -191
  504. package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-02b-parity-check.md +0 -209
  505. package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-03-density-validation.md +0 -174
  506. package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-04-brief-coverage-validation.md +0 -214
  507. package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-05-measurability-validation.md +0 -228
  508. package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-06-traceability-validation.md +0 -217
  509. package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-07-implementation-leakage-validation.md +0 -205
  510. package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-08-domain-compliance-validation.md +0 -243
  511. package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-09-project-type-validation.md +0 -263
  512. package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-10-smart-validation.md +0 -209
  513. package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-11-holistic-quality-validation.md +0 -264
  514. package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-12-completeness-validation.md +0 -242
  515. package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-13-report-complete.md +0 -232
  516. package/_bmad/bmm/workflows/2-plan-workflows/create-prd/workflow-validate-prd.md +0 -65
  517. package/_bmad/bmm/workflows/3-solutioning/bmad-check-implementation-readiness/SKILL.md +0 -6
  518. package/_bmad/bmm/workflows/3-solutioning/bmad-check-implementation-readiness/bmad-skill-manifest.yaml +0 -1
  519. package/_bmad/bmm/workflows/3-solutioning/bmad-check-implementation-readiness/steps/step-01-document-discovery.md +0 -179
  520. package/_bmad/bmm/workflows/3-solutioning/bmad-check-implementation-readiness/steps/step-02-prd-analysis.md +0 -168
  521. package/_bmad/bmm/workflows/3-solutioning/bmad-check-implementation-readiness/steps/step-03-epic-coverage-validation.md +0 -169
  522. package/_bmad/bmm/workflows/3-solutioning/bmad-check-implementation-readiness/steps/step-04-ux-alignment.md +0 -129
  523. package/_bmad/bmm/workflows/3-solutioning/bmad-check-implementation-readiness/steps/step-05-epic-quality-review.md +0 -241
  524. package/_bmad/bmm/workflows/3-solutioning/bmad-check-implementation-readiness/steps/step-06-final-assessment.md +0 -126
  525. package/_bmad/bmm/workflows/3-solutioning/bmad-check-implementation-readiness/templates/readiness-report-template.md +0 -4
  526. package/_bmad/bmm/workflows/3-solutioning/bmad-check-implementation-readiness/workflow.md +0 -49
  527. package/_bmad/bmm/workflows/3-solutioning/bmad-create-architecture/SKILL.md +0 -6
  528. package/_bmad/bmm/workflows/3-solutioning/bmad-create-architecture/architecture-decision-template.md +0 -12
  529. package/_bmad/bmm/workflows/3-solutioning/bmad-create-architecture/bmad-skill-manifest.yaml +0 -1
  530. package/_bmad/bmm/workflows/3-solutioning/bmad-create-architecture/data/domain-complexity.csv +0 -13
  531. package/_bmad/bmm/workflows/3-solutioning/bmad-create-architecture/data/project-types.csv +0 -7
  532. package/_bmad/bmm/workflows/3-solutioning/bmad-create-architecture/steps/step-01-init.md +0 -153
  533. package/_bmad/bmm/workflows/3-solutioning/bmad-create-architecture/steps/step-01b-continue.md +0 -173
  534. package/_bmad/bmm/workflows/3-solutioning/bmad-create-architecture/steps/step-02-context.md +0 -224
  535. package/_bmad/bmm/workflows/3-solutioning/bmad-create-architecture/steps/step-03-starter.md +0 -329
  536. package/_bmad/bmm/workflows/3-solutioning/bmad-create-architecture/steps/step-04-decisions.md +0 -318
  537. package/_bmad/bmm/workflows/3-solutioning/bmad-create-architecture/steps/step-05-patterns.md +0 -359
  538. package/_bmad/bmm/workflows/3-solutioning/bmad-create-architecture/steps/step-06-structure.md +0 -379
  539. package/_bmad/bmm/workflows/3-solutioning/bmad-create-architecture/steps/step-07-validation.md +0 -359
  540. package/_bmad/bmm/workflows/3-solutioning/bmad-create-architecture/steps/step-08-complete.md +0 -76
  541. package/_bmad/bmm/workflows/3-solutioning/bmad-create-architecture/workflow.md +0 -38
  542. package/_bmad/bmm/workflows/3-solutioning/bmad-create-epics-and-stories/SKILL.md +0 -6
  543. package/_bmad/bmm/workflows/3-solutioning/bmad-create-epics-and-stories/bmad-skill-manifest.yaml +0 -1
  544. package/_bmad/bmm/workflows/3-solutioning/bmad-create-epics-and-stories/steps/step-01-validate-prerequisites.md +0 -255
  545. package/_bmad/bmm/workflows/3-solutioning/bmad-create-epics-and-stories/steps/step-02-design-epics.md +0 -212
  546. package/_bmad/bmm/workflows/3-solutioning/bmad-create-epics-and-stories/steps/step-03-create-stories.md +0 -255
  547. package/_bmad/bmm/workflows/3-solutioning/bmad-create-epics-and-stories/steps/step-04-final-validation.md +0 -131
  548. package/_bmad/bmm/workflows/3-solutioning/bmad-create-epics-and-stories/templates/epics-template.md +0 -61
  549. package/_bmad/bmm/workflows/3-solutioning/bmad-create-epics-and-stories/workflow.md +0 -53
  550. package/_bmad/bmm/workflows/4-implementation/bmad-code-review/SKILL.md +0 -6
  551. package/_bmad/bmm/workflows/4-implementation/bmad-code-review/bmad-skill-manifest.yaml +0 -1
  552. package/_bmad/bmm/workflows/4-implementation/bmad-code-review/steps/step-01-gather-context.md +0 -61
  553. package/_bmad/bmm/workflows/4-implementation/bmad-code-review/steps/step-02-review.md +0 -41
  554. package/_bmad/bmm/workflows/4-implementation/bmad-code-review/steps/step-03-triage.md +0 -50
  555. package/_bmad/bmm/workflows/4-implementation/bmad-code-review/steps/step-04-present.md +0 -38
  556. package/_bmad/bmm/workflows/4-implementation/bmad-code-review/workflow.md +0 -54
  557. package/_bmad/bmm/workflows/4-implementation/bmad-correct-course/SKILL.md +0 -6
  558. package/_bmad/bmm/workflows/4-implementation/bmad-correct-course/bmad-skill-manifest.yaml +0 -1
  559. package/_bmad/bmm/workflows/4-implementation/bmad-correct-course/checklist.md +0 -288
  560. package/_bmad/bmm/workflows/4-implementation/bmad-correct-course/workflow.md +0 -267
  561. package/_bmad/bmm/workflows/4-implementation/bmad-create-story/SKILL.md +0 -6
  562. package/_bmad/bmm/workflows/4-implementation/bmad-create-story/bmad-skill-manifest.yaml +0 -1
  563. package/_bmad/bmm/workflows/4-implementation/bmad-create-story/checklist.md +0 -357
  564. package/_bmad/bmm/workflows/4-implementation/bmad-create-story/discover-inputs.md +0 -88
  565. package/_bmad/bmm/workflows/4-implementation/bmad-create-story/template.md +0 -49
  566. package/_bmad/bmm/workflows/4-implementation/bmad-create-story/workflow.md +0 -380
  567. package/_bmad/bmm/workflows/4-implementation/bmad-dev-story/SKILL.md +0 -6
  568. package/_bmad/bmm/workflows/4-implementation/bmad-dev-story/bmad-skill-manifest.yaml +0 -1
  569. package/_bmad/bmm/workflows/4-implementation/bmad-dev-story/checklist.md +0 -80
  570. package/_bmad/bmm/workflows/4-implementation/bmad-dev-story/workflow.md +0 -450
  571. package/_bmad/bmm/workflows/4-implementation/bmad-retrospective/SKILL.md +0 -6
  572. package/_bmad/bmm/workflows/4-implementation/bmad-retrospective/bmad-skill-manifest.yaml +0 -1
  573. package/_bmad/bmm/workflows/4-implementation/bmad-retrospective/workflow.md +0 -1479
  574. package/_bmad/bmm/workflows/4-implementation/bmad-sprint-planning/SKILL.md +0 -6
  575. package/_bmad/bmm/workflows/4-implementation/bmad-sprint-planning/bmad-skill-manifest.yaml +0 -1
  576. package/_bmad/bmm/workflows/4-implementation/bmad-sprint-planning/checklist.md +0 -33
  577. package/_bmad/bmm/workflows/4-implementation/bmad-sprint-planning/sprint-status-template.yaml +0 -56
  578. package/_bmad/bmm/workflows/4-implementation/bmad-sprint-planning/workflow.md +0 -263
  579. package/_bmad/bmm/workflows/4-implementation/bmad-sprint-status/SKILL.md +0 -6
  580. package/_bmad/bmm/workflows/4-implementation/bmad-sprint-status/bmad-skill-manifest.yaml +0 -1
  581. package/_bmad/bmm/workflows/4-implementation/bmad-sprint-status/workflow.md +0 -261
  582. package/_bmad/bmm/workflows/bmad-document-project/SKILL.md +0 -6
  583. package/_bmad/bmm/workflows/bmad-document-project/bmad-skill-manifest.yaml +0 -1
  584. package/_bmad/bmm/workflows/bmad-document-project/checklist.md +0 -245
  585. package/_bmad/bmm/workflows/bmad-document-project/documentation-requirements.csv +0 -12
  586. package/_bmad/bmm/workflows/bmad-document-project/instructions.md +0 -128
  587. package/_bmad/bmm/workflows/bmad-document-project/templates/deep-dive-template.md +0 -345
  588. package/_bmad/bmm/workflows/bmad-document-project/templates/index-template.md +0 -169
  589. package/_bmad/bmm/workflows/bmad-document-project/templates/project-overview-template.md +0 -103
  590. package/_bmad/bmm/workflows/bmad-document-project/templates/project-scan-report-schema.json +0 -160
  591. package/_bmad/bmm/workflows/bmad-document-project/templates/source-tree-template.md +0 -135
  592. package/_bmad/bmm/workflows/bmad-document-project/workflow.md +0 -27
  593. package/_bmad/bmm/workflows/bmad-document-project/workflows/deep-dive-instructions.md +0 -299
  594. package/_bmad/bmm/workflows/bmad-document-project/workflows/deep-dive-workflow.md +0 -34
  595. package/_bmad/bmm/workflows/bmad-document-project/workflows/full-scan-instructions.md +0 -1107
  596. package/_bmad/bmm/workflows/bmad-document-project/workflows/full-scan-workflow.md +0 -34
  597. package/_bmad/bmm/workflows/bmad-generate-project-context/SKILL.md +0 -6
  598. package/_bmad/bmm/workflows/bmad-generate-project-context/bmad-skill-manifest.yaml +0 -1
  599. package/_bmad/bmm/workflows/bmad-generate-project-context/project-context-template.md +0 -21
  600. package/_bmad/bmm/workflows/bmad-generate-project-context/steps/step-01-discover.md +0 -186
  601. package/_bmad/bmm/workflows/bmad-generate-project-context/steps/step-02-generate.md +0 -321
  602. package/_bmad/bmm/workflows/bmad-generate-project-context/steps/step-03-complete.md +0 -278
  603. package/_bmad/bmm/workflows/bmad-generate-project-context/workflow.md +0 -43
  604. package/_bmad/bmm/workflows/bmad-qa-generate-e2e-tests/SKILL.md +0 -6
  605. package/_bmad/bmm/workflows/bmad-qa-generate-e2e-tests/bmad-skill-manifest.yaml +0 -1
  606. package/_bmad/bmm/workflows/bmad-qa-generate-e2e-tests/checklist.md +0 -33
  607. package/_bmad/bmm/workflows/bmad-qa-generate-e2e-tests/workflow.md +0 -136
  608. package/_bmad/bmm/workflows/bmad-quick-flow/bmad-quick-dev/SKILL.md +0 -6
  609. package/_bmad/bmm/workflows/bmad-quick-flow/bmad-quick-dev/bmad-skill-manifest.yaml +0 -1
  610. package/_bmad/bmm/workflows/bmad-quick-flow/bmad-quick-dev/steps/step-01-mode-detection.md +0 -169
  611. package/_bmad/bmm/workflows/bmad-quick-flow/bmad-quick-dev/steps/step-02-context-gathering.md +0 -114
  612. package/_bmad/bmm/workflows/bmad-quick-flow/bmad-quick-dev/steps/step-03-execute.md +0 -107
  613. package/_bmad/bmm/workflows/bmad-quick-flow/bmad-quick-dev/steps/step-04-self-check.md +0 -107
  614. package/_bmad/bmm/workflows/bmad-quick-flow/bmad-quick-dev/steps/step-05-adversarial-review.md +0 -94
  615. package/_bmad/bmm/workflows/bmad-quick-flow/bmad-quick-dev/steps/step-06-resolve-findings.md +0 -144
  616. package/_bmad/bmm/workflows/bmad-quick-flow/bmad-quick-dev/workflow.md +0 -38
  617. package/_bmad/bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview/SKILL.md +0 -6
  618. package/_bmad/bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview/bmad-skill-manifest.yaml +0 -1
  619. package/_bmad/bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview/steps/step-01-clarify-and-route.md +0 -51
  620. package/_bmad/bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview/steps/step-02-plan.md +0 -35
  621. package/_bmad/bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview/steps/step-03-implement.md +0 -33
  622. package/_bmad/bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview/steps/step-04-review.md +0 -50
  623. package/_bmad/bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview/steps/step-05-present.md +0 -17
  624. package/_bmad/bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview/tech-spec-template.md +0 -90
  625. package/_bmad/bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview/workflow.md +0 -79
  626. package/_bmad/bmm/workflows/bmad-quick-flow/bmad-quick-spec/SKILL.md +0 -6
  627. package/_bmad/bmm/workflows/bmad-quick-flow/bmad-quick-spec/bmad-skill-manifest.yaml +0 -1
  628. package/_bmad/bmm/workflows/bmad-quick-flow/bmad-quick-spec/steps/step-01-understand.md +0 -185
  629. package/_bmad/bmm/workflows/bmad-quick-flow/bmad-quick-spec/steps/step-02-investigate.md +0 -140
  630. package/_bmad/bmm/workflows/bmad-quick-flow/bmad-quick-spec/steps/step-03-generate.md +0 -123
  631. package/_bmad/bmm/workflows/bmad-quick-flow/bmad-quick-spec/steps/step-04-review.md +0 -195
  632. package/_bmad/bmm/workflows/bmad-quick-flow/bmad-quick-spec/tech-spec-template.md +0 -74
  633. package/_bmad/bmm/workflows/bmad-quick-flow/bmad-quick-spec/workflow.md +0 -73
  634. package/_bmad/core/config.yaml +0 -9
  635. package/_bmad/core/module-help.csv +0 -11
  636. package/_bmad/core/skills/bmad-advanced-elicitation/SKILL.md +0 -6
  637. package/_bmad/core/skills/bmad-advanced-elicitation/bmad-skill-manifest.yaml +0 -1
  638. package/_bmad/core/skills/bmad-advanced-elicitation/methods.csv +0 -51
  639. package/_bmad/core/skills/bmad-advanced-elicitation/workflow.md +0 -135
  640. package/_bmad/core/skills/bmad-brainstorming/SKILL.md +0 -6
  641. package/_bmad/core/skills/bmad-brainstorming/bmad-skill-manifest.yaml +0 -1
  642. package/_bmad/core/skills/bmad-brainstorming/brain-methods.csv +0 -62
  643. package/_bmad/core/skills/bmad-brainstorming/steps/step-01-session-setup.md +0 -214
  644. package/_bmad/core/skills/bmad-brainstorming/steps/step-01b-continue.md +0 -124
  645. package/_bmad/core/skills/bmad-brainstorming/steps/step-02a-user-selected.md +0 -229
  646. package/_bmad/core/skills/bmad-brainstorming/steps/step-02b-ai-recommended.md +0 -239
  647. package/_bmad/core/skills/bmad-brainstorming/steps/step-02c-random-selection.md +0 -211
  648. package/_bmad/core/skills/bmad-brainstorming/steps/step-02d-progressive-flow.md +0 -266
  649. package/_bmad/core/skills/bmad-brainstorming/steps/step-03-technique-execution.md +0 -401
  650. package/_bmad/core/skills/bmad-brainstorming/steps/step-04-idea-organization.md +0 -305
  651. package/_bmad/core/skills/bmad-brainstorming/template.md +0 -15
  652. package/_bmad/core/skills/bmad-brainstorming/workflow.md +0 -53
  653. package/_bmad/core/skills/bmad-distillator/SKILL.md +0 -178
  654. package/_bmad/core/skills/bmad-distillator/agents/distillate-compressor.md +0 -116
  655. package/_bmad/core/skills/bmad-distillator/agents/round-trip-reconstructor.md +0 -68
  656. package/_bmad/core/skills/bmad-distillator/bmad-skill-manifest.yaml +0 -15
  657. package/_bmad/core/skills/bmad-distillator/resources/compression-rules.md +0 -51
  658. package/_bmad/core/skills/bmad-distillator/resources/distillate-format-reference.md +0 -227
  659. package/_bmad/core/skills/bmad-distillator/resources/splitting-strategy.md +0 -78
  660. package/_bmad/core/skills/bmad-distillator/scripts/analyze_sources.py +0 -300
  661. package/_bmad/core/skills/bmad-distillator/scripts/tests/test_analyze_sources.py +0 -204
  662. package/_bmad/core/skills/bmad-editorial-review-prose/SKILL.md +0 -6
  663. package/_bmad/core/skills/bmad-editorial-review-prose/bmad-skill-manifest.yaml +0 -1
  664. package/_bmad/core/skills/bmad-editorial-review-prose/workflow.md +0 -81
  665. package/_bmad/core/skills/bmad-editorial-review-structure/SKILL.md +0 -6
  666. package/_bmad/core/skills/bmad-editorial-review-structure/bmad-skill-manifest.yaml +0 -1
  667. package/_bmad/core/skills/bmad-editorial-review-structure/workflow.md +0 -174
  668. package/_bmad/core/skills/bmad-help/SKILL.md +0 -6
  669. package/_bmad/core/skills/bmad-help/bmad-skill-manifest.yaml +0 -1
  670. package/_bmad/core/skills/bmad-help/workflow.md +0 -88
  671. package/_bmad/core/skills/bmad-index-docs/SKILL.md +0 -6
  672. package/_bmad/core/skills/bmad-index-docs/bmad-skill-manifest.yaml +0 -1
  673. package/_bmad/core/skills/bmad-index-docs/workflow.md +0 -61
  674. package/_bmad/core/skills/bmad-party-mode/SKILL.md +0 -6
  675. package/_bmad/core/skills/bmad-party-mode/bmad-skill-manifest.yaml +0 -1
  676. package/_bmad/core/skills/bmad-party-mode/steps/step-01-agent-loading.md +0 -138
  677. package/_bmad/core/skills/bmad-party-mode/steps/step-02-discussion-orchestration.md +0 -187
  678. package/_bmad/core/skills/bmad-party-mode/steps/step-03-graceful-exit.md +0 -167
  679. package/_bmad/core/skills/bmad-party-mode/workflow.md +0 -190
  680. package/_bmad/core/skills/bmad-review-adversarial-general/SKILL.md +0 -6
  681. package/_bmad/core/skills/bmad-review-adversarial-general/bmad-skill-manifest.yaml +0 -1
  682. package/_bmad/core/skills/bmad-review-adversarial-general/workflow.md +0 -32
  683. package/_bmad/core/skills/bmad-review-edge-case-hunter/SKILL.md +0 -6
  684. package/_bmad/core/skills/bmad-review-edge-case-hunter/bmad-skill-manifest.yaml +0 -1
  685. package/_bmad/core/skills/bmad-review-edge-case-hunter/workflow.md +0 -62
  686. package/_bmad/core/skills/bmad-shard-doc/SKILL.md +0 -6
  687. package/_bmad/core/skills/bmad-shard-doc/bmad-skill-manifest.yaml +0 -1
  688. package/_bmad/core/skills/bmad-shard-doc/workflow.md +0 -100
  689. package/_bmad/core/tasks/bmad-create-prd/SKILL.md +0 -6
  690. package/_bmad/core/tasks/bmad-create-prd/bmad-skill-manifest.yaml +0 -1
  691. package/_bmad/core/tasks/bmad-create-prd/data/domain-complexity.csv +0 -15
  692. package/_bmad/core/tasks/bmad-create-prd/data/prd-purpose.md +0 -197
  693. package/_bmad/core/tasks/bmad-create-prd/data/project-types.csv +0 -11
  694. package/_bmad/core/tasks/bmad-create-prd/steps-c/step-01-init.md +0 -178
  695. package/_bmad/core/tasks/bmad-create-prd/steps-c/step-01b-continue.md +0 -161
  696. package/_bmad/core/tasks/bmad-create-prd/steps-c/step-02-discovery.md +0 -208
  697. package/_bmad/core/tasks/bmad-create-prd/steps-c/step-02b-vision.md +0 -142
  698. package/_bmad/core/tasks/bmad-create-prd/steps-c/step-02c-executive-summary.md +0 -158
  699. package/_bmad/core/tasks/bmad-create-prd/steps-c/step-03-success.md +0 -214
  700. package/_bmad/core/tasks/bmad-create-prd/steps-c/step-04-journeys.md +0 -201
  701. package/_bmad/core/tasks/bmad-create-prd/steps-c/step-05-domain.md +0 -194
  702. package/_bmad/core/tasks/bmad-create-prd/steps-c/step-06-innovation.md +0 -211
  703. package/_bmad/core/tasks/bmad-create-prd/steps-c/step-07-project-type.md +0 -222
  704. package/_bmad/core/tasks/bmad-create-prd/steps-c/step-08-scoping.md +0 -216
  705. package/_bmad/core/tasks/bmad-create-prd/steps-c/step-09-functional.md +0 -219
  706. package/_bmad/core/tasks/bmad-create-prd/steps-c/step-10-nonfunctional.md +0 -230
  707. package/_bmad/core/tasks/bmad-create-prd/steps-c/step-11-polish.md +0 -221
  708. package/_bmad/core/tasks/bmad-create-prd/steps-c/step-12-complete.md +0 -115
  709. package/_bmad/core/tasks/bmad-create-prd/templates/prd-template.md +0 -10
  710. package/_bmad/core/tasks/bmad-create-prd/workflow.md +0 -62
  711. package/_bmad/tea/agents/tea.md +0 -63
  712. package/_bmad/tea/config.yaml +0 -25
  713. package/_bmad/tea/module-help.csv +0 -10
  714. package/_bmad/tea/teams/default-party.csv +0 -2
  715. package/_bmad/tea/testarch/knowledge/adr-quality-readiness-checklist.md +0 -377
  716. package/_bmad/tea/testarch/knowledge/api-request.md +0 -563
  717. package/_bmad/tea/testarch/knowledge/api-testing-patterns.md +0 -915
  718. package/_bmad/tea/testarch/knowledge/auth-session.md +0 -548
  719. package/_bmad/tea/testarch/knowledge/burn-in.md +0 -273
  720. package/_bmad/tea/testarch/knowledge/ci-burn-in.md +0 -717
  721. package/_bmad/tea/testarch/knowledge/component-tdd.md +0 -486
  722. package/_bmad/tea/testarch/knowledge/contract-testing.md +0 -1050
  723. package/_bmad/tea/testarch/knowledge/data-factories.md +0 -500
  724. package/_bmad/tea/testarch/knowledge/email-auth.md +0 -721
  725. package/_bmad/tea/testarch/knowledge/error-handling.md +0 -725
  726. package/_bmad/tea/testarch/knowledge/feature-flags.md +0 -750
  727. package/_bmad/tea/testarch/knowledge/file-utils.md +0 -456
  728. package/_bmad/tea/testarch/knowledge/fixture-architecture.md +0 -401
  729. package/_bmad/tea/testarch/knowledge/fixtures-composition.md +0 -382
  730. package/_bmad/tea/testarch/knowledge/intercept-network-call.md +0 -426
  731. package/_bmad/tea/testarch/knowledge/log.md +0 -426
  732. package/_bmad/tea/testarch/knowledge/network-error-monitor.md +0 -401
  733. package/_bmad/tea/testarch/knowledge/network-first.md +0 -486
  734. package/_bmad/tea/testarch/knowledge/network-recorder.md +0 -527
  735. package/_bmad/tea/testarch/knowledge/nfr-criteria.md +0 -670
  736. package/_bmad/tea/testarch/knowledge/overview.md +0 -286
  737. package/_bmad/tea/testarch/knowledge/pact-consumer-di.md +0 -310
  738. package/_bmad/tea/testarch/knowledge/pact-consumer-framework-setup.md +0 -635
  739. package/_bmad/tea/testarch/knowledge/pact-mcp.md +0 -204
  740. package/_bmad/tea/testarch/knowledge/pactjs-utils-consumer-helpers.md +0 -270
  741. package/_bmad/tea/testarch/knowledge/pactjs-utils-overview.md +0 -216
  742. package/_bmad/tea/testarch/knowledge/pactjs-utils-provider-verifier.md +0 -315
  743. package/_bmad/tea/testarch/knowledge/pactjs-utils-request-filter.md +0 -224
  744. package/_bmad/tea/testarch/knowledge/playwright-cli.md +0 -165
  745. package/_bmad/tea/testarch/knowledge/playwright-config.md +0 -730
  746. package/_bmad/tea/testarch/knowledge/probability-impact.md +0 -601
  747. package/_bmad/tea/testarch/knowledge/recurse.md +0 -421
  748. package/_bmad/tea/testarch/knowledge/risk-governance.md +0 -615
  749. package/_bmad/tea/testarch/knowledge/selective-testing.md +0 -732
  750. package/_bmad/tea/testarch/knowledge/selector-resilience.md +0 -527
  751. package/_bmad/tea/testarch/knowledge/test-healing-patterns.md +0 -644
  752. package/_bmad/tea/testarch/knowledge/test-levels-framework.md +0 -473
  753. package/_bmad/tea/testarch/knowledge/test-priorities-matrix.md +0 -373
  754. package/_bmad/tea/testarch/knowledge/test-quality.md +0 -664
  755. package/_bmad/tea/testarch/knowledge/timing-debugging.md +0 -372
  756. package/_bmad/tea/testarch/knowledge/visual-debugging.md +0 -524
  757. package/_bmad/tea/testarch/tea-index.csv +0 -43
  758. package/_bmad/tea/workflows/testarch/README.md +0 -74
  759. package/_bmad/tea/workflows/testarch/bmad-teach-me-testing/SKILL.md +0 -6
  760. package/_bmad/tea/workflows/testarch/bmad-teach-me-testing/bmad-skill-manifest.yaml +0 -1
  761. package/_bmad/tea/workflows/testarch/bmad-teach-me-testing/checklist.md +0 -197
  762. package/_bmad/tea/workflows/testarch/bmad-teach-me-testing/data/curriculum.yaml +0 -129
  763. package/_bmad/tea/workflows/testarch/bmad-teach-me-testing/data/quiz-questions.yaml +0 -206
  764. package/_bmad/tea/workflows/testarch/bmad-teach-me-testing/data/role-paths.yaml +0 -136
  765. package/_bmad/tea/workflows/testarch/bmad-teach-me-testing/data/session-content-map.yaml +0 -207
  766. package/_bmad/tea/workflows/testarch/bmad-teach-me-testing/data/tea-resources-index.yaml +0 -359
  767. package/_bmad/tea/workflows/testarch/bmad-teach-me-testing/instructions.md +0 -130
  768. package/_bmad/tea/workflows/testarch/bmad-teach-me-testing/steps-c/step-01-init.md +0 -235
  769. package/_bmad/tea/workflows/testarch/bmad-teach-me-testing/steps-c/step-01b-continue.md +0 -147
  770. package/_bmad/tea/workflows/testarch/bmad-teach-me-testing/steps-c/step-02-assess.md +0 -258
  771. package/_bmad/tea/workflows/testarch/bmad-teach-me-testing/steps-c/step-03-session-menu.md +0 -219
  772. package/_bmad/tea/workflows/testarch/bmad-teach-me-testing/steps-c/step-04-session-01.md +0 -460
  773. package/_bmad/tea/workflows/testarch/bmad-teach-me-testing/steps-c/step-04-session-02.md +0 -465
  774. package/_bmad/tea/workflows/testarch/bmad-teach-me-testing/steps-c/step-04-session-03.md +0 -301
  775. package/_bmad/tea/workflows/testarch/bmad-teach-me-testing/steps-c/step-04-session-04.md +0 -234
  776. package/_bmad/tea/workflows/testarch/bmad-teach-me-testing/steps-c/step-04-session-05.md +0 -234
  777. package/_bmad/tea/workflows/testarch/bmad-teach-me-testing/steps-c/step-04-session-06.md +0 -209
  778. package/_bmad/tea/workflows/testarch/bmad-teach-me-testing/steps-c/step-04-session-07.md +0 -212
  779. package/_bmad/tea/workflows/testarch/bmad-teach-me-testing/steps-c/step-05-completion.md +0 -339
  780. package/_bmad/tea/workflows/testarch/bmad-teach-me-testing/steps-e/step-e-01-assess-workflow.md +0 -141
  781. package/_bmad/tea/workflows/testarch/bmad-teach-me-testing/steps-e/step-e-02-apply-edits.md +0 -122
  782. package/_bmad/tea/workflows/testarch/bmad-teach-me-testing/steps-v/step-v-01-validate.md +0 -263
  783. package/_bmad/tea/workflows/testarch/bmad-teach-me-testing/templates/certificate-template.md +0 -86
  784. package/_bmad/tea/workflows/testarch/bmad-teach-me-testing/templates/progress-template.yaml +0 -95
  785. package/_bmad/tea/workflows/testarch/bmad-teach-me-testing/templates/session-notes-template.md +0 -83
  786. package/_bmad/tea/workflows/testarch/bmad-teach-me-testing/workflow-plan-teach-me-testing.md +0 -950
  787. package/_bmad/tea/workflows/testarch/bmad-teach-me-testing/workflow.md +0 -90
  788. package/_bmad/tea/workflows/testarch/bmad-testarch-atdd/SKILL.md +0 -6
  789. package/_bmad/tea/workflows/testarch/bmad-testarch-atdd/atdd-checklist-template.md +0 -371
  790. package/_bmad/tea/workflows/testarch/bmad-testarch-atdd/bmad-skill-manifest.yaml +0 -1
  791. package/_bmad/tea/workflows/testarch/bmad-testarch-atdd/checklist.md +0 -374
  792. package/_bmad/tea/workflows/testarch/bmad-testarch-atdd/instructions.md +0 -45
  793. package/_bmad/tea/workflows/testarch/bmad-testarch-atdd/steps-c/step-01-preflight-and-context.md +0 -226
  794. package/_bmad/tea/workflows/testarch/bmad-testarch-atdd/steps-c/step-01b-resume.md +0 -96
  795. package/_bmad/tea/workflows/testarch/bmad-testarch-atdd/steps-c/step-02-generation-mode.md +0 -125
  796. package/_bmad/tea/workflows/testarch/bmad-testarch-atdd/steps-c/step-03-test-strategy.md +0 -110
  797. package/_bmad/tea/workflows/testarch/bmad-testarch-atdd/steps-c/step-04-generate-tests.md +0 -334
  798. package/_bmad/tea/workflows/testarch/bmad-testarch-atdd/steps-c/step-04a-subagent-api-failing.md +0 -286
  799. package/_bmad/tea/workflows/testarch/bmad-testarch-atdd/steps-c/step-04b-subagent-e2e-failing.md +0 -244
  800. package/_bmad/tea/workflows/testarch/bmad-testarch-atdd/steps-c/step-04c-aggregate.md +0 -370
  801. package/_bmad/tea/workflows/testarch/bmad-testarch-atdd/steps-c/step-05-validate-and-complete.md +0 -106
  802. package/_bmad/tea/workflows/testarch/bmad-testarch-atdd/steps-e/step-01-assess.md +0 -65
  803. package/_bmad/tea/workflows/testarch/bmad-testarch-atdd/steps-e/step-02-apply-edit.md +0 -60
  804. package/_bmad/tea/workflows/testarch/bmad-testarch-atdd/steps-v/step-01-validate.md +0 -67
  805. package/_bmad/tea/workflows/testarch/bmad-testarch-atdd/validation-report-20260127-095021.md +0 -73
  806. package/_bmad/tea/workflows/testarch/bmad-testarch-atdd/validation-report-20260127-102401.md +0 -116
  807. package/_bmad/tea/workflows/testarch/bmad-testarch-atdd/workflow-plan.md +0 -21
  808. package/_bmad/tea/workflows/testarch/bmad-testarch-atdd/workflow.md +0 -41
  809. package/_bmad/tea/workflows/testarch/bmad-testarch-atdd/workflow.yaml +0 -46
  810. package/_bmad/tea/workflows/testarch/bmad-testarch-automate/SKILL.md +0 -6
  811. package/_bmad/tea/workflows/testarch/bmad-testarch-automate/bmad-skill-manifest.yaml +0 -1
  812. package/_bmad/tea/workflows/testarch/bmad-testarch-automate/checklist.md +0 -611
  813. package/_bmad/tea/workflows/testarch/bmad-testarch-automate/instructions.md +0 -50
  814. package/_bmad/tea/workflows/testarch/bmad-testarch-automate/steps-c/step-01-preflight-and-context.md +0 -237
  815. package/_bmad/tea/workflows/testarch/bmad-testarch-automate/steps-c/step-01b-resume.md +0 -94
  816. package/_bmad/tea/workflows/testarch/bmad-testarch-automate/steps-c/step-02-identify-targets.md +0 -169
  817. package/_bmad/tea/workflows/testarch/bmad-testarch-automate/steps-c/step-03-generate-tests.md +0 -394
  818. package/_bmad/tea/workflows/testarch/bmad-testarch-automate/steps-c/step-03a-subagent-api.md +0 -263
  819. package/_bmad/tea/workflows/testarch/bmad-testarch-automate/steps-c/step-03b-subagent-backend.md +0 -246
  820. package/_bmad/tea/workflows/testarch/bmad-testarch-automate/steps-c/step-03b-subagent-e2e.md +0 -213
  821. package/_bmad/tea/workflows/testarch/bmad-testarch-automate/steps-c/step-03c-aggregate.md +0 -393
  822. package/_bmad/tea/workflows/testarch/bmad-testarch-automate/steps-c/step-04-validate-and-summarize.md +0 -106
  823. package/_bmad/tea/workflows/testarch/bmad-testarch-automate/steps-e/step-01-assess.md +0 -65
  824. package/_bmad/tea/workflows/testarch/bmad-testarch-automate/steps-e/step-02-apply-edit.md +0 -60
  825. package/_bmad/tea/workflows/testarch/bmad-testarch-automate/steps-v/step-01-validate.md +0 -67
  826. package/_bmad/tea/workflows/testarch/bmad-testarch-automate/validation-report-20260127-095021.md +0 -72
  827. package/_bmad/tea/workflows/testarch/bmad-testarch-automate/validation-report-20260127-102401.md +0 -114
  828. package/_bmad/tea/workflows/testarch/bmad-testarch-automate/workflow-plan.md +0 -20
  829. package/_bmad/tea/workflows/testarch/bmad-testarch-automate/workflow.md +0 -41
  830. package/_bmad/tea/workflows/testarch/bmad-testarch-automate/workflow.yaml +0 -53
  831. package/_bmad/tea/workflows/testarch/bmad-testarch-ci/SKILL.md +0 -6
  832. package/_bmad/tea/workflows/testarch/bmad-testarch-ci/azure-pipelines-template.yaml +0 -155
  833. package/_bmad/tea/workflows/testarch/bmad-testarch-ci/bmad-skill-manifest.yaml +0 -1
  834. package/_bmad/tea/workflows/testarch/bmad-testarch-ci/checklist.md +0 -289
  835. package/_bmad/tea/workflows/testarch/bmad-testarch-ci/github-actions-template.yaml +0 -328
  836. package/_bmad/tea/workflows/testarch/bmad-testarch-ci/gitlab-ci-template.yaml +0 -158
  837. package/_bmad/tea/workflows/testarch/bmad-testarch-ci/harness-pipeline-template.yaml +0 -159
  838. package/_bmad/tea/workflows/testarch/bmad-testarch-ci/instructions.md +0 -45
  839. package/_bmad/tea/workflows/testarch/bmad-testarch-ci/jenkins-pipeline-template.groovy +0 -129
  840. package/_bmad/tea/workflows/testarch/bmad-testarch-ci/steps-c/step-01-preflight.md +0 -158
  841. package/_bmad/tea/workflows/testarch/bmad-testarch-ci/steps-c/step-01b-resume.md +0 -110
  842. package/_bmad/tea/workflows/testarch/bmad-testarch-ci/steps-c/step-02-generate-pipeline.md +0 -279
  843. package/_bmad/tea/workflows/testarch/bmad-testarch-ci/steps-c/step-03-configure-quality-gates.md +0 -135
  844. package/_bmad/tea/workflows/testarch/bmad-testarch-ci/steps-c/step-04-validate-and-summary.md +0 -92
  845. package/_bmad/tea/workflows/testarch/bmad-testarch-ci/steps-e/step-01-assess.md +0 -65
  846. package/_bmad/tea/workflows/testarch/bmad-testarch-ci/steps-e/step-02-apply-edit.md +0 -60
  847. package/_bmad/tea/workflows/testarch/bmad-testarch-ci/steps-v/step-01-validate.md +0 -81
  848. package/_bmad/tea/workflows/testarch/bmad-testarch-ci/validation-report-20260127-095021.md +0 -72
  849. package/_bmad/tea/workflows/testarch/bmad-testarch-ci/validation-report-20260127-102401.md +0 -114
  850. package/_bmad/tea/workflows/testarch/bmad-testarch-ci/workflow-plan.md +0 -20
  851. package/_bmad/tea/workflows/testarch/bmad-testarch-ci/workflow.md +0 -41
  852. package/_bmad/tea/workflows/testarch/bmad-testarch-ci/workflow.yaml +0 -48
  853. package/_bmad/tea/workflows/testarch/bmad-testarch-framework/SKILL.md +0 -6
  854. package/_bmad/tea/workflows/testarch/bmad-testarch-framework/bmad-skill-manifest.yaml +0 -1
  855. package/_bmad/tea/workflows/testarch/bmad-testarch-framework/checklist.md +0 -345
  856. package/_bmad/tea/workflows/testarch/bmad-testarch-framework/instructions.md +0 -45
  857. package/_bmad/tea/workflows/testarch/bmad-testarch-framework/steps-c/step-01-preflight.md +0 -132
  858. package/_bmad/tea/workflows/testarch/bmad-testarch-framework/steps-c/step-01b-resume.md +0 -116
  859. package/_bmad/tea/workflows/testarch/bmad-testarch-framework/steps-c/step-02-select-framework.md +0 -117
  860. package/_bmad/tea/workflows/testarch/bmad-testarch-framework/steps-c/step-03-scaffold-framework.md +0 -323
  861. package/_bmad/tea/workflows/testarch/bmad-testarch-framework/steps-c/step-04-docs-and-scripts.md +0 -105
  862. package/_bmad/tea/workflows/testarch/bmad-testarch-framework/steps-c/step-05-validate-and-summary.md +0 -93
  863. package/_bmad/tea/workflows/testarch/bmad-testarch-framework/steps-e/step-01-assess.md +0 -65
  864. package/_bmad/tea/workflows/testarch/bmad-testarch-framework/steps-e/step-02-apply-edit.md +0 -60
  865. package/_bmad/tea/workflows/testarch/bmad-testarch-framework/steps-v/step-01-validate.md +0 -67
  866. package/_bmad/tea/workflows/testarch/bmad-testarch-framework/validation-report-20260127-095021.md +0 -73
  867. package/_bmad/tea/workflows/testarch/bmad-testarch-framework/validation-report-20260127-102401.md +0 -116
  868. package/_bmad/tea/workflows/testarch/bmad-testarch-framework/workflow-plan.md +0 -22
  869. package/_bmad/tea/workflows/testarch/bmad-testarch-framework/workflow.md +0 -41
  870. package/_bmad/tea/workflows/testarch/bmad-testarch-framework/workflow.yaml +0 -48
  871. package/_bmad/tea/workflows/testarch/bmad-testarch-nfr/SKILL.md +0 -6
  872. package/_bmad/tea/workflows/testarch/bmad-testarch-nfr/bmad-skill-manifest.yaml +0 -1
  873. package/_bmad/tea/workflows/testarch/bmad-testarch-nfr/checklist.md +0 -407
  874. package/_bmad/tea/workflows/testarch/bmad-testarch-nfr/instructions.md +0 -43
  875. package/_bmad/tea/workflows/testarch/bmad-testarch-nfr/nfr-report-template.md +0 -470
  876. package/_bmad/tea/workflows/testarch/bmad-testarch-nfr/steps-c/step-01-load-context.md +0 -138
  877. package/_bmad/tea/workflows/testarch/bmad-testarch-nfr/steps-c/step-01b-resume.md +0 -106
  878. package/_bmad/tea/workflows/testarch/bmad-testarch-nfr/steps-c/step-02-define-thresholds.md +0 -107
  879. package/_bmad/tea/workflows/testarch/bmad-testarch-nfr/steps-c/step-03-gather-evidence.md +0 -108
  880. package/_bmad/tea/workflows/testarch/bmad-testarch-nfr/steps-c/step-04-evaluate-and-score.md +0 -254
  881. package/_bmad/tea/workflows/testarch/bmad-testarch-nfr/steps-c/step-04a-subagent-security.md +0 -138
  882. package/_bmad/tea/workflows/testarch/bmad-testarch-nfr/steps-c/step-04b-subagent-performance.md +0 -84
  883. package/_bmad/tea/workflows/testarch/bmad-testarch-nfr/steps-c/step-04c-subagent-reliability.md +0 -85
  884. package/_bmad/tea/workflows/testarch/bmad-testarch-nfr/steps-c/step-04d-subagent-scalability.md +0 -88
  885. package/_bmad/tea/workflows/testarch/bmad-testarch-nfr/steps-c/step-04e-aggregate-nfr.md +0 -264
  886. package/_bmad/tea/workflows/testarch/bmad-testarch-nfr/steps-c/step-05-generate-report.md +0 -108
  887. package/_bmad/tea/workflows/testarch/bmad-testarch-nfr/steps-e/step-01-assess.md +0 -65
  888. package/_bmad/tea/workflows/testarch/bmad-testarch-nfr/steps-e/step-02-apply-edit.md +0 -60
  889. package/_bmad/tea/workflows/testarch/bmad-testarch-nfr/steps-v/step-01-validate.md +0 -67
  890. package/_bmad/tea/workflows/testarch/bmad-testarch-nfr/validation-report-20260127-095021.md +0 -73
  891. package/_bmad/tea/workflows/testarch/bmad-testarch-nfr/validation-report-20260127-102401.md +0 -116
  892. package/_bmad/tea/workflows/testarch/bmad-testarch-nfr/workflow-plan.md +0 -19
  893. package/_bmad/tea/workflows/testarch/bmad-testarch-nfr/workflow.md +0 -41
  894. package/_bmad/tea/workflows/testarch/bmad-testarch-nfr/workflow.yaml +0 -48
  895. package/_bmad/tea/workflows/testarch/bmad-testarch-test-design/SKILL.md +0 -6
  896. package/_bmad/tea/workflows/testarch/bmad-testarch-test-design/bmad-skill-manifest.yaml +0 -1
  897. package/_bmad/tea/workflows/testarch/bmad-testarch-test-design/checklist.md +0 -464
  898. package/_bmad/tea/workflows/testarch/bmad-testarch-test-design/instructions.md +0 -105
  899. package/_bmad/tea/workflows/testarch/bmad-testarch-test-design/steps-c/step-01-detect-mode.md +0 -134
  900. package/_bmad/tea/workflows/testarch/bmad-testarch-test-design/steps-c/step-01b-resume.md +0 -102
  901. package/_bmad/tea/workflows/testarch/bmad-testarch-test-design/steps-c/step-02-load-context.md +0 -242
  902. package/_bmad/tea/workflows/testarch/bmad-testarch-test-design/steps-c/step-03-risk-and-testability.md +0 -110
  903. package/_bmad/tea/workflows/testarch/bmad-testarch-test-design/steps-c/step-04-coverage-plan.md +0 -123
  904. package/_bmad/tea/workflows/testarch/bmad-testarch-test-design/steps-c/step-05-generate-output.md +0 -222
  905. package/_bmad/tea/workflows/testarch/bmad-testarch-test-design/steps-e/step-01-assess.md +0 -65
  906. package/_bmad/tea/workflows/testarch/bmad-testarch-test-design/steps-e/step-02-apply-edit.md +0 -60
  907. package/_bmad/tea/workflows/testarch/bmad-testarch-test-design/steps-v/step-01-validate.md +0 -67
  908. package/_bmad/tea/workflows/testarch/bmad-testarch-test-design/test-design-architecture-template.md +0 -230
  909. package/_bmad/tea/workflows/testarch/bmad-testarch-test-design/test-design-handoff-template.md +0 -70
  910. package/_bmad/tea/workflows/testarch/bmad-testarch-test-design/test-design-qa-template.md +0 -396
  911. package/_bmad/tea/workflows/testarch/bmad-testarch-test-design/test-design-template.md +0 -344
  912. package/_bmad/tea/workflows/testarch/bmad-testarch-test-design/validation-report-20260127-095021.md +0 -73
  913. package/_bmad/tea/workflows/testarch/bmad-testarch-test-design/validation-report-20260127-102401.md +0 -116
  914. package/_bmad/tea/workflows/testarch/bmad-testarch-test-design/workflow-plan.md +0 -22
  915. package/_bmad/tea/workflows/testarch/bmad-testarch-test-design/workflow.md +0 -41
  916. package/_bmad/tea/workflows/testarch/bmad-testarch-test-design/workflow.yaml +0 -77
  917. package/_bmad/tea/workflows/testarch/bmad-testarch-test-review/SKILL.md +0 -6
  918. package/_bmad/tea/workflows/testarch/bmad-testarch-test-review/bmad-skill-manifest.yaml +0 -1
  919. package/_bmad/tea/workflows/testarch/bmad-testarch-test-review/checklist.md +0 -475
  920. package/_bmad/tea/workflows/testarch/bmad-testarch-test-review/instructions.md +0 -45
  921. package/_bmad/tea/workflows/testarch/bmad-testarch-test-review/steps-c/step-01-load-context.md +0 -197
  922. package/_bmad/tea/workflows/testarch/bmad-testarch-test-review/steps-c/step-01b-resume.md +0 -104
  923. package/_bmad/tea/workflows/testarch/bmad-testarch-test-review/steps-c/step-02-discover-tests.md +0 -113
  924. package/_bmad/tea/workflows/testarch/bmad-testarch-test-review/steps-c/step-03-quality-evaluation.md +0 -274
  925. package/_bmad/tea/workflows/testarch/bmad-testarch-test-review/steps-c/step-03a-subagent-determinism.md +0 -214
  926. package/_bmad/tea/workflows/testarch/bmad-testarch-test-review/steps-c/step-03b-subagent-isolation.md +0 -125
  927. package/_bmad/tea/workflows/testarch/bmad-testarch-test-review/steps-c/step-03c-subagent-maintainability.md +0 -102
  928. package/_bmad/tea/workflows/testarch/bmad-testarch-test-review/steps-c/step-03e-subagent-performance.md +0 -117
  929. package/_bmad/tea/workflows/testarch/bmad-testarch-test-review/steps-c/step-03f-aggregate-scores.md +0 -277
  930. package/_bmad/tea/workflows/testarch/bmad-testarch-test-review/steps-c/step-04-generate-report.md +0 -111
  931. package/_bmad/tea/workflows/testarch/bmad-testarch-test-review/steps-e/step-01-assess.md +0 -65
  932. package/_bmad/tea/workflows/testarch/bmad-testarch-test-review/steps-e/step-02-apply-edit.md +0 -60
  933. package/_bmad/tea/workflows/testarch/bmad-testarch-test-review/steps-v/step-01-validate.md +0 -67
  934. package/_bmad/tea/workflows/testarch/bmad-testarch-test-review/test-review-template.md +0 -387
  935. package/_bmad/tea/workflows/testarch/bmad-testarch-test-review/validation-report-20260127-095021.md +0 -72
  936. package/_bmad/tea/workflows/testarch/bmad-testarch-test-review/validation-report-20260127-102401.md +0 -114
  937. package/_bmad/tea/workflows/testarch/bmad-testarch-test-review/workflow-plan.md +0 -18
  938. package/_bmad/tea/workflows/testarch/bmad-testarch-test-review/workflow.md +0 -41
  939. package/_bmad/tea/workflows/testarch/bmad-testarch-test-review/workflow.yaml +0 -48
  940. package/_bmad/tea/workflows/testarch/bmad-testarch-trace/SKILL.md +0 -6
  941. package/_bmad/tea/workflows/testarch/bmad-testarch-trace/bmad-skill-manifest.yaml +0 -1
  942. package/_bmad/tea/workflows/testarch/bmad-testarch-trace/checklist.md +0 -647
  943. package/_bmad/tea/workflows/testarch/bmad-testarch-trace/instructions.md +0 -43
  944. package/_bmad/tea/workflows/testarch/bmad-testarch-trace/steps-c/step-01-load-context.md +0 -105
  945. package/_bmad/tea/workflows/testarch/bmad-testarch-trace/steps-c/step-01b-resume.md +0 -102
  946. package/_bmad/tea/workflows/testarch/bmad-testarch-trace/steps-c/step-02-discover-tests.md +0 -112
  947. package/_bmad/tea/workflows/testarch/bmad-testarch-trace/steps-c/step-03-map-criteria.md +0 -97
  948. package/_bmad/tea/workflows/testarch/bmad-testarch-trace/steps-c/step-04-analyze-gaps.md +0 -421
  949. package/_bmad/tea/workflows/testarch/bmad-testarch-trace/steps-c/step-05-gate-decision.md +0 -266
  950. package/_bmad/tea/workflows/testarch/bmad-testarch-trace/steps-e/step-01-assess.md +0 -65
  951. package/_bmad/tea/workflows/testarch/bmad-testarch-trace/steps-e/step-02-apply-edit.md +0 -60
  952. package/_bmad/tea/workflows/testarch/bmad-testarch-trace/steps-v/step-01-validate.md +0 -67
  953. package/_bmad/tea/workflows/testarch/bmad-testarch-trace/trace-template.md +0 -708
  954. package/_bmad/tea/workflows/testarch/bmad-testarch-trace/validation-report-20260127-095021.md +0 -73
  955. package/_bmad/tea/workflows/testarch/bmad-testarch-trace/validation-report-20260127-102401.md +0 -116
  956. package/_bmad/tea/workflows/testarch/bmad-testarch-trace/workflow-plan.md +0 -21
  957. package/_bmad/tea/workflows/testarch/bmad-testarch-trace/workflow.md +0 -41
  958. package/_bmad/tea/workflows/testarch/bmad-testarch-trace/workflow.yaml +0 -56
  959. package/eslint.config.js +0 -38
  960. package/packages/client/index.html +0 -12
  961. package/packages/client/package.json +0 -46
  962. package/packages/client/src/app.tsx +0 -57
  963. package/packages/client/src/features/about/AboutPage.tsx +0 -144
  964. package/packages/client/src/features/agents/AgentCard.tsx +0 -52
  965. package/packages/client/src/features/agents/AgentDetail.tsx +0 -338
  966. package/packages/client/src/features/agents/AgentOverrideEditor.tsx +0 -127
  967. package/packages/client/src/features/agents/AgentsPage.tsx +0 -114
  968. package/packages/client/src/features/agents/EditAgentDialog.tsx +0 -260
  969. package/packages/client/src/features/agents/SkillAssignment.tsx +0 -153
  970. package/packages/client/src/features/agents/use-agent-detail.ts +0 -17
  971. package/packages/client/src/features/agents/use-agent-mutations.ts +0 -47
  972. package/packages/client/src/features/agents/use-agents.ts +0 -17
  973. package/packages/client/src/features/connections/ConnectionsPage.tsx +0 -165
  974. package/packages/client/src/features/files/FilesPage.tsx +0 -177
  975. package/packages/client/src/features/outputs/OutputsPage.tsx +0 -190
  976. package/packages/client/src/features/overview/OverviewPage.tsx +0 -282
  977. package/packages/client/src/features/packages/EditModuleDialog.tsx +0 -118
  978. package/packages/client/src/features/packages/PackagesPage.tsx +0 -982
  979. package/packages/client/src/features/settings/SettingsPage.tsx +0 -141
  980. package/packages/client/src/features/settings/use-settings.ts +0 -34
  981. package/packages/client/src/features/skills/CreateSkillDialog.tsx +0 -328
  982. package/packages/client/src/features/skills/SkillDetailSlideOver.tsx +0 -179
  983. package/packages/client/src/features/skills/SkillsPage.tsx +0 -142
  984. package/packages/client/src/features/skills/use-skills.ts +0 -27
  985. package/packages/client/src/features/teams/CreateTeamDialog.tsx +0 -239
  986. package/packages/client/src/features/teams/TeamDetailPanel.tsx +0 -549
  987. package/packages/client/src/features/teams/TeamsPage.tsx +0 -196
  988. package/packages/client/src/features/teams/use-teams.ts +0 -39
  989. package/packages/client/src/features/workflows/CreateWorkflowDialog.tsx +0 -395
  990. package/packages/client/src/features/workflows/EditWorkflowDialog.tsx +0 -131
  991. package/packages/client/src/features/workflows/WorkflowDetailPanel.tsx +0 -503
  992. package/packages/client/src/features/workflows/WorkflowGraph.tsx +0 -108
  993. package/packages/client/src/features/workflows/WorkflowsPage.tsx +0 -277
  994. package/packages/client/src/features/workflows/use-workflows.ts +0 -27
  995. package/packages/client/src/features/workspace/WorkspacePage.tsx +0 -304
  996. package/packages/client/src/globals.css +0 -184
  997. package/packages/client/src/hooks/use-detail-param.ts +0 -31
  998. package/packages/client/src/hooks/use-file-save.ts +0 -22
  999. package/packages/client/src/hooks/use-websocket.ts +0 -38
  1000. package/packages/client/src/layout/AppShell.tsx +0 -20
  1001. package/packages/client/src/layout/Breadcrumbs.tsx +0 -52
  1002. package/packages/client/src/layout/NotificationProvider.tsx +0 -95
  1003. package/packages/client/src/layout/Sidebar.tsx +0 -176
  1004. package/packages/client/src/lib/theme.ts +0 -30
  1005. package/packages/client/src/lib/websocket-client.ts +0 -97
  1006. package/packages/client/src/main.tsx +0 -14
  1007. package/packages/client/src/shared/CommandPalette.tsx +0 -151
  1008. package/packages/client/src/shared/CsvViewer.tsx +0 -120
  1009. package/packages/client/src/shared/EmptyState.tsx +0 -20
  1010. package/packages/client/src/shared/EntityPageHeader.tsx +0 -95
  1011. package/packages/client/src/shared/FilepathLink.tsx +0 -22
  1012. package/packages/client/src/shared/Skeleton.tsx +0 -31
  1013. package/packages/client/src/shared/SlideOver.tsx +0 -63
  1014. package/packages/client/src/shared/VocabularyHelper.tsx +0 -48
  1015. package/packages/client/src/shared/diff-viewer/DiffViewer.tsx +0 -93
  1016. package/packages/client/src/shared/markdown-editor/CodeMirrorEditor.tsx +0 -199
  1017. package/packages/client/src/shared/markdown-editor/MarkdownEditor.tsx +0 -95
  1018. package/packages/client/src/stores/ui-store.ts +0 -13
  1019. package/packages/client/tsconfig.json +0 -13
  1020. package/packages/client/vite.config.ts +0 -20
  1021. package/packages/server/package.json +0 -30
  1022. package/packages/server/src/app.test.ts +0 -89
  1023. package/packages/server/src/app.ts +0 -101
  1024. package/packages/server/src/core/errors.test.ts +0 -49
  1025. package/packages/server/src/core/errors.ts +0 -62
  1026. package/packages/server/src/core/file-store.test.ts +0 -104
  1027. package/packages/server/src/core/file-store.ts +0 -209
  1028. package/packages/server/src/core/project-detector.test.ts +0 -94
  1029. package/packages/server/src/core/project-detector.ts +0 -97
  1030. package/packages/server/src/core/websocket.test.ts +0 -80
  1031. package/packages/server/src/core/websocket.ts +0 -47
  1032. package/packages/server/src/core/write-service.test.ts +0 -87
  1033. package/packages/server/src/core/write-service.ts +0 -75
  1034. package/packages/server/src/index.ts +0 -97
  1035. package/packages/server/src/parsers/agent-parser.test.ts +0 -71
  1036. package/packages/server/src/parsers/agent-parser.ts +0 -83
  1037. package/packages/server/src/parsers/config-parser.test.ts +0 -65
  1038. package/packages/server/src/parsers/config-parser.ts +0 -51
  1039. package/packages/server/src/parsers/csv-parser.test.ts +0 -53
  1040. package/packages/server/src/parsers/csv-parser.ts +0 -55
  1041. package/packages/server/src/parsers/ide-config-parser.test.ts +0 -35
  1042. package/packages/server/src/parsers/ide-config-parser.ts +0 -37
  1043. package/packages/server/src/parsers/index-builder.test.ts +0 -78
  1044. package/packages/server/src/parsers/index-builder.ts +0 -195
  1045. package/packages/server/src/parsers/package-parser.test.ts +0 -36
  1046. package/packages/server/src/parsers/package-parser.ts +0 -34
  1047. package/packages/server/src/parsers/skill-parser.test.ts +0 -51
  1048. package/packages/server/src/parsers/skill-parser.ts +0 -26
  1049. package/packages/server/src/parsers/team-parser.test.ts +0 -186
  1050. package/packages/server/src/parsers/team-parser.ts +0 -128
  1051. package/packages/server/src/parsers/workflow-parser.test.ts +0 -415
  1052. package/packages/server/src/parsers/workflow-parser.ts +0 -311
  1053. package/packages/server/src/plugins/agents-plugin.test.ts +0 -111
  1054. package/packages/server/src/plugins/agents-plugin.ts +0 -164
  1055. package/packages/server/src/plugins/files-plugin.test.ts +0 -121
  1056. package/packages/server/src/plugins/files-plugin.ts +0 -93
  1057. package/packages/server/src/plugins/modules-plugin.test.ts +0 -264
  1058. package/packages/server/src/plugins/modules-plugin.ts +0 -386
  1059. package/packages/server/src/plugins/outputs-plugin.test.ts +0 -89
  1060. package/packages/server/src/plugins/outputs-plugin.ts +0 -93
  1061. package/packages/server/src/plugins/overview-plugin.ts +0 -73
  1062. package/packages/server/src/plugins/search-plugin.ts +0 -63
  1063. package/packages/server/src/plugins/settings-plugin.test.ts +0 -82
  1064. package/packages/server/src/plugins/settings-plugin.ts +0 -46
  1065. package/packages/server/src/plugins/skills-plugin.ts +0 -87
  1066. package/packages/server/src/plugins/teams-plugin.test.ts +0 -157
  1067. package/packages/server/src/plugins/teams-plugin.ts +0 -198
  1068. package/packages/server/src/plugins/validation-plugin.test.ts +0 -229
  1069. package/packages/server/src/plugins/validation-plugin.ts +0 -116
  1070. package/packages/server/src/plugins/workflows-plugin.test.ts +0 -145
  1071. package/packages/server/src/plugins/workflows-plugin.ts +0 -270
  1072. package/packages/server/src/static.ts +0 -29
  1073. package/packages/server/tsconfig.json +0 -8
  1074. package/packages/shared/package.json +0 -20
  1075. package/packages/shared/tsconfig.json +0 -8
  1076. package/tsconfig.base.json +0 -19
  1077. package/vitest.config.ts +0 -7
@@ -1,486 +0,0 @@
1
- # Component Test-Driven Development Loop
2
-
3
- ## Principle
4
-
5
- Start every UI change with a failing component test (`cy.mount`, Playwright component test, or RTL `render`). Follow the Red-Green-Refactor cycle: write a failing test (red), make it pass with minimal code (green), then improve the implementation (refactor). Ship only after the cycle completes. Keep component tests under 100 lines, isolated with fresh providers per test, and validate accessibility alongside functionality.
6
-
7
- ## Rationale
8
-
9
- Component TDD provides immediate feedback during development. Failing tests (red) clarify requirements before writing code. Minimal implementations (green) prevent over-engineering. Refactoring with passing tests ensures changes don't break functionality. Isolated tests with fresh providers prevent state bleed in parallel runs. Accessibility assertions catch usability issues early. Visual debugging (Cypress runner, Storybook, Playwright trace viewer) accelerates diagnosis when tests fail.
10
-
11
- ## Pattern Examples
12
-
13
- ### Example 1: Red-Green-Refactor Loop
14
-
15
- **Context**: When building a new component, start with a failing test that describes the desired behavior. Implement just enough to pass, then refactor for quality.
16
-
17
- **Implementation**:
18
-
19
- ```typescript
20
- // Step 1: RED - Write failing test
21
- // Button.cy.tsx (Cypress Component Test)
22
- import { Button } from './Button';
23
-
24
- describe('Button Component', () => {
25
- it('should render with label', () => {
26
- cy.mount(<Button label="Click Me" />);
27
- cy.contains('Click Me').should('be.visible');
28
- });
29
-
30
- it('should call onClick when clicked', () => {
31
- const onClickSpy = cy.stub().as('onClick');
32
- cy.mount(<Button label="Submit" onClick={onClickSpy} />);
33
-
34
- cy.get('button').click();
35
- cy.get('@onClick').should('have.been.calledOnce');
36
- });
37
- });
38
-
39
- // Run test: FAILS - Button component doesn't exist yet
40
- // Error: "Cannot find module './Button'"
41
-
42
- // Step 2: GREEN - Minimal implementation
43
- // Button.tsx
44
- type ButtonProps = {
45
- label: string;
46
- onClick?: () => void;
47
- };
48
-
49
- export const Button = ({ label, onClick }: ButtonProps) => {
50
- return <button onClick={onClick}>{label}</button>;
51
- };
52
-
53
- // Run test: PASSES - Component renders and handles clicks
54
-
55
- // Step 3: REFACTOR - Improve implementation
56
- // Add disabled state, loading state, variants
57
- type ButtonProps = {
58
- label: string;
59
- onClick?: () => void;
60
- disabled?: boolean;
61
- loading?: boolean;
62
- variant?: 'primary' | 'secondary' | 'danger';
63
- };
64
-
65
- export const Button = ({
66
- label,
67
- onClick,
68
- disabled = false,
69
- loading = false,
70
- variant = 'primary'
71
- }: ButtonProps) => {
72
- return (
73
- <button
74
- onClick={onClick}
75
- disabled={disabled || loading}
76
- className={`btn btn-${variant}`}
77
- data-testid="button"
78
- >
79
- {loading ? <Spinner /> : label}
80
- </button>
81
- );
82
- };
83
-
84
- // Step 4: Expand tests for new features
85
- describe('Button Component', () => {
86
- it('should render with label', () => {
87
- cy.mount(<Button label="Click Me" />);
88
- cy.contains('Click Me').should('be.visible');
89
- });
90
-
91
- it('should call onClick when clicked', () => {
92
- const onClickSpy = cy.stub().as('onClick');
93
- cy.mount(<Button label="Submit" onClick={onClickSpy} />);
94
-
95
- cy.get('button').click();
96
- cy.get('@onClick').should('have.been.calledOnce');
97
- });
98
-
99
- it('should be disabled when disabled prop is true', () => {
100
- cy.mount(<Button label="Submit" disabled={true} />);
101
- cy.get('button').should('be.disabled');
102
- });
103
-
104
- it('should show spinner when loading', () => {
105
- cy.mount(<Button label="Submit" loading={true} />);
106
- cy.get('[data-testid="spinner"]').should('be.visible');
107
- cy.get('button').should('be.disabled');
108
- });
109
-
110
- it('should apply variant styles', () => {
111
- cy.mount(<Button label="Delete" variant="danger" />);
112
- cy.get('button').should('have.class', 'btn-danger');
113
- });
114
- });
115
-
116
- // Run tests: ALL PASS - Refactored component still works
117
-
118
- // Playwright Component Test equivalent
119
- import { test, expect } from '@playwright/experimental-ct-react';
120
- import { Button } from './Button';
121
-
122
- test.describe('Button Component', () => {
123
- test('should call onClick when clicked', async ({ mount }) => {
124
- let clicked = false;
125
- const component = await mount(
126
- <Button label="Submit" onClick={() => { clicked = true; }} />
127
- );
128
-
129
- await component.getByRole('button').click();
130
- expect(clicked).toBe(true);
131
- });
132
-
133
- test('should be disabled when loading', async ({ mount }) => {
134
- const component = await mount(<Button label="Submit" loading={true} />);
135
- await expect(component.getByRole('button')).toBeDisabled();
136
- await expect(component.getByTestId('spinner')).toBeVisible();
137
- });
138
- });
139
- ```
140
-
141
- **Key Points**:
142
-
143
- - Red: Write failing test first - clarifies requirements before coding
144
- - Green: Implement minimal code to pass - prevents over-engineering
145
- - Refactor: Improve code quality while keeping tests green
146
- - Expand: Add tests for new features after refactoring
147
- - Cycle repeats: Each new feature starts with a failing test
148
-
149
- ### Example 2: Provider Isolation Pattern
150
-
151
- **Context**: When testing components that depend on context providers (React Query, Auth, Router), wrap them with required providers in each test to prevent state bleed between tests.
152
-
153
- **Implementation**:
154
-
155
- ```typescript
156
- // test-utils/AllTheProviders.tsx
157
- import { FC, ReactNode } from 'react';
158
- import { QueryClient, QueryClientProvider } from '@tanstack/react-query';
159
- import { BrowserRouter } from 'react-router-dom';
160
- import { AuthProvider } from '../contexts/AuthContext';
161
-
162
- type Props = {
163
- children: ReactNode;
164
- initialAuth?: { user: User | null; token: string | null };
165
- };
166
-
167
- export const AllTheProviders: FC<Props> = ({ children, initialAuth }) => {
168
- // Create NEW QueryClient per test (prevent state bleed)
169
- const queryClient = new QueryClient({
170
- defaultOptions: {
171
- queries: { retry: false },
172
- mutations: { retry: false }
173
- }
174
- });
175
-
176
- return (
177
- <QueryClientProvider client={queryClient}>
178
- <BrowserRouter>
179
- <AuthProvider initialAuth={initialAuth}>
180
- {children}
181
- </AuthProvider>
182
- </BrowserRouter>
183
- </QueryClientProvider>
184
- );
185
- };
186
-
187
- // Cypress custom mount command
188
- // cypress/support/component.tsx
189
- import { mount } from 'cypress/react18';
190
- import { AllTheProviders } from '../../test-utils/AllTheProviders';
191
-
192
- Cypress.Commands.add('wrappedMount', (component, options = {}) => {
193
- const { initialAuth, ...mountOptions } = options;
194
-
195
- return mount(
196
- <AllTheProviders initialAuth={initialAuth}>
197
- {component}
198
- </AllTheProviders>,
199
- mountOptions
200
- );
201
- });
202
-
203
- // Usage in tests
204
- // UserProfile.cy.tsx
205
- import { UserProfile } from './UserProfile';
206
-
207
- describe('UserProfile Component', () => {
208
- it('should display user when authenticated', () => {
209
- const user = { id: 1, name: 'John Doe', email: 'john@example.com' };
210
-
211
- cy.wrappedMount(<UserProfile />, {
212
- initialAuth: { user, token: 'fake-token' }
213
- });
214
-
215
- cy.contains('John Doe').should('be.visible');
216
- cy.contains('john@example.com').should('be.visible');
217
- });
218
-
219
- it('should show login prompt when not authenticated', () => {
220
- cy.wrappedMount(<UserProfile />, {
221
- initialAuth: { user: null, token: null }
222
- });
223
-
224
- cy.contains('Please log in').should('be.visible');
225
- });
226
- });
227
-
228
- // Playwright Component Test with providers
229
- import { test, expect } from '@playwright/experimental-ct-react';
230
- import { QueryClient, QueryClientProvider } from '@tanstack/react-query';
231
- import { UserProfile } from './UserProfile';
232
- import { AuthProvider } from '../contexts/AuthContext';
233
-
234
- test.describe('UserProfile Component', () => {
235
- test('should display user when authenticated', async ({ mount }) => {
236
- const user = { id: 1, name: 'John Doe', email: 'john@example.com' };
237
- const queryClient = new QueryClient();
238
-
239
- const component = await mount(
240
- <QueryClientProvider client={queryClient}>
241
- <AuthProvider initialAuth={{ user, token: 'fake-token' }}>
242
- <UserProfile />
243
- </AuthProvider>
244
- </QueryClientProvider>
245
- );
246
-
247
- await expect(component.getByText('John Doe')).toBeVisible();
248
- await expect(component.getByText('john@example.com')).toBeVisible();
249
- });
250
- });
251
- ```
252
-
253
- **Key Points**:
254
-
255
- - Create NEW providers per test (QueryClient, Router, Auth)
256
- - Prevents state pollution between tests
257
- - `initialAuth` prop allows testing different auth states
258
- - Custom mount command (`wrappedMount`) reduces boilerplate
259
- - Providers wrap component, not the entire test suite
260
-
261
- ### Example 3: Accessibility Assertions
262
-
263
- **Context**: When testing components, validate accessibility alongside functionality using axe-core, ARIA roles, labels, and keyboard navigation.
264
-
265
- **Implementation**:
266
-
267
- ```typescript
268
- // Cypress with axe-core
269
- // cypress/support/component.tsx
270
- import 'cypress-axe';
271
-
272
- // Form.cy.tsx
273
- import { Form } from './Form';
274
-
275
- describe('Form Component Accessibility', () => {
276
- beforeEach(() => {
277
- cy.wrappedMount(<Form />);
278
- cy.injectAxe(); // Inject axe-core
279
- });
280
-
281
- it('should have no accessibility violations', () => {
282
- cy.checkA11y(); // Run axe scan
283
- });
284
-
285
- it('should have proper ARIA labels', () => {
286
- cy.get('input[name="email"]').should('have.attr', 'aria-label', 'Email address');
287
- cy.get('input[name="password"]').should('have.attr', 'aria-label', 'Password');
288
- cy.get('button[type="submit"]').should('have.attr', 'aria-label', 'Submit form');
289
- });
290
-
291
- it('should support keyboard navigation', () => {
292
- // Tab through form fields
293
- cy.get('input[name="email"]').focus().type('test@example.com');
294
- cy.realPress('Tab'); // cypress-real-events plugin
295
- cy.focused().should('have.attr', 'name', 'password');
296
-
297
- cy.focused().type('password123');
298
- cy.realPress('Tab');
299
- cy.focused().should('have.attr', 'type', 'submit');
300
-
301
- cy.realPress('Enter'); // Submit via keyboard
302
- cy.contains('Form submitted').should('be.visible');
303
- });
304
-
305
- it('should announce errors to screen readers', () => {
306
- cy.get('button[type="submit"]').click(); // Submit without data
307
-
308
- // Error has role="alert" and aria-live="polite"
309
- cy.get('[role="alert"]')
310
- .should('be.visible')
311
- .and('have.attr', 'aria-live', 'polite')
312
- .and('contain', 'Email is required');
313
- });
314
-
315
- it('should have sufficient color contrast', () => {
316
- cy.checkA11y(null, {
317
- rules: {
318
- 'color-contrast': { enabled: true }
319
- }
320
- });
321
- });
322
- });
323
-
324
- // Playwright with axe-playwright
325
- import { test, expect } from '@playwright/experimental-ct-react';
326
- import AxeBuilder from '@axe-core/playwright';
327
- import { Form } from './Form';
328
-
329
- test.describe('Form Component Accessibility', () => {
330
- test('should have no accessibility violations', async ({ mount, page }) => {
331
- await mount(<Form />);
332
-
333
- const accessibilityScanResults = await new AxeBuilder({ page })
334
- .analyze();
335
-
336
- expect(accessibilityScanResults.violations).toEqual([]);
337
- });
338
-
339
- test('should support keyboard navigation', async ({ mount, page }) => {
340
- const component = await mount(<Form />);
341
-
342
- await component.getByLabel('Email address').fill('test@example.com');
343
- await page.keyboard.press('Tab');
344
-
345
- await expect(component.getByLabel('Password')).toBeFocused();
346
-
347
- await component.getByLabel('Password').fill('password123');
348
- await page.keyboard.press('Tab');
349
-
350
- await expect(component.getByRole('button', { name: 'Submit form' })).toBeFocused();
351
-
352
- await page.keyboard.press('Enter');
353
- await expect(component.getByText('Form submitted')).toBeVisible();
354
- });
355
- });
356
- ```
357
-
358
- **Key Points**:
359
-
360
- - Use `cy.checkA11y()` (Cypress) or `AxeBuilder` (Playwright) for automated accessibility scanning
361
- - Validate ARIA roles, labels, and live regions
362
- - Test keyboard navigation (Tab, Enter, Escape)
363
- - Ensure errors are announced to screen readers (`role="alert"`, `aria-live`)
364
- - Check color contrast meets WCAG standards
365
-
366
- ### Example 4: Visual Regression Test
367
-
368
- **Context**: When testing components, capture screenshots to detect unintended visual changes. Use Playwright visual comparison or Cypress snapshot plugins.
369
-
370
- **Implementation**:
371
-
372
- ```typescript
373
- // Playwright visual regression
374
- import { test, expect } from '@playwright/experimental-ct-react';
375
- import { Button } from './Button';
376
-
377
- test.describe('Button Visual Regression', () => {
378
- test('should match primary button snapshot', async ({ mount }) => {
379
- const component = await mount(<Button label="Primary" variant="primary" />);
380
-
381
- // Capture and compare screenshot
382
- await expect(component).toHaveScreenshot('button-primary.png');
383
- });
384
-
385
- test('should match secondary button snapshot', async ({ mount }) => {
386
- const component = await mount(<Button label="Secondary" variant="secondary" />);
387
- await expect(component).toHaveScreenshot('button-secondary.png');
388
- });
389
-
390
- test('should match disabled button snapshot', async ({ mount }) => {
391
- const component = await mount(<Button label="Disabled" disabled={true} />);
392
- await expect(component).toHaveScreenshot('button-disabled.png');
393
- });
394
-
395
- test('should match loading button snapshot', async ({ mount }) => {
396
- const component = await mount(<Button label="Loading" loading={true} />);
397
- await expect(component).toHaveScreenshot('button-loading.png');
398
- });
399
- });
400
-
401
- // Cypress visual regression with percy or snapshot plugins
402
- import { Button } from './Button';
403
-
404
- describe('Button Visual Regression', () => {
405
- it('should match primary button snapshot', () => {
406
- cy.wrappedMount(<Button label="Primary" variant="primary" />);
407
-
408
- // Option 1: Percy (cloud-based visual testing)
409
- cy.percySnapshot('Button - Primary');
410
-
411
- // Option 2: cypress-plugin-snapshots (local snapshots)
412
- cy.get('button').toMatchImageSnapshot({
413
- name: 'button-primary',
414
- threshold: 0.01 // 1% threshold for pixel differences
415
- });
416
- });
417
-
418
- it('should match hover state', () => {
419
- cy.wrappedMount(<Button label="Hover Me" />);
420
- cy.get('button').realHover(); // cypress-real-events
421
- cy.percySnapshot('Button - Hover State');
422
- });
423
-
424
- it('should match focus state', () => {
425
- cy.wrappedMount(<Button label="Focus Me" />);
426
- cy.get('button').focus();
427
- cy.percySnapshot('Button - Focus State');
428
- });
429
- });
430
-
431
- // Playwright configuration for visual regression
432
- // playwright.config.ts
433
- export default defineConfig({
434
- expect: {
435
- toHaveScreenshot: {
436
- maxDiffPixels: 100, // Allow 100 pixels difference
437
- threshold: 0.2 // 20% threshold
438
- }
439
- },
440
- use: {
441
- screenshot: 'only-on-failure'
442
- }
443
- });
444
-
445
- // Update snapshots when intentional changes are made
446
- // npx playwright test --update-snapshots
447
- ```
448
-
449
- **Key Points**:
450
-
451
- - Playwright: Use `toHaveScreenshot()` for built-in visual comparison
452
- - Cypress: Use Percy (cloud) or snapshot plugins (local) for visual testing
453
- - Capture different states: default, hover, focus, disabled, loading
454
- - Set threshold for acceptable pixel differences (avoid false positives)
455
- - Update snapshots when visual changes are intentional
456
- - Visual tests catch unintended CSS/layout regressions
457
-
458
- ## Integration Points
459
-
460
- - **Used in workflows**: `*atdd` (component test generation), `*automate` (component test expansion), `*framework` (component testing setup)
461
- - **Related fragments**:
462
- - `test-quality.md` - Keep component tests <100 lines, isolated, focused
463
- - `fixture-architecture.md` - Provider wrapping patterns, custom mount commands
464
- - `data-factories.md` - Factory functions for component props
465
- - `test-levels-framework.md` - When to use component tests vs E2E tests
466
-
467
- ## TDD Workflow Summary
468
-
469
- **Red-Green-Refactor Cycle**:
470
-
471
- 1. **Red**: Write failing test describing desired behavior
472
- 2. **Green**: Implement minimal code to make test pass
473
- 3. **Refactor**: Improve code quality, tests stay green
474
- 4. **Repeat**: Each new feature starts with failing test
475
-
476
- **Component Test Checklist**:
477
-
478
- - [ ] Test renders with required props
479
- - [ ] Test user interactions (click, type, submit)
480
- - [ ] Test different states (loading, error, disabled)
481
- - [ ] Test accessibility (ARIA, keyboard navigation)
482
- - [ ] Test visual regression (snapshots)
483
- - [ ] Isolate with fresh providers (no state bleed)
484
- - [ ] Keep tests <100 lines (split by intent)
485
-
486
- _Source: CCTDD repository, Murat component testing talks, Playwright/Cypress component testing docs._