@cregis-dev/cckit 0.4.1 → 0.6.1

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 +54 -54
  3. package/registry.json +116 -234
  4. package/src/cli.js +17 -26
  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 +130 -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 +69 -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/skills/api-design/SKILL.md +0 -523
  608. package/templates/ecc/skills/article-writing/SKILL.md +0 -85
  609. package/templates/ecc/skills/backend-patterns/SKILL.md +0 -598
  610. package/templates/ecc/skills/clickhouse-io/SKILL.md +0 -439
  611. package/templates/ecc/skills/coding-standards/SKILL.md +0 -530
  612. package/templates/ecc/skills/configure-ecc/SKILL.md +0 -326
  613. package/templates/ecc/skills/content-engine/SKILL.md +0 -88
  614. package/templates/ecc/skills/content-hash-cache-pattern/SKILL.md +0 -161
  615. package/templates/ecc/skills/continuous-learning/SKILL.md +0 -119
  616. package/templates/ecc/skills/continuous-learning/config.json +0 -18
  617. package/templates/ecc/skills/continuous-learning/evaluate-session.sh +0 -69
  618. package/templates/ecc/skills/continuous-learning-v2/SKILL.md +0 -295
  619. package/templates/ecc/skills/continuous-learning-v2/agents/observer.md +0 -137
  620. package/templates/ecc/skills/continuous-learning-v2/agents/start-observer.sh +0 -143
  621. package/templates/ecc/skills/continuous-learning-v2/config.json +0 -41
  622. package/templates/ecc/skills/continuous-learning-v2/hooks/observe.sh +0 -164
  623. package/templates/ecc/skills/continuous-learning-v2/scripts/instinct-cli.py +0 -575
  624. package/templates/ecc/skills/continuous-learning-v2/scripts/test_parse_instinct.py +0 -82
  625. package/templates/ecc/skills/cost-aware-llm-pipeline/SKILL.md +0 -183
  626. package/templates/ecc/skills/cpp-coding-standards/SKILL.md +0 -723
  627. package/templates/ecc/skills/cpp-testing/SKILL.md +0 -323
  628. package/templates/ecc/skills/database-migrations/SKILL.md +0 -335
  629. package/templates/ecc/skills/deployment-patterns/SKILL.md +0 -427
  630. package/templates/ecc/skills/django-patterns/SKILL.md +0 -734
  631. package/templates/ecc/skills/django-security/SKILL.md +0 -593
  632. package/templates/ecc/skills/django-tdd/SKILL.md +0 -729
  633. package/templates/ecc/skills/django-verification/SKILL.md +0 -469
  634. package/templates/ecc/skills/docker-patterns/SKILL.md +0 -364
  635. package/templates/ecc/skills/e2e-testing/SKILL.md +0 -326
  636. package/templates/ecc/skills/eval-harness/SKILL.md +0 -236
  637. package/templates/ecc/skills/foundation-models-on-device/SKILL.md +0 -243
  638. package/templates/ecc/skills/frontend-patterns/SKILL.md +0 -642
  639. package/templates/ecc/skills/frontend-slides/SKILL.md +0 -184
  640. package/templates/ecc/skills/frontend-slides/STYLE_PRESETS.md +0 -330
  641. package/templates/ecc/skills/golang-patterns/SKILL.md +0 -674
  642. package/templates/ecc/skills/golang-testing/SKILL.md +0 -720
  643. package/templates/ecc/skills/investor-materials/SKILL.md +0 -96
  644. package/templates/ecc/skills/investor-outreach/SKILL.md +0 -76
  645. package/templates/ecc/skills/iterative-retrieval/SKILL.md +0 -211
  646. package/templates/ecc/skills/java-coding-standards/SKILL.md +0 -147
  647. package/templates/ecc/skills/jpa-patterns/SKILL.md +0 -151
  648. package/templates/ecc/skills/liquid-glass-design/SKILL.md +0 -279
  649. package/templates/ecc/skills/market-research/SKILL.md +0 -75
  650. package/templates/ecc/skills/nutrient-document-processing/SKILL.md +0 -165
  651. package/templates/ecc/skills/postgres-patterns/SKILL.md +0 -147
  652. package/templates/ecc/skills/project-guidelines-example/SKILL.md +0 -349
  653. package/templates/ecc/skills/python-patterns/SKILL.md +0 -750
  654. package/templates/ecc/skills/python-testing/SKILL.md +0 -816
  655. package/templates/ecc/skills/regex-vs-llm-structured-text/SKILL.md +0 -220
  656. package/templates/ecc/skills/search-first/SKILL.md +0 -161
  657. package/templates/ecc/skills/security-review/SKILL.md +0 -495
  658. package/templates/ecc/skills/security-review/cloud-infrastructure-security.md +0 -361
  659. package/templates/ecc/skills/security-scan/SKILL.md +0 -165
  660. package/templates/ecc/skills/skill-stocktake/SKILL.md +0 -176
  661. package/templates/ecc/skills/skill-stocktake/scripts/quick-diff.sh +0 -87
  662. package/templates/ecc/skills/skill-stocktake/scripts/save-results.sh +0 -56
  663. package/templates/ecc/skills/skill-stocktake/scripts/scan.sh +0 -170
  664. package/templates/ecc/skills/springboot-patterns/SKILL.md +0 -314
  665. package/templates/ecc/skills/springboot-security/SKILL.md +0 -272
  666. package/templates/ecc/skills/springboot-tdd/SKILL.md +0 -158
  667. package/templates/ecc/skills/springboot-verification/SKILL.md +0 -231
  668. package/templates/ecc/skills/strategic-compact/SKILL.md +0 -103
  669. package/templates/ecc/skills/strategic-compact/suggest-compact.sh +0 -54
  670. package/templates/ecc/skills/swift-actor-persistence/SKILL.md +0 -143
  671. package/templates/ecc/skills/swift-concurrency-6-2/SKILL.md +0 -216
  672. package/templates/ecc/skills/swift-protocol-di-testing/SKILL.md +0 -190
  673. package/templates/ecc/skills/swiftui-patterns/SKILL.md +0 -259
  674. package/templates/ecc/skills/tdd-workflow/SKILL.md +0 -410
  675. package/templates/ecc/skills/verification-loop/SKILL.md +0 -126
  676. package/templates/ecc/skills/visa-doc-translate/README.md +0 -86
  677. package/templates/ecc/skills/visa-doc-translate/SKILL.md +0 -117
  678. package/templates/ext-skills/pinchtab/SKILL.md +0 -173
  679. package/templates/ext-skills/pinchtab/TRUST.md +0 -69
  680. package/templates/ext-skills/pinchtab/references/api.md +0 -297
  681. package/templates/ext-skills/pinchtab/references/env.md +0 -45
  682. package/templates/ext-skills/pinchtab/references/profiles.md +0 -107
  683. package/templates/mcp/trae/mcp.json +0 -35
  684. package/templates/plugins/claude-code-setup/.claude-plugin/plugin.json +0 -9
  685. package/templates/plugins/claude-code-setup/LICENSE +0 -202
  686. package/templates/plugins/claude-code-setup/README.md +0 -29
  687. package/templates/plugins/claude-code-setup/automation-recommender-example.png +0 -0
  688. package/templates/plugins/claude-code-setup/skills/claude-automation-recommender/SKILL.md +0 -288
  689. package/templates/plugins/claude-code-setup/skills/claude-automation-recommender/references/hooks-patterns.md +0 -226
  690. package/templates/plugins/claude-code-setup/skills/claude-automation-recommender/references/mcp-servers.md +0 -263
  691. package/templates/plugins/claude-code-setup/skills/claude-automation-recommender/references/plugins-reference.md +0 -98
  692. package/templates/plugins/claude-code-setup/skills/claude-automation-recommender/references/skills-reference.md +0 -408
  693. package/templates/plugins/claude-code-setup/skills/claude-automation-recommender/references/subagent-templates.md +0 -181
  694. package/templates/plugins/claude-md-management/.claude-plugin/plugin.json +0 -9
  695. package/templates/plugins/claude-md-management/LICENSE +0 -202
  696. package/templates/plugins/claude-md-management/README.md +0 -40
  697. package/templates/plugins/claude-md-management/claude-md-improver-example.png +0 -0
  698. package/templates/plugins/claude-md-management/commands/revise-claude-md.md +0 -54
  699. package/templates/plugins/claude-md-management/revise-claude-md-example.png +0 -0
  700. package/templates/plugins/claude-md-management/skills/claude-md-improver/SKILL.md +0 -179
  701. package/templates/plugins/claude-md-management/skills/claude-md-improver/references/quality-criteria.md +0 -109
  702. package/templates/plugins/claude-md-management/skills/claude-md-improver/references/templates.md +0 -253
  703. package/templates/plugins/claude-md-management/skills/claude-md-improver/references/update-guidelines.md +0 -150
  704. package/templates/plugins/code-simplifier/.claude-plugin/plugin.json +0 -9
  705. package/templates/plugins/code-simplifier/LICENSE +0 -202
  706. package/templates/plugins/code-simplifier/agents/code-simplifier.md +0 -52
  707. package/templates/plugins/commit-commands/.claude-plugin/plugin.json +0 -9
  708. package/templates/plugins/commit-commands/LICENSE +0 -202
  709. package/templates/plugins/commit-commands/README.md +0 -225
  710. package/templates/plugins/commit-commands/commands/clean_gone.md +0 -53
  711. package/templates/plugins/commit-commands/commands/commit-push-pr.md +0 -20
  712. package/templates/plugins/commit-commands/commands/commit.md +0 -17
  713. package/templates/trae-bmad/rules/bmad-agent-bmad-master.md +0 -15
  714. package/templates/trae-bmad/rules/bmad-agent-bmm-analyst.md +0 -15
  715. package/templates/trae-bmad/rules/bmad-agent-bmm-architect.md +0 -15
  716. package/templates/trae-bmad/rules/bmad-agent-bmm-dev.md +0 -15
  717. package/templates/trae-bmad/rules/bmad-agent-bmm-pm.md +0 -15
  718. package/templates/trae-bmad/rules/bmad-agent-bmm-qa.md +0 -15
  719. package/templates/trae-bmad/rules/bmad-agent-bmm-quick-flow-solo-dev.md +0 -15
  720. package/templates/trae-bmad/rules/bmad-agent-bmm-sm.md +0 -15
  721. package/templates/trae-bmad/rules/bmad-agent-bmm-tech-writer.md +0 -15
  722. package/templates/trae-bmad/rules/bmad-agent-bmm-ux-designer.md +0 -15
  723. package/templates/trae-bmad/rules/bmad-agent-tea-tea.md +0 -15
  724. package/templates/trae-bmad/rules/bmad-bmm-check-implementation-readiness.md +0 -6
  725. package/templates/trae-bmad/rules/bmad-bmm-code-review.md +0 -14
  726. package/templates/trae-bmad/rules/bmad-bmm-correct-course.md +0 -14
  727. package/templates/trae-bmad/rules/bmad-bmm-create-architecture.md +0 -6
  728. package/templates/trae-bmad/rules/bmad-bmm-create-epics-and-stories.md +0 -6
  729. package/templates/trae-bmad/rules/bmad-bmm-create-prd.md +0 -6
  730. package/templates/trae-bmad/rules/bmad-bmm-create-product-brief.md +0 -6
  731. package/templates/trae-bmad/rules/bmad-bmm-create-story.md +0 -14
  732. package/templates/trae-bmad/rules/bmad-bmm-create-ux-design.md +0 -6
  733. package/templates/trae-bmad/rules/bmad-bmm-dev-story.md +0 -14
  734. package/templates/trae-bmad/rules/bmad-bmm-document-project.md +0 -14
  735. package/templates/trae-bmad/rules/bmad-bmm-domain-research.md +0 -6
  736. package/templates/trae-bmad/rules/bmad-bmm-edit-prd.md +0 -6
  737. package/templates/trae-bmad/rules/bmad-bmm-generate-project-context.md +0 -6
  738. package/templates/trae-bmad/rules/bmad-bmm-market-research.md +0 -6
  739. package/templates/trae-bmad/rules/bmad-bmm-qa-automate.md +0 -15
  740. package/templates/trae-bmad/rules/bmad-bmm-qa-generate-e2e-tests.md +0 -14
  741. package/templates/trae-bmad/rules/bmad-bmm-quick-dev.md +0 -6
  742. package/templates/trae-bmad/rules/bmad-bmm-quick-spec.md +0 -6
  743. package/templates/trae-bmad/rules/bmad-bmm-retrospective.md +0 -14
  744. package/templates/trae-bmad/rules/bmad-bmm-sprint-planning.md +0 -14
  745. package/templates/trae-bmad/rules/bmad-bmm-sprint-status.md +0 -14
  746. package/templates/trae-bmad/rules/bmad-bmm-technical-research.md +0 -6
  747. package/templates/trae-bmad/rules/bmad-bmm-validate-prd.md +0 -6
  748. package/templates/trae-bmad/rules/bmad-brainstorming.md +0 -6
  749. package/templates/trae-bmad/rules/bmad-editorial-review-prose.md +0 -10
  750. package/templates/trae-bmad/rules/bmad-editorial-review-structure.md +0 -10
  751. package/templates/trae-bmad/rules/bmad-help.md +0 -10
  752. package/templates/trae-bmad/rules/bmad-index-docs.md +0 -10
  753. package/templates/trae-bmad/rules/bmad-party-mode.md +0 -6
  754. package/templates/trae-bmad/rules/bmad-review-adversarial-general.md +0 -10
  755. package/templates/trae-bmad/rules/bmad-review-edge-case-hunter.md +0 -10
  756. package/templates/trae-bmad/rules/bmad-shard-doc.md +0 -10
  757. package/templates/trae-bmad/rules/bmad-tea-teach-me-testing.md +0 -6
  758. package/templates/trae-bmad/rules/bmad-tea-testarch-atdd.md +0 -14
  759. package/templates/trae-bmad/rules/bmad-tea-testarch-automate.md +0 -14
  760. package/templates/trae-bmad/rules/bmad-tea-testarch-ci.md +0 -14
  761. package/templates/trae-bmad/rules/bmad-tea-testarch-framework.md +0 -14
  762. package/templates/trae-bmad/rules/bmad-tea-testarch-nfr.md +0 -14
  763. package/templates/trae-bmad/rules/bmad-tea-testarch-test-design.md +0 -14
  764. package/templates/trae-bmad/rules/bmad-tea-testarch-test-review.md +0 -14
  765. package/templates/trae-bmad/rules/bmad-tea-testarch-trace.md +0 -14
  766. /package/templates/{ecc/rules → rules}/README.md +0 -0
  767. /package/templates/{ecc/rules → rules}/common/agents.md +0 -0
  768. /package/templates/{ecc/rules → rules}/common/coding-style.md +0 -0
  769. /package/templates/{ecc/rules → rules}/common/development-workflow.md +0 -0
  770. /package/templates/{ecc/rules → rules}/common/git-workflow.md +0 -0
  771. /package/templates/{ecc/rules → rules}/common/hooks.md +0 -0
  772. /package/templates/{ecc/rules → rules}/common/patterns.md +0 -0
  773. /package/templates/{ecc/rules → rules}/common/performance.md +0 -0
  774. /package/templates/{ecc/rules → rules}/common/security.md +0 -0
  775. /package/templates/{ecc/rules → rules}/common/testing.md +0 -0
  776. /package/templates/{ecc/rules → rules}/golang/coding-style.md +0 -0
  777. /package/templates/{ecc/rules → rules}/golang/hooks.md +0 -0
  778. /package/templates/{ecc/rules → rules}/golang/patterns.md +0 -0
  779. /package/templates/{ecc/rules → rules}/golang/security.md +0 -0
  780. /package/templates/{ecc/rules → rules}/golang/testing.md +0 -0
  781. /package/templates/{ecc/rules → rules}/python/coding-style.md +0 -0
  782. /package/templates/{ecc/rules → rules}/python/hooks.md +0 -0
  783. /package/templates/{ecc/rules → rules}/python/patterns.md +0 -0
  784. /package/templates/{ecc/rules → rules}/python/security.md +0 -0
  785. /package/templates/{ecc/rules → rules}/python/testing.md +0 -0
  786. /package/templates/{ecc/rules → rules}/swift/coding-style.md +0 -0
  787. /package/templates/{ecc/rules → rules}/swift/hooks.md +0 -0
  788. /package/templates/{ecc/rules → rules}/swift/patterns.md +0 -0
  789. /package/templates/{ecc/rules → rules}/swift/security.md +0 -0
  790. /package/templates/{ecc/rules → rules}/swift/testing.md +0 -0
  791. /package/templates/{ecc/rules → rules}/typescript/coding-style.md +0 -0
  792. /package/templates/{ecc/rules → rules}/typescript/hooks.md +0 -0
  793. /package/templates/{ecc/rules → rules}/typescript/patterns.md +0 -0
  794. /package/templates/{ecc/rules → rules}/typescript/security.md +0 -0
  795. /package/templates/{ecc/rules → rules}/typescript/testing.md +0 -0
@@ -1,323 +0,0 @@
1
- ---
2
- name: cpp-testing
3
- description: Use only when writing/updating/fixing C++ tests, configuring GoogleTest/CTest, diagnosing failing or flaky tests, or adding coverage/sanitizers.
4
- origin: ECC
5
- ---
6
-
7
- # C++ Testing (Agent Skill)
8
-
9
- Agent-focused testing workflow for modern C++ (C++17/20) using GoogleTest/GoogleMock with CMake/CTest.
10
-
11
- ## When to Use
12
-
13
- - Writing new C++ tests or fixing existing tests
14
- - Designing unit/integration test coverage for C++ components
15
- - Adding test coverage, CI gating, or regression protection
16
- - Configuring CMake/CTest workflows for consistent execution
17
- - Investigating test failures or flaky behavior
18
- - Enabling sanitizers for memory/race diagnostics
19
-
20
- ### When NOT to Use
21
-
22
- - Implementing new product features without test changes
23
- - Large-scale refactors unrelated to test coverage or failures
24
- - Performance tuning without test regressions to validate
25
- - Non-C++ projects or non-test tasks
26
-
27
- ## Core Concepts
28
-
29
- - **TDD loop**: red → green → refactor (tests first, minimal fix, then cleanups).
30
- - **Isolation**: prefer dependency injection and fakes over global state.
31
- - **Test layout**: `tests/unit`, `tests/integration`, `tests/testdata`.
32
- - **Mocks vs fakes**: mock for interactions, fake for stateful behavior.
33
- - **CTest discovery**: use `gtest_discover_tests()` for stable test discovery.
34
- - **CI signal**: run subset first, then full suite with `--output-on-failure`.
35
-
36
- ## TDD Workflow
37
-
38
- Follow the RED → GREEN → REFACTOR loop:
39
-
40
- 1. **RED**: write a failing test that captures the new behavior
41
- 2. **GREEN**: implement the smallest change to pass
42
- 3. **REFACTOR**: clean up while tests stay green
43
-
44
- ```cpp
45
- // tests/add_test.cpp
46
- #include <gtest/gtest.h>
47
-
48
- int Add(int a, int b); // Provided by production code.
49
-
50
- TEST(AddTest, AddsTwoNumbers) { // RED
51
- EXPECT_EQ(Add(2, 3), 5);
52
- }
53
-
54
- // src/add.cpp
55
- int Add(int a, int b) { // GREEN
56
- return a + b;
57
- }
58
-
59
- // REFACTOR: simplify/rename once tests pass
60
- ```
61
-
62
- ## Code Examples
63
-
64
- ### Basic Unit Test (gtest)
65
-
66
- ```cpp
67
- // tests/calculator_test.cpp
68
- #include <gtest/gtest.h>
69
-
70
- int Add(int a, int b); // Provided by production code.
71
-
72
- TEST(CalculatorTest, AddsTwoNumbers) {
73
- EXPECT_EQ(Add(2, 3), 5);
74
- }
75
- ```
76
-
77
- ### Fixture (gtest)
78
-
79
- ```cpp
80
- // tests/user_store_test.cpp
81
- // Pseudocode stub: replace UserStore/User with project types.
82
- #include <gtest/gtest.h>
83
- #include <memory>
84
- #include <optional>
85
- #include <string>
86
-
87
- struct User { std::string name; };
88
- class UserStore {
89
- public:
90
- explicit UserStore(std::string /*path*/) {}
91
- void Seed(std::initializer_list<User> /*users*/) {}
92
- std::optional<User> Find(const std::string &/*name*/) { return User{"alice"}; }
93
- };
94
-
95
- class UserStoreTest : public ::testing::Test {
96
- protected:
97
- void SetUp() override {
98
- store = std::make_unique<UserStore>(":memory:");
99
- store->Seed({{"alice"}, {"bob"}});
100
- }
101
-
102
- std::unique_ptr<UserStore> store;
103
- };
104
-
105
- TEST_F(UserStoreTest, FindsExistingUser) {
106
- auto user = store->Find("alice");
107
- ASSERT_TRUE(user.has_value());
108
- EXPECT_EQ(user->name, "alice");
109
- }
110
- ```
111
-
112
- ### Mock (gmock)
113
-
114
- ```cpp
115
- // tests/notifier_test.cpp
116
- #include <gmock/gmock.h>
117
- #include <gtest/gtest.h>
118
- #include <string>
119
-
120
- class Notifier {
121
- public:
122
- virtual ~Notifier() = default;
123
- virtual void Send(const std::string &message) = 0;
124
- };
125
-
126
- class MockNotifier : public Notifier {
127
- public:
128
- MOCK_METHOD(void, Send, (const std::string &message), (override));
129
- };
130
-
131
- class Service {
132
- public:
133
- explicit Service(Notifier &notifier) : notifier_(notifier) {}
134
- void Publish(const std::string &message) { notifier_.Send(message); }
135
-
136
- private:
137
- Notifier &notifier_;
138
- };
139
-
140
- TEST(ServiceTest, SendsNotifications) {
141
- MockNotifier notifier;
142
- Service service(notifier);
143
-
144
- EXPECT_CALL(notifier, Send("hello")).Times(1);
145
- service.Publish("hello");
146
- }
147
- ```
148
-
149
- ### CMake/CTest Quickstart
150
-
151
- ```cmake
152
- # CMakeLists.txt (excerpt)
153
- cmake_minimum_required(VERSION 3.20)
154
- project(example LANGUAGES CXX)
155
-
156
- set(CMAKE_CXX_STANDARD 20)
157
- set(CMAKE_CXX_STANDARD_REQUIRED ON)
158
-
159
- include(FetchContent)
160
- # Prefer project-locked versions. If using a tag, use a pinned version per project policy.
161
- set(GTEST_VERSION v1.17.0) # Adjust to project policy.
162
- FetchContent_Declare(
163
- googletest
164
- URL https://github.com/google/googletest/archive/refs/tags/${GTEST_VERSION}.zip
165
- )
166
- FetchContent_MakeAvailable(googletest)
167
-
168
- add_executable(example_tests
169
- tests/calculator_test.cpp
170
- src/calculator.cpp
171
- )
172
- target_link_libraries(example_tests GTest::gtest GTest::gmock GTest::gtest_main)
173
-
174
- enable_testing()
175
- include(GoogleTest)
176
- gtest_discover_tests(example_tests)
177
- ```
178
-
179
- ```bash
180
- cmake -S . -B build -DCMAKE_BUILD_TYPE=Debug
181
- cmake --build build -j
182
- ctest --test-dir build --output-on-failure
183
- ```
184
-
185
- ## Running Tests
186
-
187
- ```bash
188
- ctest --test-dir build --output-on-failure
189
- ctest --test-dir build -R ClampTest
190
- ctest --test-dir build -R "UserStoreTest.*" --output-on-failure
191
- ```
192
-
193
- ```bash
194
- ./build/example_tests --gtest_filter=ClampTest.*
195
- ./build/example_tests --gtest_filter=UserStoreTest.FindsExistingUser
196
- ```
197
-
198
- ## Debugging Failures
199
-
200
- 1. Re-run the single failing test with gtest filter.
201
- 2. Add scoped logging around the failing assertion.
202
- 3. Re-run with sanitizers enabled.
203
- 4. Expand to full suite once the root cause is fixed.
204
-
205
- ## Coverage
206
-
207
- Prefer target-level settings instead of global flags.
208
-
209
- ```cmake
210
- option(ENABLE_COVERAGE "Enable coverage flags" OFF)
211
-
212
- if(ENABLE_COVERAGE)
213
- if(CMAKE_CXX_COMPILER_ID MATCHES "GNU")
214
- target_compile_options(example_tests PRIVATE --coverage)
215
- target_link_options(example_tests PRIVATE --coverage)
216
- elseif(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
217
- target_compile_options(example_tests PRIVATE -fprofile-instr-generate -fcoverage-mapping)
218
- target_link_options(example_tests PRIVATE -fprofile-instr-generate)
219
- endif()
220
- endif()
221
- ```
222
-
223
- GCC + gcov + lcov:
224
-
225
- ```bash
226
- cmake -S . -B build-cov -DENABLE_COVERAGE=ON
227
- cmake --build build-cov -j
228
- ctest --test-dir build-cov
229
- lcov --capture --directory build-cov --output-file coverage.info
230
- lcov --remove coverage.info '/usr/*' --output-file coverage.info
231
- genhtml coverage.info --output-directory coverage
232
- ```
233
-
234
- Clang + llvm-cov:
235
-
236
- ```bash
237
- cmake -S . -B build-llvm -DENABLE_COVERAGE=ON -DCMAKE_CXX_COMPILER=clang++
238
- cmake --build build-llvm -j
239
- LLVM_PROFILE_FILE="build-llvm/default.profraw" ctest --test-dir build-llvm
240
- llvm-profdata merge -sparse build-llvm/default.profraw -o build-llvm/default.profdata
241
- llvm-cov report build-llvm/example_tests -instr-profile=build-llvm/default.profdata
242
- ```
243
-
244
- ## Sanitizers
245
-
246
- ```cmake
247
- option(ENABLE_ASAN "Enable AddressSanitizer" OFF)
248
- option(ENABLE_UBSAN "Enable UndefinedBehaviorSanitizer" OFF)
249
- option(ENABLE_TSAN "Enable ThreadSanitizer" OFF)
250
-
251
- if(ENABLE_ASAN)
252
- add_compile_options(-fsanitize=address -fno-omit-frame-pointer)
253
- add_link_options(-fsanitize=address)
254
- endif()
255
- if(ENABLE_UBSAN)
256
- add_compile_options(-fsanitize=undefined -fno-omit-frame-pointer)
257
- add_link_options(-fsanitize=undefined)
258
- endif()
259
- if(ENABLE_TSAN)
260
- add_compile_options(-fsanitize=thread)
261
- add_link_options(-fsanitize=thread)
262
- endif()
263
- ```
264
-
265
- ## Flaky Tests Guardrails
266
-
267
- - Never use `sleep` for synchronization; use condition variables or latches.
268
- - Make temp directories unique per test and always clean them.
269
- - Avoid real time, network, or filesystem dependencies in unit tests.
270
- - Use deterministic seeds for randomized inputs.
271
-
272
- ## Best Practices
273
-
274
- ### DO
275
-
276
- - Keep tests deterministic and isolated
277
- - Prefer dependency injection over globals
278
- - Use `ASSERT_*` for preconditions, `EXPECT_*` for multiple checks
279
- - Separate unit vs integration tests in CTest labels or directories
280
- - Run sanitizers in CI for memory and race detection
281
-
282
- ### DON'T
283
-
284
- - Don't depend on real time or network in unit tests
285
- - Don't use sleeps as synchronization when a condition variable can be used
286
- - Don't over-mock simple value objects
287
- - Don't use brittle string matching for non-critical logs
288
-
289
- ### Common Pitfalls
290
-
291
- - **Using fixed temp paths** → Generate unique temp directories per test and clean them.
292
- - **Relying on wall clock time** → Inject a clock or use fake time sources.
293
- - **Flaky concurrency tests** → Use condition variables/latches and bounded waits.
294
- - **Hidden global state** → Reset global state in fixtures or remove globals.
295
- - **Over-mocking** → Prefer fakes for stateful behavior and only mock interactions.
296
- - **Missing sanitizer runs** → Add ASan/UBSan/TSan builds in CI.
297
- - **Coverage on debug-only builds** → Ensure coverage targets use consistent flags.
298
-
299
- ## Optional Appendix: Fuzzing / Property Testing
300
-
301
- Only use if the project already supports LLVM/libFuzzer or a property-testing library.
302
-
303
- - **libFuzzer**: best for pure functions with minimal I/O.
304
- - **RapidCheck**: property-based tests to validate invariants.
305
-
306
- Minimal libFuzzer harness (pseudocode: replace ParseConfig):
307
-
308
- ```cpp
309
- #include <cstddef>
310
- #include <cstdint>
311
- #include <string>
312
-
313
- extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
314
- std::string input(reinterpret_cast<const char *>(data), size);
315
- // ParseConfig(input); // project function
316
- return 0;
317
- }
318
- ```
319
-
320
- ## Alternatives to GoogleTest
321
-
322
- - **Catch2**: header-only, expressive matchers
323
- - **doctest**: lightweight, minimal compile overhead
@@ -1,335 +0,0 @@
1
- ---
2
- name: database-migrations
3
- description: Database migration best practices for schema changes, data migrations, rollbacks, and zero-downtime deployments across PostgreSQL, MySQL, and common ORMs (Prisma, Drizzle, Django, TypeORM, golang-migrate).
4
- origin: ECC
5
- ---
6
-
7
- # Database Migration Patterns
8
-
9
- Safe, reversible database schema changes for production systems.
10
-
11
- ## When to Activate
12
-
13
- - Creating or altering database tables
14
- - Adding/removing columns or indexes
15
- - Running data migrations (backfill, transform)
16
- - Planning zero-downtime schema changes
17
- - Setting up migration tooling for a new project
18
-
19
- ## Core Principles
20
-
21
- 1. **Every change is a migration** — never alter production databases manually
22
- 2. **Migrations are forward-only in production** — rollbacks use new forward migrations
23
- 3. **Schema and data migrations are separate** — never mix DDL and DML in one migration
24
- 4. **Test migrations against production-sized data** — a migration that works on 100 rows may lock on 10M
25
- 5. **Migrations are immutable once deployed** — never edit a migration that has run in production
26
-
27
- ## Migration Safety Checklist
28
-
29
- Before applying any migration:
30
-
31
- - [ ] Migration has both UP and DOWN (or is explicitly marked irreversible)
32
- - [ ] No full table locks on large tables (use concurrent operations)
33
- - [ ] New columns have defaults or are nullable (never add NOT NULL without default)
34
- - [ ] Indexes created concurrently (not inline with CREATE TABLE for existing tables)
35
- - [ ] Data backfill is a separate migration from schema change
36
- - [ ] Tested against a copy of production data
37
- - [ ] Rollback plan documented
38
-
39
- ## PostgreSQL Patterns
40
-
41
- ### Adding a Column Safely
42
-
43
- ```sql
44
- -- GOOD: Nullable column, no lock
45
- ALTER TABLE users ADD COLUMN avatar_url TEXT;
46
-
47
- -- GOOD: Column with default (Postgres 11+ is instant, no rewrite)
48
- ALTER TABLE users ADD COLUMN is_active BOOLEAN NOT NULL DEFAULT true;
49
-
50
- -- BAD: NOT NULL without default on existing table (requires full rewrite)
51
- ALTER TABLE users ADD COLUMN role TEXT NOT NULL;
52
- -- This locks the table and rewrites every row
53
- ```
54
-
55
- ### Adding an Index Without Downtime
56
-
57
- ```sql
58
- -- BAD: Blocks writes on large tables
59
- CREATE INDEX idx_users_email ON users (email);
60
-
61
- -- GOOD: Non-blocking, allows concurrent writes
62
- CREATE INDEX CONCURRENTLY idx_users_email ON users (email);
63
-
64
- -- Note: CONCURRENTLY cannot run inside a transaction block
65
- -- Most migration tools need special handling for this
66
- ```
67
-
68
- ### Renaming a Column (Zero-Downtime)
69
-
70
- Never rename directly in production. Use the expand-contract pattern:
71
-
72
- ```sql
73
- -- Step 1: Add new column (migration 001)
74
- ALTER TABLE users ADD COLUMN display_name TEXT;
75
-
76
- -- Step 2: Backfill data (migration 002, data migration)
77
- UPDATE users SET display_name = username WHERE display_name IS NULL;
78
-
79
- -- Step 3: Update application code to read/write both columns
80
- -- Deploy application changes
81
-
82
- -- Step 4: Stop writing to old column, drop it (migration 003)
83
- ALTER TABLE users DROP COLUMN username;
84
- ```
85
-
86
- ### Removing a Column Safely
87
-
88
- ```sql
89
- -- Step 1: Remove all application references to the column
90
- -- Step 2: Deploy application without the column reference
91
- -- Step 3: Drop column in next migration
92
- ALTER TABLE orders DROP COLUMN legacy_status;
93
-
94
- -- For Django: use SeparateDatabaseAndState to remove from model
95
- -- without generating DROP COLUMN (then drop in next migration)
96
- ```
97
-
98
- ### Large Data Migrations
99
-
100
- ```sql
101
- -- BAD: Updates all rows in one transaction (locks table)
102
- UPDATE users SET normalized_email = LOWER(email);
103
-
104
- -- GOOD: Batch update with progress
105
- DO $$
106
- DECLARE
107
- batch_size INT := 10000;
108
- rows_updated INT;
109
- BEGIN
110
- LOOP
111
- UPDATE users
112
- SET normalized_email = LOWER(email)
113
- WHERE id IN (
114
- SELECT id FROM users
115
- WHERE normalized_email IS NULL
116
- LIMIT batch_size
117
- FOR UPDATE SKIP LOCKED
118
- );
119
- GET DIAGNOSTICS rows_updated = ROW_COUNT;
120
- RAISE NOTICE 'Updated % rows', rows_updated;
121
- EXIT WHEN rows_updated = 0;
122
- COMMIT;
123
- END LOOP;
124
- END $$;
125
- ```
126
-
127
- ## Prisma (TypeScript/Node.js)
128
-
129
- ### Workflow
130
-
131
- ```bash
132
- # Create migration from schema changes
133
- npx prisma migrate dev --name add_user_avatar
134
-
135
- # Apply pending migrations in production
136
- npx prisma migrate deploy
137
-
138
- # Reset database (dev only)
139
- npx prisma migrate reset
140
-
141
- # Generate client after schema changes
142
- npx prisma generate
143
- ```
144
-
145
- ### Schema Example
146
-
147
- ```prisma
148
- model User {
149
- id String @id @default(cuid())
150
- email String @unique
151
- name String?
152
- avatarUrl String? @map("avatar_url")
153
- createdAt DateTime @default(now()) @map("created_at")
154
- updatedAt DateTime @updatedAt @map("updated_at")
155
- orders Order[]
156
-
157
- @@map("users")
158
- @@index([email])
159
- }
160
- ```
161
-
162
- ### Custom SQL Migration
163
-
164
- For operations Prisma cannot express (concurrent indexes, data backfills):
165
-
166
- ```bash
167
- # Create empty migration, then edit the SQL manually
168
- npx prisma migrate dev --create-only --name add_email_index
169
- ```
170
-
171
- ```sql
172
- -- migrations/20240115_add_email_index/migration.sql
173
- -- Prisma cannot generate CONCURRENTLY, so we write it manually
174
- CREATE INDEX CONCURRENTLY IF NOT EXISTS idx_users_email ON users (email);
175
- ```
176
-
177
- ## Drizzle (TypeScript/Node.js)
178
-
179
- ### Workflow
180
-
181
- ```bash
182
- # Generate migration from schema changes
183
- npx drizzle-kit generate
184
-
185
- # Apply migrations
186
- npx drizzle-kit migrate
187
-
188
- # Push schema directly (dev only, no migration file)
189
- npx drizzle-kit push
190
- ```
191
-
192
- ### Schema Example
193
-
194
- ```typescript
195
- import { pgTable, text, timestamp, uuid, boolean } from "drizzle-orm/pg-core";
196
-
197
- export const users = pgTable("users", {
198
- id: uuid("id").primaryKey().defaultRandom(),
199
- email: text("email").notNull().unique(),
200
- name: text("name"),
201
- isActive: boolean("is_active").notNull().default(true),
202
- createdAt: timestamp("created_at").notNull().defaultNow(),
203
- updatedAt: timestamp("updated_at").notNull().defaultNow(),
204
- });
205
- ```
206
-
207
- ## Django (Python)
208
-
209
- ### Workflow
210
-
211
- ```bash
212
- # Generate migration from model changes
213
- python manage.py makemigrations
214
-
215
- # Apply migrations
216
- python manage.py migrate
217
-
218
- # Show migration status
219
- python manage.py showmigrations
220
-
221
- # Generate empty migration for custom SQL
222
- python manage.py makemigrations --empty app_name -n description
223
- ```
224
-
225
- ### Data Migration
226
-
227
- ```python
228
- from django.db import migrations
229
-
230
- def backfill_display_names(apps, schema_editor):
231
- User = apps.get_model("accounts", "User")
232
- batch_size = 5000
233
- users = User.objects.filter(display_name="")
234
- while users.exists():
235
- batch = list(users[:batch_size])
236
- for user in batch:
237
- user.display_name = user.username
238
- User.objects.bulk_update(batch, ["display_name"], batch_size=batch_size)
239
-
240
- def reverse_backfill(apps, schema_editor):
241
- pass # Data migration, no reverse needed
242
-
243
- class Migration(migrations.Migration):
244
- dependencies = [("accounts", "0015_add_display_name")]
245
-
246
- operations = [
247
- migrations.RunPython(backfill_display_names, reverse_backfill),
248
- ]
249
- ```
250
-
251
- ### SeparateDatabaseAndState
252
-
253
- Remove a column from the Django model without dropping it from the database immediately:
254
-
255
- ```python
256
- class Migration(migrations.Migration):
257
- operations = [
258
- migrations.SeparateDatabaseAndState(
259
- state_operations=[
260
- migrations.RemoveField(model_name="user", name="legacy_field"),
261
- ],
262
- database_operations=[], # Don't touch the DB yet
263
- ),
264
- ]
265
- ```
266
-
267
- ## golang-migrate (Go)
268
-
269
- ### Workflow
270
-
271
- ```bash
272
- # Create migration pair
273
- migrate create -ext sql -dir migrations -seq add_user_avatar
274
-
275
- # Apply all pending migrations
276
- migrate -path migrations -database "$DATABASE_URL" up
277
-
278
- # Rollback last migration
279
- migrate -path migrations -database "$DATABASE_URL" down 1
280
-
281
- # Force version (fix dirty state)
282
- migrate -path migrations -database "$DATABASE_URL" force VERSION
283
- ```
284
-
285
- ### Migration Files
286
-
287
- ```sql
288
- -- migrations/000003_add_user_avatar.up.sql
289
- ALTER TABLE users ADD COLUMN avatar_url TEXT;
290
- CREATE INDEX CONCURRENTLY idx_users_avatar ON users (avatar_url) WHERE avatar_url IS NOT NULL;
291
-
292
- -- migrations/000003_add_user_avatar.down.sql
293
- DROP INDEX IF EXISTS idx_users_avatar;
294
- ALTER TABLE users DROP COLUMN IF EXISTS avatar_url;
295
- ```
296
-
297
- ## Zero-Downtime Migration Strategy
298
-
299
- For critical production changes, follow the expand-contract pattern:
300
-
301
- ```
302
- Phase 1: EXPAND
303
- - Add new column/table (nullable or with default)
304
- - Deploy: app writes to BOTH old and new
305
- - Backfill existing data
306
-
307
- Phase 2: MIGRATE
308
- - Deploy: app reads from NEW, writes to BOTH
309
- - Verify data consistency
310
-
311
- Phase 3: CONTRACT
312
- - Deploy: app only uses NEW
313
- - Drop old column/table in separate migration
314
- ```
315
-
316
- ### Timeline Example
317
-
318
- ```
319
- Day 1: Migration adds new_status column (nullable)
320
- Day 1: Deploy app v2 — writes to both status and new_status
321
- Day 2: Run backfill migration for existing rows
322
- Day 3: Deploy app v3 — reads from new_status only
323
- Day 7: Migration drops old status column
324
- ```
325
-
326
- ## Anti-Patterns
327
-
328
- | Anti-Pattern | Why It Fails | Better Approach |
329
- |-------------|-------------|-----------------|
330
- | Manual SQL in production | No audit trail, unrepeatable | Always use migration files |
331
- | Editing deployed migrations | Causes drift between environments | Create new migration instead |
332
- | NOT NULL without default | Locks table, rewrites all rows | Add nullable, backfill, then add constraint |
333
- | Inline index on large table | Blocks writes during build | CREATE INDEX CONCURRENTLY |
334
- | Schema + data in one migration | Hard to rollback, long transactions | Separate migrations |
335
- | Dropping column before removing code | Application errors on missing column | Remove code first, drop column next deploy |