universal-dev-standards 5.17.0 → 6.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (539) hide show
  1. package/bin/uds.js +13 -135
  2. package/bundled/ai/standards/acceptance-criteria-traceability.ai.yaml +13 -4
  3. package/bundled/ai/standards/accessibility-standards.ai.yaml +1 -1
  4. package/bundled/ai/standards/ai-response-navigation.ai.yaml +15 -2
  5. package/bundled/ai/standards/api-design-standards.ai.yaml +27 -4
  6. package/bundled/ai/standards/behavior-snapshot.ai.yaml +86 -9
  7. package/bundled/ai/standards/checkin-standards.ai.yaml +2 -2
  8. package/bundled/ai/standards/code-review.ai.yaml +2 -2
  9. package/bundled/ai/standards/context-aware-loading.ai.yaml +3 -3
  10. package/bundled/ai/standards/data-migration-testing.ai.yaml +79 -3
  11. package/bundled/ai/standards/deprecation-standards.ai.yaml +10 -2
  12. package/bundled/ai/standards/developer-memory.ai.yaml +4 -3
  13. package/bundled/ai/standards/flow-based-testing.ai.yaml +2 -2
  14. package/bundled/ai/standards/forward-derivation-standards.ai.yaml +26 -2
  15. package/bundled/ai/standards/full-coverage-testing.ai.yaml +34 -2
  16. package/bundled/ai/standards/git-worktree.ai.yaml +3 -3
  17. package/bundled/ai/standards/logging.ai.yaml +97 -3
  18. package/bundled/ai/standards/mock-boundary.ai.yaml +48 -2
  19. package/bundled/ai/standards/model-provenance.ai.yaml +297 -0
  20. package/bundled/ai/standards/model-selection.ai.yaml +11 -2
  21. package/bundled/ai/standards/observability-standards.ai.yaml +10 -0
  22. package/bundled/ai/standards/performance-standards.ai.yaml +46 -1
  23. package/bundled/ai/standards/pii-classification.ai.yaml +15 -1
  24. package/bundled/ai/standards/pipeline-security-gates.ai.yaml +10 -0
  25. package/bundled/ai/standards/privacy-standards.ai.yaml +2 -2
  26. package/bundled/ai/standards/project-context-memory.ai.yaml +2 -2
  27. package/bundled/ai/standards/refactoring-standards.ai.yaml +68 -3
  28. package/bundled/ai/standards/resource-cost-boundary.ai.yaml +279 -0
  29. package/bundled/ai/standards/reverse-engineering-standards.ai.yaml +55 -2
  30. package/bundled/ai/standards/security-testing.ai.yaml +13 -2
  31. package/bundled/ai/standards/skill-standard-alignment-check.ai.yaml +37 -2
  32. package/bundled/ai/standards/user-journey-testing.ai.yaml +107 -0
  33. package/bundled/ai/standards/verification-oracle.ai.yaml +278 -0
  34. package/bundled/ai/standards/versioning.ai.yaml +32 -38
  35. package/bundled/core/acceptance-criteria-traceability.md +15 -5
  36. package/bundled/core/accessibility-standards.md +8 -4
  37. package/bundled/core/ai-friendly-architecture.md +1 -1
  38. package/bundled/core/ai-response-navigation.md +31 -3
  39. package/bundled/core/anti-sycophancy-prompting.md +1 -1
  40. package/bundled/core/api-design-standards.md +92 -7
  41. package/bundled/core/audit-trail.md +119 -0
  42. package/bundled/core/behavior-snapshot.md +94 -7
  43. package/bundled/core/browser-compatibility-standards.md +15 -2
  44. package/bundled/core/checkin-standards.md +9 -2
  45. package/bundled/core/code-review-checklist.md +10 -2
  46. package/bundled/core/container-image-standards.md +97 -0
  47. package/bundled/core/context-aware-loading.md +2 -2
  48. package/bundled/core/cost-budget-test.md +1 -1
  49. package/bundled/core/cross-flow-regression.md +3 -2
  50. package/bundled/core/data-contract.md +104 -0
  51. package/bundled/core/data-migration-testing.md +90 -0
  52. package/bundled/core/data-pipeline.md +113 -0
  53. package/bundled/core/deprecation-standards.md +16 -2
  54. package/bundled/core/developer-memory.md +13 -8
  55. package/bundled/core/documentation-writing-standards.md +1 -1
  56. package/bundled/core/error-code-standards.md +4 -3
  57. package/bundled/core/flaky-test-management.md +1 -1
  58. package/bundled/core/flow-based-testing.md +3 -3
  59. package/bundled/core/forward-derivation-standards.md +33 -5
  60. package/bundled/core/full-coverage-testing.md +72 -0
  61. package/bundled/core/git-worktree.md +4 -4
  62. package/bundled/core/guides/performance-guide.md +1 -1
  63. package/bundled/core/guides/security-guide.md +1 -1
  64. package/bundled/core/health-check-standards.md +2 -2
  65. package/bundled/core/iac-design-principles.md +97 -0
  66. package/bundled/core/incident-response.md +119 -0
  67. package/bundled/core/license-compliance.md +2 -0
  68. package/bundled/core/logging-standards.md +78 -2
  69. package/bundled/core/mock-boundary.md +54 -2
  70. package/bundled/core/model-provenance.md +181 -0
  71. package/bundled/core/model-selection.md +27 -2
  72. package/bundled/core/packaging-standards.md +1 -0
  73. package/bundled/core/performance-standards.md +96 -2
  74. package/bundled/core/pii-classification.md +148 -0
  75. package/bundled/core/pipeline-security-gates.md +22 -2
  76. package/bundled/core/postmortem-standards.md +2 -0
  77. package/bundled/core/prd-standards.md +91 -0
  78. package/bundled/core/privacy-standards.md +14 -3
  79. package/bundled/core/product-metrics-standards.md +100 -0
  80. package/bundled/core/project-context-memory.md +8 -2
  81. package/bundled/core/prompt-regression.md +1 -1
  82. package/bundled/core/refactoring-standards.md +44 -3
  83. package/bundled/core/replay-test.md +1 -1
  84. package/bundled/core/resource-cost-boundary.md +180 -0
  85. package/bundled/core/reverse-engineering-standards.md +66 -2
  86. package/bundled/core/runbook.md +113 -0
  87. package/bundled/core/schema-evolution.md +105 -0
  88. package/bundled/core/secret-management-standards.md +110 -0
  89. package/bundled/core/security-testing.md +26 -2
  90. package/bundled/core/self-review-protocol.md +2 -2
  91. package/bundled/core/skill-standard-alignment-check.md +53 -0
  92. package/bundled/core/slo-sli.md +109 -0
  93. package/bundled/core/smoke-test.md +1 -1
  94. package/bundled/core/tech-debt-standards.md +1 -1
  95. package/bundled/core/test-data-standards.md +2 -2
  96. package/bundled/core/user-journey-testing.md +102 -0
  97. package/bundled/core/user-story-mapping.md +96 -0
  98. package/bundled/core/verification-oracle.md +167 -0
  99. package/bundled/core/versioning.md +133 -109
  100. package/bundled/locales/COVERAGE.md +84 -73
  101. package/bundled/locales/zh-CN/CHANGELOG.md +71 -6
  102. package/bundled/locales/zh-CN/CLAUDE.md +1 -1
  103. package/bundled/locales/zh-CN/README.md +22 -9
  104. package/bundled/locales/zh-CN/SECURITY.md +1 -1
  105. package/bundled/locales/zh-CN/adoption/DAILY-WORKFLOW-GUIDE.md +2 -2
  106. package/bundled/locales/zh-CN/core/acceptance-criteria-traceability.md +4 -6
  107. package/bundled/locales/zh-CN/core/accessibility-standards.md +1 -1
  108. package/bundled/locales/zh-CN/core/adversarial-test.md +226 -0
  109. package/bundled/locales/zh-CN/core/agent-behavior-discipline.md +187 -0
  110. package/bundled/locales/zh-CN/core/ai-response-navigation.md +32 -6
  111. package/bundled/locales/zh-CN/core/anti-sycophancy-prompting.md +1 -1
  112. package/bundled/locales/zh-CN/core/api-design-standards.md +1 -1
  113. package/bundled/locales/zh-CN/core/behavior-snapshot.md +335 -0
  114. package/bundled/locales/zh-CN/core/browser-compatibility-standards.md +229 -0
  115. package/bundled/locales/zh-CN/core/cd-deployment-strategies.md +135 -0
  116. package/bundled/locales/zh-CN/core/chaos-injection-tests.md +130 -0
  117. package/bundled/locales/zh-CN/core/checkin-standards.md +1 -1
  118. package/bundled/locales/zh-CN/core/code-review-checklist.md +1 -1
  119. package/bundled/locales/zh-CN/core/container-security.md +535 -0
  120. package/bundled/locales/zh-CN/core/context-aware-loading.md +1 -1
  121. package/bundled/locales/zh-CN/core/contract-testing-standards.md +191 -0
  122. package/bundled/locales/zh-CN/core/cost-budget-test.md +86 -0
  123. package/bundled/locales/zh-CN/core/cross-flow-regression.md +199 -0
  124. package/bundled/locales/zh-CN/core/data-migration-testing.md +217 -0
  125. package/bundled/locales/zh-CN/core/deployment-standards.md +328 -9
  126. package/bundled/locales/zh-CN/core/deprecation-standards.md +1 -1
  127. package/bundled/locales/zh-CN/core/developer-memory.md +2 -2
  128. package/bundled/locales/zh-CN/core/disaster-recovery-drill.md +87 -0
  129. package/bundled/locales/zh-CN/core/documentation-structure.md +1 -1
  130. package/bundled/locales/zh-CN/core/documentation-writing-standards.md +1 -1
  131. package/bundled/locales/zh-CN/core/error-code-standards.md +2 -2
  132. package/bundled/locales/zh-CN/core/feature-manifest-standard.md +222 -0
  133. package/bundled/locales/zh-CN/core/flaky-test-management.md +87 -0
  134. package/bundled/locales/zh-CN/core/flow-based-testing.md +284 -0
  135. package/bundled/locales/zh-CN/core/forward-derivation-standards.md +3 -4
  136. package/bundled/locales/zh-CN/core/full-coverage-testing.md +197 -0
  137. package/bundled/locales/zh-CN/core/git-worktree.md +1 -1
  138. package/bundled/locales/zh-CN/core/governance-layer.md +160 -0
  139. package/bundled/locales/zh-CN/core/guides/performance-guide.md +515 -0
  140. package/bundled/locales/zh-CN/core/guides/security-guide.md +494 -0
  141. package/bundled/locales/zh-CN/core/knowledge-graph-memory.md +128 -0
  142. package/bundled/locales/zh-CN/core/license-compliance.md +129 -0
  143. package/bundled/locales/zh-CN/core/llm-output-validation.md +192 -0
  144. package/bundled/locales/zh-CN/core/logging-standards.md +130 -8
  145. package/bundled/locales/zh-CN/core/mock-boundary.md +109 -0
  146. package/bundled/locales/zh-CN/core/model-selection.md +28 -5
  147. package/bundled/locales/zh-CN/core/mutation-testing.md +106 -0
  148. package/bundled/locales/zh-CN/core/no-cicd-deployment.md +219 -0
  149. package/bundled/locales/zh-CN/core/packaging-standards.md +76 -5
  150. package/bundled/locales/zh-CN/core/pipeline-security-gates.md +126 -0
  151. package/bundled/locales/zh-CN/core/policy-as-code-testing.md +203 -0
  152. package/bundled/locales/zh-CN/core/privacy-standards.md +1 -1
  153. package/bundled/locales/zh-CN/core/project-context-memory.md +1 -1
  154. package/bundled/locales/zh-CN/core/prompt-regression.md +88 -0
  155. package/bundled/locales/zh-CN/core/property-based-testing.md +87 -0
  156. package/bundled/locales/zh-CN/core/release-quality-manifest.md +207 -0
  157. package/bundled/locales/zh-CN/core/release-readiness-gate.md +193 -0
  158. package/bundled/locales/zh-CN/core/replay-test.md +102 -0
  159. package/bundled/locales/zh-CN/core/reverse-engineering-standards.md +46 -1
  160. package/bundled/locales/zh-CN/core/rollback-standards.md +120 -0
  161. package/bundled/locales/zh-CN/core/sast-advanced.md +309 -0
  162. package/bundled/locales/zh-CN/core/secure-op.md +328 -0
  163. package/bundled/locales/zh-CN/core/security-testing.md +96 -0
  164. package/bundled/locales/zh-CN/core/self-review-protocol.md +167 -0
  165. package/bundled/locales/zh-CN/core/server-ops-security.md +507 -0
  166. package/bundled/locales/zh-CN/core/smoke-test.md +79 -0
  167. package/bundled/locales/zh-CN/core/spec-driven-development.md +39 -3
  168. package/bundled/locales/zh-CN/core/supply-chain-attestation.md +131 -0
  169. package/bundled/locales/zh-CN/core/versioning.md +1 -1
  170. package/bundled/locales/zh-CN/docs/CHEATSHEET.md +31 -6
  171. package/bundled/locales/zh-CN/docs/FEATURE-REFERENCE.md +61 -34
  172. package/bundled/locales/zh-CN/docs/MIGRATION-v6.md +88 -0
  173. package/bundled/locales/zh-CN/docs/USAGE-MODES-COMPARISON.md +2 -2
  174. package/bundled/locales/zh-CN/docs/USER-MANUAL.md +14 -14
  175. package/bundled/locales/zh-CN/docs/specs/system/memory-adoption-strategy.md +105 -0
  176. package/bundled/locales/zh-CN/docs/user/FAQ.md +132 -0
  177. package/bundled/locales/zh-CN/docs/user/GETTING-STARTED.md +144 -0
  178. package/bundled/locales/zh-CN/docs/user/GLOSSARY.md +178 -0
  179. package/bundled/locales/zh-CN/docs/user/README.md +70 -0
  180. package/bundled/locales/zh-CN/docs/user/TROUBLESHOOTING.md +190 -0
  181. package/bundled/locales/zh-CN/integrations/github-copilot/COPILOT-CHAT-REFERENCE.md +1 -1
  182. package/bundled/locales/zh-CN/integrations/github-copilot/README.md +1 -1
  183. package/bundled/locales/zh-CN/integrations/github-copilot/skills-mapping.md +3 -3
  184. package/bundled/locales/zh-CN/integrations/opencode/skills-mapping.md +3 -3
  185. package/bundled/locales/zh-CN/methodologies/guides/sdd-guide.md +836 -0
  186. package/bundled/locales/zh-CN/options/changelog/auto-generated.md +166 -0
  187. package/bundled/locales/zh-CN/options/changelog/keep-a-changelog.md +140 -0
  188. package/bundled/locales/zh-CN/options/code-review/automated-review.md +214 -0
  189. package/bundled/locales/zh-CN/options/code-review/pair-programming.md +166 -0
  190. package/bundled/locales/zh-CN/options/code-review/pr-review.md +167 -0
  191. package/bundled/locales/zh-CN/options/documentation/api-docs.md +191 -0
  192. package/bundled/locales/zh-CN/options/documentation/markdown-docs.md +150 -0
  193. package/bundled/locales/zh-CN/options/documentation/wiki-style.md +131 -0
  194. package/bundled/locales/zh-CN/options/project-structure/kotlin.md +144 -0
  195. package/bundled/locales/zh-CN/options/project-structure/php.md +168 -0
  196. package/bundled/locales/zh-CN/options/project-structure/ruby.md +156 -0
  197. package/bundled/locales/zh-CN/options/project-structure/rust.md +136 -0
  198. package/bundled/locales/zh-CN/options/project-structure/swift.md +165 -0
  199. package/bundled/locales/zh-CN/options/testing/contract-testing.md +237 -0
  200. package/bundled/locales/zh-CN/options/testing/industry-pyramid.md +200 -0
  201. package/bundled/locales/zh-CN/options/testing/istqb-framework.md +144 -0
  202. package/bundled/locales/zh-CN/options/testing/performance-testing.md +251 -0
  203. package/bundled/locales/zh-CN/options/testing/security-testing.md +192 -0
  204. package/bundled/locales/zh-CN/skills/README.md +89 -126
  205. package/bundled/locales/zh-CN/skills/ac-coverage/SKILL.md +5 -7
  206. package/bundled/locales/zh-CN/skills/adr-assistant/SKILL.md +1 -1
  207. package/bundled/locales/zh-CN/skills/agents/code-architect.md +263 -0
  208. package/bundled/locales/zh-CN/skills/agents/doc-writer.md +410 -0
  209. package/bundled/locales/zh-CN/skills/agents/reviewer.md +357 -0
  210. package/bundled/locales/zh-CN/skills/agents/spec-analyst.md +410 -0
  211. package/bundled/locales/zh-CN/skills/agents/test-specialist.md +368 -0
  212. package/bundled/locales/zh-CN/skills/ai-collaboration-standards/SKILL.md +2 -2
  213. package/bundled/locales/zh-CN/skills/ai-friendly-architecture/SKILL.md +2 -2
  214. package/bundled/locales/zh-CN/skills/ai-instruction-standards/SKILL.md +1 -1
  215. package/bundled/locales/zh-CN/skills/atdd-assistant/acceptance-criteria-guide.md +1 -1
  216. package/bundled/locales/zh-CN/skills/atdd-assistant/atdd-workflow.md +3 -4
  217. package/bundled/locales/zh-CN/skills/audit-assistant/SKILL.md +2 -2
  218. package/bundled/locales/zh-CN/skills/bdd-assistant/guide.md +1 -2
  219. package/bundled/locales/zh-CN/skills/brainstorm-assistant/SKILL.md +109 -13
  220. package/bundled/locales/zh-CN/skills/brainstorm-assistant/guide.md +30 -8
  221. package/bundled/locales/zh-CN/skills/checkin-assistant/SKILL.md +1 -1
  222. package/bundled/locales/zh-CN/skills/ci-cd-assistant/SKILL.md +50 -0
  223. package/bundled/locales/zh-CN/skills/code-review-assistant/SKILL.md +5 -5
  224. package/bundled/locales/zh-CN/skills/commands/ac-coverage.md +1 -1
  225. package/bundled/locales/zh-CN/skills/commands/atdd.md +3 -3
  226. package/bundled/locales/zh-CN/skills/commands/bdd.md +2 -2
  227. package/bundled/locales/zh-CN/skills/commands/brainstorm.md +26 -17
  228. package/bundled/locales/zh-CN/skills/commands/{review.md → code-review.md} +4 -4
  229. package/bundled/locales/zh-CN/skills/commands/derive-all.md +1 -1
  230. package/bundled/locales/zh-CN/skills/commands/derive-atdd.md +1 -1
  231. package/bundled/locales/zh-CN/skills/commands/derive-bdd.md +2 -3
  232. package/bundled/locales/zh-CN/skills/commands/derive-tdd.md +1 -1
  233. package/bundled/locales/zh-CN/skills/commands/derive.md +1 -1
  234. package/bundled/locales/zh-CN/skills/commands/dev-workflow.md +2 -2
  235. package/bundled/locales/zh-CN/skills/commands/methodology.md +4 -4
  236. package/bundled/locales/zh-CN/skills/commands/pr.md +1 -1
  237. package/bundled/locales/zh-CN/skills/commands/tdd.md +1 -1
  238. package/bundled/locales/zh-CN/skills/commit-standards/SKILL.md +1 -1
  239. package/bundled/locales/zh-CN/skills/contract-test-assistant/SKILL.md +1 -1
  240. package/bundled/locales/zh-CN/skills/dev-methodology/SKILL.md +1 -1
  241. package/bundled/locales/zh-CN/skills/dev-methodology/create-methodology.md +456 -0
  242. package/bundled/locales/zh-CN/skills/dev-methodology/guide.md +6 -6
  243. package/bundled/locales/zh-CN/skills/dev-methodology/runtime.md +296 -0
  244. package/bundled/locales/zh-CN/skills/dev-workflow-guide/SKILL.md +5 -5
  245. package/bundled/locales/zh-CN/skills/docs-generator/SKILL.md +1 -1
  246. package/bundled/locales/zh-CN/skills/e2e-assistant/SKILL.md +1 -1
  247. package/bundled/locales/zh-CN/skills/incident-response-assistant/SKILL.md +2 -2
  248. package/bundled/locales/zh-CN/skills/journey-test-assistant/SKILL.md +1 -1
  249. package/bundled/locales/zh-CN/skills/logging-guide/SKILL.md +146 -142
  250. package/bundled/locales/zh-CN/skills/migration-assistant/SKILL.md +1 -1
  251. package/bundled/locales/zh-CN/skills/observability-assistant/guide.md +1 -1
  252. package/bundled/locales/zh-CN/skills/pr-automation-assistant/SKILL.md +1 -1
  253. package/bundled/locales/zh-CN/skills/project-discovery/guide.md +2 -2
  254. package/bundled/locales/zh-CN/skills/reverse-engineer/SKILL.md +1 -1
  255. package/bundled/locales/zh-CN/skills/runbook-assistant/guide.md +1 -1
  256. package/bundled/locales/zh-CN/skills/security-assistant/SKILL.md +1 -1
  257. package/bundled/locales/zh-CN/skills/skill-builder/SKILL.md +3 -3
  258. package/bundled/locales/zh-CN/skills/slo-assistant/guide.md +1 -1
  259. package/bundled/locales/zh-CN/skills/spec-derivation/SKILL.md +1 -1
  260. package/bundled/locales/zh-CN/skills/spec-derivation/guide.md +8 -9
  261. package/bundled/locales/zh-CN/skills/spec-driven-dev/SKILL.md +2 -2
  262. package/bundled/locales/zh-CN/skills/sweep/SKILL.md +1 -1
  263. package/bundled/locales/zh-CN/skills/tdd-assistant/SKILL.md +1 -1
  264. package/bundled/locales/zh-CN/skills/testing-guide/SKILL.md +2 -2
  265. package/bundled/locales/zh-CN/skills/testing-guide/testing-theory.md +2298 -0
  266. package/bundled/locales/zh-CN/skills/workflows/README.md +451 -0
  267. package/bundled/locales/zh-TW/CHANGELOG.md +71 -6
  268. package/bundled/locales/zh-TW/CLAUDE.md +1 -1
  269. package/bundled/locales/zh-TW/MAINTENANCE.md +25 -2
  270. package/bundled/locales/zh-TW/README.md +22 -9
  271. package/bundled/locales/zh-TW/SECURITY.md +1 -1
  272. package/bundled/locales/zh-TW/adoption/DAILY-WORKFLOW-GUIDE.md +2 -2
  273. package/bundled/locales/zh-TW/ai/standards/versioning.ai.yaml +8 -48
  274. package/bundled/locales/zh-TW/core/acceptance-criteria-traceability.md +4 -6
  275. package/bundled/locales/zh-TW/core/accessibility-standards.md +1 -1
  276. package/bundled/locales/zh-TW/core/adversarial-test.md +226 -0
  277. package/bundled/locales/zh-TW/core/agent-behavior-discipline.md +187 -0
  278. package/bundled/locales/zh-TW/core/ai-response-navigation.md +32 -6
  279. package/bundled/locales/zh-TW/core/anti-sycophancy-prompting.md +1 -1
  280. package/bundled/locales/zh-TW/core/api-design-standards.md +91 -9
  281. package/bundled/locales/zh-TW/core/audit-trail.md +110 -0
  282. package/bundled/locales/zh-TW/core/behavior-snapshot.md +335 -0
  283. package/bundled/locales/zh-TW/core/browser-compatibility-standards.md +1 -0
  284. package/bundled/locales/zh-TW/core/cd-deployment-strategies.md +135 -0
  285. package/bundled/locales/zh-TW/core/chaos-injection-tests.md +130 -0
  286. package/bundled/locales/zh-TW/core/checkin-standards.md +1 -1
  287. package/bundled/locales/zh-TW/core/code-review-checklist.md +1 -1
  288. package/bundled/locales/zh-TW/core/container-image-standards.md +93 -0
  289. package/bundled/locales/zh-TW/core/container-security.md +535 -0
  290. package/bundled/locales/zh-TW/core/cost-budget-test.md +86 -0
  291. package/bundled/locales/zh-TW/core/cross-flow-regression.md +1 -0
  292. package/bundled/locales/zh-TW/core/data-contract.md +101 -0
  293. package/bundled/locales/zh-TW/core/data-migration-testing.md +217 -0
  294. package/bundled/locales/zh-TW/core/data-pipeline.md +105 -0
  295. package/bundled/locales/zh-TW/core/deployment-standards.md +363 -25
  296. package/bundled/locales/zh-TW/core/deprecation-standards.md +17 -4
  297. package/bundled/locales/zh-TW/core/developer-memory.md +2 -2
  298. package/bundled/locales/zh-TW/core/disaster-recovery-drill.md +87 -0
  299. package/bundled/locales/zh-TW/core/documentation-writing-standards.md +1 -1
  300. package/bundled/locales/zh-TW/core/error-code-standards.md +2 -2
  301. package/bundled/locales/zh-TW/core/feature-manifest-standard.md +222 -0
  302. package/bundled/locales/zh-TW/core/flaky-test-management.md +87 -0
  303. package/bundled/locales/zh-TW/core/flow-based-testing.md +284 -0
  304. package/bundled/locales/zh-TW/core/forward-derivation-standards.md +3 -4
  305. package/bundled/locales/zh-TW/core/full-coverage-testing.md +250 -0
  306. package/bundled/locales/zh-TW/core/git-worktree.md +1 -1
  307. package/bundled/locales/zh-TW/core/guides/performance-guide.md +515 -0
  308. package/bundled/locales/zh-TW/core/guides/security-guide.md +494 -0
  309. package/bundled/locales/zh-TW/core/iac-design-principles.md +90 -0
  310. package/bundled/locales/zh-TW/core/incident-response.md +111 -0
  311. package/bundled/locales/zh-TW/core/license-compliance.md +129 -0
  312. package/bundled/locales/zh-TW/core/llm-output-validation.md +192 -0
  313. package/bundled/locales/zh-TW/core/logging-standards.md +208 -4
  314. package/bundled/locales/zh-TW/core/mock-boundary.md +161 -0
  315. package/bundled/locales/zh-TW/core/model-provenance.md +173 -0
  316. package/bundled/locales/zh-TW/core/model-selection.md +28 -5
  317. package/bundled/locales/zh-TW/core/mutation-testing.md +106 -0
  318. package/bundled/locales/zh-TW/core/no-cicd-deployment.md +219 -0
  319. package/bundled/locales/zh-TW/core/packaging-standards.md +76 -5
  320. package/bundled/locales/zh-TW/core/performance-standards.md +84 -5
  321. package/bundled/locales/zh-TW/core/pii-classification.md +102 -0
  322. package/bundled/locales/zh-TW/core/pipeline-security-gates.md +126 -0
  323. package/bundled/locales/zh-TW/core/policy-as-code-testing.md +203 -0
  324. package/bundled/locales/zh-TW/core/prd-standards.md +88 -0
  325. package/bundled/locales/zh-TW/core/privacy-standards.md +1 -1
  326. package/bundled/locales/zh-TW/core/product-metrics-standards.md +96 -0
  327. package/bundled/locales/zh-TW/core/project-context-memory.md +1 -1
  328. package/bundled/locales/zh-TW/core/prompt-regression.md +88 -0
  329. package/bundled/locales/zh-TW/core/property-based-testing.md +87 -0
  330. package/bundled/locales/zh-TW/core/refactoring-standards.md +43 -6
  331. package/bundled/locales/zh-TW/core/release-quality-manifest.md +207 -0
  332. package/bundled/locales/zh-TW/core/replay-test.md +102 -0
  333. package/bundled/locales/zh-TW/core/resource-cost-boundary.md +175 -0
  334. package/bundled/locales/zh-TW/core/reverse-engineering-standards.md +64 -5
  335. package/bundled/locales/zh-TW/core/rollback-standards.md +120 -0
  336. package/bundled/locales/zh-TW/core/runbook.md +110 -0
  337. package/bundled/locales/zh-TW/core/sast-advanced.md +309 -0
  338. package/bundled/locales/zh-TW/core/schema-evolution.md +98 -0
  339. package/bundled/locales/zh-TW/core/secret-management-standards.md +101 -0
  340. package/bundled/locales/zh-TW/core/secure-op.md +328 -0
  341. package/bundled/locales/zh-TW/core/security-testing.md +96 -0
  342. package/bundled/locales/zh-TW/core/self-review-protocol.md +2 -2
  343. package/bundled/locales/zh-TW/core/server-ops-security.md +507 -0
  344. package/bundled/locales/zh-TW/core/slo-sli.md +108 -0
  345. package/bundled/locales/zh-TW/core/smoke-test.md +79 -0
  346. package/bundled/locales/zh-TW/core/spec-driven-development.md +19 -11
  347. package/bundled/locales/zh-TW/core/supply-chain-attestation.md +131 -0
  348. package/bundled/locales/zh-TW/core/user-journey-testing.md +111 -0
  349. package/bundled/locales/zh-TW/core/user-story-mapping.md +94 -0
  350. package/bundled/locales/zh-TW/core/verification-oracle.md +159 -0
  351. package/bundled/locales/zh-TW/core/versioning.md +112 -112
  352. package/bundled/locales/zh-TW/docs/CHEATSHEET.md +31 -6
  353. package/bundled/locales/zh-TW/docs/DEV-WORKFLOW-MAPPING.md +6 -6
  354. package/bundled/locales/zh-TW/docs/FEATURE-REFERENCE.md +61 -34
  355. package/bundled/locales/zh-TW/docs/MIGRATION-v6.md +88 -0
  356. package/bundled/locales/zh-TW/docs/USAGE-MODES-COMPARISON.md +2 -2
  357. package/bundled/locales/zh-TW/docs/USER-MANUAL.md +14 -14
  358. package/bundled/locales/zh-TW/docs/specs/system/memory-adoption-strategy.md +105 -0
  359. package/bundled/locales/zh-TW/docs/user/FAQ.md +132 -0
  360. package/bundled/locales/zh-TW/docs/user/GETTING-STARTED.md +144 -0
  361. package/bundled/locales/zh-TW/docs/user/GLOSSARY.md +178 -0
  362. package/bundled/locales/zh-TW/docs/user/README.md +70 -0
  363. package/bundled/locales/zh-TW/docs/user/TROUBLESHOOTING.md +190 -0
  364. package/bundled/locales/zh-TW/integrations/github-copilot/COPILOT-CHAT-REFERENCE.md +1 -1
  365. package/bundled/locales/zh-TW/integrations/github-copilot/README.md +1 -1
  366. package/bundled/locales/zh-TW/integrations/github-copilot/skills-mapping.md +3 -3
  367. package/bundled/locales/zh-TW/integrations/opencode/skills-mapping.md +3 -3
  368. package/bundled/locales/zh-TW/methodologies/guides/sdd-guide.md +523 -26
  369. package/bundled/locales/zh-TW/options/changelog/auto-generated.md +166 -0
  370. package/bundled/locales/zh-TW/options/changelog/keep-a-changelog.md +140 -0
  371. package/bundled/locales/zh-TW/options/code-review/automated-review.md +214 -0
  372. package/bundled/locales/zh-TW/options/code-review/pair-programming.md +166 -0
  373. package/bundled/locales/zh-TW/options/code-review/pr-review.md +167 -0
  374. package/bundled/locales/zh-TW/options/documentation/api-docs.md +191 -0
  375. package/bundled/locales/zh-TW/options/documentation/markdown-docs.md +150 -0
  376. package/bundled/locales/zh-TW/options/documentation/wiki-style.md +131 -0
  377. package/bundled/locales/zh-TW/options/project-structure/kotlin.md +144 -0
  378. package/bundled/locales/zh-TW/options/project-structure/php.md +168 -0
  379. package/bundled/locales/zh-TW/options/project-structure/ruby.md +156 -0
  380. package/bundled/locales/zh-TW/options/project-structure/rust.md +136 -0
  381. package/bundled/locales/zh-TW/options/project-structure/swift.md +165 -0
  382. package/bundled/locales/zh-TW/options/testing/contract-testing.md +237 -0
  383. package/bundled/locales/zh-TW/options/testing/industry-pyramid.md +200 -0
  384. package/bundled/locales/zh-TW/options/testing/istqb-framework.md +144 -0
  385. package/bundled/locales/zh-TW/options/testing/performance-testing.md +251 -0
  386. package/bundled/locales/zh-TW/options/testing/security-testing.md +192 -0
  387. package/bundled/locales/zh-TW/skills/README.md +91 -128
  388. package/bundled/locales/zh-TW/skills/ac-coverage/SKILL.md +4 -6
  389. package/bundled/locales/zh-TW/skills/adr-assistant/SKILL.md +1 -1
  390. package/bundled/locales/zh-TW/skills/agents/code-architect.md +263 -0
  391. package/bundled/locales/zh-TW/skills/agents/doc-writer.md +410 -0
  392. package/bundled/locales/zh-TW/skills/agents/reviewer.md +357 -0
  393. package/bundled/locales/zh-TW/skills/agents/spec-analyst.md +410 -0
  394. package/bundled/locales/zh-TW/skills/agents/test-specialist.md +368 -0
  395. package/bundled/locales/zh-TW/skills/ai-collaboration-standards/SKILL.md +2 -2
  396. package/bundled/locales/zh-TW/skills/ai-friendly-architecture/SKILL.md +2 -2
  397. package/bundled/locales/zh-TW/skills/ai-instruction-standards/SKILL.md +1 -1
  398. package/bundled/locales/zh-TW/skills/atdd-assistant/SKILL.md +2 -0
  399. package/bundled/locales/zh-TW/skills/atdd-assistant/acceptance-criteria-guide.md +1 -1
  400. package/bundled/locales/zh-TW/skills/atdd-assistant/atdd-workflow.md +3 -4
  401. package/bundled/locales/zh-TW/skills/audit-assistant/SKILL.md +2 -2
  402. package/bundled/locales/zh-TW/skills/bdd-assistant/SKILL.md +2 -0
  403. package/bundled/locales/zh-TW/skills/bdd-assistant/guide.md +1 -2
  404. package/bundled/locales/zh-TW/skills/brainstorm-assistant/SKILL.md +110 -14
  405. package/bundled/locales/zh-TW/skills/brainstorm-assistant/guide.md +31 -7
  406. package/bundled/locales/zh-TW/skills/checkin-assistant/SKILL.md +3 -1
  407. package/bundled/locales/zh-TW/skills/ci-cd-assistant/SKILL.md +50 -0
  408. package/bundled/locales/zh-TW/skills/code-review-assistant/SKILL.md +7 -5
  409. package/bundled/locales/zh-TW/skills/commands/ac-coverage.md +1 -1
  410. package/bundled/locales/zh-TW/skills/commands/atdd.md +3 -3
  411. package/bundled/locales/zh-TW/skills/commands/bdd.md +2 -2
  412. package/bundled/locales/zh-TW/skills/commands/brainstorm.md +26 -17
  413. package/bundled/locales/zh-TW/skills/commands/{review.md → code-review.md} +5 -5
  414. package/bundled/locales/zh-TW/skills/commands/derive-all.md +1 -1
  415. package/bundled/locales/zh-TW/skills/commands/derive-atdd.md +1 -1
  416. package/bundled/locales/zh-TW/skills/commands/derive-bdd.md +2 -3
  417. package/bundled/locales/zh-TW/skills/commands/derive-tdd.md +1 -1
  418. package/bundled/locales/zh-TW/skills/commands/derive.md +1 -1
  419. package/bundled/locales/zh-TW/skills/commands/dev-workflow.md +2 -2
  420. package/bundled/locales/zh-TW/skills/commands/methodology.md +4 -4
  421. package/bundled/locales/zh-TW/skills/commands/pr.md +1 -1
  422. package/bundled/locales/zh-TW/skills/commands/tdd.md +1 -1
  423. package/bundled/locales/zh-TW/skills/commit-standards/SKILL.md +1 -1
  424. package/bundled/locales/zh-TW/skills/contract-test-assistant/SKILL.md +1 -1
  425. package/bundled/locales/zh-TW/skills/dev-methodology/create-methodology.md +456 -0
  426. package/bundled/locales/zh-TW/skills/dev-methodology/guide.md +5 -5
  427. package/bundled/locales/zh-TW/skills/dev-methodology/runtime.md +296 -0
  428. package/bundled/locales/zh-TW/skills/dev-workflow-guide/SKILL.md +5 -5
  429. package/bundled/locales/zh-TW/skills/docs-generator/SKILL.md +1 -1
  430. package/bundled/locales/zh-TW/skills/e2e-assistant/SKILL.md +1 -1
  431. package/bundled/locales/zh-TW/skills/incident-response-assistant/SKILL.md +2 -2
  432. package/bundled/locales/zh-TW/skills/logging-guide/SKILL.md +29 -27
  433. package/bundled/locales/zh-TW/skills/migration-assistant/SKILL.md +1 -1
  434. package/bundled/locales/zh-TW/skills/pr-automation-assistant/SKILL.md +3 -1
  435. package/bundled/locales/zh-TW/skills/project-discovery/guide.md +2 -2
  436. package/bundled/locales/zh-TW/skills/reverse-engineer/SKILL.md +1 -1
  437. package/bundled/locales/zh-TW/skills/security-assistant/SKILL.md +1 -1
  438. package/bundled/locales/zh-TW/skills/spec-derivation/guide.md +7 -8
  439. package/bundled/locales/zh-TW/skills/spec-driven-dev/SKILL.md +2 -2
  440. package/bundled/locales/zh-TW/skills/sweep/SKILL.md +1 -1
  441. package/bundled/locales/zh-TW/skills/tdd-assistant/SKILL.md +3 -1
  442. package/bundled/locales/zh-TW/skills/testing-guide/SKILL.md +2 -2
  443. package/bundled/locales/zh-TW/skills/testing-guide/testing-theory.md +2298 -0
  444. package/bundled/locales/zh-TW/skills/workflows/README.md +451 -0
  445. package/bundled/skills/README.md +1 -1
  446. package/bundled/skills/ac-coverage/SKILL.md +17 -7
  447. package/bundled/skills/adr-assistant/SKILL.md +1 -1
  448. package/bundled/skills/agents/code-architect.md +1 -1
  449. package/bundled/skills/agents/doc-writer.md +1 -1
  450. package/bundled/skills/agents/reviewer.md +2 -2
  451. package/bundled/skills/agents/spec-analyst.md +1 -1
  452. package/bundled/skills/agents/test-specialist.md +1 -1
  453. package/bundled/skills/ai-collaboration-standards/SKILL.md +2 -2
  454. package/bundled/skills/ai-friendly-architecture/SKILL.md +2 -2
  455. package/bundled/skills/ai-instruction-standards/SKILL.md +1 -1
  456. package/bundled/skills/atdd-assistant/SKILL.md +7 -0
  457. package/bundled/skills/atdd-assistant/acceptance-criteria-guide.md +1 -1
  458. package/bundled/skills/atdd-assistant/atdd-workflow.md +6 -8
  459. package/bundled/skills/audit-assistant/SKILL.md +2 -2
  460. package/bundled/skills/bdd-assistant/SKILL.md +7 -0
  461. package/bundled/skills/bdd-assistant/guide.md +1 -2
  462. package/bundled/skills/brainstorm-assistant/SKILL.md +133 -11
  463. package/bundled/skills/brainstorm-assistant/guide.md +33 -5
  464. package/bundled/skills/checkin-assistant/SKILL.md +8 -1
  465. package/bundled/skills/ci-cd-assistant/SKILL.md +57 -0
  466. package/bundled/skills/code-review-assistant/SKILL.md +15 -8
  467. package/bundled/skills/commands/COMMAND-FAMILY-OVERVIEW.md +2 -2
  468. package/bundled/skills/commands/COMMAND-INDEX.json +3 -3
  469. package/bundled/skills/commands/README.md +2 -2
  470. package/bundled/skills/commands/ac-coverage.md +1 -1
  471. package/bundled/skills/commands/atdd.md +2 -2
  472. package/bundled/skills/commands/bdd.md +2 -2
  473. package/bundled/skills/commands/brainstorm.md +25 -14
  474. package/bundled/skills/commands/{review.md → code-review.md} +6 -6
  475. package/bundled/skills/commands/derive-all.md +1 -1
  476. package/bundled/skills/commands/derive-atdd.md +1 -1
  477. package/bundled/skills/commands/derive-bdd.md +2 -3
  478. package/bundled/skills/commands/derive-tdd.md +1 -1
  479. package/bundled/skills/commands/derive.md +1 -1
  480. package/bundled/skills/commands/dev-workflow.md +1 -1
  481. package/bundled/skills/commands/journey-test.md +45 -0
  482. package/bundled/skills/commands/methodology.md +4 -4
  483. package/bundled/skills/commands/pr.md +1 -1
  484. package/bundled/skills/commands/skill-builder.md +42 -0
  485. package/bundled/skills/commands/tdd.md +1 -1
  486. package/bundled/skills/dev-methodology/create-methodology.md +1 -1
  487. package/bundled/skills/dev-methodology/guide.md +1 -1
  488. package/bundled/skills/dev-methodology/runtime.md +1 -1
  489. package/bundled/skills/dev-workflow-guide/SKILL.md +3 -3
  490. package/bundled/skills/dev-workflow-guide/workflow-phases.md +3 -3
  491. package/bundled/skills/docs-generator/SKILL.md +3 -3
  492. package/bundled/skills/incident-response-assistant/SKILL.md +2 -2
  493. package/bundled/skills/logging-guide/SKILL.md +38 -2
  494. package/bundled/skills/migration-assistant/SKILL.md +226 -0
  495. package/bundled/skills/observability-assistant/SKILL.md +74 -0
  496. package/bundled/skills/pr-automation-assistant/SKILL.md +5 -1
  497. package/bundled/skills/project-discovery/guide.md +2 -2
  498. package/bundled/skills/push/SKILL.md +1 -1
  499. package/bundled/skills/release-standards/SKILL.md +19 -5
  500. package/bundled/skills/security-assistant/SKILL.md +1 -1
  501. package/bundled/skills/skill-builder/SKILL.md +1 -1
  502. package/bundled/skills/spec-derivation/guide.md +3 -4
  503. package/bundled/skills/spec-driven-dev/SKILL.md +2 -2
  504. package/bundled/skills/sweep/SKILL.md +1 -1
  505. package/bundled/skills/tdd-assistant/SKILL.md +8 -1
  506. package/bundled/skills/testing-guide/SKILL.md +1 -1
  507. package/bundled/skills/testing-guide/testing-theory.md +1 -1
  508. package/bundled/skills/workflows/README.md +2 -2
  509. package/package.json +3 -3
  510. package/src/commands/audit.js +30 -9
  511. package/src/commands/config.js +33 -2
  512. package/src/commands/hitl.js +14 -1
  513. package/src/commands/init.js +110 -58
  514. package/src/commands/quickstart.js +1 -2
  515. package/src/commands/release.js +51 -6
  516. package/src/commands/run-intent.js +9 -0
  517. package/src/commands/spec-split.js +27 -2
  518. package/src/commands/update.js +22 -6
  519. package/src/config/ai-agent-paths.js +3 -1
  520. package/src/i18n/messages.js +3 -102
  521. package/src/missions/MissionManager.js +44 -12
  522. package/src/utils/build-manifest.js +35 -3
  523. package/src/utils/friction-detector.js +71 -22
  524. package/src/utils/health-checker.js +29 -2
  525. package/src/utils/transaction.js +111 -0
  526. package/src/utils/version-promote.js +16 -0
  527. package/standards-registry.json +58 -146
  528. package/bundled/ai/standards/agent-communication-protocol.ai.yaml +0 -42
  529. package/bundled/ai/standards/agent-dispatch.ai.yaml +0 -42
  530. package/bundled/ai/standards/branch-completion.ai.yaml +0 -44
  531. package/bundled/ai/standards/change-batching-standards.ai.yaml +0 -44
  532. package/bundled/ai/standards/execution-history.ai.yaml +0 -42
  533. package/bundled/ai/standards/pipeline-integration-standards.ai.yaml +0 -42
  534. package/bundled/ai/standards/workflow-enforcement.ai.yaml +0 -44
  535. package/bundled/ai/standards/workflow-state-protocol.ai.yaml +0 -43
  536. package/src/commands/flow.js +0 -260
  537. package/src/commands/start.js +0 -372
  538. package/src/commands/sweep.js +0 -151
  539. package/src/commands/workflow.js +0 -681
@@ -0,0 +1,165 @@
1
+ ---
2
+ source: options/project-structure/swift.md
3
+ source_version: 1.0.0
4
+ translation_version: 1.0.0
5
+ status: current
6
+ ---
7
+ # Swift 项目结构
8
+
9
+ > **语言**: [English](../../../../options/project-structure/swift.md) | 简体中文
10
+
11
+ **上层标准**: [项目结构](../../core/project-structure.md)
12
+
13
+ ---
14
+
15
+ ## 概览
16
+
17
+ Swift 项目可使用 Swift Package Manager (SPM) 或 Xcode 来管理。iOS/macOS 应用程序通常使用 Xcode 项目,而库与服务器端 Swift 则使用 SPM。
18
+
19
+ ## 项目类型
20
+
21
+ ### SPM Library
22
+
23
+ ```
24
+ project-root/
25
+ ├── Sources/
26
+ │ └── PackageName/
27
+ │ ├── PackageName.swift
28
+ │ ├── Models/
29
+ │ ├── Services/
30
+ │ └── Utilities/
31
+ ├── Tests/
32
+ │ └── PackageNameTests/
33
+ │ └── PackageNameTests.swift
34
+ ├── Package.swift
35
+ └── README.md
36
+ ```
37
+
38
+ ### SPM Executable
39
+
40
+ ```
41
+ project-root/
42
+ ├── Sources/
43
+ │ ├── AppName/
44
+ │ │ └── main.swift
45
+ │ └── AppNameCore/
46
+ │ └── Core.swift
47
+ ├── Tests/
48
+ │ └── AppNameTests/
49
+ ├── Package.swift
50
+ └── README.md
51
+ ```
52
+
53
+ ### iOS App
54
+
55
+ ```
56
+ project-root/
57
+ ├── AppName/
58
+ │ ├── App/
59
+ │ │ ├── AppNameApp.swift
60
+ │ │ └── ContentView.swift
61
+ │ ├── Features/
62
+ │ │ ├── Home/
63
+ │ │ │ ├── HomeView.swift
64
+ │ │ │ └── HomeViewModel.swift
65
+ │ │ └── Settings/
66
+ │ ├── Core/
67
+ │ │ ├── Models/
68
+ │ │ ├── Services/
69
+ │ │ └── Utilities/
70
+ │ ├── Resources/
71
+ │ │ ├── Assets.xcassets
72
+ │ │ └── Localizable.strings
73
+ │ └── Info.plist
74
+ ├── AppNameTests/
75
+ ├── AppNameUITests/
76
+ ├── AppName.xcodeproj
77
+ └── README.md
78
+ ```
79
+
80
+ ### Vapor(服务器端)
81
+
82
+ ```
83
+ project-root/
84
+ ├── Sources/
85
+ │ ├── App/
86
+ │ │ ├── configure.swift
87
+ │ │ ├── routes.swift
88
+ │ │ ├── Controllers/
89
+ │ │ ├── Models/
90
+ │ │ └── Migrations/
91
+ │ └── Run/
92
+ │ └── main.swift
93
+ ├── Tests/
94
+ │ └── AppTests/
95
+ ├── Resources/
96
+ │ └── Views/
97
+ ├── Public/
98
+ ├── Package.swift
99
+ └── docker-compose.yml
100
+ ```
101
+
102
+ ## 配置文件
103
+
104
+ | 文件 | 用途 | Required |
105
+ |------|------|----------|
106
+ | `Package.swift` | Swift Package Manager manifest | Yes (SPM) |
107
+ | `*.xcodeproj` | Xcode 项目 | Yes (Xcode) |
108
+ | `*.xcworkspace` | Xcode workspace | No |
109
+ | `.swiftlint.yml` | SwiftLint 配置 | No |
110
+ | `.swift-version` | Swift 版本 | No |
111
+
112
+ ## .gitignore
113
+
114
+ ```
115
+ .build/
116
+ .swiftpm/
117
+ *.xcodeproj/xcuserdata/
118
+ *.xcworkspace/xcuserdata/
119
+ DerivedData/
120
+ .DS_Store
121
+ Pods/
122
+ Carthage/
123
+ ```
124
+
125
+ ## 工具
126
+
127
+ | 类别 | 工具 |
128
+ |------|------|
129
+ | Build | Swift Package Manager, Xcode, xcodebuild |
130
+ | Test Runner | XCTest, Quick/Nimble |
131
+ | Linter | SwiftLint, SwiftFormat |
132
+ | Formatter | SwiftFormat, swift-format |
133
+ | Package Manager | Swift Package Manager, CocoaPods, Carthage |
134
+ | Documentation | DocC, Jazzy |
135
+
136
+ ## 规则
137
+
138
+ | 规则 | 描述 | Priority |
139
+ |------|------|----------|
140
+ | Feature folders | 按功能分组,包含 View、ViewModel 与 Models | Recommended |
141
+ | SPM targets | 将 library 与 executable 拆分为不同的 target | Recommended |
142
+ | Protocol-oriented | 使用 protocol 进行抽象与依赖注入 | Recommended |
143
+ | Test naming | 使用 `test_methodName_condition_expectedResult` 格式 | Recommended |
144
+ | Access control | 使用最小访问级别(默认为 internal,API 才用 public) | Required |
145
+
146
+ ## 相关选项
147
+
148
+ - [Kotlin](./kotlin.md) - Kotlin 项目结构
149
+ - [Rust](./rust.md) - Rust 项目结构
150
+
151
+ ---
152
+
153
+ ## 参考资料
154
+
155
+ - [Swift Package Manager](https://swift.org/package-manager/)
156
+ - [Apple Developer Documentation](https://developer.apple.com/documentation/)
157
+ - [Vapor](https://vapor.codes/)
158
+
159
+ ---
160
+
161
+ ## 许可
162
+
163
+ 本文档以 [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/) 许可发布。
164
+
165
+ **来源**: [universal-dev-standards](https://github.com/AsiaOstrich/universal-dev-standards)
@@ -0,0 +1,237 @@
1
+ ---
2
+ source: options/testing/contract-testing.md
3
+ source_version: 1.0.0
4
+ translation_version: 1.0.0
5
+ status: current
6
+ ---
7
+
8
+ # Contract Testing
9
+
10
+ > **语言**: [English](../../../../options/testing/contract-testing.md) | 简体中文
11
+
12
+ **上层标准**: [Testing Completeness](../../core/test-completeness-dimensions.md)
13
+
14
+ ---
15
+
16
+ ## 概览
17
+
18
+ Contract testing 通过测试 consumer 与 provider 之间的协议(contract)来验证服务能否正确通信。它让团队可以独立开发与部署,同时确保彼此兼容。
19
+
20
+ ## 最适用于
21
+
22
+ - 微服务架构
23
+ - API-first 开发
24
+ - 第三方集成
25
+ - 各自独立工作的团队
26
+ - 分布式系统
27
+
28
+ ## Contract 类型
29
+
30
+ ### Consumer-Driven Contracts (CDC)
31
+
32
+ 由 API consumer 定义的 contract。
33
+
34
+ **流程:**
35
+ 1. Consumer 定义预期的交互
36
+ 2. 生成 contract(pact 文件)
37
+ 3. Provider 依 contract 进行验证
38
+ 4. 部署前双方都必须通过
39
+
40
+ **好处:**
41
+ - 由 consumer 的需求驱动 API 设计
42
+ - 解耦的部署
43
+ - 提早检测集成问题
44
+
45
+ ### Provider Contracts
46
+
47
+ 由 API provider 定义的 contract。
48
+
49
+ **使用场景:** 公开 API、OpenAPI-first 设计
50
+
51
+ **流程:**
52
+ 1. Provider 定义 API 规格
53
+ 2. Consumer 依规格进行测试
54
+ 3. Provider 确保向后兼容性
55
+
56
+ ## 工具
57
+
58
+ | 工具 | 类型 | 语言 |
59
+ |------|------|-----------|
60
+ | **Pact** | Consumer-driven | 多语言 |
61
+ | **Spring Cloud Contract** | 两者皆可 | JVM |
62
+ | **Dredd** | OpenAPI | 多语言 |
63
+ | **Prism** | Mock | 多语言 |
64
+
65
+ ## Pact 工作流程
66
+
67
+ ### Consumer 端
68
+
69
+ **1. 定义交互**
70
+
71
+ ```javascript
72
+ const interaction = {
73
+ state: 'user exists',
74
+ uponReceiving: 'a request for user by id',
75
+ withRequest: {
76
+ method: 'GET',
77
+ path: '/users/1',
78
+ headers: { Accept: 'application/json' }
79
+ },
80
+ willRespondWith: {
81
+ status: 200,
82
+ headers: { 'Content-Type': 'application/json' },
83
+ body: {
84
+ id: like(1),
85
+ name: like('John'),
86
+ email: like('john@example.com')
87
+ }
88
+ }
89
+ };
90
+ ```
91
+
92
+ **2. 执行 consumer 测试** - 测试针对 mock provider 执行
93
+
94
+ **3. 发布 contract** - 将 pact 文件上传至 broker
95
+
96
+ ### Provider 端
97
+
98
+ **1. 获取 contract** - 从 broker 下载 contract
99
+
100
+ **2. 验证 contract**
101
+
102
+ ```javascript
103
+ verifier.verifyProvider({
104
+ provider: 'UserService',
105
+ pactBrokerUrl: 'https://broker.example.com',
106
+ publishVerificationResult: true
107
+ });
108
+ ```
109
+
110
+ **3. State 设置** - 为每个交互设置 provider state
111
+
112
+ ## Pact Broker
113
+
114
+ contract 的集中式存储库,具备以下功能:
115
+
116
+ - Contract 存储
117
+ - 验证状态
118
+ - 依赖关系图
119
+ - Can-I-Deploy 检查
120
+ - 供 CI/CD 使用的 Webhook
121
+
122
+ ### Can-I-Deploy
123
+
124
+ 检查部署是否安全:
125
+
126
+ ```bash
127
+ pact-broker can-i-deploy \
128
+ --pacticipant UserService \
129
+ --version $(git rev-parse HEAD) \
130
+ --to production
131
+ ```
132
+
133
+ ## CI 集成
134
+
135
+ ### Consumer Pipeline
136
+
137
+ ```yaml
138
+ stages:
139
+ - test:
140
+ - Run unit tests
141
+ - Run contract tests (generates pact)
142
+ - publish:
143
+ - Publish pact to broker
144
+ - can-i-deploy:
145
+ - Check deployment safety
146
+ - deploy:
147
+ - Deploy consumer
148
+ ```
149
+
150
+ ### Provider Pipeline
151
+
152
+ ```yaml
153
+ stages:
154
+ - test:
155
+ - Run unit tests
156
+ - Verify consumer contracts
157
+ - publish:
158
+ - Publish verification results
159
+ - can-i-deploy:
160
+ - Check deployment safety
161
+ - deploy:
162
+ - Deploy provider
163
+ ```
164
+
165
+ ### GitHub Actions 示例
166
+
167
+ ```yaml
168
+ name: Consumer Contract Tests
169
+ on: [push, pull_request]
170
+ jobs:
171
+ contract-test:
172
+ runs-on: ubuntu-latest
173
+ steps:
174
+ - uses: actions/checkout@v4
175
+ - name: Run contract tests
176
+ run: npm run test:contract
177
+ - name: Publish pact
178
+ run: npm run pact:publish
179
+ - name: Can I deploy?
180
+ run: |
181
+ pact-broker can-i-deploy \
182
+ --pacticipant MyConsumer \
183
+ --version ${{ github.sha }}
184
+ ```
185
+
186
+ ## 规则
187
+
188
+ | 规则 | 说明 | 优先级 |
189
+ |------|-------------|----------|
190
+ | Consumer 优先 | 从 consumer 需求出发,而非 provider 实现 | 建议 |
191
+ | 使用 matcher | 使用类型 matcher(like、eachLike)而非精确值 | 必需 |
192
+ | Provider state | 为每个交互定义清晰的 provider state | 必需 |
193
+ | 为 contract 加版本 | 以 consumer 版本与分支为 contract 加上标签 | 必需 |
194
+ | Can-I-Deploy | 一律在 CI/CD 中执行 can-i-deploy 检查 | 必需 |
195
+ | 破坏性变更 | 进行破坏性变更前先与 consumer 团队协调 | 必需 |
196
+ | 异步 contract | 为异步通信纳入 message contract | 建议 |
197
+
198
+ ## 快速参考
199
+
200
+ ### 工作流程
201
+
202
+ | 步骤 | Consumer | Provider |
203
+ |------|----------|----------|
204
+ | 1. 定义 | 编写预期 | 实现 API |
205
+ | 2. 测试 | 针对 mock 执行 | 验证 contract |
206
+ | 3. 发布 | 上传 pact | 上传结果 |
207
+ | 4. 部署 | Can-I-Deploy | Can-I-Deploy |
208
+
209
+ ### 好处
210
+
211
+ | 好处 | 说明 |
212
+ |---------|-------------|
213
+ | 快速反馈 | 不需要完整的集成环境 |
214
+ | 解耦 | 团队可以独立工作 |
215
+ | 安全部署 | Can-I-Deploy 防止破坏性变更 |
216
+ | 活文档 | Contract 记录了 API 行为 |
217
+
218
+ ## 相关选项
219
+
220
+ - [Integration Testing](./integration-testing.md) - 组件集成测试
221
+ - [E2E Testing](./e2e-testing.md) - 端到端测试
222
+
223
+ ---
224
+
225
+ ## 参考资料
226
+
227
+ - [Pact Foundation](https://docs.pact.io/)
228
+ - [Martin Fowler - Contract Test](https://martinfowler.com/bliki/ContractTest.html)
229
+ - [Consumer-Driven Contracts](https://martinfowler.com/articles/consumerDrivenContracts.html)
230
+
231
+ ---
232
+
233
+ ## 授权
234
+
235
+ 本文档以 [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/) 授权发布。
236
+
237
+ **来源**: [universal-dev-standards](https://github.com/AsiaOstrich/universal-dev-standards)
@@ -0,0 +1,200 @@
1
+ ---
2
+ source: options/testing/industry-pyramid.md
3
+ source_version: 1.0.0
4
+ translation_version: 1.0.0
5
+ status: current
6
+ ---
7
+ # 业界测试金字塔
8
+
9
+ > **语言**: [English](../../../../options/testing/industry-pyramid.md) | 简体中文
10
+
11
+ **上层标准**: [测试完整性](../../core/test-completeness-dimensions.md)
12
+
13
+ ---
14
+
15
+ ## 概览
16
+
17
+ 业界测试金字塔是一套务实的 4 层测试模型,广为敏捷与 DevOps 团队采用。它强调通过大量的 unit test 取得快速反馈、适量的 integration test、用于子系统验证的 system test,以及最少量的端到端测试。
18
+
19
+ ## 最适用于
20
+
21
+ - 敏捷/Scrum 开发团队
22
+ - 以 CI/CD 为核心的环境
23
+ - 中小型项目
24
+ - DevOps 实践
25
+ - 快速迭代循环
26
+
27
+ ## 金字塔
28
+
29
+ ```
30
+ ┌─────────┐
31
+ │ E2E │ ← 3% (Slow, expensive)
32
+ ├─────────┤
33
+ │ ST │ ← 7% (Medium speed)
34
+ ├─────────┤
35
+ │ IT │ ← 20% (Fast)
36
+ ├─────────┤
37
+ │ UT │ ← 70% (Very fast, many)
38
+ └─────────┘
39
+ ```
40
+
41
+ **目标比例:** 70/20/7/3(UT/IT/ST/E2E)
42
+
43
+ **注意:** 此为 Mike Cohn 的经验性建议,并非强制标准。
44
+
45
+ **理由:**
46
+ - 较多 unit test = 更快的反馈
47
+ - 较少 E2E test = 较低的维护成本
48
+ - integration test 能捕捉接口问题
49
+ - system test 在 stub 外部依赖的情况下验证子系统行为
50
+
51
+ ## 测试层级
52
+
53
+ ### 单元测试(UT)- 70%
54
+
55
+ | 方面 | 细节 |
56
+ |--------|---------|
57
+ | **定义** | 针对单个函数、方法或类的隔离测试 |
58
+ | **范围** | 单一函数/方法/类 |
59
+ | **速度** | 每个测试 < 100ms |
60
+ | **依赖** | 全部 mock |
61
+
62
+ **特性:**
63
+ - 执行快速
64
+ - 结果具确定性
65
+ - 无 I/O 操作
66
+ - 测试单一行为单元
67
+
68
+ ### 集成测试(IT)- 20%
69
+
70
+ | 方面 | 细节 |
71
+ |--------|---------|
72
+ | **定义** | 针对组件交互与数据流的测试 |
73
+ | **范围** | 多个组件相互作用 |
74
+ | **速度** | 每个测试 < 1 秒 |
75
+ | **依赖** | 真实与 mock 混合 |
76
+
77
+ **特性:**
78
+ - 测试真实的集成
79
+ - 可能使用容器(Testcontainers)
80
+ - 验证数据流
81
+
82
+ ### 系统测试(ST)- 7%
83
+
84
+ | 方面 | 细节 |
85
+ |--------|---------|
86
+ | **定义** | 在 stub 外部依赖的情况下测试完整子系统 |
87
+ | **范围** | 完整子系统验证 |
88
+ | **速度** | 每个测试 < 10 秒 |
89
+ | **依赖** | 真实内部服务、stub 外部 API |
90
+
91
+ **特性:**
92
+ - 端到端验证子系统行为
93
+ - stub 外部依赖
94
+ - 在 SIT 环境中测试
95
+
96
+ ### 端到端测试(E2E)- 3%
97
+
98
+ | 方面 | 细节 |
99
+ |--------|---------|
100
+ | **定义** | 跨整个系统测试完整用户工作流程 |
101
+ | **范围** | 从用户视角的完整用户流程 |
102
+ | **速度** | 每个测试 30 秒至数分钟 |
103
+ | **依赖** | 全部真实 |
104
+
105
+ **特性:**
106
+ - 模拟真实用户行为
107
+ - 仅测试关键路径
108
+ - 最高的维护成本
109
+
110
+ ## 覆盖率目标
111
+
112
+ | 指标 | 最低 | 建议 |
113
+ |--------|---------|-------------|
114
+ | 行覆盖率(Line Coverage) | 70% | 85% |
115
+ | 分支覆盖率(Branch Coverage) | 60% | 80% |
116
+ | 函数覆盖率(Function Coverage) | 80% | 90% |
117
+
118
+ ## 各层级工具
119
+
120
+ ### 单元测试
121
+
122
+ | 语言 | 工具 |
123
+ |----------|-------|
124
+ | JavaScript | Jest, Vitest, Mocha |
125
+ | Python | pytest, unittest |
126
+ | Java | JUnit, TestNG |
127
+ | C# | xUnit, NUnit, MSTest |
128
+ | Go | testing package, testify |
129
+
130
+ ### 集成测试
131
+
132
+ | 语言 | 工具 |
133
+ |----------|-------|
134
+ | JavaScript | Supertest, Testcontainers |
135
+ | Python | pytest, Testcontainers |
136
+ | Java | Spring Boot Test, Testcontainers |
137
+ | C# | WebApplicationFactory, Testcontainers |
138
+
139
+ ### E2E 测试
140
+
141
+ | 语言 | 工具 |
142
+ |----------|-------|
143
+ | JavaScript | Playwright, Cypress, Puppeteer |
144
+ | Python | Playwright, Selenium |
145
+ | Java | Selenium, Playwright |
146
+
147
+ ## 何时选择业界金字塔
148
+
149
+ **选择时机:**
150
+ - 实践敏捷/Scrum 方法论
151
+ - CI/CD 管线至关重要
152
+ - 快速反馈为优先
153
+ - 团队规模小且跨职能
154
+ - 期望最少的文档负担
155
+
156
+ **避免时机:**
157
+ - 需要正式 QA 认证
158
+ - 企业合规需求
159
+ - 专职 QA 团队偏好 ISTQB
160
+ - 需要审计文档
161
+
162
+ ## 与 ISTQB 的比较
163
+
164
+ | 业界层级 | ISTQB 对应 | 注意 |
165
+ |----------------|------------------|------|
166
+ | 单元测试(UT) | Component Testing | 概念相同 |
167
+ | 集成测试(IT) | Integration Testing | 概念相同 |
168
+ | 系统测试(ST) | System Testing | 概念相同 |
169
+ | E2E 测试 | Acceptance Testing | 业界 E2E ≈ ISTQB Acceptance |
170
+
171
+ ## 规则
172
+
173
+ | 规则 | 描述 | 优先级 |
174
+ |------|-------------|----------|
175
+ | 遵循金字塔比例 | UT/IT/ST/E2E 目标 70/20/7/3 比例(经验性,非强制) | Required |
176
+ | 在最低层级测试 | 在能提供信心的最低层级编写测试 | Recommended |
177
+ | 边界情况避免用 E2E | 边界情况使用 unit test,而非 E2E | Recommended |
178
+ | 边界用集成测试 | 使用 integration test 验证接口契约 | Recommended |
179
+
180
+ ## 相关选项
181
+
182
+ - [ISTQB 框架](./istqb-framework.md) - 正式的 4 层测试框架
183
+ - [单元测试](./unit-testing.md) - 详细的单元测试实践
184
+ - [集成测试](./integration-testing.md) - 集成测试实践
185
+ - [E2E 测试](./e2e-testing.md) - 端到端测试实践
186
+
187
+ ---
188
+
189
+ ## 参考资料
190
+
191
+ - [Martin Fowler's Testing Pyramid](https://martinfowler.com/bliki/TestPyramid.html)
192
+ - [Google Testing Blog](https://testing.googleblog.com)
193
+
194
+ ---
195
+
196
+ ## 许可
197
+
198
+ 本文档以 [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/) 许可发布。
199
+
200
+ **来源**: [universal-dev-standards](https://github.com/AsiaOstrich/universal-dev-standards)