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,102 @@
1
+ # User Journey Testing Standard
2
+
3
+ > **Language**: English | 繁體中文
4
+
5
+ **Applicability**: Projects with multi-step, stateful user flows that span more than one user story
6
+ **Scope**: universal
7
+
8
+ ---
9
+
10
+ ## Overview
11
+
12
+ The User Journey Testing Standard defines the **TESTPLAN** format, which makes connected, sequential user journeys a first-class testing artifact. Where acceptance-criteria tests verify a single story in isolation, journey tests verify what AC tests cannot: **cross-story state continuity** — the chain of state that one step leaves behind for the next.
13
+
14
+ A journey is described once in a human-readable `TESTPLAN-NNN.md` and mapped one-to-one onto automated E2E tests through shared `T-NNN` identifiers, so the plan and the executable suite never drift apart.
15
+
16
+ ## References
17
+
18
+ | Standard/Source | Content |
19
+ |----------------|---------|
20
+ | journey-test-assistant (skill) | Generates TESTPLAN and journey E2E skeletons |
21
+ | flow-based-testing | Flow archetypes that journeys instantiate |
22
+ | e2e-testing (option) | End-to-end execution layer journeys map onto |
23
+
24
+ ---
25
+
26
+ ## Guidelines
27
+
28
+ - Every project MUST have at least one `TESTPLAN-NNN.md` documenting the main user journey.
29
+ - TESTPLAN steps MUST be sequential and stateful — each step depends on prior state.
30
+ - Every TESTPLAN MUST define personas before test steps.
31
+ - TESTPLAN and automated E2E tests MUST use the same `T-NNN` identifiers.
32
+ - Journey E2E tests MUST skip gracefully when the environment is unavailable.
33
+ - Journey tests cover what AC tests cannot: cross-story state continuity.
34
+
35
+ ---
36
+
37
+ ## TESTPLAN Format
38
+
39
+ - **File naming**: `TESTPLAN-NNN-<project-slug>.md`
40
+ - **Location**: `test-plans/`
41
+
42
+ ### Required Sections
43
+
44
+ | Section | Description | Format |
45
+ |---------|-------------|--------|
46
+ | **Personas** | Define all test actors with their role and permissions | `\| Actor \| Role \| Key Permissions \|` |
47
+ | **Environment** | List environment prerequisites and verification commands | — |
48
+ | **Test Groups** | `T-NNN` numbered test groups with a sequential dependency chain | — |
49
+ | **Execution Order** | Dependency diagram showing `T-NNN → T-NNN` relationships | — |
50
+
51
+ ### Step Markers
52
+
53
+ | Marker | Meaning |
54
+ |--------|---------|
55
+ | `[UI]` | Browser-based action, verify visually |
56
+ | `[API]` | `curl` / API client verification |
57
+ | `[CHECK]` | Expected result to confirm |
58
+ | `[SKIP-if]` | Conditional skip with reason |
59
+ | `★` | High-risk step requiring confirmation |
60
+
61
+ ### Step Format
62
+
63
+ Each step declares:
64
+
65
+ - **step_id** — `T-NNN-M` (group-step format)
66
+ - **operation** — what to do, annotated with a `[MARKER]`
67
+ - **expected_result** — what should happen
68
+ - **precondition** — state from a previous `T-NNN` that must be satisfied
69
+ - **depends_on** — comma-separated `T-NNN` identifiers
70
+
71
+ ---
72
+
73
+ ## Automation Mapping
74
+
75
+ - **Principle**: every `T-NNN` group maps to a `describe()` block; every step maps to an `it()`.
76
+ - **File pattern**: `*.journey.spec.ts` or `*.journey.e2e.test.ts`.
77
+ - **Shared state**: journey tests MUST use shared `let` variables across `it()` blocks so each step builds on previous results.
78
+ - **Skip strategy**: guard with `describe.skipIf(!BASE_URL)` for environment-dependent tests.
79
+
80
+ ---
81
+
82
+ ## Journey Categories
83
+
84
+ | ID | Description | Required For |
85
+ |----|-------------|--------------|
86
+ | `platform-admin-journey` | Platform admin setup: login → org → project → pipeline | enterprise, saas |
87
+ | `member-journey` | Org member: join → project access → pipeline view | enterprise, saas |
88
+ | `dev-journey` | Developer: new project → spec → pipeline → artifact | all |
89
+
90
+ ---
91
+
92
+ ## Rules
93
+
94
+ | Rule | Trigger | Instruction | Priority |
95
+ |------|---------|-------------|----------|
96
+ | `testplan-required` | Creating a new project | Generate `TESTPLAN-001.md` with personas, environment, and main journey steps before writing code | required |
97
+ | `journey-before-code` | Starting project implementation | Define the user journey test plan first; journey tests act as living acceptance criteria | recommended |
98
+ | `sequential-state` | Writing journey E2E tests | Use shared state variables (`let token, orgSlug, projectSlug`) so each step builds on previous results | required |
99
+ | `graceful-skip` | Writing journey E2E tests | Guard with `describe.skipIf(!process.env.JOURNEY_BASE_URL)` so tests are skipped in unit CI | required |
100
+ | `t-nnn-alignment` | Writing any E2E test | Reference `T-NNN` identifiers from TESTPLAN in test descriptions for traceability | recommended |
101
+ | `persona-first` | Writing TESTPLAN | Define all user personas before writing any test steps | required |
102
+ | `dependency-chain` | Writing TESTPLAN | Each test group must declare its `depends_on` list so execution order is explicit | required |
@@ -0,0 +1,96 @@
1
+ # User Story Mapping Standards
2
+
3
+ > **Version**: 1.0.0 | **Status**: Active | **Updated**: 2026-06-17
4
+ > **AI-optimized version**: `ai/standards/user-story-mapping.ai.yaml`
5
+ > **Spec**: XSPEC-069 (cross-project/specs/XSPEC-069-uds-product-layer-pack.md)
6
+
7
+ **Scope**: universal
8
+
9
+ ## Overview
10
+
11
+ This standard defines how teams construct and use **story maps** to plan product
12
+ releases. It covers the three-layer story-map structure (Backbone activities,
13
+ Walking Skeleton sub-tasks, Detail Stories), the MVP horizontal-slice rule,
14
+ INVEST compliance per story, and Given/When/Then acceptance criteria tied to
15
+ measurable product metrics. It prevents incomplete MVPs and ensures every story is
16
+ testable and traceable.
17
+
18
+ It is part of the **product-layer pack** (XSPEC-069), sitting between
19
+ `prd-standards` (upstream intent) and `requirement-engineering` (downstream INVEST
20
+ stories), with acceptance criteria tied to `product-metrics-standards`.
21
+
22
+ > **Scope.** This standard defines the *story-map structure and MVP-slicing
23
+ > discipline*. Concrete planning tooling (Miro/Jira) is an adoption choice.
24
+
25
+ ## Requirements
26
+
27
+ | ID | Rule | Level |
28
+ |----|------|-------|
29
+ | REQ-001 | Story-map three layers (backbone, walking skeleton, detail stories) | MUST |
30
+ | REQ-002 | MVP horizontal-slice rule (no vertical-slice MVP) | MUST |
31
+ | REQ-003 | Story INVEST compliance | MUST |
32
+ | REQ-004 | Acceptance-criteria format (Given/When/Then, metric-tied) | MUST |
33
+
34
+ ### REQ-001 — Story Map Three Layers
35
+
36
+ Every story map MUST be structured in three horizontal layers: (1) **Backbone**
37
+ (top row) — user activities at the highest abstraction representing the complete
38
+ end-to-end journey, each a verb phrase from the user's perspective; the backbone
39
+ must represent the full journey, not only implemented features. (2) **Walking
40
+ Skeleton** (middle row) — the minimum sub-tasks to make each backbone activity
41
+ functional, organized vertically under each backbone item. (3) **Detail Stories**
42
+ (bottom rows) — specific stories for variations, enhancements, and edge cases,
43
+ prioritized vertically within each column (higher = higher priority).
44
+
45
+ ### REQ-002 — MVP Horizontal Slice Rule
46
+
47
+ The MVP release boundary MUST be a **horizontal slice** across the story map,
48
+ covering all backbone activities at the walking-skeleton level. An MVP covering
49
+ only a subset of backbone activities (a **vertical slice** that perfects one
50
+ activity while others are absent or non-functional) is PROHIBITED, because it
51
+ cannot be evaluated end-to-end by users. **Exception**: single-activity products
52
+ (e.g. a focused utility) are exempt if the full value proposition is delivered by
53
+ that one activity; exceptions MUST be documented with rationale in the story map.
54
+
55
+ ### REQ-003 — Story INVEST Compliance
56
+
57
+ Every story in the map MUST comply with the INVEST criteria from
58
+ `requirement-engineering`: **I**ndependent, **N**egotiable, **V**aluable,
59
+ **E**stimable, **S**mall (fits within one sprint at most; split if larger),
60
+ **T**estable (objectively verifiable acceptance criteria exist). Stories that fail
61
+ INVEST must be refined before entering a sprint; the assessment MUST be performed
62
+ during backlog-refinement sessions.
63
+
64
+ ### REQ-004 — Acceptance Criteria Format
65
+
66
+ Every story MUST have at least one acceptance criterion in **Given/When/Then**
67
+ format, tied to a measurable product outcome from the `product-metrics-standards`
68
+ hierarchy where applicable. Stories with criteria that cannot be objectively
69
+ verified (e.g. "the page looks good") are non-compliant. Acceptance criteria MUST
70
+ be written before development begins and MUST NOT be modified after it starts
71
+ without PM and dev-lead sign-off (same revision policy as PRD changes).
72
+
73
+ ## Anti-Patterns
74
+
75
+ - Vertical MVP slicing: perfecting one activity while other backbone activities are absent.
76
+ - Stories without acceptance criteria entering development (no clear definition of done).
77
+ - Backbone activities mapped to system components instead of actual user goals.
78
+ - Story map used only for planning then discarded, not kept as a living tool.
79
+ - Detail stories added directly without backbone and walking-skeleton context.
80
+
81
+ ## Integration with Existing Standards
82
+
83
+ - **`prd-standards`** — PRD scope is realized as a story map and MVP slice.
84
+ - **`requirement-engineering`** — stories follow the INVEST criteria defined there.
85
+ - **`product-metrics-standards`** — acceptance criteria tie to a North Star driver.
86
+ - **`acceptance-criteria-traceability`** — GWT criteria provide the AC traceability spine.
87
+
88
+ ## Related Specs
89
+
90
+ - XSPEC-069 — UDS product-layer pack (this standard's source)
91
+
92
+ ## Changelog
93
+
94
+ | Version | Date | Changes |
95
+ |---------|------|---------|
96
+ | v1.0.0 | 2026-06-17 | Initial — REQ-001~004: three-layer map, MVP horizontal-slice rule, INVEST compliance, GWT acceptance criteria (XSPEC-069) |
@@ -0,0 +1,167 @@
1
+ # Verification Oracle Standards
2
+
3
+ > **Version**: 1.0.0 | **Status**: Active | **Updated**: 2026-06-17
4
+ > **AI-optimized version**: `ai/standards/verification-oracle.ai.yaml`
5
+ > **Spec**: XSPEC-256 (cross-project/specs/XSPEC-256-verification-oracle.md)
6
+
7
+ **Scope**: universal
8
+
9
+ ## Overview
10
+
11
+ A **test oracle** is the source of truth that decides whether software output is *correct*.
12
+ Software without an oracle cannot be said to be "right" — you cannot even state whether it
13
+ is right or wrong. This standard makes the **ground-truth oracle a first-class artifact**
14
+ and turns "correct" from a one-time acceptance state into a **maintained invariant**
15
+ re-verified on every change (DEC-077).
16
+
17
+ It is the **correctness** member of the governance-gate family — alongside
18
+ `license-compliance` (XSPEC-193, *licensing*) and `model-provenance` (XSPEC-255, *source*) —
19
+ which all share the same shape: **registry/check → fail-closed gate → audit evidence →
20
+ human-escalation ceiling**. The three are profiles of one mechanism over three axes:
21
+ **licensing / provenance / correctness**.
22
+
23
+ > **Scope.** This standard defines the *correctness oracle mechanism* (registry, grading,
24
+ > gate timing, re-verification, evidence, escalation) and the acceptance evidence it
25
+ > produces. The **oracle content (the correct answers) belongs to the customer** — it is
26
+ > their domain, their ground truth (DEC-075 neutral mechanism / DEC-063 customer-owned
27
+ > output). Enforcement engine wiring (e.g. VibeOps pipeline gates) is a downstream
28
+ > adoption concern, not part of this standard.
29
+
30
+ ## The Oracle-ability Spectrum
31
+
32
+ Not every requirement has a ready oracle. Grade each high-stakes feature by how readily its
33
+ oracle exists — this drives cost, beachhead selection, and when a human must step in.
34
+
35
+ | Tier | Oracle shape | Readiness / cost |
36
+ |------|--------------|------------------|
37
+ | 1 | Known-correct output of a legacy system | Most ready, cheapest (parity-provable) |
38
+ | 2 | A batch of hand-computed / existing correct outputs | Ready (reproduce + scale) |
39
+ | 3 | Regulation / formula (rules exist, examples missing) | Needs co-derived worked examples + sign-off (ATDD) |
40
+ | 4 | Vague requirement (oracle must be *mined* from interviews) | Most expensive — the "translation problem" |
41
+
42
+ ## Requirements
43
+
44
+ | ID | Rule | Level |
45
+ |----|------|-------|
46
+ | REQ-001 | Ground-truth registry as a first-class artifact, bound to AC | MUST |
47
+ | REQ-002 | Oracle-ability grading (Tier 1–4) for every high-stakes feature | MUST |
48
+ | REQ-003 | Fail-closed verification gate before ship | MUST |
49
+ | REQ-004 | Sustained re-verification on every change (correctness as CI invariant) | MUST |
50
+ | REQ-005 | Auditable verification evidence (N/N reproduced, no drift, trace) | MUST |
51
+ | REQ-006 | Self-serve frontier ceiling — escalate when no oracle / unverifiable high-stakes | MUST |
52
+ | REQ-007 | Oracle content sovereignty — content owned by customer, mechanism neutral | SHOULD |
53
+
54
+ ### REQ-001 — Ground-Truth Registry
55
+
56
+ The correct answers a customer provides become a first-class artifact. Each ground-truth
57
+ case carries an **input scenario + expected correct output**, and is **bound to the
58
+ acceptance criterion** it proves (`acceptance-criteria-traceability`). At minimum the
59
+ mechanism MUST support numeric and structured-output comparison, with per-field exemptions
60
+ (e.g. `ignore_fields` for timestamps/ids). Example: a billing case "given orders + org
61
+ state → the *correct* charge amount", not merely "the endpoint returns HTTP 200".
62
+
63
+ ### REQ-002 — Oracle-ability Grading
64
+
65
+ Every high-stakes feature MUST be tagged with its oracle Tier (1–4, table above).
66
+ A **Tier-4 (must-mine) feature MUST have a defined hand-off point** to an oracle-manufacturing
67
+ flow (interview / Prototype Probe; XSPEC-252) that pulls the expensive end toward Tier 1–2.
68
+ Beachhead selection SHOULD prefer Tier 1–2 features where the oracle is already ready.
69
+
70
+ ### REQ-003 — Fail-Closed Verification Gate
71
+
72
+ Before a system may enter UAT/ship, it MUST **exactly reproduce every registered
73
+ ground-truth case**. A non-reproduction MUST **block ship or escalate** — never silently
74
+ pass (mirrors `license-compliance` blocklist and `model-provenance` denylist). The gate
75
+ plugs into existing reviewer/QA gates and the audit logger.
76
+
77
+ ### REQ-004 — Sustained Re-Verification (the soul of this standard)
78
+
79
+ On **every change / regeneration**, the full oracle suite MUST be re-run, making "correct"
80
+ a **CI-grade invariant** rather than a one-time acceptance. **Drift** (was-correct, now-wrong)
81
+ MUST be detected and **blocked**. This is the mechanization of DEC-077's "changed and still
82
+ correct, and provably correct the whole time" — the differentiator a "generate-once, never
83
+ re-verify" competitor cannot match.
84
+
85
+ ### REQ-005 — Audit Evidence
86
+
87
+ Each verification run MUST emit an auditable report: *"this delivery reproduced N/N
88
+ ground-truth cases, no drift, trace attached."* It plugs into the audit logger / hash chain,
89
+ the `model-provenance` source evidence (XSPEC-255), and the telemetry allowlist (DEC-066).
90
+ **This report is the outward proof of the correctness/governance moat** and a compliance
91
+ artifact for the customer.
92
+
93
+ ### REQ-006 — Self-Serve Frontier Ceiling
94
+
95
+ Where there is **no oracle** (correctness is not decidable) or a **high-stakes but
96
+ unverifiable** path, the system MUST NOT let self-serve silently pass. It MUST flag
97
+ "a human must decide / an oracle must be supplied here" and **escalate** (DEC-076 ceiling).
98
+ Defining correctness and signing off acceptance are **human judgments** (customer / legal /
99
+ regulator) — a product-enforced governance gate, not a consultant trap.
100
+
101
+ ### REQ-007 — Oracle Content Sovereignty
102
+
103
+ The verification *mechanism* is domain-neutral (DEC-075); the *correct answers* are owned by
104
+ the customer (DEC-063). Adopters SHOULD keep registries customer-scoped and isolated
105
+ (see `model-provenance` / `license-compliance` per-customer salt patterns, DEC-064).
106
+
107
+ ## Principles
108
+
109
+ | ID | Principle |
110
+ |----|-----------|
111
+ | P-1 | Oracle First — no oracle, no "correct"; grade oracle-ability before claiming correctness |
112
+ | P-2 | Maintained Invariant — re-verify on every change; drift is a blocking event (DEC-077) |
113
+ | P-3 | Fail-Closed — non-reproduction blocks or escalates; never silent pass |
114
+ | P-4 | Evidence-Based — every verdict carries a reproducible trace (N/N + diff + audit id) |
115
+ | P-5 | Human Ceiling — unverifiable high-stakes escalates to a human (DEC-076) |
116
+ | P-6 | Content Sovereignty — mechanism neutral, correct answers owned by the customer |
117
+
118
+ ## Gate Timing
119
+
120
+ ```
121
+ spec(SDD) → generate → [oracle verification gate] ← REQ-003 fail-closed, pre-ship
122
+
123
+ on every change ─────┤ → re-run full oracle suite ← REQ-004 drift block
124
+
125
+ audit evidence report ← REQ-005 (outward moat proof)
126
+
127
+ no oracle / unverifiable ──┴──→ escalate to human ← REQ-006 ceiling
128
+ ```
129
+
130
+ ## Relationship to the Governance-Gate Family
131
+
132
+ | Profile | Standard | Axis | Registry/Check | Block trigger |
133
+ |---------|----------|------|----------------|---------------|
134
+ | Licensing | `license-compliance` (XSPEC-193) | legal | blocklist/allowlist/greylist | prohibited license |
135
+ | Provenance | model-provenance (XSPEC-255, planned sibling) | source | model source policy | denied source |
136
+ | **Correctness** | **`verification-oracle` (XSPEC-256)** | **correct** | **ground-truth registry** | **non-reproduction / drift** |
137
+
138
+ All three: fail-closed + audit evidence + customer override telemetered + human-escalation ceiling.
139
+
140
+ ## Integration with Existing Standards
141
+
142
+ - **`acceptance-criteria-traceability`** — oracle cases bind to AC; reproduction becomes a
143
+ form of AC coverage.
144
+ - **`verification-evidence`** — the oracle report is a kind of verification evidence (N/N
145
+ reproduction + no-drift + trace).
146
+ - **`test-governance`** — the oracle suite is governed test policy; the gate is a governed gate.
147
+ - **`behavior-snapshot`** — a parity/snapshot gate is REQ-003/REQ-004 instantiated for the
148
+ refactor/migration case; a snapshot is itself an oracle, so the skeleton may be shared.
149
+
150
+ ## Related Specs
151
+
152
+ - XSPEC-256 — Verification Oracle complete spec (this standard's source)
153
+ - DEC-077 — Correctness as a maintained invariant (mother decision)
154
+ - DEC-075 — VibeOps domain-neutral positioning (neutral mechanism)
155
+ - DEC-076 — Self-serve customization north star (oracle = self-serve ceiling)
156
+ - DEC-063 — Legal & compliance strategy (customer-owned output / high-stakes)
157
+ - DEC-066 — Telemetry-driven product evolution (audit/telemetry)
158
+ - XSPEC-193 / XSPEC-255 — sibling governance-gate profiles (licensing / provenance)
159
+ - XSPEC-252 — Domain pack requirement translation (oracle manufacturing, Tier-4 hand-off)
160
+ - XSPEC-188 — UAT ship-decision dashboard (business-level UAT anchors)
161
+ - XSPEC-201 — Refactor/migration completeness (behavior-snapshot = an oracle instance)
162
+
163
+ ## Changelog
164
+
165
+ | Version | Date | Changes |
166
+ |---------|------|---------|
167
+ | v1.0.0 | 2026-06-17 | Initial — REQ-001~007: ground-truth registry, oracle-ability grading, fail-closed gate, sustained re-verification, audit evidence, self-serve ceiling, content sovereignty (XSPEC-256) |
@@ -2,8 +2,8 @@
2
2
 
3
3
  > **Language**: English | [繁體中文](../locales/zh-TW/core/versioning.md)
4
4
 
5
- **Version**: 1.2.0
6
- **Last Updated**: 2025-12-30
5
+ **Version**: 1.5.0
6
+ **Last Updated**: 2026-07-01
7
7
  **Applicability**: All software projects with versioned releases
8
8
  **Scope**: universal
9
9
  **Industry Standards**: Semantic Versioning 2.0.0
@@ -156,6 +156,94 @@ Format: `MAJOR.MINOR.PATCH+BUILD`
156
156
  - Use for CI/CD tracking
157
157
  - Include in artifacts but not in version comparison
158
158
 
159
+ > **Critical: build metadata MUST NOT be used as a deployment discriminator.**
160
+ > Because tooling ignores `+build` in precedence and comparison (above), two builds
161
+ > differing only in build metadata (`1.2.3+abc` vs `1.2.3+def`) are **indistinguishable
162
+ > to version-comparison tooling** — rollback targets and `semver` comparison treat them
163
+ > as the same release. Using `+sha` to tell apart behaviorally-different deployed builds
164
+ > is a governance bypass: the version stops being the join key for changelog / SBOM /
165
+ > audit / rollback / SLA / CVE scope. A change that ships MUST get a real version bump or
166
+ > a unique immutable artifact identity (see **Deployment Version Identity** below) —
167
+ > `+sha` is **not** a substitute.
168
+
169
+ ---
170
+
171
+ ## Deployment Version Identity
172
+
173
+ > Source: a recurring failure mode — multiple behaviorally-different hotfix builds
174
+ > deployed under the same `X.Y.Z`, distinguishable only by `+sha`, so answering
175
+ > "which build is in prod / is fix X actually deployed?" collapses into commit
176
+ > archaeology.
177
+
178
+ This section governs the identity of a **deployable unit** — whatever that unit is for the
179
+ project (a container image, a tarball, a published package). It complements the
180
+ [Release Process](#release-process) below, which describes one concrete single-host release
181
+ flow; the identity rules here apply regardless of the deployment mechanism.
182
+
183
+ ### Core invariant
184
+
185
+ **Every distinct deployable build artifact MUST carry a unique, immutable version
186
+ identity (version proper + commit sha).** Deploying, *promoting*, or *rolling back*
187
+ an **existing** artifact MUST NOT change its identity.
188
+
189
+ - **Anchor on the artifact, not the deploy action.** A new build (different source or
190
+ dependencies) ⇒ new version. The *same* build moved between environments
191
+ (staging → prod, build-once-deploy-many), redeployed (blue-green / canary), or
192
+ rolled back is the **same** artifact and keeps its identity — it MUST NOT be
193
+ re-bumped. Re-bumping on promote/rollback makes the version number lie about what
194
+ is actually running. (When a rollback restores a previous artifact, it restores that
195
+ artifact's original identity — it does not mint a new one.)
196
+ - **Never deploy two distinct builds under the same `X.Y.Z`.**
197
+
198
+ ### Enforce automatically, not by discipline
199
+
200
+ The invariant SHOULD be enforced by an automatic mechanism rather than human discipline
201
+ alone — the failure mode above *is* a forgotten manual bump. Any of these satisfies it:
202
+
203
+ - **Commit-driven release automation** (`semantic-release` / `standard-version`, see
204
+ [Automation Tools](#automation-tools)): derives and bumps the version from commit
205
+ history in CI, so a human cannot forget to bump.
206
+ - **Git-height–derived versioning** (MinVer / Nerdbank.GitVersioning / GitVersion):
207
+ the version is derived from git commit topology, so a collision is structurally
208
+ impossible. RECOMMENDED for polyglot / .NET / JVM projects (the Automation Tools
209
+ section is otherwise Node-centric) — see the git-height subsection under
210
+ [Automation Tools](#automation-tools). Note caveats for monorepos and squash-merge
211
+ workflows.
212
+ - **A CI uniqueness gate**: fail the release if the computed version already exists
213
+ as a git tag or in the registry.
214
+
215
+ ### Immutable artifacts (cross-reference)
216
+
217
+ A unique *number* is necessary but not sufficient — the *artifact* must also be immutable
218
+ and content-addressed (e.g. a container image referenced by digest rather than a mutable
219
+ tag). The concrete artifact-level requirements — pinning deployments to a content address
220
+ and forbidding tag/version reuse — **belong with container-image-standards** and are to be
221
+ specified there; this standard only requires that the version identity itself remain
222
+ unique and immutable.
223
+
224
+ ### Build identity is observable (requirement)
225
+
226
+ **A deployed service MUST expose its build identity — `version + commit sha + build time` —
227
+ through a queryable endpoint** (a dedicated `/version`, or embedded in `/health`), so
228
+ operators can determine exactly what is running without inspecting the binary or resorting to
229
+ commit archaeology. Rationale: manual version numbers can collide (above), so ops needs the
230
+ `sha` to tell apart two builds that ship under the same `X.Y.Z`.
231
+
232
+ Requirements:
233
+
234
+ - The exposed `sha` MUST match the deployed artifact's sha — it is **verifiable, not
235
+ self-reported** (derive it from the build, do not hand-type it).
236
+ - The endpoint SHOULD be access-controlled; a public build-identity endpoint leaks internal
237
+ commit identity.
238
+ - Post-release verification MUST assert the returned sha equals the deployed artifact's sha
239
+ (see [Phase 5: Post-release Verification](#phase-5-post-release-verification)), not merely
240
+ that the version number is correct.
241
+
242
+ This is a deployment / observability concern: the concrete verification *mechanism* (how the
243
+ endpoint is scraped and the assertion wired into a gate) **belongs with deployment-standards**
244
+ (to be specified there), and **supply-chain-attestation** already provides provenance as
245
+ the cryptographic backing for "this artifact came from this sha".
246
+
159
247
  ---
160
248
 
161
249
  ## Initial Development
@@ -431,8 +519,10 @@ sudo ./upgrade.sh
431
519
  # 1. Check service status
432
520
  systemctl status your-service
433
521
 
434
- # 2. Check application version
435
- curl http://localhost:PORT/api/version
522
+ # 2. Check application build identity (version + commit sha + build time)
523
+ # Assert the returned sha matches the deployed artifact's sha — not just the version.
524
+ curl http://localhost:PORT/version # or /health, if build identity is embedded there
525
+ # Expected: {"version": "1.2.1", "sha": "<deployed-artifact-sha>", "buildTime": "..."}
436
526
 
437
527
  # 3. Check logs for no errors
438
528
  tail -100 /path/to/app.log | grep -i error
@@ -440,7 +530,9 @@ tail -100 /path/to/app.log | grep -i error
440
530
 
441
531
  **Success Criteria**:
442
532
  - Service running normally
443
- - API returns correct version number
533
+ - `/version` (or `/health`) returns the correct version number **and** a commit sha that
534
+ matches the deployed artifact — a matching version alone is insufficient, since two builds
535
+ can share one `X.Y.Z` (see [Build identity is observable](#build-identity-is-observable-requirement))
444
536
  - No fatal errors in logs
445
537
  - Functionality verification passed
446
538
 
@@ -595,6 +687,32 @@ npm install --save-dev semantic-release
595
687
  }
596
688
  ```
597
689
 
690
+ ### Git-height–derived versioning (polyglot: .NET / JVM / multi-language)
691
+
692
+ The tools above are Node/npm-centric. For **.NET, JVM, or multi-language projects**, prefer
693
+ **git-height–derived versioning**, where the version is computed automatically from the git
694
+ tag graph plus the number of commits since the last tag ("commit height") rather than stored
695
+ in a hand-edited file. Because the version is a deterministic function of git history,
696
+ **two different builds cannot collide on the same version number** and no manual bump step
697
+ can be forgotten — this is what makes it satisfy
698
+ [Deployment Version Identity](#deployment-version-identity) structurally rather than by
699
+ discipline.
700
+
701
+ | Tool | Ecosystem | Notes |
702
+ |------|-----------|-------|
703
+ | **MinVer** | .NET / MSBuild | Derives the version from the nearest git tag plus commit height; no config file, no build server integration required |
704
+ | **Nerdbank.GitVersioning** (nbgv) | .NET (also Node and others) | Reads a `version.json`; stamps version + git height + commit id into assemblies and packages |
705
+ | **GitVersion** | Polyglot (.NET, plus a language-agnostic CLI) | Configurable versioning modes (e.g. Mainline, Continuous Delivery / Continuous Deployment) driven by branch and tag topology |
706
+
707
+ **When to use which:**
708
+
709
+ - **Node / npm projects** → commit-driven automation (`semantic-release` / `standard-version`, above): the bump is derived from Conventional Commits.
710
+ - **Polyglot / .NET / JVM projects** → git-height–derived tools (MinVer / Nerdbank.GitVersioning / GitVersion): the version is derived from git tag + commit height.
711
+
712
+ Both families remove the forgettable manual bump. **Caveats:** in a monorepo a single
713
+ repo-wide commit height may not map cleanly onto per-package versions, and squash-merge
714
+ workflows alter commit height — validate the derived version against your tagging convention.
715
+
598
716
  ---
599
717
 
600
718
  ## Dependency Version Ranges
@@ -638,113 +756,14 @@ npm install --save-dev semantic-release
638
756
 
639
757
  ---
640
758
 
641
- ## Breaking Change Communication
642
-
643
- ### 1. Deprecation Warnings (N-1 Version)
644
-
645
- ```javascript
646
- // Version 1.5.0 - Add deprecation warning
647
- /**
648
- * @deprecated Use authenticateV2() instead. Will be removed in v2.0.0
649
- */
650
- function authenticate(username, password) {
651
- console.warn('[DEPRECATED] authenticate() will be removed in v2.0.0. Use authenticateV2()');
652
- return authenticateV2(username, password);
653
- }
654
- ```
655
-
656
- ### 2. API Versioning Strategies
657
-
658
- Choose an API versioning strategy based on your needs:
659
-
660
- | Strategy | Format | Pros | Cons |
661
- |----------|--------|------|------|
662
- | URL Path | `/api/v1/users` | Clear, easy routing | URL pollution |
663
- | Query Parameter | `/api/users?version=1` | Optional versioning | Cache issues |
664
- | Header | `Accept: application/vnd.api.v1+json` | Clean URLs | Less visible |
665
- | Content Negotiation | `Accept: application/vnd.api+json;version=1` | RESTful | Complex |
759
+ ## Breaking Changes & Deprecation
666
760
 
667
- **Recommended**: URL Path versioning for most APIs (clearest for developers).
761
+ Breaking changes drive the **MAJOR** version increment (see [Incrementing Rules](#incrementing-rules)) — that is how SemVer signals an incompatible change to consumers. The *contract-level* details of evolving and retiring an API are owned by the standards responsible for those concerns, so each rule has a single source of truth:
668
762
 
669
- ### 3. Deprecation Timeline
763
+ - **API versioning strategies, the backward-compatibility checklist (what counts as a breaking change), deprecation annotations in code, and the migration-guide template** → [API Design Standards](api-design-standards.md#api-versioning-strategies)
764
+ - **The deprecation lifecycle, minimum notice periods by API tier, `Sunset` / `Deprecation` headers, and consumer notification** → [Deprecation & Sunset Standards](deprecation-standards.md#api-deprecation)
670
765
 
671
- Follow this timeline when deprecating API features:
672
-
673
- ```
674
- v1.0.0 - Feature introduced
675
- v1.5.0 - Deprecation warning added (minimum N-1 version)
676
- v2.0.0 - Feature removed (document in migration guide)
677
- ```
678
-
679
- **Deprecation Period Guidelines**:
680
-
681
- | API Type | Minimum Deprecation Period |
682
- |----------|---------------------------|
683
- | Internal API | 1 minor version |
684
- | Partner API | 2 minor versions + 3 months |
685
- | Public API | 2 minor versions + 6 months |
686
- | Critical Infrastructure | 1 year minimum |
687
-
688
- ### 4. Backward Compatibility Checklist
689
-
690
- Before releasing, verify these backward compatibility rules:
691
-
692
- **DO NOT break (without major version bump)**:
693
- - [ ] Remove public API endpoints
694
- - [ ] Remove required request fields
695
- - [ ] Add required request fields
696
- - [ ] Change response field types
697
- - [ ] Change error code meanings
698
- - [ ] Remove response fields consumers depend on
699
-
700
- **Safe changes (minor/patch version)**:
701
- - [ ] Add optional request fields
702
- - [ ] Add new response fields
703
- - [ ] Add new endpoints
704
- - [ ] Add new error codes
705
- - [ ] Improve error messages
706
- - [ ] Performance improvements
707
-
708
- ### 5. Migration Guide (N Version)
709
-
710
- ```markdown
711
- # Migration Guide: v1.x to v2.0
712
-
713
- ## Breaking Changes
714
-
715
- ### 1. authenticate() removed
716
-
717
- **Before (v1.x)**:
718
- ```javascript
719
- const token = await authenticate('user', 'pass');
720
- ```
721
-
722
- **After (v2.0)**:
723
- ```javascript
724
- const token = await authenticateV2({ username: 'user', password: 'pass' });
725
- ```
726
-
727
- ### 2. API response format changed
728
-
729
- **Before (v1.x)**:
730
- ```json
731
- { "data": { "user": {...} } }
732
- ```
733
-
734
- **After (v2.0)**:
735
- ```json
736
- { "user": {...} }
737
- ```
738
-
739
- Update your code:
740
- ```javascript
741
- // Before
742
- const user = response.data.user;
743
-
744
- // After
745
- const user = response.user;
746
- ```
747
- ```
766
+ This standard keeps only the version-numbering rule: an incompatible change MUST ship as a MAJOR bump, and deprecation SHOULD be announced in a prior MINOR before the removing MAJOR (see [MAJOR Version](#major-version-x00) guidelines).
748
767
 
749
768
  ---
750
769
 
@@ -834,6 +853,8 @@ semver.major('2.3.1'); // 2
834
853
  - [Changelog Standards](changelog-standards.md)
835
854
  - [Git Workflow Standards](git-workflow.md)
836
855
  - [Commit Message Guide](commit-message-guide.md)
856
+ - [API Design Standards](api-design-standards.md) — API versioning strategies, backward-compatibility rules, migration guides
857
+ - [Deprecation & Sunset Standards](deprecation-standards.md) — deprecation lifecycle and minimum notice periods
837
858
 
838
859
  ---
839
860
 
@@ -841,6 +862,9 @@ semver.major('2.3.1'); // 2
841
862
 
842
863
  | Version | Date | Changes |
843
864
  |---------|------|---------|
865
+ | 1.5.0 | 2026-07-01 | Added: git-height–derived versioning tools (MinVer / Nerdbank.GitVersioning / GitVersion) for polyglot / .NET / JVM projects in Automation Tools (UDS #138 R2); elevated "Build identity is observable" to a requirement — deployed services MUST expose `version + commit sha + build time` via a queryable endpoint — and added a commit-sha + build-time assertion to Phase 5 Post-release Verification (UDS #138 R3) |
866
+ | 1.4.0 | 2026-06-24 | Moved out (to single sources): API Versioning Strategies (de-duplicated), Deprecation Timeline + per-tier periods, Backward Compatibility Checklist, and the Migration Guide template — now owned by api-design-standards / deprecation-standards; versioning cross-references them (XSPEC-298 R8, UDS #126) |
867
+ | 1.3.0 | 2026-06-23 | Added: Deployment Version Identity section; build-metadata-as-deployment-discriminator caveat (from UDS #138) |
844
868
  | 1.2.0 | 2025-12-30 | Added: API Versioning Strategies, Deprecation Timeline, Backward Compatibility Checklist |
845
869
  | 1.1.3 | 2025-12-24 | Added: Related Standards section |
846
870
  | 1.1.2 | 2025-12-11 | Improved: Upgrade package naming example to use generic placeholders instead of hardcoded project names |