@cregis-dev/cckit 0.4.1 → 0.5.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 (795) hide show
  1. package/README.md +68 -110
  2. package/package.json +3 -4
  3. package/registry.json +40 -182
  4. package/src/cli.js +15 -24
  5. package/src/commands/init.js +117 -294
  6. package/src/commands/status.js +53 -30
  7. package/src/commands/update.js +129 -408
  8. package/src/core/config.js +25 -33
  9. package/src/core/orchestrator.js +79 -0
  10. package/src/core/registry.js +32 -47
  11. package/src/steps/configure-user.js +115 -0
  12. package/src/steps/enable-plugins.js +97 -0
  13. package/src/steps/install-bmad.js +85 -0
  14. package/src/steps/install-mcp.js +70 -0
  15. package/src/steps/install-rules.js +110 -0
  16. package/src/steps/install-skills.js +54 -0
  17. package/src/utils/fs.js +12 -34
  18. package/src/utils/manifest.js +99 -0
  19. package/src/utils/prompt.js +41 -0
  20. package/templates/mcp/claude-code/.mcp.json +10 -5
  21. package/src/adapters/trae-adapter.js +0 -90
  22. package/src/commands/add.js +0 -192
  23. package/src/commands/sync.js +0 -325
  24. package/src/core/differ.js +0 -57
  25. package/src/core/installer.js +0 -97
  26. package/src/core/plugin-installer.js +0 -278
  27. package/src/core/templatize.js +0 -42
  28. package/src/core/upstream.js +0 -357
  29. package/templates/bmad/_config/agent-manifest.csv +0 -12
  30. package/templates/bmad/_config/agents/bmm-analyst.customize.yaml +0 -41
  31. package/templates/bmad/_config/agents/bmm-architect.customize.yaml +0 -41
  32. package/templates/bmad/_config/agents/bmm-dev.customize.yaml +0 -41
  33. package/templates/bmad/_config/agents/bmm-pm.customize.yaml +0 -41
  34. package/templates/bmad/_config/agents/bmm-qa.customize.yaml +0 -41
  35. package/templates/bmad/_config/agents/bmm-quick-flow-solo-dev.customize.yaml +0 -41
  36. package/templates/bmad/_config/agents/bmm-sm.customize.yaml +0 -41
  37. package/templates/bmad/_config/agents/bmm-tech-writer.customize.yaml +0 -41
  38. package/templates/bmad/_config/agents/bmm-ux-designer.customize.yaml +0 -41
  39. package/templates/bmad/_config/agents/core-bmad-master.customize.yaml +0 -41
  40. package/templates/bmad/_config/agents/tea-tea.customize.yaml +0 -41
  41. package/templates/bmad/_config/bmad-help.csv +0 -49
  42. package/templates/bmad/_config/files-manifest.csv +0 -437
  43. package/templates/bmad/_config/ides/claude-code.yaml +0 -5
  44. package/templates/bmad/_config/ides/opencode.yaml +0 -5
  45. package/templates/bmad/_config/ides/trae.yaml +0 -5
  46. package/templates/bmad/_config/task-manifest.csv +0 -8
  47. package/templates/bmad/_config/tool-manifest.csv +0 -1
  48. package/templates/bmad/_config/workflow-manifest.csv +0 -35
  49. package/templates/bmad/bmm/agents/analyst.md +0 -78
  50. package/templates/bmad/bmm/agents/architect.md +0 -58
  51. package/templates/bmad/bmm/agents/dev.md +0 -69
  52. package/templates/bmad/bmm/agents/pm.md +0 -72
  53. package/templates/bmad/bmm/agents/qa.md +0 -92
  54. package/templates/bmad/bmm/agents/quick-flow-solo-dev.md +0 -69
  55. package/templates/bmad/bmm/agents/sm.md +0 -70
  56. package/templates/bmad/bmm/agents/tech-writer/tech-writer.md +0 -70
  57. package/templates/bmad/bmm/agents/ux-designer.md +0 -57
  58. package/templates/bmad/bmm/config.yaml +0 -15
  59. package/templates/bmad/bmm/data/project-context-template.md +0 -26
  60. package/templates/bmad/bmm/module-help.csv +0 -31
  61. package/templates/bmad/bmm/teams/default-party.csv +0 -20
  62. package/templates/bmad/bmm/teams/team-fullstack.yaml +0 -12
  63. package/templates/bmad/bmm/workflows/1-analysis/create-product-brief/product-brief.template.md +0 -10
  64. package/templates/bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-01-init.md +0 -177
  65. package/templates/bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-01b-continue.md +0 -161
  66. package/templates/bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-02-vision.md +0 -199
  67. package/templates/bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-03-users.md +0 -202
  68. package/templates/bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-04-metrics.md +0 -205
  69. package/templates/bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-05-scope.md +0 -219
  70. package/templates/bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-06-complete.md +0 -162
  71. package/templates/bmad/bmm/workflows/1-analysis/create-product-brief/workflow.md +0 -57
  72. package/templates/bmad/bmm/workflows/1-analysis/research/domain-steps/step-01-init.md +0 -137
  73. package/templates/bmad/bmm/workflows/1-analysis/research/domain-steps/step-02-domain-analysis.md +0 -229
  74. package/templates/bmad/bmm/workflows/1-analysis/research/domain-steps/step-03-competitive-landscape.md +0 -238
  75. package/templates/bmad/bmm/workflows/1-analysis/research/domain-steps/step-04-regulatory-focus.md +0 -206
  76. package/templates/bmad/bmm/workflows/1-analysis/research/domain-steps/step-05-technical-trends.md +0 -234
  77. package/templates/bmad/bmm/workflows/1-analysis/research/domain-steps/step-06-research-synthesis.md +0 -444
  78. package/templates/bmad/bmm/workflows/1-analysis/research/market-steps/step-01-init.md +0 -182
  79. package/templates/bmad/bmm/workflows/1-analysis/research/market-steps/step-02-customer-behavior.md +0 -237
  80. package/templates/bmad/bmm/workflows/1-analysis/research/market-steps/step-03-customer-pain-points.md +0 -249
  81. package/templates/bmad/bmm/workflows/1-analysis/research/market-steps/step-04-customer-decisions.md +0 -259
  82. package/templates/bmad/bmm/workflows/1-analysis/research/market-steps/step-05-competitive-analysis.md +0 -177
  83. package/templates/bmad/bmm/workflows/1-analysis/research/market-steps/step-06-research-completion.md +0 -476
  84. package/templates/bmad/bmm/workflows/1-analysis/research/research.template.md +0 -29
  85. package/templates/bmad/bmm/workflows/1-analysis/research/technical-steps/step-01-init.md +0 -137
  86. package/templates/bmad/bmm/workflows/1-analysis/research/technical-steps/step-02-technical-overview.md +0 -239
  87. package/templates/bmad/bmm/workflows/1-analysis/research/technical-steps/step-03-integration-patterns.md +0 -248
  88. package/templates/bmad/bmm/workflows/1-analysis/research/technical-steps/step-04-architectural-patterns.md +0 -202
  89. package/templates/bmad/bmm/workflows/1-analysis/research/technical-steps/step-05-implementation-research.md +0 -233
  90. package/templates/bmad/bmm/workflows/1-analysis/research/technical-steps/step-06-research-synthesis.md +0 -487
  91. package/templates/bmad/bmm/workflows/1-analysis/research/workflow-domain-research.md +0 -54
  92. package/templates/bmad/bmm/workflows/1-analysis/research/workflow-market-research.md +0 -54
  93. package/templates/bmad/bmm/workflows/1-analysis/research/workflow-technical-research.md +0 -54
  94. package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/data/domain-complexity.csv +0 -15
  95. package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/data/prd-purpose.md +0 -197
  96. package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/data/project-types.csv +0 -11
  97. package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-01-init.md +0 -191
  98. package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-01b-continue.md +0 -152
  99. package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-02-discovery.md +0 -224
  100. package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-02b-vision.md +0 -154
  101. package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-02c-executive-summary.md +0 -170
  102. package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-03-success.md +0 -226
  103. package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-04-journeys.md +0 -213
  104. package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-05-domain.md +0 -207
  105. package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-06-innovation.md +0 -226
  106. package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-07-project-type.md +0 -237
  107. package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-08-scoping.md +0 -228
  108. package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-09-functional.md +0 -231
  109. package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-10-nonfunctional.md +0 -242
  110. package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-11-polish.md +0 -217
  111. package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-12-complete.md +0 -124
  112. package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-01-discovery.md +0 -247
  113. package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-01b-legacy-conversion.md +0 -208
  114. package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-02-review.md +0 -249
  115. package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-03-edit.md +0 -253
  116. package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-04-complete.md +0 -168
  117. package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-01-discovery.md +0 -226
  118. package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-02-format-detection.md +0 -191
  119. package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-02b-parity-check.md +0 -209
  120. package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-03-density-validation.md +0 -174
  121. package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-04-brief-coverage-validation.md +0 -214
  122. package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-05-measurability-validation.md +0 -228
  123. package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-06-traceability-validation.md +0 -217
  124. package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-07-implementation-leakage-validation.md +0 -205
  125. package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-08-domain-compliance-validation.md +0 -243
  126. package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-09-project-type-validation.md +0 -263
  127. package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-10-smart-validation.md +0 -209
  128. package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-11-holistic-quality-validation.md +0 -264
  129. package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-12-completeness-validation.md +0 -242
  130. package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-13-report-complete.md +0 -231
  131. package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/templates/prd-template.md +0 -10
  132. package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/workflow-create-prd.md +0 -63
  133. package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/workflow-edit-prd.md +0 -65
  134. package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/workflow-validate-prd.md +0 -63
  135. package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-01-init.md +0 -135
  136. package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-01b-continue.md +0 -127
  137. package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-02-discovery.md +0 -190
  138. package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-03-core-experience.md +0 -216
  139. package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-04-emotional-response.md +0 -219
  140. package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-05-inspiration.md +0 -234
  141. package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-06-design-system.md +0 -252
  142. package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-07-defining-experience.md +0 -254
  143. package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-08-visual-foundation.md +0 -224
  144. package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-09-design-directions.md +0 -224
  145. package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-10-user-journeys.md +0 -241
  146. package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-11-component-strategy.md +0 -248
  147. package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-12-ux-patterns.md +0 -237
  148. package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-13-responsive-accessibility.md +0 -264
  149. package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-14-complete.md +0 -171
  150. package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/ux-design-template.md +0 -13
  151. package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/workflow.md +0 -42
  152. package/templates/bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-01-document-discovery.md +0 -184
  153. package/templates/bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-02-prd-analysis.md +0 -172
  154. package/templates/bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-03-epic-coverage-validation.md +0 -173
  155. package/templates/bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-04-ux-alignment.md +0 -133
  156. package/templates/bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-05-epic-quality-review.md +0 -245
  157. package/templates/bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-06-final-assessment.md +0 -129
  158. package/templates/bmad/bmm/workflows/3-solutioning/check-implementation-readiness/templates/readiness-report-template.md +0 -4
  159. package/templates/bmad/bmm/workflows/3-solutioning/check-implementation-readiness/workflow.md +0 -54
  160. package/templates/bmad/bmm/workflows/3-solutioning/create-architecture/architecture-decision-template.md +0 -12
  161. package/templates/bmad/bmm/workflows/3-solutioning/create-architecture/data/domain-complexity.csv +0 -13
  162. package/templates/bmad/bmm/workflows/3-solutioning/create-architecture/data/project-types.csv +0 -7
  163. package/templates/bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-01-init.md +0 -153
  164. package/templates/bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-01b-continue.md +0 -173
  165. package/templates/bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-02-context.md +0 -224
  166. package/templates/bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-03-starter.md +0 -329
  167. package/templates/bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-04-decisions.md +0 -318
  168. package/templates/bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-05-patterns.md +0 -359
  169. package/templates/bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-06-structure.md +0 -379
  170. package/templates/bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-07-validation.md +0 -359
  171. package/templates/bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-08-complete.md +0 -76
  172. package/templates/bmad/bmm/workflows/3-solutioning/create-architecture/workflow.md +0 -49
  173. package/templates/bmad/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-01-validate-prerequisites.md +0 -259
  174. package/templates/bmad/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-02-design-epics.md +0 -233
  175. package/templates/bmad/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-03-create-stories.md +0 -272
  176. package/templates/bmad/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-04-final-validation.md +0 -149
  177. package/templates/bmad/bmm/workflows/3-solutioning/create-epics-and-stories/templates/epics-template.md +0 -57
  178. package/templates/bmad/bmm/workflows/3-solutioning/create-epics-and-stories/workflow.md +0 -58
  179. package/templates/bmad/bmm/workflows/4-implementation/code-review/checklist.md +0 -23
  180. package/templates/bmad/bmm/workflows/4-implementation/code-review/instructions.xml +0 -227
  181. package/templates/bmad/bmm/workflows/4-implementation/code-review/workflow.yaml +0 -43
  182. package/templates/bmad/bmm/workflows/4-implementation/correct-course/checklist.md +0 -288
  183. package/templates/bmad/bmm/workflows/4-implementation/correct-course/instructions.md +0 -207
  184. package/templates/bmad/bmm/workflows/4-implementation/correct-course/workflow.yaml +0 -53
  185. package/templates/bmad/bmm/workflows/4-implementation/create-story/checklist.md +0 -358
  186. package/templates/bmad/bmm/workflows/4-implementation/create-story/instructions.xml +0 -346
  187. package/templates/bmad/bmm/workflows/4-implementation/create-story/template.md +0 -49
  188. package/templates/bmad/bmm/workflows/4-implementation/create-story/workflow.yaml +0 -52
  189. package/templates/bmad/bmm/workflows/4-implementation/dev-story/checklist.md +0 -80
  190. package/templates/bmad/bmm/workflows/4-implementation/dev-story/instructions.xml +0 -410
  191. package/templates/bmad/bmm/workflows/4-implementation/dev-story/workflow.yaml +0 -20
  192. package/templates/bmad/bmm/workflows/4-implementation/retrospective/instructions.md +0 -1444
  193. package/templates/bmad/bmm/workflows/4-implementation/retrospective/workflow.yaml +0 -52
  194. package/templates/bmad/bmm/workflows/4-implementation/sprint-planning/checklist.md +0 -33
  195. package/templates/bmad/bmm/workflows/4-implementation/sprint-planning/instructions.md +0 -226
  196. package/templates/bmad/bmm/workflows/4-implementation/sprint-planning/sprint-status-template.yaml +0 -55
  197. package/templates/bmad/bmm/workflows/4-implementation/sprint-planning/workflow.yaml +0 -47
  198. package/templates/bmad/bmm/workflows/4-implementation/sprint-status/instructions.md +0 -230
  199. package/templates/bmad/bmm/workflows/4-implementation/sprint-status/workflow.yaml +0 -25
  200. package/templates/bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-01-mode-detection.md +0 -174
  201. package/templates/bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-02-context-gathering.md +0 -118
  202. package/templates/bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-03-execute.md +0 -111
  203. package/templates/bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-04-self-check.md +0 -111
  204. package/templates/bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-05-adversarial-review.md +0 -104
  205. package/templates/bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-06-resolve-findings.md +0 -146
  206. package/templates/bmad/bmm/workflows/bmad-quick-flow/quick-dev/workflow.md +0 -50
  207. package/templates/bmad/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-01-understand.md +0 -189
  208. package/templates/bmad/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-02-investigate.md +0 -143
  209. package/templates/bmad/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-03-generate.md +0 -126
  210. package/templates/bmad/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-04-review.md +0 -200
  211. package/templates/bmad/bmm/workflows/bmad-quick-flow/quick-spec/tech-spec-template.md +0 -74
  212. package/templates/bmad/bmm/workflows/bmad-quick-flow/quick-spec/workflow.md +0 -79
  213. package/templates/bmad/bmm/workflows/document-project/checklist.md +0 -245
  214. package/templates/bmad/bmm/workflows/document-project/documentation-requirements.csv +0 -12
  215. package/templates/bmad/bmm/workflows/document-project/instructions.md +0 -130
  216. package/templates/bmad/bmm/workflows/document-project/templates/deep-dive-template.md +0 -345
  217. package/templates/bmad/bmm/workflows/document-project/templates/index-template.md +0 -169
  218. package/templates/bmad/bmm/workflows/document-project/templates/project-overview-template.md +0 -103
  219. package/templates/bmad/bmm/workflows/document-project/templates/project-scan-report-schema.json +0 -160
  220. package/templates/bmad/bmm/workflows/document-project/templates/source-tree-template.md +0 -135
  221. package/templates/bmad/bmm/workflows/document-project/workflow.yaml +0 -22
  222. package/templates/bmad/bmm/workflows/document-project/workflows/deep-dive-instructions.md +0 -298
  223. package/templates/bmad/bmm/workflows/document-project/workflows/deep-dive.yaml +0 -31
  224. package/templates/bmad/bmm/workflows/document-project/workflows/full-scan-instructions.md +0 -1106
  225. package/templates/bmad/bmm/workflows/document-project/workflows/full-scan.yaml +0 -31
  226. package/templates/bmad/bmm/workflows/generate-project-context/project-context-template.md +0 -21
  227. package/templates/bmad/bmm/workflows/generate-project-context/steps/step-01-discover.md +0 -184
  228. package/templates/bmad/bmm/workflows/generate-project-context/steps/step-02-generate.md +0 -318
  229. package/templates/bmad/bmm/workflows/generate-project-context/steps/step-03-complete.md +0 -278
  230. package/templates/bmad/bmm/workflows/generate-project-context/workflow.md +0 -49
  231. package/templates/bmad/bmm/workflows/qa/automate/checklist.md +0 -33
  232. package/templates/bmad/bmm/workflows/qa/automate/instructions.md +0 -110
  233. package/templates/bmad/bmm/workflows/qa/automate/workflow.yaml +0 -44
  234. package/templates/bmad/bmm/workflows/qa-generate-e2e-tests/checklist.md +0 -33
  235. package/templates/bmad/bmm/workflows/qa-generate-e2e-tests/instructions.md +0 -110
  236. package/templates/bmad/bmm/workflows/qa-generate-e2e-tests/workflow.yaml +0 -42
  237. package/templates/bmad/commands/bmad-agent-bmad-master.md +0 -15
  238. package/templates/bmad/commands/bmad-agent-bmm-analyst.md +0 -15
  239. package/templates/bmad/commands/bmad-agent-bmm-architect.md +0 -15
  240. package/templates/bmad/commands/bmad-agent-bmm-dev.md +0 -15
  241. package/templates/bmad/commands/bmad-agent-bmm-pm.md +0 -15
  242. package/templates/bmad/commands/bmad-agent-bmm-qa.md +0 -15
  243. package/templates/bmad/commands/bmad-agent-bmm-quick-flow-solo-dev.md +0 -15
  244. package/templates/bmad/commands/bmad-agent-bmm-sm.md +0 -15
  245. package/templates/bmad/commands/bmad-agent-bmm-tech-writer.md +0 -15
  246. package/templates/bmad/commands/bmad-agent-bmm-ux-designer.md +0 -15
  247. package/templates/bmad/commands/bmad-agent-tea-tea.md +0 -15
  248. package/templates/bmad/commands/bmad-bmm-check-implementation-readiness.md +0 -6
  249. package/templates/bmad/commands/bmad-bmm-code-review.md +0 -14
  250. package/templates/bmad/commands/bmad-bmm-correct-course.md +0 -14
  251. package/templates/bmad/commands/bmad-bmm-create-architecture.md +0 -6
  252. package/templates/bmad/commands/bmad-bmm-create-epics-and-stories.md +0 -6
  253. package/templates/bmad/commands/bmad-bmm-create-prd.md +0 -6
  254. package/templates/bmad/commands/bmad-bmm-create-product-brief.md +0 -6
  255. package/templates/bmad/commands/bmad-bmm-create-story.md +0 -14
  256. package/templates/bmad/commands/bmad-bmm-create-ux-design.md +0 -6
  257. package/templates/bmad/commands/bmad-bmm-dev-story.md +0 -14
  258. package/templates/bmad/commands/bmad-bmm-document-project.md +0 -14
  259. package/templates/bmad/commands/bmad-bmm-domain-research.md +0 -6
  260. package/templates/bmad/commands/bmad-bmm-edit-prd.md +0 -6
  261. package/templates/bmad/commands/bmad-bmm-generate-project-context.md +0 -6
  262. package/templates/bmad/commands/bmad-bmm-market-research.md +0 -6
  263. package/templates/bmad/commands/bmad-bmm-qa-automate.md +0 -15
  264. package/templates/bmad/commands/bmad-bmm-qa-generate-e2e-tests.md +0 -14
  265. package/templates/bmad/commands/bmad-bmm-quick-dev.md +0 -6
  266. package/templates/bmad/commands/bmad-bmm-quick-spec.md +0 -6
  267. package/templates/bmad/commands/bmad-bmm-retrospective.md +0 -14
  268. package/templates/bmad/commands/bmad-bmm-sprint-planning.md +0 -14
  269. package/templates/bmad/commands/bmad-bmm-sprint-status.md +0 -14
  270. package/templates/bmad/commands/bmad-bmm-technical-research.md +0 -6
  271. package/templates/bmad/commands/bmad-bmm-validate-prd.md +0 -6
  272. package/templates/bmad/commands/bmad-brainstorming.md +0 -6
  273. package/templates/bmad/commands/bmad-editorial-review-prose.md +0 -10
  274. package/templates/bmad/commands/bmad-editorial-review-structure.md +0 -10
  275. package/templates/bmad/commands/bmad-help.md +0 -10
  276. package/templates/bmad/commands/bmad-index-docs.md +0 -10
  277. package/templates/bmad/commands/bmad-party-mode.md +0 -6
  278. package/templates/bmad/commands/bmad-review-adversarial-general.md +0 -10
  279. package/templates/bmad/commands/bmad-review-edge-case-hunter.md +0 -10
  280. package/templates/bmad/commands/bmad-shard-doc.md +0 -10
  281. package/templates/bmad/commands/bmad-tea-teach-me-testing.md +0 -6
  282. package/templates/bmad/commands/bmad-tea-testarch-atdd.md +0 -14
  283. package/templates/bmad/commands/bmad-tea-testarch-automate.md +0 -14
  284. package/templates/bmad/commands/bmad-tea-testarch-ci.md +0 -14
  285. package/templates/bmad/commands/bmad-tea-testarch-framework.md +0 -14
  286. package/templates/bmad/commands/bmad-tea-testarch-nfr.md +0 -14
  287. package/templates/bmad/commands/bmad-tea-testarch-test-design.md +0 -14
  288. package/templates/bmad/commands/bmad-tea-testarch-test-review.md +0 -14
  289. package/templates/bmad/commands/bmad-tea-testarch-trace.md +0 -14
  290. package/templates/bmad/core/agents/bmad-master.md +0 -56
  291. package/templates/bmad/core/config.yaml +0 -8
  292. package/templates/bmad/core/module-help.csv +0 -10
  293. package/templates/bmad/core/tasks/editorial-review-prose.xml +0 -102
  294. package/templates/bmad/core/tasks/editorial-review-structure.xml +0 -208
  295. package/templates/bmad/core/tasks/help.md +0 -86
  296. package/templates/bmad/core/tasks/index-docs.xml +0 -65
  297. package/templates/bmad/core/tasks/review-adversarial-general.xml +0 -49
  298. package/templates/bmad/core/tasks/review-edge-case-hunter.xml +0 -63
  299. package/templates/bmad/core/tasks/shard-doc.xml +0 -108
  300. package/templates/bmad/core/tasks/workflow.xml +0 -235
  301. package/templates/bmad/core/workflows/advanced-elicitation/methods.csv +0 -51
  302. package/templates/bmad/core/workflows/advanced-elicitation/workflow.xml +0 -118
  303. package/templates/bmad/core/workflows/brainstorming/brain-methods.csv +0 -62
  304. package/templates/bmad/core/workflows/brainstorming/steps/step-01-session-setup.md +0 -210
  305. package/templates/bmad/core/workflows/brainstorming/steps/step-01b-continue.md +0 -122
  306. package/templates/bmad/core/workflows/brainstorming/steps/step-02a-user-selected.md +0 -225
  307. package/templates/bmad/core/workflows/brainstorming/steps/step-02b-ai-recommended.md +0 -237
  308. package/templates/bmad/core/workflows/brainstorming/steps/step-02c-random-selection.md +0 -209
  309. package/templates/bmad/core/workflows/brainstorming/steps/step-02d-progressive-flow.md +0 -264
  310. package/templates/bmad/core/workflows/brainstorming/steps/step-03-technique-execution.md +0 -399
  311. package/templates/bmad/core/workflows/brainstorming/steps/step-04-idea-organization.md +0 -303
  312. package/templates/bmad/core/workflows/brainstorming/template.md +0 -15
  313. package/templates/bmad/core/workflows/brainstorming/workflow.md +0 -60
  314. package/templates/bmad/core/workflows/party-mode/steps/step-01-agent-loading.md +0 -138
  315. package/templates/bmad/core/workflows/party-mode/steps/step-02-discussion-orchestration.md +0 -187
  316. package/templates/bmad/core/workflows/party-mode/steps/step-03-graceful-exit.md +0 -168
  317. package/templates/bmad/core/workflows/party-mode/workflow.md +0 -194
  318. package/templates/bmad/tea/agents/tea.md +0 -71
  319. package/templates/bmad/tea/config.yaml +0 -24
  320. package/templates/bmad/tea/module-help.csv +0 -10
  321. package/templates/bmad/tea/teams/default-party.csv +0 -2
  322. package/templates/bmad/tea/testarch/knowledge/adr-quality-readiness-checklist.md +0 -377
  323. package/templates/bmad/tea/testarch/knowledge/api-request.md +0 -563
  324. package/templates/bmad/tea/testarch/knowledge/api-testing-patterns.md +0 -915
  325. package/templates/bmad/tea/testarch/knowledge/auth-session.md +0 -548
  326. package/templates/bmad/tea/testarch/knowledge/burn-in.md +0 -273
  327. package/templates/bmad/tea/testarch/knowledge/ci-burn-in.md +0 -675
  328. package/templates/bmad/tea/testarch/knowledge/component-tdd.md +0 -486
  329. package/templates/bmad/tea/testarch/knowledge/contract-testing.md +0 -979
  330. package/templates/bmad/tea/testarch/knowledge/data-factories.md +0 -500
  331. package/templates/bmad/tea/testarch/knowledge/email-auth.md +0 -721
  332. package/templates/bmad/tea/testarch/knowledge/error-handling.md +0 -725
  333. package/templates/bmad/tea/testarch/knowledge/feature-flags.md +0 -750
  334. package/templates/bmad/tea/testarch/knowledge/file-utils.md +0 -456
  335. package/templates/bmad/tea/testarch/knowledge/fixture-architecture.md +0 -401
  336. package/templates/bmad/tea/testarch/knowledge/fixtures-composition.md +0 -382
  337. package/templates/bmad/tea/testarch/knowledge/intercept-network-call.md +0 -426
  338. package/templates/bmad/tea/testarch/knowledge/log.md +0 -426
  339. package/templates/bmad/tea/testarch/knowledge/network-error-monitor.md +0 -401
  340. package/templates/bmad/tea/testarch/knowledge/network-first.md +0 -486
  341. package/templates/bmad/tea/testarch/knowledge/network-recorder.md +0 -527
  342. package/templates/bmad/tea/testarch/knowledge/nfr-criteria.md +0 -670
  343. package/templates/bmad/tea/testarch/knowledge/overview.md +0 -286
  344. package/templates/bmad/tea/testarch/knowledge/pact-mcp.md +0 -204
  345. package/templates/bmad/tea/testarch/knowledge/pactjs-utils-consumer-helpers.md +0 -211
  346. package/templates/bmad/tea/testarch/knowledge/pactjs-utils-overview.md +0 -210
  347. package/templates/bmad/tea/testarch/knowledge/pactjs-utils-provider-verifier.md +0 -315
  348. package/templates/bmad/tea/testarch/knowledge/pactjs-utils-request-filter.md +0 -224
  349. package/templates/bmad/tea/testarch/knowledge/playwright-cli.md +0 -165
  350. package/templates/bmad/tea/testarch/knowledge/playwright-config.md +0 -730
  351. package/templates/bmad/tea/testarch/knowledge/probability-impact.md +0 -601
  352. package/templates/bmad/tea/testarch/knowledge/recurse.md +0 -421
  353. package/templates/bmad/tea/testarch/knowledge/risk-governance.md +0 -615
  354. package/templates/bmad/tea/testarch/knowledge/selective-testing.md +0 -732
  355. package/templates/bmad/tea/testarch/knowledge/selector-resilience.md +0 -527
  356. package/templates/bmad/tea/testarch/knowledge/test-healing-patterns.md +0 -644
  357. package/templates/bmad/tea/testarch/knowledge/test-levels-framework.md +0 -473
  358. package/templates/bmad/tea/testarch/knowledge/test-priorities-matrix.md +0 -373
  359. package/templates/bmad/tea/testarch/knowledge/test-quality.md +0 -664
  360. package/templates/bmad/tea/testarch/knowledge/timing-debugging.md +0 -372
  361. package/templates/bmad/tea/testarch/knowledge/visual-debugging.md +0 -524
  362. package/templates/bmad/tea/testarch/tea-index.csv +0 -41
  363. package/templates/bmad/tea/workflows/testarch/README.md +0 -74
  364. package/templates/bmad/tea/workflows/testarch/atdd/atdd-checklist-template.md +0 -371
  365. package/templates/bmad/tea/workflows/testarch/atdd/checklist.md +0 -374
  366. package/templates/bmad/tea/workflows/testarch/atdd/instructions.md +0 -45
  367. package/templates/bmad/tea/workflows/testarch/atdd/steps-c/step-01-preflight-and-context.md +0 -226
  368. package/templates/bmad/tea/workflows/testarch/atdd/steps-c/step-01b-resume.md +0 -96
  369. package/templates/bmad/tea/workflows/testarch/atdd/steps-c/step-02-generation-mode.md +0 -125
  370. package/templates/bmad/tea/workflows/testarch/atdd/steps-c/step-03-test-strategy.md +0 -110
  371. package/templates/bmad/tea/workflows/testarch/atdd/steps-c/step-04-generate-tests.md +0 -331
  372. package/templates/bmad/tea/workflows/testarch/atdd/steps-c/step-04a-subagent-api-failing.md +0 -215
  373. package/templates/bmad/tea/workflows/testarch/atdd/steps-c/step-04a-subprocess-api-failing.md +0 -215
  374. package/templates/bmad/tea/workflows/testarch/atdd/steps-c/step-04b-subagent-e2e-failing.md +0 -244
  375. package/templates/bmad/tea/workflows/testarch/atdd/steps-c/step-04b-subprocess-e2e-failing.md +0 -244
  376. package/templates/bmad/tea/workflows/testarch/atdd/steps-c/step-04c-aggregate.md +0 -370
  377. package/templates/bmad/tea/workflows/testarch/atdd/steps-c/step-05-validate-and-complete.md +0 -106
  378. package/templates/bmad/tea/workflows/testarch/atdd/steps-e/step-01-assess.md +0 -65
  379. package/templates/bmad/tea/workflows/testarch/atdd/steps-e/step-02-apply-edit.md +0 -60
  380. package/templates/bmad/tea/workflows/testarch/atdd/steps-v/step-01-validate.md +0 -67
  381. package/templates/bmad/tea/workflows/testarch/atdd/validation-report-20260127-095021.md +0 -73
  382. package/templates/bmad/tea/workflows/testarch/atdd/validation-report-20260127-102401.md +0 -116
  383. package/templates/bmad/tea/workflows/testarch/atdd/workflow-plan.md +0 -21
  384. package/templates/bmad/tea/workflows/testarch/atdd/workflow.md +0 -41
  385. package/templates/bmad/tea/workflows/testarch/atdd/workflow.yaml +0 -46
  386. package/templates/bmad/tea/workflows/testarch/automate/checklist.md +0 -582
  387. package/templates/bmad/tea/workflows/testarch/automate/instructions.md +0 -50
  388. package/templates/bmad/tea/workflows/testarch/automate/steps-c/step-01-preflight-and-context.md +0 -237
  389. package/templates/bmad/tea/workflows/testarch/automate/steps-c/step-01b-resume.md +0 -94
  390. package/templates/bmad/tea/workflows/testarch/automate/steps-c/step-02-identify-targets.md +0 -145
  391. package/templates/bmad/tea/workflows/testarch/automate/steps-c/step-03-generate-tests.md +0 -392
  392. package/templates/bmad/tea/workflows/testarch/automate/steps-c/step-03a-subagent-api.md +0 -193
  393. package/templates/bmad/tea/workflows/testarch/automate/steps-c/step-03a-subprocess-api.md +0 -183
  394. package/templates/bmad/tea/workflows/testarch/automate/steps-c/step-03b-subagent-backend.md +0 -246
  395. package/templates/bmad/tea/workflows/testarch/automate/steps-c/step-03b-subagent-e2e.md +0 -213
  396. package/templates/bmad/tea/workflows/testarch/automate/steps-c/step-03b-subprocess-backend.md +0 -246
  397. package/templates/bmad/tea/workflows/testarch/automate/steps-c/step-03b-subprocess-e2e.md +0 -213
  398. package/templates/bmad/tea/workflows/testarch/automate/steps-c/step-03c-aggregate.md +0 -393
  399. package/templates/bmad/tea/workflows/testarch/automate/steps-c/step-04-validate-and-summarize.md +0 -106
  400. package/templates/bmad/tea/workflows/testarch/automate/steps-e/step-01-assess.md +0 -65
  401. package/templates/bmad/tea/workflows/testarch/automate/steps-e/step-02-apply-edit.md +0 -60
  402. package/templates/bmad/tea/workflows/testarch/automate/steps-v/step-01-validate.md +0 -67
  403. package/templates/bmad/tea/workflows/testarch/automate/validation-report-20260127-095021.md +0 -72
  404. package/templates/bmad/tea/workflows/testarch/automate/validation-report-20260127-102401.md +0 -114
  405. package/templates/bmad/tea/workflows/testarch/automate/workflow-plan.md +0 -20
  406. package/templates/bmad/tea/workflows/testarch/automate/workflow.md +0 -41
  407. package/templates/bmad/tea/workflows/testarch/automate/workflow.yaml +0 -53
  408. package/templates/bmad/tea/workflows/testarch/ci/azure-pipelines-template.yaml +0 -155
  409. package/templates/bmad/tea/workflows/testarch/ci/checklist.md +0 -288
  410. package/templates/bmad/tea/workflows/testarch/ci/github-actions-template.yaml +0 -210
  411. package/templates/bmad/tea/workflows/testarch/ci/gitlab-ci-template.yaml +0 -158
  412. package/templates/bmad/tea/workflows/testarch/ci/harness-pipeline-template.yaml +0 -159
  413. package/templates/bmad/tea/workflows/testarch/ci/instructions.md +0 -45
  414. package/templates/bmad/tea/workflows/testarch/ci/jenkins-pipeline-template.groovy +0 -129
  415. package/templates/bmad/tea/workflows/testarch/ci/steps-c/step-01-preflight.md +0 -158
  416. package/templates/bmad/tea/workflows/testarch/ci/steps-c/step-01b-resume.md +0 -110
  417. package/templates/bmad/tea/workflows/testarch/ci/steps-c/step-02-generate-pipeline.md +0 -241
  418. package/templates/bmad/tea/workflows/testarch/ci/steps-c/step-03-configure-quality-gates.md +0 -112
  419. package/templates/bmad/tea/workflows/testarch/ci/steps-c/step-04-validate-and-summary.md +0 -92
  420. package/templates/bmad/tea/workflows/testarch/ci/steps-e/step-01-assess.md +0 -65
  421. package/templates/bmad/tea/workflows/testarch/ci/steps-e/step-02-apply-edit.md +0 -60
  422. package/templates/bmad/tea/workflows/testarch/ci/steps-v/step-01-validate.md +0 -67
  423. package/templates/bmad/tea/workflows/testarch/ci/validation-report-20260127-095021.md +0 -72
  424. package/templates/bmad/tea/workflows/testarch/ci/validation-report-20260127-102401.md +0 -114
  425. package/templates/bmad/tea/workflows/testarch/ci/workflow-plan.md +0 -20
  426. package/templates/bmad/tea/workflows/testarch/ci/workflow.md +0 -41
  427. package/templates/bmad/tea/workflows/testarch/ci/workflow.yaml +0 -48
  428. package/templates/bmad/tea/workflows/testarch/framework/checklist.md +0 -321
  429. package/templates/bmad/tea/workflows/testarch/framework/instructions.md +0 -45
  430. package/templates/bmad/tea/workflows/testarch/framework/steps-c/step-01-preflight.md +0 -132
  431. package/templates/bmad/tea/workflows/testarch/framework/steps-c/step-01b-resume.md +0 -116
  432. package/templates/bmad/tea/workflows/testarch/framework/steps-c/step-02-select-framework.md +0 -117
  433. package/templates/bmad/tea/workflows/testarch/framework/steps-c/step-03-scaffold-framework.md +0 -319
  434. package/templates/bmad/tea/workflows/testarch/framework/steps-c/step-04-docs-and-scripts.md +0 -105
  435. package/templates/bmad/tea/workflows/testarch/framework/steps-c/step-05-validate-and-summary.md +0 -93
  436. package/templates/bmad/tea/workflows/testarch/framework/steps-e/step-01-assess.md +0 -65
  437. package/templates/bmad/tea/workflows/testarch/framework/steps-e/step-02-apply-edit.md +0 -60
  438. package/templates/bmad/tea/workflows/testarch/framework/steps-v/step-01-validate.md +0 -67
  439. package/templates/bmad/tea/workflows/testarch/framework/validation-report-20260127-095021.md +0 -73
  440. package/templates/bmad/tea/workflows/testarch/framework/validation-report-20260127-102401.md +0 -116
  441. package/templates/bmad/tea/workflows/testarch/framework/workflow-plan.md +0 -22
  442. package/templates/bmad/tea/workflows/testarch/framework/workflow.md +0 -41
  443. package/templates/bmad/tea/workflows/testarch/framework/workflow.yaml +0 -48
  444. package/templates/bmad/tea/workflows/testarch/nfr-assess/checklist.md +0 -407
  445. package/templates/bmad/tea/workflows/testarch/nfr-assess/instructions.md +0 -43
  446. package/templates/bmad/tea/workflows/testarch/nfr-assess/nfr-report-template.md +0 -470
  447. package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-c/step-01-load-context.md +0 -138
  448. package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-c/step-01b-resume.md +0 -106
  449. package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-c/step-02-define-thresholds.md +0 -107
  450. package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-c/step-03-gather-evidence.md +0 -108
  451. package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-c/step-04-evaluate-and-score.md +0 -254
  452. package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-c/step-04a-subagent-security.md +0 -138
  453. package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-c/step-04a-subprocess-security.md +0 -138
  454. package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-c/step-04b-subagent-performance.md +0 -84
  455. package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-c/step-04b-subprocess-performance.md +0 -84
  456. package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-c/step-04c-subagent-reliability.md +0 -85
  457. package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-c/step-04c-subprocess-reliability.md +0 -85
  458. package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-c/step-04d-subagent-scalability.md +0 -88
  459. package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-c/step-04d-subprocess-scalability.md +0 -88
  460. package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-c/step-04e-aggregate-nfr.md +0 -264
  461. package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-c/step-05-generate-report.md +0 -108
  462. package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-e/step-01-assess.md +0 -65
  463. package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-e/step-02-apply-edit.md +0 -60
  464. package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-v/step-01-validate.md +0 -67
  465. package/templates/bmad/tea/workflows/testarch/nfr-assess/validation-report-20260127-095021.md +0 -73
  466. package/templates/bmad/tea/workflows/testarch/nfr-assess/validation-report-20260127-102401.md +0 -116
  467. package/templates/bmad/tea/workflows/testarch/nfr-assess/workflow-plan.md +0 -19
  468. package/templates/bmad/tea/workflows/testarch/nfr-assess/workflow.md +0 -41
  469. package/templates/bmad/tea/workflows/testarch/nfr-assess/workflow.yaml +0 -48
  470. package/templates/bmad/tea/workflows/testarch/teach-me-testing/checklist.md +0 -197
  471. package/templates/bmad/tea/workflows/testarch/teach-me-testing/data/curriculum.yaml +0 -129
  472. package/templates/bmad/tea/workflows/testarch/teach-me-testing/data/quiz-questions.yaml +0 -206
  473. package/templates/bmad/tea/workflows/testarch/teach-me-testing/data/role-paths.yaml +0 -136
  474. package/templates/bmad/tea/workflows/testarch/teach-me-testing/data/session-content-map.yaml +0 -207
  475. package/templates/bmad/tea/workflows/testarch/teach-me-testing/data/tea-resources-index.yaml +0 -359
  476. package/templates/bmad/tea/workflows/testarch/teach-me-testing/instructions.md +0 -130
  477. package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-01-init.md +0 -235
  478. package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-01b-continue.md +0 -147
  479. package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-02-assess.md +0 -258
  480. package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-03-session-menu.md +0 -219
  481. package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-04-session-01.md +0 -460
  482. package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-04-session-02.md +0 -465
  483. package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-04-session-03.md +0 -301
  484. package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-04-session-04.md +0 -234
  485. package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-04-session-05.md +0 -234
  486. package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-04-session-06.md +0 -209
  487. package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-04-session-07.md +0 -212
  488. package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-05-completion.md +0 -339
  489. package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-e/step-e-01-assess-workflow.md +0 -141
  490. package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-e/step-e-02-apply-edits.md +0 -122
  491. package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-v/step-v-01-validate.md +0 -263
  492. package/templates/bmad/tea/workflows/testarch/teach-me-testing/templates/certificate-template.md +0 -86
  493. package/templates/bmad/tea/workflows/testarch/teach-me-testing/templates/progress-template.yaml +0 -95
  494. package/templates/bmad/tea/workflows/testarch/teach-me-testing/templates/session-notes-template.md +0 -83
  495. package/templates/bmad/tea/workflows/testarch/teach-me-testing/workflow-plan-teach-me-testing.md +0 -950
  496. package/templates/bmad/tea/workflows/testarch/teach-me-testing/workflow.md +0 -90
  497. package/templates/bmad/tea/workflows/testarch/test-design/checklist.md +0 -464
  498. package/templates/bmad/tea/workflows/testarch/test-design/instructions.md +0 -105
  499. package/templates/bmad/tea/workflows/testarch/test-design/steps-c/step-01-detect-mode.md +0 -134
  500. package/templates/bmad/tea/workflows/testarch/test-design/steps-c/step-01b-resume.md +0 -102
  501. package/templates/bmad/tea/workflows/testarch/test-design/steps-c/step-02-load-context.md +0 -242
  502. package/templates/bmad/tea/workflows/testarch/test-design/steps-c/step-03-risk-and-testability.md +0 -110
  503. package/templates/bmad/tea/workflows/testarch/test-design/steps-c/step-04-coverage-plan.md +0 -123
  504. package/templates/bmad/tea/workflows/testarch/test-design/steps-c/step-05-generate-output.md +0 -222
  505. package/templates/bmad/tea/workflows/testarch/test-design/steps-e/step-01-assess.md +0 -65
  506. package/templates/bmad/tea/workflows/testarch/test-design/steps-e/step-02-apply-edit.md +0 -60
  507. package/templates/bmad/tea/workflows/testarch/test-design/steps-v/step-01-validate.md +0 -67
  508. package/templates/bmad/tea/workflows/testarch/test-design/test-design-architecture-template.md +0 -230
  509. package/templates/bmad/tea/workflows/testarch/test-design/test-design-handoff-template.md +0 -70
  510. package/templates/bmad/tea/workflows/testarch/test-design/test-design-qa-template.md +0 -396
  511. package/templates/bmad/tea/workflows/testarch/test-design/test-design-template.md +0 -344
  512. package/templates/bmad/tea/workflows/testarch/test-design/validation-report-20260127-095021.md +0 -73
  513. package/templates/bmad/tea/workflows/testarch/test-design/validation-report-20260127-102401.md +0 -116
  514. package/templates/bmad/tea/workflows/testarch/test-design/workflow-plan.md +0 -22
  515. package/templates/bmad/tea/workflows/testarch/test-design/workflow.md +0 -41
  516. package/templates/bmad/tea/workflows/testarch/test-design/workflow.yaml +0 -77
  517. package/templates/bmad/tea/workflows/testarch/test-review/checklist.md +0 -475
  518. package/templates/bmad/tea/workflows/testarch/test-review/instructions.md +0 -45
  519. package/templates/bmad/tea/workflows/testarch/test-review/steps-c/step-01-load-context.md +0 -197
  520. package/templates/bmad/tea/workflows/testarch/test-review/steps-c/step-01b-resume.md +0 -104
  521. package/templates/bmad/tea/workflows/testarch/test-review/steps-c/step-02-discover-tests.md +0 -113
  522. package/templates/bmad/tea/workflows/testarch/test-review/steps-c/step-03-quality-evaluation.md +0 -274
  523. package/templates/bmad/tea/workflows/testarch/test-review/steps-c/step-03a-subagent-determinism.md +0 -214
  524. package/templates/bmad/tea/workflows/testarch/test-review/steps-c/step-03a-subprocess-determinism.md +0 -214
  525. package/templates/bmad/tea/workflows/testarch/test-review/steps-c/step-03b-subagent-isolation.md +0 -125
  526. package/templates/bmad/tea/workflows/testarch/test-review/steps-c/step-03b-subprocess-isolation.md +0 -125
  527. package/templates/bmad/tea/workflows/testarch/test-review/steps-c/step-03c-subagent-maintainability.md +0 -102
  528. package/templates/bmad/tea/workflows/testarch/test-review/steps-c/step-03c-subprocess-maintainability.md +0 -102
  529. package/templates/bmad/tea/workflows/testarch/test-review/steps-c/step-03d-subprocess-coverage.md +0 -111
  530. package/templates/bmad/tea/workflows/testarch/test-review/steps-c/step-03e-subagent-performance.md +0 -117
  531. package/templates/bmad/tea/workflows/testarch/test-review/steps-c/step-03e-subprocess-performance.md +0 -117
  532. package/templates/bmad/tea/workflows/testarch/test-review/steps-c/step-03f-aggregate-scores.md +0 -277
  533. package/templates/bmad/tea/workflows/testarch/test-review/steps-c/step-04-generate-report.md +0 -111
  534. package/templates/bmad/tea/workflows/testarch/test-review/steps-e/step-01-assess.md +0 -65
  535. package/templates/bmad/tea/workflows/testarch/test-review/steps-e/step-02-apply-edit.md +0 -60
  536. package/templates/bmad/tea/workflows/testarch/test-review/steps-v/step-01-validate.md +0 -67
  537. package/templates/bmad/tea/workflows/testarch/test-review/test-review-template.md +0 -387
  538. package/templates/bmad/tea/workflows/testarch/test-review/validation-report-20260127-095021.md +0 -72
  539. package/templates/bmad/tea/workflows/testarch/test-review/validation-report-20260127-102401.md +0 -114
  540. package/templates/bmad/tea/workflows/testarch/test-review/workflow-plan.md +0 -18
  541. package/templates/bmad/tea/workflows/testarch/test-review/workflow.md +0 -41
  542. package/templates/bmad/tea/workflows/testarch/test-review/workflow.yaml +0 -48
  543. package/templates/bmad/tea/workflows/testarch/trace/checklist.md +0 -647
  544. package/templates/bmad/tea/workflows/testarch/trace/instructions.md +0 -43
  545. package/templates/bmad/tea/workflows/testarch/trace/steps-c/step-01-load-context.md +0 -105
  546. package/templates/bmad/tea/workflows/testarch/trace/steps-c/step-01b-resume.md +0 -102
  547. package/templates/bmad/tea/workflows/testarch/trace/steps-c/step-02-discover-tests.md +0 -112
  548. package/templates/bmad/tea/workflows/testarch/trace/steps-c/step-03-map-criteria.md +0 -97
  549. package/templates/bmad/tea/workflows/testarch/trace/steps-c/step-04-analyze-gaps.md +0 -421
  550. package/templates/bmad/tea/workflows/testarch/trace/steps-c/step-05-gate-decision.md +0 -266
  551. package/templates/bmad/tea/workflows/testarch/trace/steps-e/step-01-assess.md +0 -65
  552. package/templates/bmad/tea/workflows/testarch/trace/steps-e/step-02-apply-edit.md +0 -60
  553. package/templates/bmad/tea/workflows/testarch/trace/steps-v/step-01-validate.md +0 -67
  554. package/templates/bmad/tea/workflows/testarch/trace/trace-template.md +0 -708
  555. package/templates/bmad/tea/workflows/testarch/trace/validation-report-20260127-095021.md +0 -73
  556. package/templates/bmad/tea/workflows/testarch/trace/validation-report-20260127-102401.md +0 -116
  557. package/templates/bmad/tea/workflows/testarch/trace/workflow-plan.md +0 -21
  558. package/templates/bmad/tea/workflows/testarch/trace/workflow.md +0 -41
  559. package/templates/bmad/tea/workflows/testarch/trace/workflow.yaml +0 -56
  560. package/templates/ecc/agents/architect.md +0 -211
  561. package/templates/ecc/agents/build-error-resolver.md +0 -114
  562. package/templates/ecc/agents/chief-of-staff.md +0 -151
  563. package/templates/ecc/agents/code-reviewer.md +0 -224
  564. package/templates/ecc/agents/database-reviewer.md +0 -91
  565. package/templates/ecc/agents/doc-updater.md +0 -107
  566. package/templates/ecc/agents/e2e-runner.md +0 -107
  567. package/templates/ecc/agents/go-build-resolver.md +0 -94
  568. package/templates/ecc/agents/go-reviewer.md +0 -76
  569. package/templates/ecc/agents/planner.md +0 -212
  570. package/templates/ecc/agents/python-reviewer.md +0 -98
  571. package/templates/ecc/agents/refactor-cleaner.md +0 -85
  572. package/templates/ecc/agents/security-reviewer.md +0 -108
  573. package/templates/ecc/agents/tdd-guide.md +0 -80
  574. package/templates/ecc/commands/build-fix.md +0 -62
  575. package/templates/ecc/commands/checkpoint.md +0 -74
  576. package/templates/ecc/commands/claw.md +0 -79
  577. package/templates/ecc/commands/code-review.md +0 -40
  578. package/templates/ecc/commands/e2e.md +0 -363
  579. package/templates/ecc/commands/eval.md +0 -120
  580. package/templates/ecc/commands/evolve.md +0 -193
  581. package/templates/ecc/commands/go-build.md +0 -183
  582. package/templates/ecc/commands/go-review.md +0 -148
  583. package/templates/ecc/commands/go-test.md +0 -268
  584. package/templates/ecc/commands/instinct-export.md +0 -91
  585. package/templates/ecc/commands/instinct-import.md +0 -142
  586. package/templates/ecc/commands/instinct-status.md +0 -86
  587. package/templates/ecc/commands/learn-eval.md +0 -91
  588. package/templates/ecc/commands/learn.md +0 -70
  589. package/templates/ecc/commands/multi-backend.md +0 -158
  590. package/templates/ecc/commands/multi-execute.md +0 -310
  591. package/templates/ecc/commands/multi-frontend.md +0 -158
  592. package/templates/ecc/commands/multi-plan.md +0 -261
  593. package/templates/ecc/commands/multi-workflow.md +0 -183
  594. package/templates/ecc/commands/orchestrate.md +0 -172
  595. package/templates/ecc/commands/plan.md +0 -113
  596. package/templates/ecc/commands/pm2.md +0 -272
  597. package/templates/ecc/commands/python-review.md +0 -297
  598. package/templates/ecc/commands/refactor-clean.md +0 -80
  599. package/templates/ecc/commands/sessions.md +0 -305
  600. package/templates/ecc/commands/setup-pm.md +0 -80
  601. package/templates/ecc/commands/skill-create.md +0 -174
  602. package/templates/ecc/commands/tdd.md +0 -326
  603. package/templates/ecc/commands/test-coverage.md +0 -69
  604. package/templates/ecc/commands/update-codemaps.md +0 -72
  605. package/templates/ecc/commands/update-docs.md +0 -84
  606. package/templates/ecc/commands/verify.md +0 -59
  607. package/templates/ecc/rules/README.md +0 -103
  608. package/templates/ecc/rules/common/agents.md +0 -49
  609. package/templates/ecc/rules/common/coding-style.md +0 -48
  610. package/templates/ecc/rules/common/development-workflow.md +0 -37
  611. package/templates/ecc/rules/common/git-workflow.md +0 -24
  612. package/templates/ecc/rules/common/hooks.md +0 -30
  613. package/templates/ecc/rules/common/patterns.md +0 -31
  614. package/templates/ecc/rules/common/performance.md +0 -55
  615. package/templates/ecc/rules/common/security.md +0 -29
  616. package/templates/ecc/rules/common/testing.md +0 -29
  617. package/templates/ecc/rules/golang/coding-style.md +0 -32
  618. package/templates/ecc/rules/golang/hooks.md +0 -17
  619. package/templates/ecc/rules/golang/patterns.md +0 -45
  620. package/templates/ecc/rules/golang/security.md +0 -34
  621. package/templates/ecc/rules/golang/testing.md +0 -31
  622. package/templates/ecc/rules/python/coding-style.md +0 -42
  623. package/templates/ecc/rules/python/hooks.md +0 -19
  624. package/templates/ecc/rules/python/patterns.md +0 -39
  625. package/templates/ecc/rules/python/security.md +0 -30
  626. package/templates/ecc/rules/python/testing.md +0 -38
  627. package/templates/ecc/rules/swift/coding-style.md +0 -47
  628. package/templates/ecc/rules/swift/hooks.md +0 -20
  629. package/templates/ecc/rules/swift/patterns.md +0 -66
  630. package/templates/ecc/rules/swift/security.md +0 -33
  631. package/templates/ecc/rules/swift/testing.md +0 -45
  632. package/templates/ecc/rules/typescript/coding-style.md +0 -65
  633. package/templates/ecc/rules/typescript/hooks.md +0 -22
  634. package/templates/ecc/rules/typescript/patterns.md +0 -52
  635. package/templates/ecc/rules/typescript/security.md +0 -28
  636. package/templates/ecc/rules/typescript/testing.md +0 -18
  637. package/templates/ecc/skills/api-design/SKILL.md +0 -523
  638. package/templates/ecc/skills/article-writing/SKILL.md +0 -85
  639. package/templates/ecc/skills/backend-patterns/SKILL.md +0 -598
  640. package/templates/ecc/skills/clickhouse-io/SKILL.md +0 -439
  641. package/templates/ecc/skills/coding-standards/SKILL.md +0 -530
  642. package/templates/ecc/skills/configure-ecc/SKILL.md +0 -326
  643. package/templates/ecc/skills/content-engine/SKILL.md +0 -88
  644. package/templates/ecc/skills/content-hash-cache-pattern/SKILL.md +0 -161
  645. package/templates/ecc/skills/continuous-learning/SKILL.md +0 -119
  646. package/templates/ecc/skills/continuous-learning/config.json +0 -18
  647. package/templates/ecc/skills/continuous-learning/evaluate-session.sh +0 -69
  648. package/templates/ecc/skills/continuous-learning-v2/SKILL.md +0 -295
  649. package/templates/ecc/skills/continuous-learning-v2/agents/observer.md +0 -137
  650. package/templates/ecc/skills/continuous-learning-v2/agents/start-observer.sh +0 -143
  651. package/templates/ecc/skills/continuous-learning-v2/config.json +0 -41
  652. package/templates/ecc/skills/continuous-learning-v2/hooks/observe.sh +0 -164
  653. package/templates/ecc/skills/continuous-learning-v2/scripts/instinct-cli.py +0 -575
  654. package/templates/ecc/skills/continuous-learning-v2/scripts/test_parse_instinct.py +0 -82
  655. package/templates/ecc/skills/cost-aware-llm-pipeline/SKILL.md +0 -183
  656. package/templates/ecc/skills/cpp-coding-standards/SKILL.md +0 -723
  657. package/templates/ecc/skills/cpp-testing/SKILL.md +0 -323
  658. package/templates/ecc/skills/database-migrations/SKILL.md +0 -335
  659. package/templates/ecc/skills/deployment-patterns/SKILL.md +0 -427
  660. package/templates/ecc/skills/django-patterns/SKILL.md +0 -734
  661. package/templates/ecc/skills/django-security/SKILL.md +0 -593
  662. package/templates/ecc/skills/django-tdd/SKILL.md +0 -729
  663. package/templates/ecc/skills/django-verification/SKILL.md +0 -469
  664. package/templates/ecc/skills/docker-patterns/SKILL.md +0 -364
  665. package/templates/ecc/skills/e2e-testing/SKILL.md +0 -326
  666. package/templates/ecc/skills/eval-harness/SKILL.md +0 -236
  667. package/templates/ecc/skills/foundation-models-on-device/SKILL.md +0 -243
  668. package/templates/ecc/skills/frontend-patterns/SKILL.md +0 -642
  669. package/templates/ecc/skills/frontend-slides/SKILL.md +0 -184
  670. package/templates/ecc/skills/frontend-slides/STYLE_PRESETS.md +0 -330
  671. package/templates/ecc/skills/golang-patterns/SKILL.md +0 -674
  672. package/templates/ecc/skills/golang-testing/SKILL.md +0 -720
  673. package/templates/ecc/skills/investor-materials/SKILL.md +0 -96
  674. package/templates/ecc/skills/investor-outreach/SKILL.md +0 -76
  675. package/templates/ecc/skills/iterative-retrieval/SKILL.md +0 -211
  676. package/templates/ecc/skills/java-coding-standards/SKILL.md +0 -147
  677. package/templates/ecc/skills/jpa-patterns/SKILL.md +0 -151
  678. package/templates/ecc/skills/liquid-glass-design/SKILL.md +0 -279
  679. package/templates/ecc/skills/market-research/SKILL.md +0 -75
  680. package/templates/ecc/skills/nutrient-document-processing/SKILL.md +0 -165
  681. package/templates/ecc/skills/postgres-patterns/SKILL.md +0 -147
  682. package/templates/ecc/skills/project-guidelines-example/SKILL.md +0 -349
  683. package/templates/ecc/skills/python-patterns/SKILL.md +0 -750
  684. package/templates/ecc/skills/python-testing/SKILL.md +0 -816
  685. package/templates/ecc/skills/regex-vs-llm-structured-text/SKILL.md +0 -220
  686. package/templates/ecc/skills/search-first/SKILL.md +0 -161
  687. package/templates/ecc/skills/security-review/SKILL.md +0 -495
  688. package/templates/ecc/skills/security-review/cloud-infrastructure-security.md +0 -361
  689. package/templates/ecc/skills/security-scan/SKILL.md +0 -165
  690. package/templates/ecc/skills/skill-stocktake/SKILL.md +0 -176
  691. package/templates/ecc/skills/skill-stocktake/scripts/quick-diff.sh +0 -87
  692. package/templates/ecc/skills/skill-stocktake/scripts/save-results.sh +0 -56
  693. package/templates/ecc/skills/skill-stocktake/scripts/scan.sh +0 -170
  694. package/templates/ecc/skills/springboot-patterns/SKILL.md +0 -314
  695. package/templates/ecc/skills/springboot-security/SKILL.md +0 -272
  696. package/templates/ecc/skills/springboot-tdd/SKILL.md +0 -158
  697. package/templates/ecc/skills/springboot-verification/SKILL.md +0 -231
  698. package/templates/ecc/skills/strategic-compact/SKILL.md +0 -103
  699. package/templates/ecc/skills/strategic-compact/suggest-compact.sh +0 -54
  700. package/templates/ecc/skills/swift-actor-persistence/SKILL.md +0 -143
  701. package/templates/ecc/skills/swift-concurrency-6-2/SKILL.md +0 -216
  702. package/templates/ecc/skills/swift-protocol-di-testing/SKILL.md +0 -190
  703. package/templates/ecc/skills/swiftui-patterns/SKILL.md +0 -259
  704. package/templates/ecc/skills/tdd-workflow/SKILL.md +0 -410
  705. package/templates/ecc/skills/verification-loop/SKILL.md +0 -126
  706. package/templates/ecc/skills/visa-doc-translate/README.md +0 -86
  707. package/templates/ecc/skills/visa-doc-translate/SKILL.md +0 -117
  708. package/templates/ext-skills/pinchtab/SKILL.md +0 -173
  709. package/templates/ext-skills/pinchtab/TRUST.md +0 -69
  710. package/templates/ext-skills/pinchtab/references/api.md +0 -297
  711. package/templates/ext-skills/pinchtab/references/env.md +0 -45
  712. package/templates/ext-skills/pinchtab/references/profiles.md +0 -107
  713. package/templates/mcp/trae/mcp.json +0 -35
  714. package/templates/plugins/claude-code-setup/.claude-plugin/plugin.json +0 -9
  715. package/templates/plugins/claude-code-setup/LICENSE +0 -202
  716. package/templates/plugins/claude-code-setup/README.md +0 -29
  717. package/templates/plugins/claude-code-setup/automation-recommender-example.png +0 -0
  718. package/templates/plugins/claude-code-setup/skills/claude-automation-recommender/SKILL.md +0 -288
  719. package/templates/plugins/claude-code-setup/skills/claude-automation-recommender/references/hooks-patterns.md +0 -226
  720. package/templates/plugins/claude-code-setup/skills/claude-automation-recommender/references/mcp-servers.md +0 -263
  721. package/templates/plugins/claude-code-setup/skills/claude-automation-recommender/references/plugins-reference.md +0 -98
  722. package/templates/plugins/claude-code-setup/skills/claude-automation-recommender/references/skills-reference.md +0 -408
  723. package/templates/plugins/claude-code-setup/skills/claude-automation-recommender/references/subagent-templates.md +0 -181
  724. package/templates/plugins/claude-md-management/.claude-plugin/plugin.json +0 -9
  725. package/templates/plugins/claude-md-management/LICENSE +0 -202
  726. package/templates/plugins/claude-md-management/README.md +0 -40
  727. package/templates/plugins/claude-md-management/claude-md-improver-example.png +0 -0
  728. package/templates/plugins/claude-md-management/commands/revise-claude-md.md +0 -54
  729. package/templates/plugins/claude-md-management/revise-claude-md-example.png +0 -0
  730. package/templates/plugins/claude-md-management/skills/claude-md-improver/SKILL.md +0 -179
  731. package/templates/plugins/claude-md-management/skills/claude-md-improver/references/quality-criteria.md +0 -109
  732. package/templates/plugins/claude-md-management/skills/claude-md-improver/references/templates.md +0 -253
  733. package/templates/plugins/claude-md-management/skills/claude-md-improver/references/update-guidelines.md +0 -150
  734. package/templates/plugins/code-simplifier/.claude-plugin/plugin.json +0 -9
  735. package/templates/plugins/code-simplifier/LICENSE +0 -202
  736. package/templates/plugins/code-simplifier/agents/code-simplifier.md +0 -52
  737. package/templates/plugins/commit-commands/.claude-plugin/plugin.json +0 -9
  738. package/templates/plugins/commit-commands/LICENSE +0 -202
  739. package/templates/plugins/commit-commands/README.md +0 -225
  740. package/templates/plugins/commit-commands/commands/clean_gone.md +0 -53
  741. package/templates/plugins/commit-commands/commands/commit-push-pr.md +0 -20
  742. package/templates/plugins/commit-commands/commands/commit.md +0 -17
  743. package/templates/trae-bmad/rules/bmad-agent-bmad-master.md +0 -15
  744. package/templates/trae-bmad/rules/bmad-agent-bmm-analyst.md +0 -15
  745. package/templates/trae-bmad/rules/bmad-agent-bmm-architect.md +0 -15
  746. package/templates/trae-bmad/rules/bmad-agent-bmm-dev.md +0 -15
  747. package/templates/trae-bmad/rules/bmad-agent-bmm-pm.md +0 -15
  748. package/templates/trae-bmad/rules/bmad-agent-bmm-qa.md +0 -15
  749. package/templates/trae-bmad/rules/bmad-agent-bmm-quick-flow-solo-dev.md +0 -15
  750. package/templates/trae-bmad/rules/bmad-agent-bmm-sm.md +0 -15
  751. package/templates/trae-bmad/rules/bmad-agent-bmm-tech-writer.md +0 -15
  752. package/templates/trae-bmad/rules/bmad-agent-bmm-ux-designer.md +0 -15
  753. package/templates/trae-bmad/rules/bmad-agent-tea-tea.md +0 -15
  754. package/templates/trae-bmad/rules/bmad-bmm-check-implementation-readiness.md +0 -6
  755. package/templates/trae-bmad/rules/bmad-bmm-code-review.md +0 -14
  756. package/templates/trae-bmad/rules/bmad-bmm-correct-course.md +0 -14
  757. package/templates/trae-bmad/rules/bmad-bmm-create-architecture.md +0 -6
  758. package/templates/trae-bmad/rules/bmad-bmm-create-epics-and-stories.md +0 -6
  759. package/templates/trae-bmad/rules/bmad-bmm-create-prd.md +0 -6
  760. package/templates/trae-bmad/rules/bmad-bmm-create-product-brief.md +0 -6
  761. package/templates/trae-bmad/rules/bmad-bmm-create-story.md +0 -14
  762. package/templates/trae-bmad/rules/bmad-bmm-create-ux-design.md +0 -6
  763. package/templates/trae-bmad/rules/bmad-bmm-dev-story.md +0 -14
  764. package/templates/trae-bmad/rules/bmad-bmm-document-project.md +0 -14
  765. package/templates/trae-bmad/rules/bmad-bmm-domain-research.md +0 -6
  766. package/templates/trae-bmad/rules/bmad-bmm-edit-prd.md +0 -6
  767. package/templates/trae-bmad/rules/bmad-bmm-generate-project-context.md +0 -6
  768. package/templates/trae-bmad/rules/bmad-bmm-market-research.md +0 -6
  769. package/templates/trae-bmad/rules/bmad-bmm-qa-automate.md +0 -15
  770. package/templates/trae-bmad/rules/bmad-bmm-qa-generate-e2e-tests.md +0 -14
  771. package/templates/trae-bmad/rules/bmad-bmm-quick-dev.md +0 -6
  772. package/templates/trae-bmad/rules/bmad-bmm-quick-spec.md +0 -6
  773. package/templates/trae-bmad/rules/bmad-bmm-retrospective.md +0 -14
  774. package/templates/trae-bmad/rules/bmad-bmm-sprint-planning.md +0 -14
  775. package/templates/trae-bmad/rules/bmad-bmm-sprint-status.md +0 -14
  776. package/templates/trae-bmad/rules/bmad-bmm-technical-research.md +0 -6
  777. package/templates/trae-bmad/rules/bmad-bmm-validate-prd.md +0 -6
  778. package/templates/trae-bmad/rules/bmad-brainstorming.md +0 -6
  779. package/templates/trae-bmad/rules/bmad-editorial-review-prose.md +0 -10
  780. package/templates/trae-bmad/rules/bmad-editorial-review-structure.md +0 -10
  781. package/templates/trae-bmad/rules/bmad-help.md +0 -10
  782. package/templates/trae-bmad/rules/bmad-index-docs.md +0 -10
  783. package/templates/trae-bmad/rules/bmad-party-mode.md +0 -6
  784. package/templates/trae-bmad/rules/bmad-review-adversarial-general.md +0 -10
  785. package/templates/trae-bmad/rules/bmad-review-edge-case-hunter.md +0 -10
  786. package/templates/trae-bmad/rules/bmad-shard-doc.md +0 -10
  787. package/templates/trae-bmad/rules/bmad-tea-teach-me-testing.md +0 -6
  788. package/templates/trae-bmad/rules/bmad-tea-testarch-atdd.md +0 -14
  789. package/templates/trae-bmad/rules/bmad-tea-testarch-automate.md +0 -14
  790. package/templates/trae-bmad/rules/bmad-tea-testarch-ci.md +0 -14
  791. package/templates/trae-bmad/rules/bmad-tea-testarch-framework.md +0 -14
  792. package/templates/trae-bmad/rules/bmad-tea-testarch-nfr.md +0 -14
  793. package/templates/trae-bmad/rules/bmad-tea-testarch-test-design.md +0 -14
  794. package/templates/trae-bmad/rules/bmad-tea-testarch-test-review.md +0 -14
  795. package/templates/trae-bmad/rules/bmad-tea-testarch-trace.md +0 -14
@@ -1,315 +0,0 @@
1
- # Pact.js Utils Provider Verifier
2
-
3
- ## Principle
4
-
5
- Use `buildVerifierOptions`, `buildMessageVerifierOptions`, `handlePactBrokerUrlAndSelectors`, and `getProviderVersionTags` from `@seontechnologies/pactjs-utils` to assemble complete provider verification configuration in a single call. These utilities handle local/remote flow detection, broker URL resolution, consumer version selector strategy, and CI-aware version tagging. The caller controls breaking change behavior via the required `includeMainAndDeployed` parameter.
6
-
7
- ## Rationale
8
-
9
- ### Problems with manual VerifierOptions
10
-
11
- - **30+ lines of scattered config**: Assembling `VerifierOptions` manually requires broker URL, token, selectors, state handlers, request filters, version info, publish flags — all in one object
12
- - **Environment variable logic**: Different env vars for local vs remote, CI vs local dev, breaking change vs normal flow
13
- - **Consumer version selector complexity**: Choosing between `mainBranch`, `deployedOrReleased`, `matchingBranch`, and `includeMainAndDeployed` requires understanding Pact Broker semantics
14
- - **Breaking change coordination**: When a provider intentionally breaks a contract, manual selector switching is error-prone
15
- - **Cross-execution protection**: `PACT_PAYLOAD_URL` webhook payloads need special handling to verify only the triggering pact
16
-
17
- ### Solutions
18
-
19
- - **`buildVerifierOptions`**: Single function that reads env vars, selects the right flow, and returns complete `VerifierOptions`
20
- - **`buildMessageVerifierOptions`**: Same as above for message/Kafka provider verification
21
- - **`handlePactBrokerUrlAndSelectors`**: Pure function for broker URL + selector resolution (used internally, also exported for advanced use)
22
- - **`getProviderVersionTags`**: Extracts CI branch/tag info from environment for provider version tagging
23
-
24
- ## Pattern Examples
25
-
26
- ### Example 1: HTTP Provider Verification (Remote Flow)
27
-
28
- ```typescript
29
- import { Verifier } from '@pact-foundation/pact';
30
- import { buildVerifierOptions, createRequestFilter } from '@seontechnologies/pactjs-utils';
31
- import type { StateHandlers } from '@seontechnologies/pactjs-utils';
32
-
33
- const stateHandlers: StateHandlers = {
34
- 'movie with id 1 exists': {
35
- setup: async (params) => {
36
- await db.seed({ movies: [{ id: params?.id ?? 1, name: 'Inception' }] });
37
- },
38
- teardown: async () => {
39
- await db.clean('movies');
40
- },
41
- },
42
- 'no movies exist': async () => {
43
- await db.clean('movies');
44
- },
45
- };
46
-
47
- // buildVerifierOptions reads these env vars automatically:
48
- // - PACT_BROKER_BASE_URL (broker URL)
49
- // - PACT_BROKER_TOKEN (broker auth)
50
- // - PACT_PAYLOAD_URL (webhook trigger — cross-execution protection)
51
- // - PACT_BREAKING_CHANGE (if "true", uses includeMainAndDeployed selectors)
52
- // - GITHUB_SHA (provider version)
53
- // - CI (publish verification results if "true")
54
-
55
- const opts = buildVerifierOptions({
56
- provider: 'SampleMoviesAPI',
57
- port: '3001',
58
- includeMainAndDeployed: process.env.PACT_BREAKING_CHANGE !== 'true',
59
- stateHandlers,
60
- requestFilter: createRequestFilter({
61
- tokenGenerator: () => process.env.TEST_AUTH_TOKEN ?? 'test-token',
62
- }),
63
- });
64
-
65
- await new Verifier(opts).verifyProvider();
66
- ```
67
-
68
- **Key Points**:
69
-
70
- - Set `PACT_BROKER_BASE_URL` and `PACT_BROKER_TOKEN` as env vars — `buildVerifierOptions` reads them automatically
71
- - `port` is a string (e.g., `'3001'`) — the function builds `providerBaseUrl: http://localhost:${port}` internally
72
- - `includeMainAndDeployed` is **required** — set `true` for normal flow, `false` for breaking changes
73
- - State handlers support both simple functions and `{ setup, teardown }` objects
74
- - `params` in state handlers correspond to the `JsonMap` from consumer's `createProviderState`
75
- - Verification results are published by default (`publishVerificationResult` defaults to `true`)
76
-
77
- ### Example 2: Local Flow (Monorepo, No Broker)
78
-
79
- ```typescript
80
- import { Verifier } from '@pact-foundation/pact';
81
- import { buildVerifierOptions } from '@seontechnologies/pactjs-utils';
82
-
83
- // When PACT_BROKER_BASE_URL is NOT set, buildVerifierOptions
84
- // falls back to local pact file verification
85
- const opts = buildVerifierOptions({
86
- provider: 'SampleMoviesAPI',
87
- port: '3001',
88
- includeMainAndDeployed: true,
89
- // Specify local pact files directly — skips broker entirely
90
- pactUrls: ['./pacts/movie-web-SampleMoviesAPI.json'],
91
- stateHandlers: {
92
- 'movie exists': async (params) => {
93
- await db.seed({ movies: [{ id: params?.id }] });
94
- },
95
- },
96
- });
97
-
98
- await new Verifier(opts).verifyProvider();
99
- ```
100
-
101
- ### Example 3: Message Provider Verification (Kafka/Async)
102
-
103
- ```typescript
104
- import { Verifier } from '@pact-foundation/pact';
105
- import { buildMessageVerifierOptions } from '@seontechnologies/pactjs-utils';
106
-
107
- const opts = buildMessageVerifierOptions({
108
- provider: 'OrderEventsProducer',
109
- includeMainAndDeployed: process.env.PACT_BREAKING_CHANGE !== 'true',
110
- // Message handlers return the message content that the provider would produce
111
- messageProviders: {
112
- 'an order created event': async () => ({
113
- orderId: 'order-123',
114
- userId: 'user-456',
115
- items: [{ productId: 'prod-789', quantity: 2 }],
116
- createdAt: new Date().toISOString(),
117
- }),
118
- 'an order cancelled event': async () => ({
119
- orderId: 'order-123',
120
- reason: 'customer_request',
121
- cancelledAt: new Date().toISOString(),
122
- }),
123
- },
124
- stateHandlers: {
125
- 'order exists': async (params) => {
126
- await db.seed({ orders: [{ id: params?.orderId }] });
127
- },
128
- },
129
- });
130
-
131
- await new Verifier(opts).verifyProvider();
132
- ```
133
-
134
- **Key Points**:
135
-
136
- - `buildMessageVerifierOptions` adds `messageProviders` to the verifier config
137
- - Each message provider function returns the expected message payload
138
- - State handlers work the same as HTTP verification
139
- - Broker integration works identically (same env vars)
140
-
141
- ### Example 4: Breaking Change Coordination
142
-
143
- ```typescript
144
- // When a provider intentionally introduces a breaking change:
145
- //
146
- // 1. Set PACT_BREAKING_CHANGE=true in CI environment
147
- // 2. Your test reads the env var and passes includeMainAndDeployed: false
148
- // to buildVerifierOptions — this verifies ONLY against the matching
149
- // branch, skipping main/deployed consumers that would fail
150
- // 3. Coordinate with consumer team to update their pact on a matching branch
151
- // 4. Remove PACT_BREAKING_CHANGE flag after consumer updates
152
-
153
- // In CI environment (.github/workflows/provider-verify.yml):
154
- // env:
155
- // PACT_BREAKING_CHANGE: 'true'
156
-
157
- // Your provider test code reads the env var:
158
- const isBreakingChange = process.env.PACT_BREAKING_CHANGE === 'true';
159
-
160
- const opts = buildVerifierOptions({
161
- provider: 'SampleMoviesAPI',
162
- port: '3001',
163
- includeMainAndDeployed: !isBreakingChange, // false during breaking changes
164
- stateHandlers: {
165
- /* ... */
166
- },
167
- });
168
- // When includeMainAndDeployed is false (breaking change):
169
- // selectors = [{ matchingBranch: true }]
170
- // When includeMainAndDeployed is true (normal):
171
- // selectors = [{ matchingBranch: true }, { mainBranch: true }, { deployedOrReleased: true }]
172
- ```
173
-
174
- ### Example 5: handlePactBrokerUrlAndSelectors (Advanced)
175
-
176
- ```typescript
177
- import { handlePactBrokerUrlAndSelectors } from '@seontechnologies/pactjs-utils';
178
- import type { VerifierOptions } from '@pact-foundation/pact';
179
-
180
- // For advanced use cases — mutates the options object in-place (returns void)
181
- const options: VerifierOptions = {
182
- provider: 'SampleMoviesAPI',
183
- providerBaseUrl: 'http://localhost:3001',
184
- };
185
-
186
- handlePactBrokerUrlAndSelectors({
187
- pactPayloadUrl: process.env.PACT_PAYLOAD_URL,
188
- pactBrokerUrl: process.env.PACT_BROKER_BASE_URL,
189
- consumer: undefined, // or specific consumer name
190
- includeMainAndDeployed: true,
191
- options, // mutated in-place: sets pactBrokerUrl, consumerVersionSelectors, or pactUrls
192
- });
193
-
194
- // After call, options has been mutated with:
195
- // - options.pactBrokerUrl (from pactBrokerUrl param)
196
- // - options.consumerVersionSelectors (based on includeMainAndDeployed)
197
- // OR if pactPayloadUrl matches: options.pactUrls = [pactPayloadUrl]
198
- ```
199
-
200
- **Note**: `handlePactBrokerUrlAndSelectors` is called internally by `buildVerifierOptions`. You rarely need it directly — use it only for advanced custom verifier assembly.
201
-
202
- ### Example 6: getProviderVersionTags
203
-
204
- ```typescript
205
- import { getProviderVersionTags } from '@seontechnologies/pactjs-utils';
206
-
207
- // Extracts version tags from CI environment
208
- const tags = getProviderVersionTags();
209
-
210
- // In GitHub Actions on branch "feature/add-movies" (non-breaking):
211
- // tags = ['dev', 'feature/add-movies']
212
- //
213
- // In GitHub Actions on main branch (non-breaking):
214
- // tags = ['dev', 'main']
215
- //
216
- // In GitHub Actions with PACT_BREAKING_CHANGE=true:
217
- // tags = ['feature/add-movies'] (no 'dev' tag)
218
- //
219
- // Locally (no CI):
220
- // tags = ['local']
221
- ```
222
-
223
- ## Environment Variables Reference
224
-
225
- | Variable | Required | Description | Default |
226
- | ---------------------- | --------------- | ------------------------------------------------------------------------------------------------------------------------------------- | ----------- |
227
- | `PACT_BROKER_BASE_URL` | For remote flow | Pact Broker / PactFlow URL | — |
228
- | `PACT_BROKER_TOKEN` | For remote flow | API token for broker authentication | — |
229
- | `GITHUB_SHA` | Recommended | Provider version for verification result publishing (auto-set by GitHub Actions) | `'unknown'` |
230
- | `GITHUB_BRANCH` | Recommended | Branch name for provider version branch and version tags (**not auto-set** — define as `${{ github.head_ref \|\| github.ref_name }}`) | `'main'` |
231
- | `PACT_PAYLOAD_URL` | Optional | Webhook payload URL — triggers verification of specific pact only | — |
232
- | `PACT_BREAKING_CHANGE` | Optional | Set to `"true"` to use breaking change selector strategy | `'false'` |
233
- | `CI` | Auto-detected | When `"true"`, enables verification result publishing | — |
234
-
235
- ## Key Points
236
-
237
- - **Flow auto-detection**: If `PACT_BROKER_BASE_URL` is set → remote flow; otherwise → local flow (requires `pactUrls`)
238
- - **`port` is a string**: Pass port number as string (e.g., `'3001'`); function builds `http://localhost:${port}` internally
239
- - **`includeMainAndDeployed` is required**: `true` = verify matchingBranch + mainBranch + deployedOrReleased; `false` = verify matchingBranch only (for breaking changes)
240
- - **Selector strategy**: Normal flow (`includeMainAndDeployed: true`) includes all selectors; breaking change flow (`false`) includes only `matchingBranch`
241
- - **Webhook support**: `PACT_PAYLOAD_URL` takes precedence — verifies only the specific pact that triggered the webhook
242
- - **State handler types**: Both `async (params) => void` and `{ setup: async (params) => void, teardown: async () => void }` are supported
243
- - **Version publishing**: Verification results are published by default (`publishVerificationResult` defaults to `true`)
244
-
245
- ## Related Fragments
246
-
247
- - `pactjs-utils-overview.md` — installation, decision tree, design philosophy
248
- - `pactjs-utils-consumer-helpers.md` — consumer-side state parameter creation
249
- - `pactjs-utils-request-filter.md` — auth injection for provider verification
250
- - `contract-testing.md` — foundational patterns with raw Pact.js
251
-
252
- ## Anti-Patterns
253
-
254
- ### Wrong: Manual broker URL and selector assembly
255
-
256
- ```typescript
257
- // ❌ Manual environment variable handling
258
- const opts: VerifierOptions = {
259
- provider: 'my-api',
260
- providerBaseUrl: 'http://localhost:3001',
261
- pactBrokerUrl: process.env.PACT_BROKER_BASE_URL,
262
- pactBrokerToken: process.env.PACT_BROKER_TOKEN,
263
- publishVerificationResult: process.env.CI === 'true',
264
- providerVersion: process.env.GIT_SHA || process.env.GITHUB_SHA || 'dev',
265
- providerVersionBranch: process.env.GITHUB_HEAD_REF || process.env.GITHUB_REF_NAME,
266
- consumerVersionSelectors:
267
- process.env.PACT_BREAKING_CHANGE === 'true'
268
- ? [{ matchingBranch: true }]
269
- : [{ matchingBranch: true }, { mainBranch: true }, { deployedOrReleased: true }],
270
- pactUrls: process.env.PACT_PAYLOAD_URL ? [process.env.PACT_PAYLOAD_URL] : undefined,
271
- stateHandlers: {
272
- /* ... */
273
- },
274
- requestFilter: (req, res, next) => {
275
- req.headers['authorization'] = `Bearer ${process.env.TEST_TOKEN}`;
276
- next();
277
- },
278
- };
279
- ```
280
-
281
- ### Right: Use buildVerifierOptions
282
-
283
- ```typescript
284
- // ✅ All env var logic handled internally
285
- const opts = buildVerifierOptions({
286
- provider: 'my-api',
287
- port: '3001',
288
- includeMainAndDeployed: process.env.PACT_BREAKING_CHANGE !== 'true',
289
- stateHandlers: {
290
- /* ... */
291
- },
292
- requestFilter: createRequestFilter({
293
- tokenGenerator: () => process.env.TEST_TOKEN ?? 'test-token',
294
- }),
295
- });
296
- ```
297
-
298
- ### Wrong: Hardcoding consumer version selectors
299
-
300
- ```typescript
301
- // ❌ Hardcoded selectors — breaks when flow changes
302
- consumerVersionSelectors: [{ mainBranch: true }, { deployedOrReleased: true }],
303
- ```
304
-
305
- ### Right: Let buildVerifierOptions choose selectors
306
-
307
- ```typescript
308
- // ✅ Selector strategy adapts to PACT_BREAKING_CHANGE env var
309
- const opts = buildVerifierOptions({
310
- /* ... */
311
- });
312
- // Selectors chosen automatically based on environment
313
- ```
314
-
315
- _Source: @seontechnologies/pactjs-utils provider-verifier module, pact-js-example-provider CI workflows_
@@ -1,224 +0,0 @@
1
- # Pact.js Utils Request Filter
2
-
3
- ## Principle
4
-
5
- Use `createRequestFilter` and `noOpRequestFilter` from `@seontechnologies/pactjs-utils` to inject authentication headers during provider verification. The pluggable token generator pattern prevents double-Bearer bugs and separates auth concerns from verification logic.
6
-
7
- ## Rationale
8
-
9
- ### Problems with manual request filters
10
-
11
- - **Express type gymnastics**: Pact's `requestFilter` expects `(req, res, next) => void` with Express-compatible types — but Pact doesn't re-export these types
12
- - **Double-Bearer bug**: Easy to write `Authorization: Bearer Bearer ${token}` when the token generator already includes the prefix
13
- - **Inline complexity**: Auth logic mixed with verifier config makes tests harder to read
14
- - **No-op boilerplate**: Providers without auth still need a pass-through function or `undefined`
15
-
16
- ### Solutions
17
-
18
- - **`createRequestFilter`**: Accepts `{ tokenGenerator: () => string }` — generator returns raw token value synchronously, filter adds `Bearer ` prefix
19
- - **`noOpRequestFilter`**: Pre-built pass-through for providers without auth requirements
20
- - **Bearer prefix contract**: `tokenGenerator` returns raw value (e.g., `"abc123"`), filter always adds `"Bearer "` — impossible to double-prefix
21
-
22
- ## Pattern Examples
23
-
24
- ### Example 1: Basic Auth Injection
25
-
26
- ```typescript
27
- import { buildVerifierOptions, createRequestFilter } from '@seontechnologies/pactjs-utils';
28
-
29
- const opts = buildVerifierOptions({
30
- provider: 'SampleMoviesAPI',
31
- port: '3001',
32
- includeMainAndDeployed: true,
33
- stateHandlers: {
34
- /* ... */
35
- },
36
- requestFilter: createRequestFilter({
37
- // tokenGenerator returns raw token — filter adds "Bearer " prefix
38
- tokenGenerator: () => 'test-auth-token-123',
39
- }),
40
- });
41
-
42
- // Every request during verification will have:
43
- // Authorization: Bearer test-auth-token-123
44
- ```
45
-
46
- **Key Points**:
47
-
48
- - `tokenGenerator` is **synchronous** (`() => string`) — if you need async token fetching, resolve the token before creating the filter
49
- - Return the raw token value, NOT `"Bearer ..."` — the filter adds the prefix
50
- - Filter sets `Authorization` header on every request during verification
51
-
52
- ### Example 2: Dynamic Token (Pre-resolved)
53
-
54
- ```typescript
55
- import { createRequestFilter } from '@seontechnologies/pactjs-utils';
56
-
57
- // Since tokenGenerator is synchronous, fetch the token before creating the filter
58
- let cachedToken: string;
59
-
60
- async function setupRequestFilter() {
61
- const response = await fetch('http://localhost:8080/auth/token', {
62
- method: 'POST',
63
- headers: { 'Content-Type': 'application/json' },
64
- body: JSON.stringify({
65
- clientId: process.env.TEST_CLIENT_ID,
66
- clientSecret: process.env.TEST_CLIENT_SECRET,
67
- }),
68
- });
69
- const { access_token } = await response.json();
70
- cachedToken = access_token;
71
- }
72
-
73
- const requestFilter = createRequestFilter({
74
- tokenGenerator: () => cachedToken, // Synchronous — returns pre-fetched token
75
- });
76
-
77
- const opts = buildVerifierOptions({
78
- provider: 'SecureAPI',
79
- port: '3001',
80
- includeMainAndDeployed: true,
81
- stateHandlers: {
82
- /* ... */
83
- },
84
- requestFilter,
85
- });
86
- ```
87
-
88
- ### Example 3: No-Auth Provider
89
-
90
- ```typescript
91
- import { buildVerifierOptions, noOpRequestFilter } from '@seontechnologies/pactjs-utils';
92
-
93
- // For providers that don't require authentication
94
- const opts = buildVerifierOptions({
95
- provider: 'PublicAPI',
96
- port: '3001',
97
- includeMainAndDeployed: true,
98
- stateHandlers: {
99
- /* ... */
100
- },
101
- requestFilter: noOpRequestFilter,
102
- });
103
-
104
- // noOpRequestFilter is equivalent to: (req, res, next) => next()
105
- ```
106
-
107
- ### Example 4: Integration with buildVerifierOptions
108
-
109
- ```typescript
110
- import { buildVerifierOptions, createRequestFilter } from '@seontechnologies/pactjs-utils';
111
- import type { StateHandlers } from '@seontechnologies/pactjs-utils';
112
-
113
- // Complete provider verification setup
114
- const stateHandlers: StateHandlers = {
115
- 'user is authenticated': async () => {
116
- // Auth state is handled by the request filter, not state handler
117
- },
118
- 'movie exists': {
119
- setup: async (params) => {
120
- await db.seed({ movies: [{ id: params?.id }] });
121
- },
122
- teardown: async () => {
123
- await db.clean('movies');
124
- },
125
- },
126
- };
127
-
128
- const requestFilter = createRequestFilter({
129
- tokenGenerator: () => process.env.TEST_AUTH_TOKEN ?? 'fallback-token',
130
- });
131
-
132
- const opts = buildVerifierOptions({
133
- provider: 'SampleMoviesAPI',
134
- port: process.env.PORT ?? '3001',
135
- includeMainAndDeployed: process.env.PACT_BREAKING_CHANGE !== 'true',
136
- stateHandlers,
137
- requestFilter,
138
- });
139
-
140
- // Run verification
141
- await new Verifier(opts).verifyProvider();
142
- ```
143
-
144
- ## Key Points
145
-
146
- - **Bearer prefix contract**: `tokenGenerator` returns raw value → filter adds `"Bearer "` → impossible to double-prefix
147
- - **Synchronous only**: `tokenGenerator` must return `string` (not `Promise<string>`) — pre-resolve async tokens before creating the filter
148
- - **Separation of concerns**: Auth logic in `createRequestFilter`, verification logic in `buildVerifierOptions`
149
- - **noOpRequestFilter**: Use for providers without auth — cleaner than `undefined` or inline no-op
150
- - **Express compatible**: The returned filter matches Pact's expected `(req, res, next) => void` signature
151
-
152
- ## Related Fragments
153
-
154
- - `pactjs-utils-overview.md` — installation, utility table, decision tree
155
- - `pactjs-utils-provider-verifier.md` — buildVerifierOptions integration
156
- - `contract-testing.md` — foundational patterns with raw Pact.js
157
-
158
- ## Anti-Patterns
159
-
160
- ### Wrong: Manual Bearer prefix with double-prefix risk
161
-
162
- ```typescript
163
- // ❌ Risk of double-prefix: "Bearer Bearer token"
164
- requestFilter: (req, res, next) => {
165
- const token = getToken(); // What if getToken() returns "Bearer abc123"?
166
- req.headers['authorization'] = `Bearer ${token}`;
167
- next();
168
- };
169
- ```
170
-
171
- ### Right: Use createRequestFilter with raw token
172
-
173
- ```typescript
174
- // ✅ tokenGenerator returns raw value — filter handles prefix
175
- requestFilter: createRequestFilter({
176
- tokenGenerator: () => getToken(), // Returns "abc123", not "Bearer abc123"
177
- });
178
- ```
179
-
180
- ### Wrong: Inline auth logic in verifier config
181
-
182
- ```typescript
183
- // ❌ Auth logic mixed with verifier config
184
- const opts: VerifierOptions = {
185
- provider: 'my-api',
186
- providerBaseUrl: 'http://localhost:3001',
187
- requestFilter: (req, res, next) => {
188
- const clientId = process.env.CLIENT_ID;
189
- const clientSecret = process.env.CLIENT_SECRET;
190
- // 10 lines of token fetching logic...
191
- req.headers['authorization'] = `Bearer ${token}`;
192
- next();
193
- },
194
- // ... rest of config
195
- };
196
- ```
197
-
198
- ### Right: Separate auth into createRequestFilter
199
-
200
- ```typescript
201
- // ✅ Clean separation — async setup wraps token fetch (CommonJS-safe)
202
- async function setupVerifierOptions() {
203
- const token = await fetchAuthToken(); // Resolve async token BEFORE creating filter
204
-
205
- const requestFilter = createRequestFilter({
206
- tokenGenerator: () => token, // Synchronous — returns pre-fetched value
207
- });
208
-
209
- return buildVerifierOptions({
210
- provider: 'my-api',
211
- port: '3001',
212
- includeMainAndDeployed: true,
213
- requestFilter,
214
- stateHandlers: {
215
- /* ... */
216
- },
217
- });
218
- }
219
-
220
- // In tests/hooks, callers can await setupVerifierOptions():
221
- // const opts = await setupVerifierOptions();
222
- ```
223
-
224
- _Source: @seontechnologies/pactjs-utils request-filter module, pact-js-example-provider verification tests_