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,448 @@
1
+ ---
2
+ source: ../../../../../skills/claude-code/testing-guide/testing-pyramid.md
3
+ source_version: 1.1.0
4
+ translation_version: 1.1.0
5
+ last_synced: 2025-12-30
6
+ status: current
7
+ ---
8
+
9
+ # 测试金字塔指南
10
+
11
+ > **语言**: [English](../../../../../skills/claude-code/testing-guide/testing-pyramid.md) | 简体中文
12
+
13
+ **版本**: 1.1.0
14
+ **最後更新**: 2025-12-29
15
+ **適用範圍**: Claude Code Skills
16
+
17
+ ---
18
+
19
+ ## 目的
20
+
21
+ 本文件提供测试金字塔和测试撰写最佳实踐的详细指南,支援 ISTQB 和业界通行金字塔框架。
22
+
23
+ ---
24
+
25
+ ## 框架选择
26
+
27
+ | 框架 | 层级 | 適用場景 |
28
+ |-----------|--------|----------|
29
+ | **ISTQB** | UT → IT/SIT → ST → AT/UAT | 企业级、合規性、正式 QA |
30
+ | **业界通行金字塔** | UT (70%) → IT (20%) → E2E (10%) | 敏捷、DevOps、CI/CD |
31
+
32
+ **集成测试縮写说明:**
33
+ - **IT** (Integration Testing):敏捷/DevOps 社群常用
34
+ - **SIT** (System Integration Testing):企业/ISTQB 環境常用
35
+ - 兩者指的是相同的测试层级
36
+
37
+ ---
38
+
39
+ ## 单元测试 (UT)
40
+
41
+ ### 定義
42
+
43
+ 在隔離外部相依的情况下,测试单一函式、方法或类别。
44
+
45
+ ### 特性
46
+
47
+ - **隔離**: 不存取数据庫、网络或文件系统
48
+ - **快速**: 每个测试 < 100ms
49
+ - **确定性**: 相同输入總是产生相同输出
50
+
51
+ ### 範圍
52
+
53
+ ```
54
+ ✅ 单一函式/方法
55
+ ✅ 单一类别
56
+ ✅ 純粹商业邏辑
57
+ ✅ 数据转换
58
+ ✅ 验证規則
59
+
60
+ ❌ 数据庫查詢
61
+ ❌ 外部 API 呼叫
62
+ ❌ 文件 I/O 操作
63
+ ❌ 多类别互动
64
+ ```
65
+
66
+ ### 範例
67
+
68
+ ```typescript
69
+ describe('UserValidator', () => {
70
+ let validator: UserValidator;
71
+
72
+ beforeEach(() => {
73
+ validator = new UserValidator();
74
+ });
75
+
76
+ it('should return true for valid email format', () => {
77
+ const result = validator.validateEmail('user@example.com');
78
+ expect(result).toBe(true);
79
+ });
80
+
81
+ it('should return false for invalid email format', () => {
82
+ const result = validator.validateEmail('invalid-email');
83
+ expect(result).toBe(false);
84
+ });
85
+ });
86
+ ```
87
+
88
+ ---
89
+
90
+ ## 集成测试 (IT/SIT)
91
+
92
+ ### 定義
93
+
94
+ 测试多个元件、模組或外部系统之间的互动。
95
+
96
+ **縮写说明:**
97
+ - **IT** (Integration Testing):敏捷/DevOps 社群常用(Martin Fowler、Google)
98
+ - **SIT** (System Integration Testing):企业/ISTQB 環境常用
99
+ - 兩者指的是相同的测试概念
100
+
101
+ ### 何时必須有集成测试
102
+
103
+ | 情境 | 原因 |
104
+ |----------|--------|
105
+ | 查詢述詞 | Mock 無法验证過濾表达式 |
106
+ | 实体关联 | 验证外鍵正确性 |
107
+ | 複合主鍵 | 记忆体数据庫可能与真实数据庫不同 |
108
+ | 欄位对应 | DTO ↔ Entity 转换 |
109
+ | 分页 | 列排序和计數 |
110
+ | 交易 | 回滾行为 |
111
+
112
+ **决策規則**: 如果单元测试对查詢/過濾參數使用萬用字元匹配器(`any()`、`It.IsAny<>`、`Arg.Any<>`),該功能必須有集成测试。
113
+
114
+ ### 特性
115
+
116
+ - **元件集成**: 测试模組邊界
117
+ - **真实相依**: 使用实际数据庫、API(通常容器化)
118
+ - **較慢**: 每个测试通常 1-10 秒
119
+
120
+ ### 範圍
121
+
122
+ ```
123
+ ✅ 数据庫 CRUD 操作
124
+ ✅ Repository + Database
125
+ ✅ Service + Repository
126
+ ✅ API 端点 + Service 层
127
+ ✅ 消息佇列生产者/消费者
128
+ ✅ 快取读写操作
129
+
130
+ ❌ 完整使用者工作流程
131
+ ❌ 跨服务通訊
132
+ ❌ UI 互动
133
+ ```
134
+
135
+ ### 範例
136
+
137
+ ```typescript
138
+ describe('UserRepository Integration', () => {
139
+ let repository: UserRepository;
140
+ let dbContext: TestDbContext;
141
+
142
+ beforeEach(async () => {
143
+ dbContext = await TestDbContext.create();
144
+ repository = new UserRepository(dbContext);
145
+ });
146
+
147
+ afterEach(async () => {
148
+ await dbContext.dispose();
149
+ });
150
+
151
+ it('should persist user to database', async () => {
152
+ const user = { name: 'Test User', email: 'test@example.com' };
153
+
154
+ await repository.create(user);
155
+ const saved = await repository.getById(user.id);
156
+
157
+ expect(saved).not.toBeNull();
158
+ expect(saved.name).toBe('Test User');
159
+ });
160
+ });
161
+ ```
162
+
163
+ ---
164
+
165
+ ## 系统测试 (ST)
166
+
167
+ ### 定義
168
+
169
+ 测试完整集成的系统,以验证其符合指定需求。
170
+
171
+ ### 特性
172
+
173
+ - **完整系统**: 所有元件已部署并集成
174
+ - **基於需求**: 針对功能規格进行测试
175
+ - **类生产環境**: 使用类似生产環境的環境
176
+
177
+ ### 範圍
178
+
179
+ ```
180
+ ✅ 完整 API 工作流程
181
+ ✅ 跨服务交易
182
+ ✅ 整个系统的数据流
183
+ ✅ 安全需求
184
+ ✅ 負载下的效能
185
+ ✅ 错误处理与恢復
186
+
187
+ ❌ UI 视覺测试
188
+ ❌ 使用者旅程模擬
189
+ ❌ A/B 测试情境
190
+ ```
191
+
192
+ ### 类型
193
+
194
+ | 类型 | 描述 |
195
+ |------|-------------|
196
+ | 功能性 | 验证功能按指定运作 |
197
+ | 效能 | 負载、壓力、擴展性测试 |
198
+ | 安全性 | 滲透、漏洞掃描 |
199
+ | 可靠性 | 容錯移转、恢復、穩定性 |
200
+
201
+ ---
202
+
203
+ ## 端对端测试 (E2E)
204
+
205
+ ### 定義
206
+
207
+ 從使用者界面到所有系统层,测试完整的使用者工作流程。
208
+
209
+ ### 特性
210
+
211
+ - **使用者视角**: 模擬真实使用者互动
212
+ - **全堆疊**: UI → API → Database → External Services
213
+ - **最慢**: 每个测试通常 30 秒到數分鐘
214
+
215
+ ### 範圍
216
+
217
+ ```
218
+ ✅ 关鍵使用者旅程
219
+ ✅ 登入/验证流程
220
+ ✅ 核心业务交易
221
+ ✅ 跨浏览器功能
222
+ ✅ 部署煙霧测试
223
+
224
+ ❌ 所有可能的使用者路徑
225
+ ❌ 邊緣案例(使用 UT/IT)
226
+ ❌ 效能基准测试
227
+ ```
228
+
229
+ ### 範例 (Playwright)
230
+
231
+ ```typescript
232
+ test.describe('User Registration Journey', () => {
233
+ test('should complete registration and login', async ({ page }) => {
234
+ // Navigate to registration
235
+ await page.goto('/register');
236
+
237
+ // Fill form
238
+ await page.fill('[data-testid="email"]', 'new@example.com');
239
+ await page.fill('[data-testid="password"]', 'SecurePass123!');
240
+ await page.click('[data-testid="register-button"]');
241
+
242
+ // Verify success
243
+ await expect(page.locator('[data-testid="success-message"]'))
244
+ .toContainText('Registration successful');
245
+
246
+ // Login with new account
247
+ await page.goto('/login');
248
+ await page.fill('[data-testid="email"]', 'new@example.com');
249
+ await page.fill('[data-testid="password"]', 'SecurePass123!');
250
+ await page.click('[data-testid="login-button"]');
251
+
252
+ // Verify dashboard
253
+ await expect(page).toHaveURL('/dashboard');
254
+ });
255
+ });
256
+ ```
257
+
258
+ ---
259
+
260
+ ## 测试環境隔離
261
+
262
+ ### 虛擬環境
263
+
264
+ | 语言 | 工具 | 鎖定文件 |
265
+ |----------|-------|----------|
266
+ | Python | venv, poetry | requirements.txt, poetry.lock |
267
+ | Node.js | nvm + npm | package-lock.json |
268
+ | Ruby | rbenv, bundler | Gemfile.lock |
269
+ | Java | SDKMAN, Maven | pom.xml |
270
+ | .NET | dotnet SDK | packages.lock.json |
271
+ | Go | go mod | go.sum |
272
+
273
+ ### 容器化测试
274
+
275
+ | 测试层级 | 容器使用 |
276
+ |------------|----------------|
277
+ | UT | ❌ 不需要 - 使用 mock |
278
+ | IT | ✅ 使用 Testcontainers 进行 DB、快取 |
279
+ | ST | ✅ 使用 Docker Compose 进行完整環境 |
280
+ | E2E | ✅ 完整容器化堆疊 |
281
+
282
+ ### Testcontainers 範例
283
+
284
+ ```typescript
285
+ import { PostgreSqlContainer } from 'testcontainers';
286
+
287
+ describe('Database Integration', () => {
288
+ let container: PostgreSqlContainer;
289
+
290
+ beforeAll(async () => {
291
+ container = await new PostgreSqlContainer().start();
292
+ });
293
+
294
+ afterAll(async () => {
295
+ await container.stop();
296
+ });
297
+
298
+ test('should connect to database', async () => {
299
+ const connectionUrl = container.getConnectionUri();
300
+ // Use connectionUrl for tests
301
+ });
302
+ });
303
+ ```
304
+
305
+ ---
306
+
307
+ ## Mock 限制
308
+
309
+ ### 查詢述詞验证
310
+
311
+ 當模擬接受查詢述詞(例如 lambda 表达式、過濾函式)的 repository 方法时,使用萬用字元匹配器(如 `any()`)会忽略实际的查詢邏辑,允許不正确的查詢通過单元测试。
312
+
313
+ ```typescript
314
+ // ❌ Jest mock 忽略实际過濾器
315
+ jest.spyOn(repo, 'findBy').mockResolvedValue(users);
316
+
317
+ // ✓ 使用集成测试验证
318
+ ```
319
+
320
+ **經驗法則**: 如果单元测试模擬接受查詢/過濾/述詞參數的方法,您必須有相应的集成测试來验证查詢邏辑。
321
+
322
+ ---
323
+
324
+ ## 测试数据管理
325
+
326
+ ### 原則
327
+
328
+ 1. **隔離**: 每个测试管理自己的数据
329
+ 2. **清理**: 测试执行後清理
330
+ 3. **确定性**: 测试不依賴共享状态
331
+ 4. **可读性**: 测试数据清楚顯示意图
332
+
333
+ ### 區分識别欄位
334
+
335
+ 當实体同时具有代理鍵(自动产生的 ID)和业务識别码(例如員工编号、部門代码)时,测试数据必須对每个使用不同的值。
336
+
337
+ ```typescript
338
+ // ❌ 错误: id 等於 businessCode - 对应错误無法檢测
339
+ const dept = { id: 1, businessCode: 1 };
340
+
341
+ // ✓ 正确: 不同的值可捕獲欄位对应错误
342
+ const dept = { id: 1, businessCode: 1001 };
343
+ ```
344
+
345
+ ### 複合主鍵
346
+
347
+ 对於具有複合主鍵的实体,确保每筆记录具有唯一的鍵組合。
348
+
349
+ ```typescript
350
+ // ❌ 鍵衝突 - 相同的 (id, timestamp) 組合
351
+ const record1 = { id: 0, timestamp: now };
352
+ const record2 = { id: 0, timestamp: now }; // 衝突!
353
+
354
+ // ✓ 唯一組合
355
+ const record1 = { id: 0, timestamp: addSeconds(now, 1) };
356
+ const record2 = { id: 0, timestamp: addSeconds(now, 2) };
357
+ ```
358
+
359
+ ### 建造者模式
360
+
361
+ ```typescript
362
+ class UserBuilder {
363
+ private name = 'Default User';
364
+ private email = 'default@example.com';
365
+ private isActive = true;
366
+
367
+ withName(name: string): this {
368
+ this.name = name;
369
+ return this;
370
+ }
371
+
372
+ withEmail(email: string): this {
373
+ this.email = email;
374
+ return this;
375
+ }
376
+
377
+ inactive(): this {
378
+ this.isActive = false;
379
+ return this;
380
+ }
381
+
382
+ build(): User {
383
+ return { name: this.name, email: this.email, isActive: this.isActive };
384
+ }
385
+ }
386
+
387
+ // Usage
388
+ const activeUser = new UserBuilder().withName('Active').build();
389
+ const inactiveUser = new UserBuilder().inactive().build();
390
+ ```
391
+
392
+ ---
393
+
394
+ ## 快速參考卡
395
+
396
+ ### 业界通行金字塔(適合敏捷/DevOps)
397
+
398
+ ```
399
+ ┌──────────┬──────────────────────────────────────────┐
400
+ │ UT │ 单一单元、隔離、模擬相依、< 100ms │
401
+ ├──────────┼──────────────────────────────────────────┤
402
+ │ IT/SIT │ 元件集成、真实数据庫、1-10 秒 │
403
+ ├──────────┼──────────────────────────────────────────┤
404
+ │ E2E │ 使用者旅程、UI 到数据庫、僅关鍵路徑 │
405
+ └──────────┴──────────────────────────────────────────┘
406
+
407
+ 比例: UT 70% | IT 20% | E2E 10%
408
+ ```
409
+
410
+ ### ISTQB 框架(適合企业/合規)
411
+
412
+ ```
413
+ ┌──────────┬──────────────────────────────────────────┐
414
+ │ UT │ 元件测试、隔離单元 │
415
+ ├──────────┼──────────────────────────────────────────┤
416
+ │ IT/SIT │ 集成测试、元件互动 │
417
+ ├──────────┼──────────────────────────────────────────┤
418
+ │ ST │ 系统测试、需求验证 │
419
+ ├──────────┼──────────────────────────────────────────┤
420
+ │ AT/UAT │ 驗收测试、业务验证 │
421
+ └──────────┴──────────────────────────────────────────┘
422
+ ```
423
+
424
+ **Mock 規則**: 如果 UT 模擬查詢參數 → 必須有 IT
425
+
426
+ ---
427
+
428
+ ## 相关标准
429
+
430
+ - [测试标准](../../../core/testing-standards.md)
431
+ - [程序码审查检查清单](../../../core/code-review-checklist.md)
432
+
433
+ ---
434
+
435
+ ## 版本历史
436
+
437
+ | 版本 | 日期 | 变更内容 |
438
+ |---------|------|---------|
439
+ | 1.1.0 | 2025-12-29 | 新增:框架选择(ISTQB/业界通行金字塔)、IT/SIT 縮写说明 |
440
+ | 1.0.0 | 2025-12-24 | 新增:标准區段(目的、相关标准、版本历史、授权) |
441
+
442
+ ---
443
+
444
+ ## 授权
445
+
446
+ 本文件以 [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/) 授权發布。
447
+
448
+ **來源**: [universal-dev-standards](https://github.com/AsiaOstrich/universal-dev-standards)
@@ -0,0 +1,58 @@
1
+ ---
2
+ source: ../../../../skills/cline/README.md
3
+ source_version: 1.0.0
4
+ translation_version: 1.0.0
5
+ last_synced: 2025-12-30
6
+ status: current
7
+ ---
8
+
9
+ # Cline 规则
10
+
11
+ 衍生自 universal-dev-standards 的 Cline 专用规则。
12
+
13
+ ## 状态
14
+
15
+ ✅ **完成** - 可直接使用
16
+
17
+ ## 安装
18
+
19
+ 将 `.clinerules` 档案复制到您的专案根目录:
20
+
21
+ ```bash
22
+ cp skills/cline/.clinerules .clinerules
23
+ ```
24
+
25
+ 或直接从此仓库复制:
26
+
27
+ ```bash
28
+ curl -o .clinerules https://raw.githubusercontent.com/AsiaOstrich/universal-dev-standards/main/skills/cline/.clinerules
29
+ ```
30
+
31
+ ## 包含内容
32
+
33
+ `.clinerules` 档案包含以下指引:
34
+
35
+ - **提交标准** - Conventional Commits 格式
36
+ - **程序码审查** - 品质检查表
37
+ - **测试** - 测试金字塔和 FIRST 原则
38
+ - **Git 工作流程** - 分支命名
39
+ - **文件** - 档案惯例
40
+ - **AI 最佳实践** - AI 协作指南
41
+
42
+ ## 结构
43
+
44
+ ```
45
+ cline/
46
+ ├── .clinerules # 主要规则档案
47
+ └── README.md # 本档案
48
+ ```
49
+
50
+ ## 版本
51
+
52
+ - **版本**:1.0.0
53
+ - **最后更新**:2025-12-29
54
+ - **来源**:[universal-dev-standards](https://github.com/AsiaOstrich/universal-dev-standards)
55
+
56
+ ## 授权
57
+
58
+ CC BY 4.0
@@ -0,0 +1,61 @@
1
+ ---
2
+ source: ../../../../skills/copilot/README.md
3
+ source_version: 1.0.0
4
+ translation_version: 1.0.0
5
+ last_synced: 2025-12-30
6
+ status: current
7
+ ---
8
+
9
+ # GitHub Copilot 指示
10
+
11
+ 衍生自 universal-dev-standards 的 GitHub Copilot 指示。
12
+
13
+ ## 状态
14
+
15
+ ✅ **完成** - 可直接使用
16
+
17
+ ## 安装
18
+
19
+ 将 `copilot-instructions.md` 档案复制到您专案的 `.github` 资料夹:
20
+
21
+ ```bash
22
+ mkdir -p .github
23
+ cp skills/copilot/copilot-instructions.md .github/copilot-instructions.md
24
+ ```
25
+
26
+ 或直接从此仓库复制:
27
+
28
+ ```bash
29
+ mkdir -p .github
30
+ curl -o .github/copilot-instructions.md https://raw.githubusercontent.com/AsiaOstrich/universal-dev-standards/main/skills/copilot/copilot-instructions.md
31
+ ```
32
+
33
+ ## 包含内容
34
+
35
+ `copilot-instructions.md` 档案包含以下指引:
36
+
37
+ - **提交讯息** - Conventional Commits 格式
38
+ - **程序码品质** - 命名和结构指南
39
+ - **安全** - 输入验证和注入防护
40
+ - **测试** - AAA 模式和 FIRST 原则
41
+ - **文件** - API 文件标准
42
+ - **Git** - 分支命名惯例
43
+ - **AI 协作** - 最佳实践
44
+
45
+ ## 结构
46
+
47
+ ```
48
+ copilot/
49
+ ├── copilot-instructions.md # 主要指示档案
50
+ └── README.md # 本档案
51
+ ```
52
+
53
+ ## 版本
54
+
55
+ - **版本**:1.0.0
56
+ - **最后更新**:2025-12-29
57
+ - **来源**:[universal-dev-standards](https://github.com/AsiaOstrich/universal-dev-standards)
58
+
59
+ ## 授权
60
+
61
+ CC BY 4.0
@@ -0,0 +1,79 @@
1
+ ---
2
+ source: ../../../../skills/copilot/copilot-instructions.md
3
+ source_version: 1.0.0
4
+ translation_version: 1.0.0
5
+ last_synced: 2025-12-30
6
+ status: current
7
+ ---
8
+
9
+ # GitHub Copilot 指示
10
+ <!-- 来源:https://github.com/AsiaOstrich/universal-dev-standards -->
11
+ <!-- 版本:1.0.0 -->
12
+
13
+ ## 开发标准
14
+
15
+ 生成程序码建议时遵循这些标准。
16
+
17
+ ### 提交讯息
18
+
19
+ 使用 Conventional Commits 格式:
20
+ ```
21
+ <类型>(<范围>): <主题>
22
+ ```
23
+
24
+ **类型:**
25
+ - `feat` - 新功能
26
+ - `fix` - 错误修正
27
+ - `refactor` - 程序码重构
28
+ - `docs` - 文件
29
+ - `test` - 测试
30
+ - `chore` - 维护
31
+
32
+ **范例:**
33
+ - `feat(auth): add OAuth2 login`
34
+ - `fix(api): handle null user`
35
+
36
+ ### 程序码品质
37
+
38
+ 生成程序码时:
39
+ - 使用描述性的变数/函式名称
40
+ - 遵循单一职责原则
41
+ - 避免程序码重复
42
+ - 适当处理错误
43
+ - 验证输入
44
+
45
+ ### 安全
46
+
47
+ 始终包含:
48
+ - 输入验证
49
+ - 参数化查询(防 SQL 注入)
50
+ - 输出编码(防 XSS)
51
+ - 不硬编码凭证
52
+
53
+ ### 测试
54
+
55
+ 生成测试时遵循:
56
+ - AAA 模式:Arrange → Act → Assert
57
+ - FIRST 原则:Fast、Independent、Repeatable、Self-validating、Timely
58
+ - 边界案例覆盖
59
+
60
+ ### 文件
61
+
62
+ 对于公开 API:
63
+ - 包含 JSDoc/docstring 注解
64
+ - 记录参数和回传值
65
+ - 提供使用范例
66
+
67
+ ### Git
68
+
69
+ 分支命名:
70
+ - `feature/*` - 新功能
71
+ - `fix/*` - 错误修正
72
+ - `hotfix/*` - 紧急修正
73
+
74
+ ### AI 协作
75
+
76
+ 当不确定时:
77
+ - 询问厘清问题
78
+ - 明确说明假设
79
+ - 适时提供多个选项
@@ -0,0 +1,58 @@
1
+ ---
2
+ source: ../../../../skills/cursor/README.md
3
+ source_version: 1.0.0
4
+ translation_version: 1.0.0
5
+ last_synced: 2025-12-30
6
+ status: current
7
+ ---
8
+
9
+ # Cursor 规则
10
+
11
+ 衍生自 universal-dev-standards 的 Cursor 专用规则。
12
+
13
+ ## 状态
14
+
15
+ ✅ **完成** - 可直接使用
16
+
17
+ ## 安装
18
+
19
+ 将 `.cursorrules` 档案复制到您的专案根目录:
20
+
21
+ ```bash
22
+ cp skills/cursor/.cursorrules .cursorrules
23
+ ```
24
+
25
+ 或直接从此仓库复制:
26
+
27
+ ```bash
28
+ curl -o .cursorrules https://raw.githubusercontent.com/AsiaOstrich/universal-dev-standards/main/skills/cursor/.cursorrules
29
+ ```
30
+
31
+ ## 包含内容
32
+
33
+ `.cursorrules` 档案包含以下指引:
34
+
35
+ - **提交讯息** - Conventional Commits 格式
36
+ - **程序码审查** - 品质和安全检查表
37
+ - **测试** - 测试金字塔和最佳实践
38
+ - **Git 工作流程** - 分支命名和提交规则
39
+ - **文件** - 档案命名和结构
40
+ - **AI 协作** - AI 协助的最佳实践
41
+
42
+ ## 结构
43
+
44
+ ```
45
+ cursor/
46
+ ├── .cursorrules # 主要规则档案
47
+ └── README.md # 本档案
48
+ ```
49
+
50
+ ## 版本
51
+
52
+ - **版本**:1.0.0
53
+ - **最后更新**:2025-12-29
54
+ - **来源**:[universal-dev-standards](https://github.com/AsiaOstrich/universal-dev-standards)
55
+
56
+ ## 授权
57
+
58
+ CC BY 4.0