universal-dev-standards 3.5.1-beta.1 → 3.5.1-beta.11

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 (433) hide show
  1. package/bin/uds.js +2 -0
  2. package/bundled/core/ai-instruction-standards.md +205 -0
  3. package/bundled/core/anti-hallucination.md +684 -0
  4. package/bundled/core/changelog-standards.md +556 -0
  5. package/bundled/core/checkin-standards.md +935 -0
  6. package/bundled/core/code-review-checklist.md +684 -0
  7. package/bundled/core/commit-message-guide.md +915 -0
  8. package/bundled/core/documentation-structure.md +1117 -0
  9. package/bundled/core/documentation-writing-standards.md +487 -0
  10. package/bundled/core/error-code-standards.md +382 -0
  11. package/bundled/core/git-workflow.md +859 -0
  12. package/bundled/core/logging-standards.md +323 -0
  13. package/bundled/core/project-structure.md +354 -0
  14. package/bundled/core/refactoring-standards.md +636 -0
  15. package/bundled/core/spec-driven-development.md +207 -0
  16. package/bundled/core/test-completeness-dimensions.md +536 -0
  17. package/bundled/core/test-driven-development.md +995 -0
  18. package/bundled/core/testing-standards.md +3061 -0
  19. package/bundled/core/versioning.md +902 -0
  20. package/bundled/locales/README.md +88 -0
  21. package/bundled/locales/zh-CN/CHANGELOG.md +705 -0
  22. package/bundled/locales/zh-CN/CLAUDE.md +213 -0
  23. package/bundled/locales/zh-CN/MAINTENANCE.md +689 -0
  24. package/bundled/locales/zh-CN/README.md +707 -0
  25. package/bundled/locales/zh-CN/STANDARDS-MAPPING.md +177 -0
  26. package/bundled/locales/zh-CN/adoption/ADOPTION-GUIDE.md +392 -0
  27. package/bundled/locales/zh-CN/adoption/STATIC-DYNAMIC-GUIDE.md +302 -0
  28. package/bundled/locales/zh-CN/adoption/checklists/enterprise.md +332 -0
  29. package/bundled/locales/zh-CN/adoption/checklists/minimal.md +141 -0
  30. package/bundled/locales/zh-CN/adoption/checklists/recommended.md +272 -0
  31. package/bundled/locales/zh-CN/ai/MAINTENANCE.md +739 -0
  32. package/bundled/locales/zh-CN/ai/options/changelog/auto-generated.ai.yaml +76 -0
  33. package/bundled/locales/zh-CN/ai/options/changelog/keep-a-changelog.ai.yaml +99 -0
  34. package/bundled/locales/zh-CN/ai/options/code-review/automated-review.ai.yaml +120 -0
  35. package/bundled/locales/zh-CN/ai/options/code-review/pair-programming.ai.yaml +109 -0
  36. package/bundled/locales/zh-CN/ai/options/code-review/pr-review.ai.yaml +104 -0
  37. package/bundled/locales/zh-CN/ai/options/commit-message/bilingual.ai.yaml +105 -0
  38. package/bundled/locales/zh-CN/ai/options/commit-message/english.ai.yaml +79 -0
  39. package/bundled/locales/zh-CN/ai/options/commit-message/traditional-chinese.ai.yaml +100 -0
  40. package/bundled/locales/zh-CN/ai/options/documentation/api-docs.ai.yaml +140 -0
  41. package/bundled/locales/zh-CN/ai/options/documentation/markdown-docs.ai.yaml +89 -0
  42. package/bundled/locales/zh-CN/ai/options/documentation/wiki-style.ai.yaml +119 -0
  43. package/bundled/locales/zh-CN/ai/options/git-workflow/gitflow.ai.yaml +133 -0
  44. package/bundled/locales/zh-CN/ai/options/git-workflow/github-flow.ai.yaml +73 -0
  45. package/bundled/locales/zh-CN/ai/options/git-workflow/merge-commit.ai.yaml +88 -0
  46. package/bundled/locales/zh-CN/ai/options/git-workflow/rebase-ff.ai.yaml +113 -0
  47. package/bundled/locales/zh-CN/ai/options/git-workflow/squash-merge.ai.yaml +85 -0
  48. package/bundled/locales/zh-CN/ai/options/git-workflow/trunk-based.ai.yaml +117 -0
  49. package/bundled/locales/zh-CN/ai/options/project-structure/dotnet.ai.yaml +108 -0
  50. package/bundled/locales/zh-CN/ai/options/project-structure/go.ai.yaml +115 -0
  51. package/bundled/locales/zh-CN/ai/options/project-structure/java.ai.yaml +113 -0
  52. package/bundled/locales/zh-CN/ai/options/project-structure/kotlin.ai.yaml +123 -0
  53. package/bundled/locales/zh-CN/ai/options/project-structure/nodejs.ai.yaml +101 -0
  54. package/bundled/locales/zh-CN/ai/options/project-structure/php.ai.yaml +147 -0
  55. package/bundled/locales/zh-CN/ai/options/project-structure/python.ai.yaml +116 -0
  56. package/bundled/locales/zh-CN/ai/options/project-structure/ruby.ai.yaml +140 -0
  57. package/bundled/locales/zh-CN/ai/options/project-structure/rust.ai.yaml +117 -0
  58. package/bundled/locales/zh-CN/ai/options/project-structure/swift.ai.yaml +143 -0
  59. package/bundled/locales/zh-CN/ai/options/testing/contract-testing.ai.yaml +254 -0
  60. package/bundled/locales/zh-CN/ai/options/testing/e2e-testing.ai.yaml +116 -0
  61. package/bundled/locales/zh-CN/ai/options/testing/industry-pyramid.ai.yaml +144 -0
  62. package/bundled/locales/zh-CN/ai/options/testing/integration-testing.ai.yaml +90 -0
  63. package/bundled/locales/zh-CN/ai/options/testing/istqb-framework.ai.yaml +108 -0
  64. package/bundled/locales/zh-CN/ai/options/testing/performance-testing.ai.yaml +272 -0
  65. package/bundled/locales/zh-CN/ai/options/testing/security-testing.ai.yaml +160 -0
  66. package/bundled/locales/zh-CN/ai/options/testing/system-testing.ai.yaml +101 -0
  67. package/bundled/locales/zh-CN/ai/options/testing/unit-testing.ai.yaml +82 -0
  68. package/bundled/locales/zh-CN/ai/standards/anti-hallucination.ai.yaml +145 -0
  69. package/bundled/locales/zh-CN/ai/standards/changelog.ai.yaml +146 -0
  70. package/bundled/locales/zh-CN/ai/standards/checkin-standards.ai.yaml +170 -0
  71. package/bundled/locales/zh-CN/ai/standards/code-review.ai.yaml +148 -0
  72. package/bundled/locales/zh-CN/ai/standards/commit-message.ai.yaml +175 -0
  73. package/bundled/locales/zh-CN/ai/standards/documentation-structure.ai.yaml +124 -0
  74. package/bundled/locales/zh-CN/ai/standards/documentation-writing-standards.ai.yaml +190 -0
  75. package/bundled/locales/zh-CN/ai/standards/error-codes.ai.yaml +139 -0
  76. package/bundled/locales/zh-CN/ai/standards/git-workflow.ai.yaml +95 -0
  77. package/bundled/locales/zh-CN/ai/standards/logging.ai.yaml +128 -0
  78. package/bundled/locales/zh-CN/ai/standards/project-structure.ai.yaml +134 -0
  79. package/bundled/locales/zh-CN/ai/standards/spec-driven-development.ai.yaml +169 -0
  80. package/bundled/locales/zh-CN/ai/standards/test-completeness-dimensions.ai.yaml +220 -0
  81. package/bundled/locales/zh-CN/ai/standards/testing.ai.yaml +137 -0
  82. package/bundled/locales/zh-CN/ai/standards/versioning.ai.yaml +211 -0
  83. package/bundled/locales/zh-CN/core/ai-instruction-standards.md +213 -0
  84. package/bundled/locales/zh-CN/core/anti-hallucination.md +691 -0
  85. package/bundled/locales/zh-CN/core/changelog-standards.md +147 -0
  86. package/bundled/locales/zh-CN/core/checkin-standards.md +943 -0
  87. package/bundled/locales/zh-CN/core/code-review-guide.md +693 -0
  88. package/bundled/locales/zh-CN/core/commit-message-guide.md +129 -0
  89. package/bundled/locales/zh-CN/core/documentation-structure.md +173 -0
  90. package/bundled/locales/zh-CN/core/documentation-writing-standards.md +495 -0
  91. package/bundled/locales/zh-CN/core/error-code-standards.md +180 -0
  92. package/bundled/locales/zh-CN/core/git-workflow.md +193 -0
  93. package/bundled/locales/zh-CN/core/logging-standards.md +174 -0
  94. package/bundled/locales/zh-CN/core/project-structure.md +184 -0
  95. package/bundled/locales/zh-CN/core/refactoring-standards.md +642 -0
  96. package/bundled/locales/zh-CN/core/spec-driven-development.md +215 -0
  97. package/bundled/locales/zh-CN/core/test-completeness-dimensions.md +544 -0
  98. package/bundled/locales/zh-CN/core/test-driven-development.md +1002 -0
  99. package/bundled/locales/zh-CN/core/testing-standards.md +170 -0
  100. package/bundled/locales/zh-CN/core/versioning.md +177 -0
  101. package/bundled/locales/zh-CN/docs/AI-AGENT-ROADMAP.md +303 -0
  102. package/bundled/locales/zh-CN/docs/CLI-INIT-OPTIONS.md +990 -0
  103. package/bundled/locales/zh-CN/docs/OPERATION-WORKFLOW.md +1064 -0
  104. package/bundled/locales/zh-CN/docs/USAGE-MODES-COMPARISON.md +333 -0
  105. package/bundled/locales/zh-CN/docs/WINDOWS-GUIDE.md +215 -0
  106. package/bundled/locales/zh-CN/integrations/codex/AGENTS.md +115 -0
  107. package/bundled/locales/zh-CN/integrations/codex/README.md +67 -0
  108. package/bundled/locales/zh-CN/integrations/gemini-cli/GEMINI.md +102 -0
  109. package/bundled/locales/zh-CN/integrations/gemini-cli/README.md +140 -0
  110. package/bundled/locales/zh-CN/integrations/github-copilot/COPILOT-CHAT-REFERENCE.md +269 -0
  111. package/bundled/locales/zh-CN/integrations/github-copilot/README.md +167 -0
  112. package/bundled/locales/zh-CN/integrations/github-copilot/copilot-instructions.md +263 -0
  113. package/bundled/locales/zh-CN/integrations/github-copilot/skills-mapping.md +192 -0
  114. package/bundled/locales/zh-CN/integrations/google-antigravity/INSTRUCTIONS.md +61 -0
  115. package/bundled/locales/zh-CN/integrations/google-antigravity/README.md +84 -0
  116. package/bundled/locales/zh-CN/integrations/opencode/AGENTS.md +111 -0
  117. package/bundled/locales/zh-CN/integrations/opencode/README.md +176 -0
  118. package/bundled/locales/zh-CN/integrations/opencode/skills-mapping.md +396 -0
  119. package/bundled/locales/zh-CN/integrations/openspec/AGENTS.md +301 -0
  120. package/bundled/locales/zh-CN/integrations/openspec/README.md +43 -0
  121. package/bundled/locales/zh-CN/integrations/spec-kit/AGENTS.md +184 -0
  122. package/bundled/locales/zh-CN/integrations/spec-kit/README.md +43 -0
  123. package/bundled/locales/zh-CN/options/commit-message/bilingual.md +161 -0
  124. package/bundled/locales/zh-CN/options/commit-message/english.md +137 -0
  125. package/bundled/locales/zh-CN/options/commit-message/traditional-chinese.md +162 -0
  126. package/bundled/locales/zh-CN/options/git-workflow/gitflow.md +147 -0
  127. package/bundled/locales/zh-CN/options/git-workflow/github-flow.md +124 -0
  128. package/bundled/locales/zh-CN/options/git-workflow/merge-commit.md +124 -0
  129. package/bundled/locales/zh-CN/options/git-workflow/rebase-ff.md +160 -0
  130. package/bundled/locales/zh-CN/options/git-workflow/squash-merge.md +117 -0
  131. package/bundled/locales/zh-CN/options/git-workflow/trunk-based.md +125 -0
  132. package/bundled/locales/zh-CN/options/project-structure/dotnet.md +183 -0
  133. package/bundled/locales/zh-CN/options/project-structure/go.md +226 -0
  134. package/bundled/locales/zh-CN/options/project-structure/java.md +213 -0
  135. package/bundled/locales/zh-CN/options/project-structure/nodejs.md +185 -0
  136. package/bundled/locales/zh-CN/options/project-structure/python.md +229 -0
  137. package/bundled/locales/zh-CN/options/testing/e2e-testing.md +207 -0
  138. package/bundled/locales/zh-CN/options/testing/integration-testing.md +230 -0
  139. package/bundled/locales/zh-CN/options/testing/system-testing.md +183 -0
  140. package/bundled/locales/zh-CN/options/testing/unit-testing.md +165 -0
  141. package/bundled/locales/zh-CN/skills/INTEGRATION-GUIDE.md +218 -0
  142. package/bundled/locales/zh-CN/skills/README.md +134 -0
  143. package/bundled/locales/zh-CN/skills/_shared/README.md +68 -0
  144. package/bundled/locales/zh-CN/skills/claude-code/CONTRIBUTING.template.md +151 -0
  145. package/bundled/locales/zh-CN/skills/claude-code/README.md +174 -0
  146. package/bundled/locales/zh-CN/skills/claude-code/ai-collaboration-standards/SKILL.md +175 -0
  147. package/bundled/locales/zh-CN/skills/claude-code/ai-collaboration-standards/anti-hallucination.md +223 -0
  148. package/bundled/locales/zh-CN/skills/claude-code/ai-collaboration-standards/certainty-labels.md +132 -0
  149. package/bundled/locales/zh-CN/skills/claude-code/changelog-guide/SKILL.md +237 -0
  150. package/bundled/locales/zh-CN/skills/claude-code/checkin-assistant/SKILL.md +407 -0
  151. package/bundled/locales/zh-CN/skills/claude-code/code-review-assistant/SKILL.md +154 -0
  152. package/bundled/locales/zh-CN/skills/claude-code/code-review-assistant/checkin-checklist.md +257 -0
  153. package/bundled/locales/zh-CN/skills/claude-code/code-review-assistant/review-checklist.md +246 -0
  154. package/bundled/locales/zh-CN/skills/claude-code/commands/bdd.md +142 -0
  155. package/bundled/locales/zh-CN/skills/claude-code/commands/methodology.md +274 -0
  156. package/bundled/locales/zh-CN/skills/claude-code/commit-standards/SKILL.md +191 -0
  157. package/bundled/locales/zh-CN/skills/claude-code/commit-standards/conventional-commits.md +264 -0
  158. package/bundled/locales/zh-CN/skills/claude-code/commit-standards/language-options.md +172 -0
  159. package/bundled/locales/zh-CN/skills/claude-code/documentation-guide/SKILL.md +421 -0
  160. package/bundled/locales/zh-CN/skills/claude-code/documentation-guide/documentation-structure.md +357 -0
  161. package/bundled/locales/zh-CN/skills/claude-code/documentation-guide/readme-template.md +412 -0
  162. package/bundled/locales/zh-CN/skills/claude-code/error-code-guide/SKILL.md +269 -0
  163. package/bundled/locales/zh-CN/skills/claude-code/git-workflow-guide/SKILL.md +218 -0
  164. package/bundled/locales/zh-CN/skills/claude-code/git-workflow-guide/branch-naming.md +220 -0
  165. package/bundled/locales/zh-CN/skills/claude-code/git-workflow-guide/git-workflow.md +321 -0
  166. package/bundled/locales/zh-CN/skills/claude-code/logging-guide/SKILL.md +285 -0
  167. package/bundled/locales/zh-CN/skills/claude-code/methodology-system/SKILL.md +131 -0
  168. package/bundled/locales/zh-CN/skills/claude-code/methodology-system/create-methodology.md +350 -0
  169. package/bundled/locales/zh-CN/skills/claude-code/methodology-system/runtime.md +279 -0
  170. package/bundled/locales/zh-CN/skills/claude-code/project-structure-guide/SKILL.md +143 -0
  171. package/bundled/locales/zh-CN/skills/claude-code/project-structure-guide/language-patterns.md +271 -0
  172. package/bundled/locales/zh-CN/skills/claude-code/refactoring-assistant/SKILL.md +162 -0
  173. package/bundled/locales/zh-CN/skills/claude-code/release-standards/SKILL.md +191 -0
  174. package/bundled/locales/zh-CN/skills/claude-code/release-standards/changelog-format.md +247 -0
  175. package/bundled/locales/zh-CN/skills/claude-code/release-standards/release-workflow.md +345 -0
  176. package/bundled/locales/zh-CN/skills/claude-code/release-standards/semantic-versioning.md +250 -0
  177. package/bundled/locales/zh-CN/skills/claude-code/requirement-assistant/SKILL.md +227 -0
  178. package/bundled/locales/zh-CN/skills/claude-code/requirement-assistant/requirement-checklist.md +325 -0
  179. package/bundled/locales/zh-CN/skills/claude-code/requirement-assistant/requirement-writing.md +399 -0
  180. package/bundled/locales/zh-CN/skills/claude-code/spec-driven-dev/SKILL.md +243 -0
  181. package/bundled/locales/zh-CN/skills/claude-code/tdd-assistant/SKILL.md +332 -0
  182. package/bundled/locales/zh-CN/skills/claude-code/tdd-assistant/language-examples.md +639 -0
  183. package/bundled/locales/zh-CN/skills/claude-code/tdd-assistant/tdd-workflow.md +486 -0
  184. package/bundled/locales/zh-CN/skills/claude-code/test-coverage-assistant/SKILL.md +282 -0
  185. package/bundled/locales/zh-CN/skills/claude-code/testing-guide/SKILL.md +234 -0
  186. package/bundled/locales/zh-CN/skills/claude-code/testing-guide/testing-pyramid.md +448 -0
  187. package/bundled/locales/zh-CN/skills/cline/README.md +58 -0
  188. package/bundled/locales/zh-CN/skills/copilot/README.md +61 -0
  189. package/bundled/locales/zh-CN/skills/copilot/copilot-instructions.md +79 -0
  190. package/bundled/locales/zh-CN/skills/cursor/README.md +58 -0
  191. package/bundled/locales/zh-CN/skills/windsurf/README.md +59 -0
  192. package/bundled/locales/zh-TW/CHANGELOG.md +707 -0
  193. package/bundled/locales/zh-TW/CLAUDE.md +213 -0
  194. package/bundled/locales/zh-TW/MAINTENANCE.md +683 -0
  195. package/bundled/locales/zh-TW/README.md +687 -0
  196. package/bundled/locales/zh-TW/STANDARDS-MAPPING.md +177 -0
  197. package/bundled/locales/zh-TW/adoption/ADOPTION-GUIDE.md +392 -0
  198. package/bundled/locales/zh-TW/adoption/STATIC-DYNAMIC-GUIDE.md +299 -0
  199. package/bundled/locales/zh-TW/adoption/checklists/enterprise.md +332 -0
  200. package/bundled/locales/zh-TW/adoption/checklists/minimal.md +141 -0
  201. package/bundled/locales/zh-TW/adoption/checklists/recommended.md +272 -0
  202. package/bundled/locales/zh-TW/ai/MAINTENANCE.md +754 -0
  203. package/bundled/locales/zh-TW/ai/options/changelog/auto-generated.ai.yaml +76 -0
  204. package/bundled/locales/zh-TW/ai/options/changelog/keep-a-changelog.ai.yaml +99 -0
  205. package/bundled/locales/zh-TW/ai/options/code-review/automated-review.ai.yaml +120 -0
  206. package/bundled/locales/zh-TW/ai/options/code-review/pair-programming.ai.yaml +109 -0
  207. package/bundled/locales/zh-TW/ai/options/code-review/pr-review.ai.yaml +104 -0
  208. package/bundled/locales/zh-TW/ai/options/commit-message/bilingual.ai.yaml +105 -0
  209. package/bundled/locales/zh-TW/ai/options/commit-message/english.ai.yaml +79 -0
  210. package/bundled/locales/zh-TW/ai/options/commit-message/traditional-chinese.ai.yaml +100 -0
  211. package/bundled/locales/zh-TW/ai/options/documentation/api-docs.ai.yaml +140 -0
  212. package/bundled/locales/zh-TW/ai/options/documentation/markdown-docs.ai.yaml +89 -0
  213. package/bundled/locales/zh-TW/ai/options/documentation/wiki-style.ai.yaml +119 -0
  214. package/bundled/locales/zh-TW/ai/options/git-workflow/gitflow.ai.yaml +133 -0
  215. package/bundled/locales/zh-TW/ai/options/git-workflow/github-flow.ai.yaml +73 -0
  216. package/bundled/locales/zh-TW/ai/options/git-workflow/merge-commit.ai.yaml +88 -0
  217. package/bundled/locales/zh-TW/ai/options/git-workflow/rebase-ff.ai.yaml +113 -0
  218. package/bundled/locales/zh-TW/ai/options/git-workflow/squash-merge.ai.yaml +85 -0
  219. package/bundled/locales/zh-TW/ai/options/git-workflow/trunk-based.ai.yaml +117 -0
  220. package/bundled/locales/zh-TW/ai/options/project-structure/dotnet.ai.yaml +108 -0
  221. package/bundled/locales/zh-TW/ai/options/project-structure/go.ai.yaml +115 -0
  222. package/bundled/locales/zh-TW/ai/options/project-structure/java.ai.yaml +113 -0
  223. package/bundled/locales/zh-TW/ai/options/project-structure/kotlin.ai.yaml +123 -0
  224. package/bundled/locales/zh-TW/ai/options/project-structure/nodejs.ai.yaml +101 -0
  225. package/bundled/locales/zh-TW/ai/options/project-structure/php.ai.yaml +147 -0
  226. package/bundled/locales/zh-TW/ai/options/project-structure/python.ai.yaml +116 -0
  227. package/bundled/locales/zh-TW/ai/options/project-structure/ruby.ai.yaml +140 -0
  228. package/bundled/locales/zh-TW/ai/options/project-structure/rust.ai.yaml +117 -0
  229. package/bundled/locales/zh-TW/ai/options/project-structure/swift.ai.yaml +143 -0
  230. package/bundled/locales/zh-TW/ai/options/testing/contract-testing.ai.yaml +254 -0
  231. package/bundled/locales/zh-TW/ai/options/testing/e2e-testing.ai.yaml +116 -0
  232. package/bundled/locales/zh-TW/ai/options/testing/industry-pyramid.ai.yaml +144 -0
  233. package/bundled/locales/zh-TW/ai/options/testing/integration-testing.ai.yaml +90 -0
  234. package/bundled/locales/zh-TW/ai/options/testing/istqb-framework.ai.yaml +108 -0
  235. package/bundled/locales/zh-TW/ai/options/testing/performance-testing.ai.yaml +272 -0
  236. package/bundled/locales/zh-TW/ai/options/testing/security-testing.ai.yaml +160 -0
  237. package/bundled/locales/zh-TW/ai/options/testing/system-testing.ai.yaml +101 -0
  238. package/bundled/locales/zh-TW/ai/options/testing/unit-testing.ai.yaml +82 -0
  239. package/bundled/locales/zh-TW/ai/standards/anti-hallucination.ai.yaml +145 -0
  240. package/bundled/locales/zh-TW/ai/standards/changelog.ai.yaml +146 -0
  241. package/bundled/locales/zh-TW/ai/standards/checkin-standards.ai.yaml +170 -0
  242. package/bundled/locales/zh-TW/ai/standards/code-review.ai.yaml +148 -0
  243. package/bundled/locales/zh-TW/ai/standards/commit-message.ai.yaml +175 -0
  244. package/bundled/locales/zh-TW/ai/standards/documentation-structure.ai.yaml +124 -0
  245. package/bundled/locales/zh-TW/ai/standards/documentation-writing-standards.ai.yaml +190 -0
  246. package/bundled/locales/zh-TW/ai/standards/error-codes.ai.yaml +139 -0
  247. package/bundled/locales/zh-TW/ai/standards/git-workflow.ai.yaml +95 -0
  248. package/bundled/locales/zh-TW/ai/standards/logging.ai.yaml +128 -0
  249. package/bundled/locales/zh-TW/ai/standards/project-structure.ai.yaml +134 -0
  250. package/bundled/locales/zh-TW/ai/standards/spec-driven-development.ai.yaml +169 -0
  251. package/bundled/locales/zh-TW/ai/standards/test-completeness-dimensions.ai.yaml +220 -0
  252. package/bundled/locales/zh-TW/ai/standards/testing.ai.yaml +137 -0
  253. package/bundled/locales/zh-TW/ai/standards/versioning.ai.yaml +211 -0
  254. package/bundled/locales/zh-TW/core/ai-instruction-standards.md +213 -0
  255. package/bundled/locales/zh-TW/core/anti-hallucination.md +691 -0
  256. package/bundled/locales/zh-TW/core/changelog-standards.md +564 -0
  257. package/bundled/locales/zh-TW/core/checkin-standards.md +943 -0
  258. package/bundled/locales/zh-TW/core/code-review-checklist.md +693 -0
  259. package/bundled/locales/zh-TW/core/commit-message-guide.md +809 -0
  260. package/bundled/locales/zh-TW/core/documentation-structure.md +1125 -0
  261. package/bundled/locales/zh-TW/core/documentation-writing-standards.md +495 -0
  262. package/bundled/locales/zh-TW/core/error-code-standards.md +384 -0
  263. package/bundled/locales/zh-TW/core/git-workflow.md +860 -0
  264. package/bundled/locales/zh-TW/core/logging-standards.md +325 -0
  265. package/bundled/locales/zh-TW/core/project-structure.md +362 -0
  266. package/bundled/locales/zh-TW/core/refactoring-standards.md +642 -0
  267. package/bundled/locales/zh-TW/core/spec-driven-development.md +215 -0
  268. package/bundled/locales/zh-TW/core/test-completeness-dimensions.md +544 -0
  269. package/bundled/locales/zh-TW/core/test-driven-development.md +1004 -0
  270. package/bundled/locales/zh-TW/core/testing-standards.md +2158 -0
  271. package/bundled/locales/zh-TW/core/versioning.md +909 -0
  272. package/bundled/locales/zh-TW/docs/AI-AGENT-ROADMAP.md +303 -0
  273. package/bundled/locales/zh-TW/docs/CLI-INIT-OPTIONS.md +990 -0
  274. package/bundled/locales/zh-TW/docs/OPERATION-WORKFLOW.md +1064 -0
  275. package/bundled/locales/zh-TW/docs/USAGE-MODES-COMPARISON.md +333 -0
  276. package/bundled/locales/zh-TW/docs/WINDOWS-GUIDE.md +215 -0
  277. package/bundled/locales/zh-TW/integrations/codex/AGENTS.md +115 -0
  278. package/bundled/locales/zh-TW/integrations/codex/README.md +113 -0
  279. package/bundled/locales/zh-TW/integrations/gemini-cli/GEMINI.md +102 -0
  280. package/bundled/locales/zh-TW/integrations/gemini-cli/README.md +140 -0
  281. package/bundled/locales/zh-TW/integrations/github-copilot/COPILOT-CHAT-REFERENCE.md +269 -0
  282. package/bundled/locales/zh-TW/integrations/github-copilot/README.md +167 -0
  283. package/bundled/locales/zh-TW/integrations/github-copilot/copilot-instructions.md +263 -0
  284. package/bundled/locales/zh-TW/integrations/github-copilot/skills-mapping.md +192 -0
  285. package/bundled/locales/zh-TW/integrations/google-antigravity/INSTRUCTIONS.md +61 -0
  286. package/bundled/locales/zh-TW/integrations/google-antigravity/README.md +84 -0
  287. package/bundled/locales/zh-TW/integrations/opencode/AGENTS.md +111 -0
  288. package/bundled/locales/zh-TW/integrations/opencode/README.md +176 -0
  289. package/bundled/locales/zh-TW/integrations/opencode/skills-mapping.md +396 -0
  290. package/bundled/locales/zh-TW/integrations/openspec/AGENTS.md +301 -0
  291. package/bundled/locales/zh-TW/integrations/openspec/README.md +43 -0
  292. package/bundled/locales/zh-TW/integrations/spec-kit/AGENTS.md +184 -0
  293. package/bundled/locales/zh-TW/integrations/spec-kit/README.md +43 -0
  294. package/bundled/locales/zh-TW/options/commit-message/bilingual.md +161 -0
  295. package/bundled/locales/zh-TW/options/commit-message/english.md +137 -0
  296. package/bundled/locales/zh-TW/options/commit-message/traditional-chinese.md +162 -0
  297. package/bundled/locales/zh-TW/options/git-workflow/gitflow.md +147 -0
  298. package/bundled/locales/zh-TW/options/git-workflow/github-flow.md +124 -0
  299. package/bundled/locales/zh-TW/options/git-workflow/merge-commit.md +124 -0
  300. package/bundled/locales/zh-TW/options/git-workflow/rebase-ff.md +160 -0
  301. package/bundled/locales/zh-TW/options/git-workflow/squash-merge.md +117 -0
  302. package/bundled/locales/zh-TW/options/git-workflow/trunk-based.md +125 -0
  303. package/bundled/locales/zh-TW/options/project-structure/dotnet.md +183 -0
  304. package/bundled/locales/zh-TW/options/project-structure/go.md +226 -0
  305. package/bundled/locales/zh-TW/options/project-structure/java.md +213 -0
  306. package/bundled/locales/zh-TW/options/project-structure/nodejs.md +185 -0
  307. package/bundled/locales/zh-TW/options/project-structure/python.md +229 -0
  308. package/bundled/locales/zh-TW/options/testing/e2e-testing.md +207 -0
  309. package/bundled/locales/zh-TW/options/testing/integration-testing.md +230 -0
  310. package/bundled/locales/zh-TW/options/testing/system-testing.md +183 -0
  311. package/bundled/locales/zh-TW/options/testing/unit-testing.md +165 -0
  312. package/bundled/locales/zh-TW/skills/INTEGRATION-GUIDE.md +218 -0
  313. package/bundled/locales/zh-TW/skills/README.md +132 -0
  314. package/bundled/locales/zh-TW/skills/_shared/README.md +68 -0
  315. package/bundled/locales/zh-TW/skills/claude-code/CONTRIBUTING.template.md +151 -0
  316. package/bundled/locales/zh-TW/skills/claude-code/README.md +174 -0
  317. package/bundled/locales/zh-TW/skills/claude-code/ai-collaboration-standards/SKILL.md +175 -0
  318. package/bundled/locales/zh-TW/skills/claude-code/ai-collaboration-standards/anti-hallucination.md +223 -0
  319. package/bundled/locales/zh-TW/skills/claude-code/ai-collaboration-standards/certainty-labels.md +132 -0
  320. package/bundled/locales/zh-TW/skills/claude-code/changelog-guide/SKILL.md +237 -0
  321. package/bundled/locales/zh-TW/skills/claude-code/checkin-assistant/SKILL.md +407 -0
  322. package/bundled/locales/zh-TW/skills/claude-code/code-review-assistant/SKILL.md +154 -0
  323. package/bundled/locales/zh-TW/skills/claude-code/code-review-assistant/checkin-checklist.md +257 -0
  324. package/bundled/locales/zh-TW/skills/claude-code/code-review-assistant/review-checklist.md +246 -0
  325. package/bundled/locales/zh-TW/skills/claude-code/commands/bdd.md +142 -0
  326. package/bundled/locales/zh-TW/skills/claude-code/commands/methodology.md +274 -0
  327. package/bundled/locales/zh-TW/skills/claude-code/commit-standards/SKILL.md +191 -0
  328. package/bundled/locales/zh-TW/skills/claude-code/commit-standards/conventional-commits.md +264 -0
  329. package/bundled/locales/zh-TW/skills/claude-code/commit-standards/language-options.md +172 -0
  330. package/bundled/locales/zh-TW/skills/claude-code/documentation-guide/SKILL.md +421 -0
  331. package/bundled/locales/zh-TW/skills/claude-code/documentation-guide/documentation-structure.md +357 -0
  332. package/bundled/locales/zh-TW/skills/claude-code/documentation-guide/readme-template.md +412 -0
  333. package/bundled/locales/zh-TW/skills/claude-code/error-code-guide/SKILL.md +269 -0
  334. package/bundled/locales/zh-TW/skills/claude-code/git-workflow-guide/SKILL.md +218 -0
  335. package/bundled/locales/zh-TW/skills/claude-code/git-workflow-guide/branch-naming.md +220 -0
  336. package/bundled/locales/zh-TW/skills/claude-code/git-workflow-guide/git-workflow.md +321 -0
  337. package/bundled/locales/zh-TW/skills/claude-code/logging-guide/SKILL.md +285 -0
  338. package/bundled/locales/zh-TW/skills/claude-code/methodology-system/SKILL.md +131 -0
  339. package/bundled/locales/zh-TW/skills/claude-code/methodology-system/create-methodology.md +350 -0
  340. package/bundled/locales/zh-TW/skills/claude-code/methodology-system/runtime.md +279 -0
  341. package/bundled/locales/zh-TW/skills/claude-code/project-structure-guide/SKILL.md +143 -0
  342. package/bundled/locales/zh-TW/skills/claude-code/project-structure-guide/language-patterns.md +271 -0
  343. package/bundled/locales/zh-TW/skills/claude-code/refactoring-assistant/SKILL.md +162 -0
  344. package/bundled/locales/zh-TW/skills/claude-code/release-standards/SKILL.md +191 -0
  345. package/bundled/locales/zh-TW/skills/claude-code/release-standards/changelog-format.md +247 -0
  346. package/bundled/locales/zh-TW/skills/claude-code/release-standards/release-workflow.md +345 -0
  347. package/bundled/locales/zh-TW/skills/claude-code/release-standards/semantic-versioning.md +250 -0
  348. package/bundled/locales/zh-TW/skills/claude-code/requirement-assistant/SKILL.md +227 -0
  349. package/bundled/locales/zh-TW/skills/claude-code/requirement-assistant/requirement-checklist.md +325 -0
  350. package/bundled/locales/zh-TW/skills/claude-code/requirement-assistant/requirement-writing.md +399 -0
  351. package/bundled/locales/zh-TW/skills/claude-code/spec-driven-dev/SKILL.md +243 -0
  352. package/bundled/locales/zh-TW/skills/claude-code/tdd-assistant/SKILL.md +332 -0
  353. package/bundled/locales/zh-TW/skills/claude-code/tdd-assistant/language-examples.md +639 -0
  354. package/bundled/locales/zh-TW/skills/claude-code/tdd-assistant/tdd-workflow.md +486 -0
  355. package/bundled/locales/zh-TW/skills/claude-code/test-coverage-assistant/SKILL.md +282 -0
  356. package/bundled/locales/zh-TW/skills/claude-code/testing-guide/SKILL.md +234 -0
  357. package/bundled/locales/zh-TW/skills/claude-code/testing-guide/testing-pyramid.md +448 -0
  358. package/bundled/locales/zh-TW/skills/cline/README.md +58 -0
  359. package/bundled/locales/zh-TW/skills/copilot/README.md +61 -0
  360. package/bundled/locales/zh-TW/skills/copilot/copilot-instructions.md +79 -0
  361. package/bundled/locales/zh-TW/skills/cursor/README.md +58 -0
  362. package/bundled/locales/zh-TW/skills/windsurf/README.md +59 -0
  363. package/bundled/skills/claude-code/CONTRIBUTING.template.md +141 -0
  364. package/bundled/skills/claude-code/README.md +196 -0
  365. package/bundled/skills/claude-code/ai/standards/checkin.ai.yaml +21 -0
  366. package/bundled/skills/claude-code/ai/standards/commit.ai.yaml +20 -0
  367. package/bundled/skills/claude-code/ai/standards/refactoring.ai.yaml +34 -0
  368. package/bundled/skills/claude-code/ai/standards/testing.ai.yaml +41 -0
  369. package/bundled/skills/claude-code/ai-collaboration-standards/SKILL.md +175 -0
  370. package/bundled/skills/claude-code/ai-collaboration-standards/anti-hallucination.md +215 -0
  371. package/bundled/skills/claude-code/ai-collaboration-standards/certainty-labels.md +124 -0
  372. package/bundled/skills/claude-code/changelog-guide/SKILL.md +232 -0
  373. package/bundled/skills/claude-code/checkin-assistant/SKILL.md +402 -0
  374. package/bundled/skills/claude-code/code-review-assistant/SKILL.md +220 -0
  375. package/bundled/skills/claude-code/code-review-assistant/checkin-checklist.md +249 -0
  376. package/bundled/skills/claude-code/code-review-assistant/review-checklist.md +238 -0
  377. package/bundled/skills/claude-code/commands/README.md +78 -0
  378. package/bundled/skills/claude-code/commands/bdd.md +142 -0
  379. package/bundled/skills/claude-code/commands/changelog.md +57 -0
  380. package/bundled/skills/claude-code/commands/check.md +91 -0
  381. package/bundled/skills/claude-code/commands/commit.md +48 -0
  382. package/bundled/skills/claude-code/commands/config.md +97 -0
  383. package/bundled/skills/claude-code/commands/coverage.md +58 -0
  384. package/bundled/skills/claude-code/commands/docs.md +75 -0
  385. package/bundled/skills/claude-code/commands/init.md +88 -0
  386. package/bundled/skills/claude-code/commands/methodology.md +268 -0
  387. package/bundled/skills/claude-code/commands/release.md +50 -0
  388. package/bundled/skills/claude-code/commands/requirement.md +54 -0
  389. package/bundled/skills/claude-code/commands/review.md +50 -0
  390. package/bundled/skills/claude-code/commands/spec.md +69 -0
  391. package/bundled/skills/claude-code/commands/tdd.md +86 -0
  392. package/bundled/skills/claude-code/commands/update.md +122 -0
  393. package/bundled/skills/claude-code/commit-standards/SKILL.md +249 -0
  394. package/bundled/skills/claude-code/commit-standards/conventional-commits.md +256 -0
  395. package/bundled/skills/claude-code/commit-standards/language-options.md +164 -0
  396. package/bundled/skills/claude-code/documentation-guide/SKILL.md +416 -0
  397. package/bundled/skills/claude-code/documentation-guide/documentation-structure.md +349 -0
  398. package/bundled/skills/claude-code/documentation-guide/readme-template.md +404 -0
  399. package/bundled/skills/claude-code/error-code-guide/SKILL.md +264 -0
  400. package/bundled/skills/claude-code/git-workflow-guide/SKILL.md +226 -0
  401. package/bundled/skills/claude-code/git-workflow-guide/branch-naming.md +212 -0
  402. package/bundled/skills/claude-code/git-workflow-guide/git-workflow.md +313 -0
  403. package/bundled/skills/claude-code/logging-guide/SKILL.md +280 -0
  404. package/bundled/skills/claude-code/methodology-system/SKILL.md +215 -0
  405. package/bundled/skills/claude-code/methodology-system/create-methodology.md +450 -0
  406. package/bundled/skills/claude-code/methodology-system/runtime.md +271 -0
  407. package/bundled/skills/claude-code/project-structure-guide/SKILL.md +143 -0
  408. package/bundled/skills/claude-code/project-structure-guide/language-patterns.md +263 -0
  409. package/bundled/skills/claude-code/refactoring-assistant/SKILL.md +205 -0
  410. package/bundled/skills/claude-code/release-standards/SKILL.md +191 -0
  411. package/bundled/skills/claude-code/release-standards/changelog-format.md +239 -0
  412. package/bundled/skills/claude-code/release-standards/release-workflow.md +337 -0
  413. package/bundled/skills/claude-code/release-standards/semantic-versioning.md +242 -0
  414. package/bundled/skills/claude-code/requirement-assistant/SKILL.md +222 -0
  415. package/bundled/skills/claude-code/requirement-assistant/requirement-checklist.md +317 -0
  416. package/bundled/skills/claude-code/requirement-assistant/requirement-writing.md +391 -0
  417. package/bundled/skills/claude-code/spec-driven-dev/SKILL.md +238 -0
  418. package/bundled/skills/claude-code/tdd-assistant/SKILL.md +384 -0
  419. package/bundled/skills/claude-code/tdd-assistant/language-examples.md +1276 -0
  420. package/bundled/skills/claude-code/tdd-assistant/tdd-workflow.md +659 -0
  421. package/bundled/skills/claude-code/test-coverage-assistant/SKILL.md +277 -0
  422. package/bundled/skills/claude-code/testing-guide/SKILL.md +317 -0
  423. package/bundled/skills/claude-code/testing-guide/testing-pyramid.md +440 -0
  424. package/package.json +4 -2
  425. package/src/commands/check.js +38 -6
  426. package/src/commands/init.js +20 -6
  427. package/src/commands/list.js +7 -2
  428. package/src/commands/skills.js +0 -2
  429. package/src/commands/update.js +271 -0
  430. package/src/i18n/messages.js +161 -11
  431. package/src/utils/copier.js +63 -10
  432. package/src/utils/skills-installer.js +47 -11
  433. package/standards-registry.json +6 -3
@@ -0,0 +1,659 @@
1
+ # TDD Workflow Guide
2
+
3
+ > **Language**: English | [繁體中文](../../../locales/zh-TW/skills/claude-code/tdd-assistant/tdd-workflow.md)
4
+
5
+ **Version**: 1.0.0
6
+ **Last Updated**: 2026-01-07
7
+
8
+ ---
9
+
10
+ ## Complete Workflow Diagram
11
+
12
+ ```
13
+ ┌─────────────────────────────────────────────────────────────────────────────┐
14
+ │ Complete TDD Workflow │
15
+ ├─────────────────────────────────────────────────────────────────────────────┤
16
+ │ │
17
+ │ ┌───────────────┐ │
18
+ │ │ 1. Understand │ Read requirement/spec/user story │
19
+ │ │ Requirement │ Identify acceptance criteria │
20
+ │ └───────┬───────┘ │
21
+ │ │ │
22
+ │ ▼ │
23
+ │ ┌───────────────┐ │
24
+ │ │ 2. List Test │ Brainstorm test cases │
25
+ │ │ Cases │ Happy path, edge cases, errors │
26
+ │ └───────┬───────┘ │
27
+ │ │ │
28
+ │ ▼ │
29
+ │ ┌───────────────┐ │
30
+ │ │ 3. Pick ONE │ Start with simplest case │
31
+ │ │ Test │ (usually happy path) │
32
+ │ └───────┬───────┘ │
33
+ │ │ │
34
+ │ ▼ │
35
+ │ ┌───────────────┐ │
36
+ │ │ 🔴 RED │ Write failing test │
37
+ │ │ (1-5 min) │ Verify it fails for right reason │
38
+ │ └───────┬───────┘ │
39
+ │ │ │
40
+ │ ▼ │
41
+ │ ┌───────────────┐ │
42
+ │ │ 🟢 GREEN │ Write minimum code to pass │
43
+ │ │ (1-10 min) │ "Fake it" is OK │
44
+ │ └───────┬───────┘ │
45
+ │ │ │
46
+ │ ▼ │
47
+ │ ┌───────────────┐ │
48
+ │ │ 🔵 REFACTOR │ Clean up code │
49
+ │ │ (5-15 min) │ Keep tests green │
50
+ │ └───────┬───────┘ │
51
+ │ │ │
52
+ │ ▼ │
53
+ │ ┌───────────────┐ ┌─────────────────┐ │
54
+ │ │ More tests? │─Yes─▶│ Return to │ │
55
+ │ │ │ │ Step 3 │ │
56
+ │ └───────┬───────┘ └─────────────────┘ │
57
+ │ │ No │
58
+ │ ▼ │
59
+ │ ┌───────────────┐ │
60
+ │ │ ✅ DONE │ All acceptance criteria met │
61
+ │ └───────────────┘ │
62
+ │ │
63
+ └─────────────────────────────────────────────────────────────────────────────┘
64
+ ```
65
+
66
+ ---
67
+
68
+ ## Red Phase Deep Dive
69
+
70
+ ### Goal
71
+
72
+ Write a test that:
73
+ - Describes expected behavior (not implementation)
74
+ - Fails for the **right** reason
75
+ - Has a clear, descriptive name
76
+
77
+ ### Step-by-Step
78
+
79
+ 1. **Choose what to test**
80
+ - Start with the simplest scenario
81
+ - Focus on ONE behavior
82
+
83
+ 2. **Write test structure**
84
+ ```typescript
85
+ test('should [expected behavior] when [condition]', () => {
86
+ // Arrange - Set up test data
87
+
88
+ // Act - Execute the behavior
89
+
90
+ // Assert - Verify the result
91
+ });
92
+ ```
93
+
94
+ 3. **Fill in the test**
95
+ - Arrange: Create test data and dependencies
96
+ - Act: Call the method/function being tested
97
+ - Assert: Verify the expected outcome
98
+
99
+ 4. **Run the test**
100
+ - It should FAIL
101
+ - Verify the failure is for the right reason
102
+
103
+ ### Common Mistakes
104
+
105
+ | Mistake | Example | Fix |
106
+ |---------|---------|-----|
107
+ | **Too many assertions** | Testing 5 things in one test | One behavior per test |
108
+ | **Vague test name** | `test('works')` | `test('should return sum of two numbers')` |
109
+ | **No assertion** | Missing `expect()` | Always assert expected outcome |
110
+ | **Testing implementation** | Checking private method calls | Test observable behavior |
111
+ | **Test already passes** | Test for existing behavior | Write for NEW behavior |
112
+
113
+ ### Red Phase Checklist
114
+
115
+ ```
116
+ □ Test name clearly describes the behavior
117
+ □ Test follows AAA pattern
118
+ □ Test has exactly ONE assertion (or related group)
119
+ □ Test FAILS when run
120
+ □ Failure message is clear
121
+ □ Failure is for the RIGHT reason (not syntax error)
122
+ ```
123
+
124
+ ---
125
+
126
+ ## Green Phase Deep Dive
127
+
128
+ ### Goal
129
+
130
+ Write the **minimum** code to make the test pass.
131
+
132
+ ### Step-by-Step
133
+
134
+ 1. **Analyze the failure**
135
+ - What does the test expect?
136
+ - What's the simplest way to provide it?
137
+
138
+ 2. **Write minimum code**
139
+ - Hardcoding is OK for first test
140
+ - Don't anticipate future requirements
141
+
142
+ 3. **Run the test**
143
+ - It should PASS
144
+ - All other tests should still pass
145
+
146
+ ### The "Fake It" Strategy
147
+
148
+ For the first test, it's perfectly fine to fake the implementation:
149
+
150
+ ```typescript
151
+ // Test: should return sum of 2 and 3
152
+ test('should return sum of two numbers', () => {
153
+ expect(add(2, 3)).toBe(5);
154
+ });
155
+
156
+ // First implementation (fake it!)
157
+ function add(a: number, b: number): number {
158
+ return 5; // Just return the expected value
159
+ }
160
+ ```
161
+
162
+ Then add more tests to force generalization:
163
+
164
+ ```typescript
165
+ // Second test forces real implementation
166
+ test('should return sum of 1 and 1', () => {
167
+ expect(add(1, 1)).toBe(2);
168
+ });
169
+
170
+ // Now we must generalize
171
+ function add(a: number, b: number): number {
172
+ return a + b;
173
+ }
174
+ ```
175
+
176
+ ### Common Mistakes
177
+
178
+ | Mistake | Example | Fix |
179
+ |---------|---------|-----|
180
+ | **Over-engineering** | Adding features not needed yet | Only code for current test |
181
+ | **Optimizing early** | Performance tuning | Make it work first |
182
+ | **Adding error handling** | Try-catch for untested cases | Only handle tested errors |
183
+ | **Copying large code blocks** | From other projects | Write minimal code |
184
+
185
+ ### Green Phase Checklist
186
+
187
+ ```
188
+ □ Wrote MINIMUM code to pass
189
+ □ Didn't add features not required by test
190
+ □ Current test passes
191
+ □ All other tests still pass
192
+ □ No premature optimization
193
+ ```
194
+
195
+ ---
196
+
197
+ ## Refactor Phase Deep Dive
198
+
199
+ ### Goal
200
+
201
+ Improve code quality while keeping all tests green.
202
+
203
+ ### Step-by-Step
204
+
205
+ 1. **Identify code smells**
206
+ - Duplication
207
+ - Long methods
208
+ - Poor names
209
+ - Complex conditionals
210
+
211
+ 2. **Choose ONE improvement**
212
+ - Don't try to fix everything at once
213
+
214
+ 3. **Make the change**
215
+ - Small, incremental changes
216
+
217
+ 4. **Run tests immediately**
218
+ - If tests fail, revert immediately
219
+
220
+ 5. **Repeat if needed**
221
+
222
+ ### Common Refactorings
223
+
224
+ | Technique | When | Example |
225
+ |-----------|------|---------|
226
+ | **Extract Method** | Long method, repeated code | Pull 10 lines into `calculateTax()` |
227
+ | **Rename** | Unclear names | `x` → `totalAmount` |
228
+ | **Inline** | Unnecessary indirection | Remove wrapper function |
229
+ | **Extract Variable** | Complex expression | `const isEligible = age >= 18 && hasId` |
230
+ | **Replace Magic Number** | Hardcoded values | `7` → `DAYS_IN_WEEK` |
231
+
232
+ ### Refactoring Safety Rules
233
+
234
+ ```
235
+ 1. Tests are GREEN before starting
236
+ 2. Make ONE change at a time
237
+ 3. Run tests after EVERY change
238
+ 4. If tests FAIL → REVERT immediately
239
+ 5. Never add new functionality while refactoring
240
+ ```
241
+
242
+ ### Common Mistakes
243
+
244
+ | Mistake | Example | Fix |
245
+ |---------|---------|-----|
246
+ | **Skipping this phase** | Moving to next test immediately | Always look for improvements |
247
+ | **Too many changes at once** | Refactoring 5 things | One change at a time |
248
+ | **Adding functionality** | "While I'm here..." | Only clean up existing code |
249
+ | **Not running tests** | Batch running at end | Run after every change |
250
+
251
+ ### Refactor Phase Checklist
252
+
253
+ ```
254
+ □ All tests GREEN before starting
255
+ □ Identified specific improvement
256
+ □ Made ONE small change
257
+ □ Tests still GREEN
258
+ □ Code is cleaner/simpler
259
+ □ No new functionality added
260
+ □ Repeated for other improvements
261
+ ```
262
+
263
+ ---
264
+
265
+ ## BDD Workflow
266
+
267
+ ### Gherkin Syntax
268
+
269
+ ```gherkin
270
+ Feature: [Feature name]
271
+ As a [role]
272
+ I want [goal]
273
+ So that [benefit]
274
+
275
+ Background:
276
+ Given [common setup for all scenarios]
277
+
278
+ Scenario: [Scenario name]
279
+ Given [initial context]
280
+ And [more context]
281
+ When [action]
282
+ And [more actions]
283
+ Then [expected outcome]
284
+ And [more outcomes]
285
+
286
+ Scenario Outline: [Parameterized scenario]
287
+ Given [context with <parameter>]
288
+ When [action]
289
+ Then [outcome with <expected>]
290
+
291
+ Examples:
292
+ | parameter | expected |
293
+ | value1 | result1 |
294
+ | value2 | result2 |
295
+ ```
296
+
297
+ ### BDD Workflow Steps
298
+
299
+ ```
300
+ ┌─────────────────────────────────────────────────────────────────┐
301
+ │ BDD Workflow │
302
+ ├─────────────────────────────────────────────────────────────────┤
303
+ │ │
304
+ │ 1. Discovery Session │
305
+ │ ├─ Developers, BA, QA, stakeholders together │
306
+ │ ├─ Discuss user stories │
307
+ │ └─ Identify acceptance criteria │
308
+ │ │
309
+ │ 2. Formulation │
310
+ │ ├─ Write scenarios in Gherkin │
311
+ │ ├─ Each AC → one or more scenarios │
312
+ │ └─ Review with team │
313
+ │ │
314
+ │ 3. Automation │
315
+ │ ├─ Create step definitions │
316
+ │ ├─ Each step → code that executes the step │
317
+ │ └─ Use TDD for step implementations │
318
+ │ │
319
+ │ 4. Implementation │
320
+ │ ├─ Run scenarios (they fail - RED) │
321
+ │ ├─ Implement feature code (GREEN) │
322
+ │ └─ Refactor │
323
+ │ │
324
+ │ 5. Living Documentation │
325
+ │ └─ Scenarios serve as always-up-to-date documentation │
326
+ │ │
327
+ └─────────────────────────────────────────────────────────────────┘
328
+ ```
329
+
330
+ ### Step Definitions Example (JavaScript/Cucumber)
331
+
332
+ ```javascript
333
+ const { Given, When, Then } = require('@cucumber/cucumber');
334
+
335
+ Given('I have a shopping cart with {int} items', async function (count) {
336
+ this.cart = new ShoppingCart();
337
+ for (let i = 0; i < count; i++) {
338
+ this.cart.addItem({ name: `Item ${i}`, price: 10 });
339
+ }
340
+ });
341
+
342
+ When('I apply discount code {string}', async function (code) {
343
+ this.result = await this.cart.applyDiscount(code);
344
+ });
345
+
346
+ Then('the cart total should be {float}', function (expectedTotal) {
347
+ expect(this.cart.getTotal()).toBeCloseTo(expectedTotal, 2);
348
+ });
349
+ ```
350
+
351
+ ### BDD Best Practices
352
+
353
+ | Practice | Description |
354
+ |----------|-------------|
355
+ | **Declarative over Imperative** | Say WHAT, not HOW |
356
+ | **Business Language** | Avoid technical jargon |
357
+ | **Independent Scenarios** | Each scenario is self-contained |
358
+ | **Minimal Steps** | 5-10 steps per scenario |
359
+ | **Reusable Steps** | Write generic step definitions |
360
+
361
+ ```gherkin
362
+ # ❌ Imperative (too detailed)
363
+ Scenario: Login
364
+ Given I navigate to "http://example.com/login"
365
+ And I click on the username field
366
+ And I type "john@example.com"
367
+ And I click on the password field
368
+ And I type "secret123"
369
+ And I click the "Login" button
370
+ Then I see "Welcome John"
371
+
372
+ # ✅ Declarative (behavior focused)
373
+ Scenario: Successful login
374
+ Given I am on the login page
375
+ When I login with valid credentials
376
+ Then I should see my dashboard
377
+ ```
378
+
379
+ ---
380
+
381
+ ## ATDD Workflow
382
+
383
+ ### Acceptance Criteria Format
384
+
385
+ ```markdown
386
+ ## User Story
387
+
388
+ **As a** [role]
389
+ **I want** [feature]
390
+ **So that** [benefit]
391
+
392
+ ## Acceptance Criteria
393
+
394
+ ### AC-1: [Criterion name]
395
+ **Given** [precondition]
396
+ **When** [action]
397
+ **Then** [expected result]
398
+
399
+ ### AC-2: [Criterion name]
400
+ **Given** [precondition]
401
+ **When** [action]
402
+ **Then** [expected result]
403
+
404
+ ## Out of Scope
405
+ - [Things explicitly not included]
406
+
407
+ ## Technical Notes
408
+ - [Implementation hints, constraints]
409
+ ```
410
+
411
+ ### ATDD Workflow Steps
412
+
413
+ ```
414
+ ┌─────────────────────────────────────────────────────────────────┐
415
+ │ ATDD Workflow │
416
+ ├─────────────────────────────────────────────────────────────────┤
417
+ │ │
418
+ │ 1. Specification Workshop │
419
+ │ ├─ Product Owner presents user story │
420
+ │ ├─ Team asks clarifying questions │
421
+ │ ├─ Define acceptance criteria together │
422
+ │ └─ Write examples for each AC │
423
+ │ │
424
+ │ 2. Distillation │
425
+ │ ├─ Convert examples to executable tests │
426
+ │ ├─ Remove ambiguity │
427
+ │ └─ Get sign-off from Product Owner │
428
+ │ │
429
+ │ 3. Development │
430
+ │ ├─ Acceptance tests are RED │
431
+ │ ├─ Use BDD for feature-level tests │
432
+ │ ├─ Use TDD for unit-level tests │
433
+ │ └─ Acceptance tests turn GREEN │
434
+ │ │
435
+ │ 4. Demo │
436
+ │ ├─ Show passing acceptance tests │
437
+ │ ├─ Product Owner validates │
438
+ │ └─ Accept or refine criteria │
439
+ │ │
440
+ └─────────────────────────────────────────────────────────────────┘
441
+ ```
442
+
443
+ ### Mapping AC to Tests
444
+
445
+ | Acceptance Criteria | Test Level | Tool |
446
+ |---------------------|------------|------|
447
+ | User-facing behavior | Acceptance | FitNesse, Cucumber |
448
+ | Feature behavior | BDD | Cucumber, SpecFlow |
449
+ | Unit logic | TDD | Jest, xUnit |
450
+ | API contract | Integration | Supertest, REST Assured |
451
+
452
+ ---
453
+
454
+ ## Team Collaboration Patterns
455
+
456
+ ### Pair Programming with TDD
457
+
458
+ #### Ping-Pong Pattern
459
+
460
+ ```
461
+ ┌─────────────────────────────────────────────────────────────────┐
462
+ │ Ping-Pong TDD │
463
+ ├─────────────────────────────────────────────────────────────────┤
464
+ │ │
465
+ │ Developer A Developer B │
466
+ │ ─────────── ─────────── │
467
+ │ 1. Writes failing test ─────────────────────▶ │
468
+ │ ◀───────────────────── 2. Makes it pass│
469
+ │ ◀───────────────────── 3. Writes test │
470
+ │ 4. Makes it pass ───────────────────────────▶ │
471
+ │ 5. Writes test ─────────────────────────────▶ │
472
+ │ ◀───────────────────── 6. Makes it pass│
473
+ │ │
474
+ │ Either can refactor at any time │
475
+ │ │
476
+ └─────────────────────────────────────────────────────────────────┘
477
+ ```
478
+
479
+ **Benefits**:
480
+ - Both engaged constantly
481
+ - Knowledge sharing
482
+ - Catches mistakes early
483
+
484
+ #### Driver-Navigator Pattern
485
+
486
+ ```
487
+ ┌─────────────────────────────────────────────────────────────────┐
488
+ │ Driver-Navigator TDD │
489
+ ├─────────────────────────────────────────────────────────────────┤
490
+ │ │
491
+ │ Driver (Keyboard) Navigator (Thinking) │
492
+ │ ───────────────── ─────────────────── │
493
+ │ - Types code - Thinks about design │
494
+ │ - Focuses on syntax - Considers test cases │
495
+ │ - Implements ideas - Reviews for mistakes │
496
+ │ - Asks questions - Suggests directions │
497
+ │ │
498
+ │ Switch roles every 15-30 minutes │
499
+ │ │
500
+ └─────────────────────────────────────────────────────────────────┘
501
+ ```
502
+
503
+ **Benefits**:
504
+ - Clear roles
505
+ - Navigator can think strategically
506
+ - Continuous review
507
+
508
+ ### Mob Programming with TDD
509
+
510
+ ```
511
+ ┌─────────────────────────────────────────────────────────────────┐
512
+ │ Mob Programming TDD │
513
+ ├─────────────────────────────────────────────────────────────────┤
514
+ │ │
515
+ │ Team (3-6 people) │
516
+ │ ───────────────── │
517
+ │ - One Driver (types) │
518
+ │ - Multiple Navigators (guide) │
519
+ │ - Rotate Driver every 5-10 minutes │
520
+ │ │
521
+ │ TDD Process: │
522
+ │ 1. Team discusses next test │
523
+ │ 2. Driver writes test (navigators guide) │
524
+ │ 3. Team verifies test fails │
525
+ │ 4. Team discusses implementation │
526
+ │ 5. Driver implements (navigators guide) │
527
+ │ 6. Rotate driver │
528
+ │ 7. Next person refactors or writes next test │
529
+ │ │
530
+ └─────────────────────────────────────────────────────────────────┘
531
+ ```
532
+
533
+ **Benefits**:
534
+ - Whole team alignment
535
+ - Collective ownership
536
+ - Real-time knowledge transfer
537
+
538
+ ---
539
+
540
+ ## CI/CD Integration
541
+
542
+ ### Pipeline Structure
543
+
544
+ ```yaml
545
+ stages:
546
+ - test:unit # Fast (< 2 min)
547
+ - test:integration # Medium (< 10 min)
548
+ - test:e2e # Slow (< 30 min)
549
+ - coverage-check
550
+ - deploy
551
+ ```
552
+
553
+ ### Quality Gates
554
+
555
+ | Gate | Threshold | Action on Failure |
556
+ |------|-----------|-------------------|
557
+ | Unit test pass rate | 100% | Block merge |
558
+ | Integration test pass rate | 100% | Block merge |
559
+ | Code coverage | 80% | Warn / Block |
560
+ | New code coverage | 90% | Warn |
561
+ | Test execution time | < baseline | Warn |
562
+
563
+ ### Example CI Configuration
564
+
565
+ ```yaml
566
+ # GitHub Actions
567
+ name: TDD Pipeline
568
+
569
+ on:
570
+ push:
571
+ branches: [main, develop]
572
+ pull_request:
573
+ branches: [main]
574
+
575
+ jobs:
576
+ unit-tests:
577
+ runs-on: ubuntu-latest
578
+ steps:
579
+ - uses: actions/checkout@v4
580
+ - uses: actions/setup-node@v4
581
+ - run: npm ci
582
+ - run: npm run test:unit -- --coverage
583
+ - uses: codecov/codecov-action@v4
584
+
585
+ integration-tests:
586
+ needs: unit-tests
587
+ runs-on: ubuntu-latest
588
+ services:
589
+ postgres:
590
+ image: postgres:15
591
+ env:
592
+ POSTGRES_PASSWORD: test
593
+ steps:
594
+ - uses: actions/checkout@v4
595
+ - run: npm run test:integration
596
+
597
+ e2e-tests:
598
+ needs: integration-tests
599
+ runs-on: ubuntu-latest
600
+ steps:
601
+ - uses: actions/checkout@v4
602
+ - run: npm run test:e2e
603
+ ```
604
+
605
+ ### Test Reporting
606
+
607
+ ```yaml
608
+ # Add test reporting
609
+ - name: Test Report
610
+ uses: dorny/test-reporter@v1
611
+ if: success() || failure()
612
+ with:
613
+ name: Test Results
614
+ path: reports/junit.xml
615
+ reporter: jest-junit
616
+ ```
617
+
618
+ ---
619
+
620
+ ## Quick Decision Guide
621
+
622
+ ### Which Test to Write?
623
+
624
+ ```
625
+ What are you implementing?
626
+
627
+ ├─ New feature
628
+ │ └─ Start with acceptance criteria → BDD → TDD
629
+
630
+ ├─ Bug fix
631
+ │ └─ Write failing test that reproduces bug → TDD
632
+
633
+ ├─ Refactoring
634
+ │ └─ Ensure existing tests cover behavior → Refactor
635
+
636
+ ├─ Performance improvement
637
+ │ └─ Write performance test → Implement → Verify
638
+
639
+ └─ New API endpoint
640
+ └─ TDD for logic + Integration test for HTTP
641
+ ```
642
+
643
+ ### Test Granularity
644
+
645
+ ```
646
+ How specific should this test be?
647
+
648
+ ├─ Testing public API → One test per behavior
649
+ ├─ Testing internal logic → Group related assertions
650
+ └─ Testing edge cases → One test per edge case
651
+ ```
652
+
653
+ ---
654
+
655
+ ## Related Documents
656
+
657
+ - [SKILL.md](./SKILL.md) - TDD Assistant overview
658
+ - [Language Examples](./language-examples.md) - Language-specific TDD
659
+ - [TDD Core Standard](../../../core/test-driven-development.md) - Full TDD standard