universal-dev-standards 5.17.0 → 6.1.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 (563) hide show
  1. package/bin/uds.js +13 -135
  2. package/bundled/ai/options/commit-message/bilingual.ai.yaml +19 -1
  3. package/bundled/ai/standards/acceptance-criteria-traceability.ai.yaml +13 -4
  4. package/bundled/ai/standards/accessibility-standards.ai.yaml +1 -1
  5. package/bundled/ai/standards/ai-response-navigation.ai.yaml +15 -2
  6. package/bundled/ai/standards/api-design-standards.ai.yaml +27 -4
  7. package/bundled/ai/standards/behavior-snapshot.ai.yaml +86 -9
  8. package/bundled/ai/standards/checkin-standards.ai.yaml +3 -3
  9. package/bundled/ai/standards/code-review.ai.yaml +2 -2
  10. package/bundled/ai/standards/context-aware-loading.ai.yaml +3 -3
  11. package/bundled/ai/standards/data-migration-testing.ai.yaml +79 -3
  12. package/bundled/ai/standards/deprecation-standards.ai.yaml +10 -2
  13. package/bundled/ai/standards/developer-memory.ai.yaml +4 -3
  14. package/bundled/ai/standards/documentation-writing-standards.ai.yaml +1 -1
  15. package/bundled/ai/standards/flow-based-testing.ai.yaml +2 -2
  16. package/bundled/ai/standards/forward-derivation-standards.ai.yaml +26 -2
  17. package/bundled/ai/standards/frontend-design-standards.ai.yaml +33 -3
  18. package/bundled/ai/standards/full-coverage-testing.ai.yaml +34 -2
  19. package/bundled/ai/standards/git-worktree.ai.yaml +3 -3
  20. package/bundled/ai/standards/logging.ai.yaml +97 -3
  21. package/bundled/ai/standards/mock-boundary.ai.yaml +48 -2
  22. package/bundled/ai/standards/model-provenance.ai.yaml +297 -0
  23. package/bundled/ai/standards/model-selection.ai.yaml +11 -2
  24. package/bundled/ai/standards/observability-standards.ai.yaml +10 -0
  25. package/bundled/ai/standards/performance-standards.ai.yaml +46 -1
  26. package/bundled/ai/standards/pii-classification.ai.yaml +15 -1
  27. package/bundled/ai/standards/pipeline-security-gates.ai.yaml +10 -0
  28. package/bundled/ai/standards/privacy-standards.ai.yaml +2 -2
  29. package/bundled/ai/standards/project-context-memory.ai.yaml +2 -2
  30. package/bundled/ai/standards/push-standards.ai.yaml +14 -3
  31. package/bundled/ai/standards/refactoring-standards.ai.yaml +68 -3
  32. package/bundled/ai/standards/requirement-engineering.ai.yaml +42 -3
  33. package/bundled/ai/standards/resource-cost-boundary.ai.yaml +279 -0
  34. package/bundled/ai/standards/reverse-engineering-standards.ai.yaml +55 -2
  35. package/bundled/ai/standards/security-testing.ai.yaml +13 -2
  36. package/bundled/ai/standards/self-review-protocol.ai.yaml +15 -10
  37. package/bundled/ai/standards/skill-standard-alignment-check.ai.yaml +37 -2
  38. package/bundled/ai/standards/user-journey-testing.ai.yaml +107 -0
  39. package/bundled/ai/standards/verification-evidence.ai.yaml +88 -5
  40. package/bundled/ai/standards/verification-oracle.ai.yaml +278 -0
  41. package/bundled/ai/standards/versioning.ai.yaml +32 -38
  42. package/bundled/core/acceptance-criteria-traceability.md +15 -5
  43. package/bundled/core/accessibility-standards.md +8 -4
  44. package/bundled/core/ai-friendly-architecture.md +1 -1
  45. package/bundled/core/ai-response-navigation.md +31 -3
  46. package/bundled/core/anti-sycophancy-prompting.md +1 -1
  47. package/bundled/core/api-design-standards.md +92 -7
  48. package/bundled/core/audit-trail.md +119 -0
  49. package/bundled/core/behavior-snapshot.md +94 -7
  50. package/bundled/core/browser-compatibility-standards.md +15 -2
  51. package/bundled/core/checkin-standards.md +10 -3
  52. package/bundled/core/code-review-checklist.md +10 -2
  53. package/bundled/core/container-image-standards.md +97 -0
  54. package/bundled/core/context-aware-loading.md +2 -2
  55. package/bundled/core/cost-budget-test.md +1 -1
  56. package/bundled/core/cross-flow-regression.md +3 -2
  57. package/bundled/core/data-contract.md +104 -0
  58. package/bundled/core/data-migration-testing.md +90 -0
  59. package/bundled/core/data-pipeline.md +113 -0
  60. package/bundled/core/deprecation-standards.md +16 -2
  61. package/bundled/core/developer-memory.md +13 -8
  62. package/bundled/core/documentation-writing-standards.md +2 -2
  63. package/bundled/core/error-code-standards.md +4 -3
  64. package/bundled/core/feature-discovery-standards.md +191 -0
  65. package/bundled/core/flaky-test-management.md +1 -1
  66. package/bundled/core/flow-based-testing.md +3 -3
  67. package/bundled/core/forward-derivation-standards.md +33 -5
  68. package/bundled/core/frontend-design-standards.md +93 -4
  69. package/bundled/core/full-coverage-testing.md +72 -0
  70. package/bundled/core/git-worktree.md +4 -4
  71. package/bundled/core/guides/performance-guide.md +1 -1
  72. package/bundled/core/guides/security-guide.md +1 -1
  73. package/bundled/core/health-check-standards.md +2 -2
  74. package/bundled/core/iac-design-principles.md +97 -0
  75. package/bundled/core/incident-response.md +119 -0
  76. package/bundled/core/license-compliance.md +2 -0
  77. package/bundled/core/logging-standards.md +78 -2
  78. package/bundled/core/mock-boundary.md +54 -2
  79. package/bundled/core/model-provenance.md +181 -0
  80. package/bundled/core/model-selection.md +27 -2
  81. package/bundled/core/multi-environment-e2e-testing.md +195 -0
  82. package/bundled/core/packaging-standards.md +1 -0
  83. package/bundled/core/performance-standards.md +96 -2
  84. package/bundled/core/pii-classification.md +148 -0
  85. package/bundled/core/pipeline-security-gates.md +22 -2
  86. package/bundled/core/postmortem-standards.md +2 -0
  87. package/bundled/core/prd-standards.md +91 -0
  88. package/bundled/core/privacy-standards.md +14 -3
  89. package/bundled/core/product-metrics-standards.md +100 -0
  90. package/bundled/core/project-context-memory.md +8 -2
  91. package/bundled/core/prompt-regression.md +1 -1
  92. package/bundled/core/push-standards.md +82 -0
  93. package/bundled/core/refactoring-standards.md +44 -3
  94. package/bundled/core/replay-test.md +1 -1
  95. package/bundled/core/requirement-engineering.md +2 -2
  96. package/bundled/core/resource-cost-boundary.md +180 -0
  97. package/bundled/core/reverse-engineering-standards.md +66 -2
  98. package/bundled/core/runbook.md +113 -0
  99. package/bundled/core/schema-evolution.md +105 -0
  100. package/bundled/core/secret-management-standards.md +110 -0
  101. package/bundled/core/security-testing.md +26 -2
  102. package/bundled/core/self-review-protocol.md +15 -10
  103. package/bundled/core/skill-standard-alignment-check.md +53 -0
  104. package/bundled/core/slo-sli.md +109 -0
  105. package/bundled/core/smoke-test.md +1 -1
  106. package/bundled/core/tech-debt-standards.md +1 -1
  107. package/bundled/core/test-data-standards.md +2 -2
  108. package/bundled/core/user-journey-testing.md +102 -0
  109. package/bundled/core/user-story-mapping.md +96 -0
  110. package/bundled/core/verification-evidence.md +170 -10
  111. package/bundled/core/verification-oracle.md +167 -0
  112. package/bundled/core/versioning.md +133 -109
  113. package/bundled/locales/COVERAGE.md +94 -77
  114. package/bundled/locales/zh-CN/CHANGELOG.md +94 -6
  115. package/bundled/locales/zh-CN/CLAUDE.md +1 -1
  116. package/bundled/locales/zh-CN/MAINTENANCE.md +42 -661
  117. package/bundled/locales/zh-CN/README.md +25 -12
  118. package/bundled/locales/zh-CN/SECURITY.md +2 -2
  119. package/bundled/locales/zh-CN/adoption/DAILY-WORKFLOW-GUIDE.md +2 -2
  120. package/bundled/locales/zh-CN/ai/options/commit-message/bilingual.ai.yaml +6 -1
  121. package/bundled/locales/zh-CN/core/acceptance-criteria-traceability.md +4 -6
  122. package/bundled/locales/zh-CN/core/accessibility-standards.md +1 -1
  123. package/bundled/locales/zh-CN/core/adversarial-test.md +226 -0
  124. package/bundled/locales/zh-CN/core/agent-behavior-discipline.md +187 -0
  125. package/bundled/locales/zh-CN/core/ai-response-navigation.md +32 -6
  126. package/bundled/locales/zh-CN/core/anti-sycophancy-prompting.md +1 -1
  127. package/bundled/locales/zh-CN/core/api-design-standards.md +1 -1
  128. package/bundled/locales/zh-CN/core/behavior-snapshot.md +335 -0
  129. package/bundled/locales/zh-CN/core/browser-compatibility-standards.md +239 -0
  130. package/bundled/locales/zh-CN/core/cd-deployment-strategies.md +135 -0
  131. package/bundled/locales/zh-CN/core/chaos-injection-tests.md +130 -0
  132. package/bundled/locales/zh-CN/core/checkin-standards.md +1 -1
  133. package/bundled/locales/zh-CN/core/code-review-checklist.md +1 -1
  134. package/bundled/locales/zh-CN/core/container-security.md +535 -0
  135. package/bundled/locales/zh-CN/core/context-aware-loading.md +1 -1
  136. package/bundled/locales/zh-CN/core/contract-testing-standards.md +191 -0
  137. package/bundled/locales/zh-CN/core/cost-budget-test.md +86 -0
  138. package/bundled/locales/zh-CN/core/cross-flow-regression.md +200 -0
  139. package/bundled/locales/zh-CN/core/data-migration-testing.md +217 -0
  140. package/bundled/locales/zh-CN/core/deployment-standards.md +328 -9
  141. package/bundled/locales/zh-CN/core/deprecation-standards.md +1 -1
  142. package/bundled/locales/zh-CN/core/developer-memory.md +2 -2
  143. package/bundled/locales/zh-CN/core/disaster-recovery-drill.md +87 -0
  144. package/bundled/locales/zh-CN/core/documentation-structure.md +1 -1
  145. package/bundled/locales/zh-CN/core/documentation-writing-standards.md +1 -1
  146. package/bundled/locales/zh-CN/core/error-code-standards.md +2 -2
  147. package/bundled/locales/zh-CN/core/feature-manifest-standard.md +222 -0
  148. package/bundled/locales/zh-CN/core/flaky-test-management.md +87 -0
  149. package/bundled/locales/zh-CN/core/flow-based-testing.md +284 -0
  150. package/bundled/locales/zh-CN/core/forward-derivation-standards.md +3 -4
  151. package/bundled/locales/zh-CN/core/frontend-design-standards.md +1 -1
  152. package/bundled/locales/zh-CN/core/full-coverage-testing.md +269 -0
  153. package/bundled/locales/zh-CN/core/git-worktree.md +1 -1
  154. package/bundled/locales/zh-CN/core/governance-layer.md +160 -0
  155. package/bundled/locales/zh-CN/core/guides/performance-guide.md +515 -0
  156. package/bundled/locales/zh-CN/core/guides/security-guide.md +494 -0
  157. package/bundled/locales/zh-CN/core/knowledge-graph-memory.md +128 -0
  158. package/bundled/locales/zh-CN/core/license-compliance.md +131 -0
  159. package/bundled/locales/zh-CN/core/llm-output-validation.md +192 -0
  160. package/bundled/locales/zh-CN/core/logging-standards.md +205 -7
  161. package/bundled/locales/zh-CN/core/mock-boundary.md +161 -0
  162. package/bundled/locales/zh-CN/core/model-selection.md +28 -5
  163. package/bundled/locales/zh-CN/core/mutation-testing.md +106 -0
  164. package/bundled/locales/zh-CN/core/no-cicd-deployment.md +219 -0
  165. package/bundled/locales/zh-CN/core/packaging-standards.md +77 -5
  166. package/bundled/locales/zh-CN/core/pipeline-security-gates.md +146 -0
  167. package/bundled/locales/zh-CN/core/policy-as-code-testing.md +203 -0
  168. package/bundled/locales/zh-CN/core/privacy-standards.md +1 -1
  169. package/bundled/locales/zh-CN/core/project-context-memory.md +1 -1
  170. package/bundled/locales/zh-CN/core/prompt-regression.md +88 -0
  171. package/bundled/locales/zh-CN/core/property-based-testing.md +87 -0
  172. package/bundled/locales/zh-CN/core/release-quality-manifest.md +207 -0
  173. package/bundled/locales/zh-CN/core/release-readiness-gate.md +193 -0
  174. package/bundled/locales/zh-CN/core/replay-test.md +102 -0
  175. package/bundled/locales/zh-CN/core/requirement-engineering.md +1 -1
  176. package/bundled/locales/zh-CN/core/reverse-engineering-standards.md +46 -1
  177. package/bundled/locales/zh-CN/core/rollback-standards.md +120 -0
  178. package/bundled/locales/zh-CN/core/sast-advanced.md +309 -0
  179. package/bundled/locales/zh-CN/core/secure-op.md +328 -0
  180. package/bundled/locales/zh-CN/core/security-testing.md +113 -0
  181. package/bundled/locales/zh-CN/core/self-review-protocol.md +172 -0
  182. package/bundled/locales/zh-CN/core/server-ops-security.md +507 -0
  183. package/bundled/locales/zh-CN/core/smoke-test.md +79 -0
  184. package/bundled/locales/zh-CN/core/spec-driven-development.md +39 -3
  185. package/bundled/locales/zh-CN/core/supply-chain-attestation.md +131 -0
  186. package/bundled/locales/zh-CN/core/verification-evidence.md +252 -41
  187. package/bundled/locales/zh-CN/core/versioning.md +1 -1
  188. package/bundled/locales/zh-CN/docs/CHEATSHEET.md +36 -7
  189. package/bundled/locales/zh-CN/docs/FEATURE-REFERENCE.md +71 -53
  190. package/bundled/locales/zh-CN/docs/MIGRATION-v6.md +88 -0
  191. package/bundled/locales/zh-CN/docs/USAGE-MODES-COMPARISON.md +2 -2
  192. package/bundled/locales/zh-CN/docs/USER-MANUAL.md +14 -14
  193. package/bundled/locales/zh-CN/docs/specs/system/memory-adoption-strategy.md +105 -0
  194. package/bundled/locales/zh-CN/docs/user/FAQ.md +132 -0
  195. package/bundled/locales/zh-CN/docs/user/GETTING-STARTED.md +144 -0
  196. package/bundled/locales/zh-CN/docs/user/GLOSSARY.md +178 -0
  197. package/bundled/locales/zh-CN/docs/user/README.md +70 -0
  198. package/bundled/locales/zh-CN/docs/user/TROUBLESHOOTING.md +190 -0
  199. package/bundled/locales/zh-CN/integrations/github-copilot/COPILOT-CHAT-REFERENCE.md +1 -1
  200. package/bundled/locales/zh-CN/integrations/github-copilot/README.md +1 -1
  201. package/bundled/locales/zh-CN/integrations/github-copilot/skills-mapping.md +3 -3
  202. package/bundled/locales/zh-CN/integrations/opencode/skills-mapping.md +3 -3
  203. package/bundled/locales/zh-CN/methodologies/guides/sdd-guide.md +836 -0
  204. package/bundled/locales/zh-CN/options/changelog/auto-generated.md +166 -0
  205. package/bundled/locales/zh-CN/options/changelog/keep-a-changelog.md +140 -0
  206. package/bundled/locales/zh-CN/options/code-review/automated-review.md +214 -0
  207. package/bundled/locales/zh-CN/options/code-review/pair-programming.md +166 -0
  208. package/bundled/locales/zh-CN/options/code-review/pr-review.md +167 -0
  209. package/bundled/locales/zh-CN/options/commit-message/bilingual.md +10 -3
  210. package/bundled/locales/zh-CN/options/documentation/api-docs.md +191 -0
  211. package/bundled/locales/zh-CN/options/documentation/markdown-docs.md +150 -0
  212. package/bundled/locales/zh-CN/options/documentation/wiki-style.md +131 -0
  213. package/bundled/locales/zh-CN/options/project-structure/kotlin.md +144 -0
  214. package/bundled/locales/zh-CN/options/project-structure/php.md +168 -0
  215. package/bundled/locales/zh-CN/options/project-structure/ruby.md +156 -0
  216. package/bundled/locales/zh-CN/options/project-structure/rust.md +136 -0
  217. package/bundled/locales/zh-CN/options/project-structure/swift.md +165 -0
  218. package/bundled/locales/zh-CN/options/testing/contract-testing.md +237 -0
  219. package/bundled/locales/zh-CN/options/testing/industry-pyramid.md +200 -0
  220. package/bundled/locales/zh-CN/options/testing/istqb-framework.md +144 -0
  221. package/bundled/locales/zh-CN/options/testing/performance-testing.md +251 -0
  222. package/bundled/locales/zh-CN/options/testing/security-testing.md +192 -0
  223. package/bundled/locales/zh-CN/skills/README.md +89 -126
  224. package/bundled/locales/zh-CN/skills/ac-coverage/SKILL.md +5 -7
  225. package/bundled/locales/zh-CN/skills/adr-assistant/SKILL.md +1 -1
  226. package/bundled/locales/zh-CN/skills/agents/code-architect.md +263 -0
  227. package/bundled/locales/zh-CN/skills/agents/doc-writer.md +410 -0
  228. package/bundled/locales/zh-CN/skills/agents/reviewer.md +357 -0
  229. package/bundled/locales/zh-CN/skills/agents/spec-analyst.md +410 -0
  230. package/bundled/locales/zh-CN/skills/agents/test-specialist.md +368 -0
  231. package/bundled/locales/zh-CN/skills/ai-collaboration-standards/SKILL.md +2 -2
  232. package/bundled/locales/zh-CN/skills/ai-friendly-architecture/SKILL.md +2 -2
  233. package/bundled/locales/zh-CN/skills/ai-instruction-standards/SKILL.md +1 -1
  234. package/bundled/locales/zh-CN/skills/atdd-assistant/acceptance-criteria-guide.md +1 -1
  235. package/bundled/locales/zh-CN/skills/atdd-assistant/atdd-workflow.md +3 -4
  236. package/bundled/locales/zh-CN/skills/audit-assistant/SKILL.md +2 -2
  237. package/bundled/locales/zh-CN/skills/bdd-assistant/guide.md +1 -2
  238. package/bundled/locales/zh-CN/skills/brainstorm-assistant/SKILL.md +115 -17
  239. package/bundled/locales/zh-CN/skills/brainstorm-assistant/guide.md +37 -12
  240. package/bundled/locales/zh-CN/skills/checkin-assistant/SKILL.md +1 -1
  241. package/bundled/locales/zh-CN/skills/ci-cd-assistant/SKILL.md +50 -0
  242. package/bundled/locales/zh-CN/skills/code-review-assistant/SKILL.md +5 -5
  243. package/bundled/locales/zh-CN/skills/commands/ac-coverage.md +1 -1
  244. package/bundled/locales/zh-CN/skills/commands/atdd.md +3 -3
  245. package/bundled/locales/zh-CN/skills/commands/bdd.md +2 -2
  246. package/bundled/locales/zh-CN/skills/commands/brainstorm.md +26 -17
  247. package/bundled/locales/zh-CN/skills/commands/{review.md → code-review.md} +4 -4
  248. package/bundled/locales/zh-CN/skills/commands/derive-all.md +1 -1
  249. package/bundled/locales/zh-CN/skills/commands/derive-atdd.md +1 -1
  250. package/bundled/locales/zh-CN/skills/commands/derive-bdd.md +2 -3
  251. package/bundled/locales/zh-CN/skills/commands/derive-tdd.md +1 -1
  252. package/bundled/locales/zh-CN/skills/commands/derive.md +1 -1
  253. package/bundled/locales/zh-CN/skills/commands/dev-workflow.md +2 -2
  254. package/bundled/locales/zh-CN/skills/commands/methodology.md +4 -4
  255. package/bundled/locales/zh-CN/skills/commands/pr.md +1 -1
  256. package/bundled/locales/zh-CN/skills/commands/tdd.md +1 -1
  257. package/bundled/locales/zh-CN/skills/commit-standards/SKILL.md +1 -1
  258. package/bundled/locales/zh-CN/skills/contract-test-assistant/SKILL.md +1 -1
  259. package/bundled/locales/zh-CN/skills/dev-methodology/SKILL.md +1 -1
  260. package/bundled/locales/zh-CN/skills/dev-methodology/create-methodology.md +456 -0
  261. package/bundled/locales/zh-CN/skills/dev-methodology/guide.md +6 -6
  262. package/bundled/locales/zh-CN/skills/dev-methodology/runtime.md +296 -0
  263. package/bundled/locales/zh-CN/skills/dev-workflow-guide/SKILL.md +5 -5
  264. package/bundled/locales/zh-CN/skills/docs-generator/SKILL.md +1 -1
  265. package/bundled/locales/zh-CN/skills/e2e-assistant/SKILL.md +1 -1
  266. package/bundled/locales/zh-CN/skills/incident-response-assistant/SKILL.md +2 -2
  267. package/bundled/locales/zh-CN/skills/journey-test-assistant/SKILL.md +1 -1
  268. package/bundled/locales/zh-CN/skills/logging-guide/SKILL.md +169 -142
  269. package/bundled/locales/zh-CN/skills/migration-assistant/SKILL.md +1 -1
  270. package/bundled/locales/zh-CN/skills/observability-assistant/guide.md +1 -1
  271. package/bundled/locales/zh-CN/skills/pr-automation-assistant/SKILL.md +1 -1
  272. package/bundled/locales/zh-CN/skills/project-discovery/guide.md +2 -2
  273. package/bundled/locales/zh-CN/skills/reverse-engineer/SKILL.md +1 -1
  274. package/bundled/locales/zh-CN/skills/runbook-assistant/guide.md +1 -1
  275. package/bundled/locales/zh-CN/skills/security-assistant/SKILL.md +1 -1
  276. package/bundled/locales/zh-CN/skills/skill-builder/SKILL.md +3 -3
  277. package/bundled/locales/zh-CN/skills/slo-assistant/guide.md +1 -1
  278. package/bundled/locales/zh-CN/skills/spec-derivation/SKILL.md +1 -1
  279. package/bundled/locales/zh-CN/skills/spec-derivation/guide.md +8 -9
  280. package/bundled/locales/zh-CN/skills/spec-driven-dev/SKILL.md +2 -2
  281. package/bundled/locales/zh-CN/skills/sweep/SKILL.md +1 -1
  282. package/bundled/locales/zh-CN/skills/tdd-assistant/SKILL.md +1 -1
  283. package/bundled/locales/zh-CN/skills/testing-guide/SKILL.md +2 -2
  284. package/bundled/locales/zh-CN/skills/testing-guide/testing-theory.md +2298 -0
  285. package/bundled/locales/zh-CN/skills/workflows/README.md +451 -0
  286. package/bundled/locales/zh-TW/CHANGELOG.md +94 -6
  287. package/bundled/locales/zh-TW/CLAUDE.md +1 -1
  288. package/bundled/locales/zh-TW/MAINTENANCE.md +51 -4
  289. package/bundled/locales/zh-TW/README.md +25 -12
  290. package/bundled/locales/zh-TW/SECURITY.md +2 -2
  291. package/bundled/locales/zh-TW/adoption/DAILY-WORKFLOW-GUIDE.md +2 -2
  292. package/bundled/locales/zh-TW/ai/options/commit-message/bilingual.ai.yaml +6 -1
  293. package/bundled/locales/zh-TW/ai/standards/versioning.ai.yaml +8 -48
  294. package/bundled/locales/zh-TW/core/acceptance-criteria-traceability.md +4 -6
  295. package/bundled/locales/zh-TW/core/accessibility-standards.md +1 -1
  296. package/bundled/locales/zh-TW/core/adversarial-test.md +226 -0
  297. package/bundled/locales/zh-TW/core/agent-behavior-discipline.md +187 -0
  298. package/bundled/locales/zh-TW/core/ai-response-navigation.md +32 -6
  299. package/bundled/locales/zh-TW/core/anti-sycophancy-prompting.md +1 -1
  300. package/bundled/locales/zh-TW/core/api-design-standards.md +91 -9
  301. package/bundled/locales/zh-TW/core/audit-trail.md +110 -0
  302. package/bundled/locales/zh-TW/core/behavior-snapshot.md +335 -0
  303. package/bundled/locales/zh-TW/core/browser-compatibility-standards.md +1 -0
  304. package/bundled/locales/zh-TW/core/cd-deployment-strategies.md +135 -0
  305. package/bundled/locales/zh-TW/core/chaos-injection-tests.md +130 -0
  306. package/bundled/locales/zh-TW/core/checkin-standards.md +1 -1
  307. package/bundled/locales/zh-TW/core/code-review-checklist.md +1 -1
  308. package/bundled/locales/zh-TW/core/container-image-standards.md +93 -0
  309. package/bundled/locales/zh-TW/core/container-security.md +535 -0
  310. package/bundled/locales/zh-TW/core/cost-budget-test.md +86 -0
  311. package/bundled/locales/zh-TW/core/cross-flow-regression.md +1 -0
  312. package/bundled/locales/zh-TW/core/data-contract.md +101 -0
  313. package/bundled/locales/zh-TW/core/data-migration-testing.md +217 -0
  314. package/bundled/locales/zh-TW/core/data-pipeline.md +105 -0
  315. package/bundled/locales/zh-TW/core/deployment-standards.md +363 -25
  316. package/bundled/locales/zh-TW/core/deprecation-standards.md +17 -4
  317. package/bundled/locales/zh-TW/core/developer-memory.md +2 -2
  318. package/bundled/locales/zh-TW/core/disaster-recovery-drill.md +87 -0
  319. package/bundled/locales/zh-TW/core/documentation-writing-standards.md +1 -1
  320. package/bundled/locales/zh-TW/core/error-code-standards.md +2 -2
  321. package/bundled/locales/zh-TW/core/feature-manifest-standard.md +222 -0
  322. package/bundled/locales/zh-TW/core/flaky-test-management.md +87 -0
  323. package/bundled/locales/zh-TW/core/flow-based-testing.md +284 -0
  324. package/bundled/locales/zh-TW/core/forward-derivation-standards.md +3 -4
  325. package/bundled/locales/zh-TW/core/frontend-design-standards.md +1 -1
  326. package/bundled/locales/zh-TW/core/full-coverage-testing.md +250 -0
  327. package/bundled/locales/zh-TW/core/git-worktree.md +1 -1
  328. package/bundled/locales/zh-TW/core/guides/performance-guide.md +515 -0
  329. package/bundled/locales/zh-TW/core/guides/security-guide.md +494 -0
  330. package/bundled/locales/zh-TW/core/iac-design-principles.md +90 -0
  331. package/bundled/locales/zh-TW/core/incident-response.md +111 -0
  332. package/bundled/locales/zh-TW/core/license-compliance.md +131 -0
  333. package/bundled/locales/zh-TW/core/llm-output-validation.md +192 -0
  334. package/bundled/locales/zh-TW/core/logging-standards.md +208 -4
  335. package/bundled/locales/zh-TW/core/mock-boundary.md +161 -0
  336. package/bundled/locales/zh-TW/core/model-provenance.md +173 -0
  337. package/bundled/locales/zh-TW/core/model-selection.md +28 -5
  338. package/bundled/locales/zh-TW/core/mutation-testing.md +106 -0
  339. package/bundled/locales/zh-TW/core/no-cicd-deployment.md +219 -0
  340. package/bundled/locales/zh-TW/core/packaging-standards.md +77 -5
  341. package/bundled/locales/zh-TW/core/performance-standards.md +84 -5
  342. package/bundled/locales/zh-TW/core/pii-classification.md +102 -0
  343. package/bundled/locales/zh-TW/core/pipeline-security-gates.md +146 -0
  344. package/bundled/locales/zh-TW/core/policy-as-code-testing.md +203 -0
  345. package/bundled/locales/zh-TW/core/prd-standards.md +88 -0
  346. package/bundled/locales/zh-TW/core/privacy-standards.md +1 -1
  347. package/bundled/locales/zh-TW/core/product-metrics-standards.md +96 -0
  348. package/bundled/locales/zh-TW/core/project-context-memory.md +1 -1
  349. package/bundled/locales/zh-TW/core/prompt-regression.md +88 -0
  350. package/bundled/locales/zh-TW/core/property-based-testing.md +87 -0
  351. package/bundled/locales/zh-TW/core/refactoring-standards.md +43 -6
  352. package/bundled/locales/zh-TW/core/release-quality-manifest.md +207 -0
  353. package/bundled/locales/zh-TW/core/replay-test.md +102 -0
  354. package/bundled/locales/zh-TW/core/requirement-engineering.md +1 -1
  355. package/bundled/locales/zh-TW/core/resource-cost-boundary.md +175 -0
  356. package/bundled/locales/zh-TW/core/reverse-engineering-standards.md +64 -5
  357. package/bundled/locales/zh-TW/core/rollback-standards.md +120 -0
  358. package/bundled/locales/zh-TW/core/runbook.md +110 -0
  359. package/bundled/locales/zh-TW/core/sast-advanced.md +309 -0
  360. package/bundled/locales/zh-TW/core/schema-evolution.md +98 -0
  361. package/bundled/locales/zh-TW/core/secret-management-standards.md +101 -0
  362. package/bundled/locales/zh-TW/core/secure-op.md +328 -0
  363. package/bundled/locales/zh-TW/core/security-testing.md +113 -0
  364. package/bundled/locales/zh-TW/core/self-review-protocol.md +18 -13
  365. package/bundled/locales/zh-TW/core/server-ops-security.md +507 -0
  366. package/bundled/locales/zh-TW/core/slo-sli.md +108 -0
  367. package/bundled/locales/zh-TW/core/smoke-test.md +79 -0
  368. package/bundled/locales/zh-TW/core/spec-driven-development.md +19 -11
  369. package/bundled/locales/zh-TW/core/supply-chain-attestation.md +131 -0
  370. package/bundled/locales/zh-TW/core/user-journey-testing.md +111 -0
  371. package/bundled/locales/zh-TW/core/user-story-mapping.md +94 -0
  372. package/bundled/locales/zh-TW/core/verification-evidence.md +260 -31
  373. package/bundled/locales/zh-TW/core/verification-oracle.md +159 -0
  374. package/bundled/locales/zh-TW/core/versioning.md +112 -112
  375. package/bundled/locales/zh-TW/docs/CHEATSHEET.md +36 -7
  376. package/bundled/locales/zh-TW/docs/DEV-WORKFLOW-MAPPING.md +6 -6
  377. package/bundled/locales/zh-TW/docs/FEATURE-REFERENCE.md +71 -53
  378. package/bundled/locales/zh-TW/docs/MIGRATION-v6.md +88 -0
  379. package/bundled/locales/zh-TW/docs/USAGE-MODES-COMPARISON.md +2 -2
  380. package/bundled/locales/zh-TW/docs/USER-MANUAL.md +14 -14
  381. package/bundled/locales/zh-TW/docs/specs/system/memory-adoption-strategy.md +105 -0
  382. package/bundled/locales/zh-TW/docs/user/FAQ.md +132 -0
  383. package/bundled/locales/zh-TW/docs/user/GETTING-STARTED.md +144 -0
  384. package/bundled/locales/zh-TW/docs/user/GLOSSARY.md +178 -0
  385. package/bundled/locales/zh-TW/docs/user/README.md +70 -0
  386. package/bundled/locales/zh-TW/docs/user/TROUBLESHOOTING.md +190 -0
  387. package/bundled/locales/zh-TW/integrations/github-copilot/COPILOT-CHAT-REFERENCE.md +1 -1
  388. package/bundled/locales/zh-TW/integrations/github-copilot/README.md +1 -1
  389. package/bundled/locales/zh-TW/integrations/github-copilot/skills-mapping.md +3 -3
  390. package/bundled/locales/zh-TW/integrations/opencode/skills-mapping.md +3 -3
  391. package/bundled/locales/zh-TW/methodologies/guides/sdd-guide.md +523 -26
  392. package/bundled/locales/zh-TW/options/changelog/auto-generated.md +166 -0
  393. package/bundled/locales/zh-TW/options/changelog/keep-a-changelog.md +140 -0
  394. package/bundled/locales/zh-TW/options/code-review/automated-review.md +214 -0
  395. package/bundled/locales/zh-TW/options/code-review/pair-programming.md +166 -0
  396. package/bundled/locales/zh-TW/options/code-review/pr-review.md +167 -0
  397. package/bundled/locales/zh-TW/options/commit-message/bilingual.md +10 -3
  398. package/bundled/locales/zh-TW/options/documentation/api-docs.md +191 -0
  399. package/bundled/locales/zh-TW/options/documentation/markdown-docs.md +150 -0
  400. package/bundled/locales/zh-TW/options/documentation/wiki-style.md +131 -0
  401. package/bundled/locales/zh-TW/options/project-structure/kotlin.md +144 -0
  402. package/bundled/locales/zh-TW/options/project-structure/php.md +168 -0
  403. package/bundled/locales/zh-TW/options/project-structure/ruby.md +156 -0
  404. package/bundled/locales/zh-TW/options/project-structure/rust.md +136 -0
  405. package/bundled/locales/zh-TW/options/project-structure/swift.md +165 -0
  406. package/bundled/locales/zh-TW/options/testing/contract-testing.md +237 -0
  407. package/bundled/locales/zh-TW/options/testing/industry-pyramid.md +200 -0
  408. package/bundled/locales/zh-TW/options/testing/istqb-framework.md +144 -0
  409. package/bundled/locales/zh-TW/options/testing/performance-testing.md +251 -0
  410. package/bundled/locales/zh-TW/options/testing/security-testing.md +192 -0
  411. package/bundled/locales/zh-TW/skills/README.md +91 -128
  412. package/bundled/locales/zh-TW/skills/ac-coverage/SKILL.md +4 -6
  413. package/bundled/locales/zh-TW/skills/adr-assistant/SKILL.md +1 -1
  414. package/bundled/locales/zh-TW/skills/agents/code-architect.md +263 -0
  415. package/bundled/locales/zh-TW/skills/agents/doc-writer.md +410 -0
  416. package/bundled/locales/zh-TW/skills/agents/reviewer.md +357 -0
  417. package/bundled/locales/zh-TW/skills/agents/spec-analyst.md +410 -0
  418. package/bundled/locales/zh-TW/skills/agents/test-specialist.md +368 -0
  419. package/bundled/locales/zh-TW/skills/ai-collaboration-standards/SKILL.md +2 -2
  420. package/bundled/locales/zh-TW/skills/ai-friendly-architecture/SKILL.md +2 -2
  421. package/bundled/locales/zh-TW/skills/ai-instruction-standards/SKILL.md +1 -1
  422. package/bundled/locales/zh-TW/skills/atdd-assistant/SKILL.md +2 -0
  423. package/bundled/locales/zh-TW/skills/atdd-assistant/acceptance-criteria-guide.md +1 -1
  424. package/bundled/locales/zh-TW/skills/atdd-assistant/atdd-workflow.md +3 -4
  425. package/bundled/locales/zh-TW/skills/audit-assistant/SKILL.md +2 -2
  426. package/bundled/locales/zh-TW/skills/bdd-assistant/SKILL.md +2 -0
  427. package/bundled/locales/zh-TW/skills/bdd-assistant/guide.md +1 -2
  428. package/bundled/locales/zh-TW/skills/brainstorm-assistant/SKILL.md +116 -18
  429. package/bundled/locales/zh-TW/skills/brainstorm-assistant/guide.md +38 -11
  430. package/bundled/locales/zh-TW/skills/checkin-assistant/SKILL.md +3 -1
  431. package/bundled/locales/zh-TW/skills/ci-cd-assistant/SKILL.md +50 -0
  432. package/bundled/locales/zh-TW/skills/code-review-assistant/SKILL.md +7 -5
  433. package/bundled/locales/zh-TW/skills/commands/ac-coverage.md +1 -1
  434. package/bundled/locales/zh-TW/skills/commands/atdd.md +3 -3
  435. package/bundled/locales/zh-TW/skills/commands/bdd.md +2 -2
  436. package/bundled/locales/zh-TW/skills/commands/brainstorm.md +26 -17
  437. package/bundled/locales/zh-TW/skills/commands/{review.md → code-review.md} +5 -5
  438. package/bundled/locales/zh-TW/skills/commands/derive-all.md +1 -1
  439. package/bundled/locales/zh-TW/skills/commands/derive-atdd.md +1 -1
  440. package/bundled/locales/zh-TW/skills/commands/derive-bdd.md +2 -3
  441. package/bundled/locales/zh-TW/skills/commands/derive-tdd.md +1 -1
  442. package/bundled/locales/zh-TW/skills/commands/derive.md +1 -1
  443. package/bundled/locales/zh-TW/skills/commands/dev-workflow.md +2 -2
  444. package/bundled/locales/zh-TW/skills/commands/methodology.md +4 -4
  445. package/bundled/locales/zh-TW/skills/commands/pr.md +1 -1
  446. package/bundled/locales/zh-TW/skills/commands/tdd.md +1 -1
  447. package/bundled/locales/zh-TW/skills/commit-standards/SKILL.md +1 -1
  448. package/bundled/locales/zh-TW/skills/contract-test-assistant/SKILL.md +1 -1
  449. package/bundled/locales/zh-TW/skills/dev-methodology/create-methodology.md +456 -0
  450. package/bundled/locales/zh-TW/skills/dev-methodology/guide.md +5 -5
  451. package/bundled/locales/zh-TW/skills/dev-methodology/runtime.md +296 -0
  452. package/bundled/locales/zh-TW/skills/dev-workflow-guide/SKILL.md +5 -5
  453. package/bundled/locales/zh-TW/skills/docs-generator/SKILL.md +1 -1
  454. package/bundled/locales/zh-TW/skills/e2e-assistant/SKILL.md +1 -1
  455. package/bundled/locales/zh-TW/skills/incident-response-assistant/SKILL.md +2 -2
  456. package/bundled/locales/zh-TW/skills/logging-guide/SKILL.md +52 -27
  457. package/bundled/locales/zh-TW/skills/migration-assistant/SKILL.md +1 -1
  458. package/bundled/locales/zh-TW/skills/pr-automation-assistant/SKILL.md +3 -1
  459. package/bundled/locales/zh-TW/skills/project-discovery/guide.md +2 -2
  460. package/bundled/locales/zh-TW/skills/reverse-engineer/SKILL.md +1 -1
  461. package/bundled/locales/zh-TW/skills/security-assistant/SKILL.md +1 -1
  462. package/bundled/locales/zh-TW/skills/spec-derivation/guide.md +7 -8
  463. package/bundled/locales/zh-TW/skills/spec-driven-dev/SKILL.md +2 -2
  464. package/bundled/locales/zh-TW/skills/sweep/SKILL.md +1 -1
  465. package/bundled/locales/zh-TW/skills/tdd-assistant/SKILL.md +3 -1
  466. package/bundled/locales/zh-TW/skills/testing-guide/SKILL.md +2 -2
  467. package/bundled/locales/zh-TW/skills/testing-guide/testing-theory.md +2298 -0
  468. package/bundled/locales/zh-TW/skills/workflows/README.md +451 -0
  469. package/bundled/skills/README.md +1 -1
  470. package/bundled/skills/ac-coverage/SKILL.md +17 -7
  471. package/bundled/skills/adr-assistant/SKILL.md +1 -1
  472. package/bundled/skills/agents/code-architect.md +1 -1
  473. package/bundled/skills/agents/doc-writer.md +1 -1
  474. package/bundled/skills/agents/reviewer.md +2 -2
  475. package/bundled/skills/agents/spec-analyst.md +1 -1
  476. package/bundled/skills/agents/test-specialist.md +1 -1
  477. package/bundled/skills/ai-collaboration-standards/SKILL.md +2 -2
  478. package/bundled/skills/ai-friendly-architecture/SKILL.md +2 -2
  479. package/bundled/skills/ai-instruction-standards/SKILL.md +1 -1
  480. package/bundled/skills/atdd-assistant/SKILL.md +7 -0
  481. package/bundled/skills/atdd-assistant/acceptance-criteria-guide.md +1 -1
  482. package/bundled/skills/atdd-assistant/atdd-workflow.md +6 -8
  483. package/bundled/skills/audit-assistant/SKILL.md +2 -2
  484. package/bundled/skills/bdd-assistant/SKILL.md +7 -0
  485. package/bundled/skills/bdd-assistant/guide.md +1 -2
  486. package/bundled/skills/brainstorm-assistant/SKILL.md +139 -15
  487. package/bundled/skills/brainstorm-assistant/guide.md +39 -8
  488. package/bundled/skills/checkin-assistant/SKILL.md +8 -1
  489. package/bundled/skills/ci-cd-assistant/SKILL.md +57 -0
  490. package/bundled/skills/code-review-assistant/SKILL.md +15 -8
  491. package/bundled/skills/commands/COMMAND-FAMILY-OVERVIEW.md +2 -2
  492. package/bundled/skills/commands/COMMAND-INDEX.json +3 -3
  493. package/bundled/skills/commands/README.md +2 -2
  494. package/bundled/skills/commands/ac-coverage.md +1 -1
  495. package/bundled/skills/commands/atdd.md +2 -2
  496. package/bundled/skills/commands/bdd.md +2 -2
  497. package/bundled/skills/commands/brainstorm.md +25 -14
  498. package/bundled/skills/commands/{review.md → code-review.md} +6 -6
  499. package/bundled/skills/commands/derive-all.md +1 -1
  500. package/bundled/skills/commands/derive-atdd.md +1 -1
  501. package/bundled/skills/commands/derive-bdd.md +2 -3
  502. package/bundled/skills/commands/derive-tdd.md +1 -1
  503. package/bundled/skills/commands/derive.md +1 -1
  504. package/bundled/skills/commands/dev-workflow.md +1 -1
  505. package/bundled/skills/commands/journey-test.md +45 -0
  506. package/bundled/skills/commands/methodology.md +4 -4
  507. package/bundled/skills/commands/pr.md +1 -1
  508. package/bundled/skills/commands/skill-builder.md +42 -0
  509. package/bundled/skills/commands/tdd.md +1 -1
  510. package/bundled/skills/dev-methodology/create-methodology.md +1 -1
  511. package/bundled/skills/dev-methodology/guide.md +1 -1
  512. package/bundled/skills/dev-methodology/runtime.md +1 -1
  513. package/bundled/skills/dev-workflow-guide/SKILL.md +3 -3
  514. package/bundled/skills/dev-workflow-guide/workflow-phases.md +3 -3
  515. package/bundled/skills/docs-generator/SKILL.md +3 -3
  516. package/bundled/skills/incident-response-assistant/SKILL.md +2 -2
  517. package/bundled/skills/logging-guide/SKILL.md +38 -2
  518. package/bundled/skills/migration-assistant/SKILL.md +226 -0
  519. package/bundled/skills/observability-assistant/SKILL.md +74 -0
  520. package/bundled/skills/pr-automation-assistant/SKILL.md +5 -1
  521. package/bundled/skills/project-discovery/guide.md +2 -2
  522. package/bundled/skills/push/SKILL.md +1 -1
  523. package/bundled/skills/release-standards/SKILL.md +19 -5
  524. package/bundled/skills/security-assistant/SKILL.md +1 -1
  525. package/bundled/skills/skill-builder/SKILL.md +1 -1
  526. package/bundled/skills/spec-derivation/guide.md +3 -4
  527. package/bundled/skills/spec-driven-dev/SKILL.md +13 -2
  528. package/bundled/skills/sweep/SKILL.md +1 -1
  529. package/bundled/skills/tdd-assistant/SKILL.md +8 -1
  530. package/bundled/skills/testing-guide/SKILL.md +1 -1
  531. package/bundled/skills/testing-guide/testing-theory.md +1 -1
  532. package/bundled/skills/workflows/README.md +2 -2
  533. package/package.json +4 -4
  534. package/src/commands/audit.js +30 -9
  535. package/src/commands/config.js +33 -2
  536. package/src/commands/hitl.js +14 -1
  537. package/src/commands/init.js +168 -75
  538. package/src/commands/quickstart.js +1 -2
  539. package/src/commands/release.js +51 -6
  540. package/src/commands/run-intent.js +9 -0
  541. package/src/commands/spec-split.js +27 -2
  542. package/src/commands/update.js +22 -6
  543. package/src/config/ai-agent-paths.js +3 -1
  544. package/src/i18n/messages.js +3 -102
  545. package/src/missions/MissionManager.js +44 -12
  546. package/src/utils/build-manifest.js +35 -3
  547. package/src/utils/friction-detector.js +71 -22
  548. package/src/utils/health-checker.js +29 -2
  549. package/src/utils/transaction.js +111 -0
  550. package/src/utils/version-promote.js +16 -0
  551. package/standards-registry.json +61 -149
  552. package/bundled/ai/standards/agent-communication-protocol.ai.yaml +0 -42
  553. package/bundled/ai/standards/agent-dispatch.ai.yaml +0 -42
  554. package/bundled/ai/standards/branch-completion.ai.yaml +0 -44
  555. package/bundled/ai/standards/change-batching-standards.ai.yaml +0 -44
  556. package/bundled/ai/standards/execution-history.ai.yaml +0 -42
  557. package/bundled/ai/standards/pipeline-integration-standards.ai.yaml +0 -42
  558. package/bundled/ai/standards/workflow-enforcement.ai.yaml +0 -44
  559. package/bundled/ai/standards/workflow-state-protocol.ai.yaml +0 -43
  560. package/src/commands/flow.js +0 -260
  561. package/src/commands/start.js +0 -372
  562. package/src/commands/sweep.js +0 -151
  563. package/src/commands/workflow.js +0 -681
@@ -0,0 +1,120 @@
1
+ ---
2
+ source: ../../../core/rollback-standards.md
3
+ source_version: 1.0.0
4
+ translation_version: 1.0.0
5
+ last_synced: 2026-06-10
6
+ source_hash: c3ace87126ca
7
+ status: current
8
+ ---
9
+
10
+ # Rollback Standards(回滾標準)
11
+
12
+ > **語言**: [English](../../../core/rollback-standards.md) | 繁體中文
13
+
14
+ ---
15
+
16
+ ## 概述
17
+
18
+ 本標準定義回滾觸發條件矩陣、自動 vs 手動回滾決策流程,以及與錯誤預算的整合方式。確保每一次部署都有明確、可量化的回滾策略,而非依賴主觀判斷。
19
+
20
+ ---
21
+
22
+ ## 核心原則
23
+
24
+ - **可量化觸發條件**:回滾觸發必須有明確的數值門檻,絕不使用「看起來有問題」等主觀描述
25
+ - **三層決策模型**:自動回滾(Auto)→ 輔助回滾(Assisted)→ 手動回滾(Manual)
26
+ - **錯誤預算整合**:當錯誤預算低於 10% 時,自動將輔助回滾升級為自動回滾
27
+ - **強制事件記錄**:每次回滾都必須寫入部署日誌並觸發事故回應流程
28
+
29
+ ---
30
+
31
+ ## 觸發條件矩陣
32
+
33
+ ### 自動回滾(Auto-Rollback)
34
+
35
+ 系統自動執行,無需人工干預:
36
+
37
+ | 指標 | 觸發門檻 |
38
+ |------|---------|
39
+ | 錯誤率 | > 2× 基線,持續 5 分鐘 |
40
+ | 健康檢查失敗 | 連續 3 次 |
41
+ | P99 延遲 | > 5× 基線,持續 3 分鐘 |
42
+
43
+ ### 輔助回滾(Assisted-Rollback)
44
+
45
+ 系統發出警報,由值班工程師確認後執行:
46
+
47
+ | 條件 | 說明 |
48
+ |------|------|
49
+ | SLO 違反 | 非關鍵路徑的 SLO 違反 |
50
+ | 錯誤預算剩餘 | < 10%(此時升級為自動回滾) |
51
+
52
+ ### 手動回滾(Manual-Rollback)
53
+
54
+ 由開發者評估後決定是否執行:
55
+
56
+ | 條件 | 說明 |
57
+ |------|------|
58
+ | 延遲惡化 | 仍在 SLO 範圍內的效能下降 |
59
+ | 外觀問題 | 使用者可見但不影響功能的問題 |
60
+
61
+ ---
62
+
63
+ ## 嚴重性矩陣
64
+
65
+ | 等級 | 觸發方式 | 處理時限 | 通知對象 |
66
+ |------|---------|---------|---------|
67
+ | P0 | 自動 | < 2 分鐘 | 全體相關人員 |
68
+ | P1 | 自動 | < 5 分鐘 | 值班工程師 |
69
+ | P2 | 輔助 | < 15 分鐘 | 團隊主管 |
70
+ | P3 | 手動 | < 1 小時 | 開發者 |
71
+
72
+ ---
73
+
74
+ ## 錯誤預算整合
75
+
76
+ 當錯誤預算剩餘 < 10% 時:
77
+
78
+ 1. 輔助回滾自動升級為自動回滾
79
+ 2. 觸發事故事件記錄
80
+ 3. 暫停後續部署,直到預算恢復
81
+
82
+ ---
83
+
84
+ ## 回滾方法比較
85
+
86
+ | 方法 | 執行時間 | 風險 | 前置條件 |
87
+ |------|---------|------|---------|
88
+ | Blue-Green 切換 | < 30 秒 | 低 | 雙環境基礎設施 |
89
+ | Feature Flag 關閉 | < 5 秒 | 極低 | Feature Flag 系統 |
90
+ | DNS 切換 | 60-120 秒 | 中 | 多區域設定 |
91
+ | 程式碼 Revert | 數分鐘 | 中 | 乾淨的 git 歷史 |
92
+ | 資料庫還原 | 數小時 | 高 | 已驗證的備份 |
93
+
94
+ ---
95
+
96
+ ## 回滾前後檢查清單
97
+
98
+ ### 回滾前(Pre-Rollback)
99
+
100
+ - [ ] 確認回滾目標版本是健康的
101
+ - [ ] 確認資料庫遷移向後相容
102
+ - [ ] 通知相關利害關係人
103
+
104
+ ### 回滾後(Post-Rollback)
105
+
106
+ - [ ] 確認健康檢查在目標版本通過
107
+ - [ ] 將回滾事件寫入部署日誌
108
+ - [ ] 開立事故單進行根因分析
109
+ - [ ] 更新錯誤預算追蹤
110
+
111
+ ---
112
+
113
+ ## 相關標準
114
+
115
+ - [deployment-standards.md](../../../core/deployment-standards.md) — 部署基礎策略
116
+ - [cd-deployment-strategies.md](../../../core/cd-deployment-strategies.md) — 部署策略選用矩陣
117
+ - AI 格式:[../ai/standards/rollback-standards.ai.yaml](../../../ai/standards/rollback-standards.ai.yaml)
118
+
119
+
120
+ **Scope**: universal
@@ -0,0 +1,110 @@
1
+ ---
2
+ source: ../../../core/runbook.md
3
+ source_version: 1.0.0
4
+ translation_version: 1.0.0
5
+ last_synced: 2026-06-17
6
+ source_hash: 443fb8c4e692
7
+ status: current
8
+ ---
9
+
10
+ # Runbook 撰寫標準
11
+
12
+ > **Language**: [English](../../../core/runbook.md) | 繁體中文
13
+
14
+ > **版本**: 1.0.0 | **狀態**: Active | **更新日期**: 2026-06-17
15
+ > **AI 最佳化版本**: `ai/standards/runbook.ai.yaml`
16
+ > **規格**: XSPEC-063(cross-project/specs/XSPEC-063-uds-sre-standards-pack.md)
17
+
18
+ ## 概觀
19
+
20
+ 本標準定義運維 **runbook** 如何撰寫、組織、維護與測試。涵蓋必備章節、撰寫原則
21
+ (可重現、無歧義的步驟)、目錄結構、檢視節奏,以及演練頻率。撰寫良好的 runbook
22
+ 能讓任何 on-call 工程師無需 tribal knowledge 即可執行復原步驟,藉此降低 Mean Time
23
+ To Repair(MTTR)。
24
+
25
+ 本標準屬於 **SRE/運維標準包**(XSPEC-063),是與 `incident-response`(runbook 於
26
+ mitigate 階段執行)與 `slo-sli`(error budget 政策由 runbook 連結)並列的可執行
27
+ 復原成員。它補充既有的 `runbook-standards` Skill 錨點;UDS 的獨特貢獻在於可由
28
+ VibeOps Governance Agent(DEC-042)直接執行的 AI 可執行 runbook schema。
29
+
30
+ > **範圍**:本標準定義「runbook 必須包含什麼,以及如何組織、檢視與演練」。runbook
31
+ > 託管工具(wiki、Git repo、PagerDuty)與自動化引擎屬採用者的選擇,不在本標準
32
+ > 範圍內。
33
+
34
+ ## 需求
35
+
36
+ | ID | 規則 | 等級 |
37
+ |----|------|------|
38
+ | REQ-001 | 必備 runbook 章節(overview → post-actions) | MUST |
39
+ | REQ-002 | 可重現且無歧義的步驟(可複製貼上 + 驗證) | MUST |
40
+ | REQ-003 | Runbook 命名與目錄組織(typed dir、kebab-case) | MUST |
41
+ | REQ-004 | 檢視與演練節奏(依類型) | MUST |
42
+ | REQ-005 | Rollback 與 fallback 步驟(標示清楚、置於升級前) | MUST |
43
+ | REQ-006 | 告警整合 metadata(alert 名稱、dashboard、query) | SHOULD |
44
+
45
+ ### REQ-001 — 必備 Runbook 章節
46
+
47
+ 每個 runbook MUST 依序包含下列章節:(1) **Overview**——alert 名稱、severity、
48
+ 受影響服務、owner、最後更新、最後演練日期;(2) **Symptoms**——可觀察的指標;
49
+ (3) **Impact Assessment**——面向使用者的影響與 blast radius;(4) **Diagnostic
50
+ Steps**——附可複製貼上指令的有序步驟;(5) **Fix Steps**——每步皆附驗證的有序
51
+ 修復;(6) **Escalation**——附角色與可用時段的具體聯絡人;(7) **Post-Actions**——
52
+ 後續任務、ticket、postmortem 觸發。
53
+
54
+ ### REQ-002 — 可重現且無歧義的步驟
55
+
56
+ runbook 中的每個步驟 MUST 可重現且無歧義。步驟 MUST 使用可複製貼上的指令,且不
57
+ 留下任何未定義的 placeholder。決策點 MUST 包含明確的分支條件(if X then Y, else
58
+ Z)。每個 fix 步驟 MUST 包含一個驗證指令,確認修復生效後才繼續,且 MUST 顯示預期
59
+ 輸出。
60
+
61
+ ### REQ-003 — Runbook 命名與目錄組織
62
+
63
+ Runbook MUST 使用描述「問題」而非「解法」的 kebab-case 名稱。檔案 MUST 組織進
64
+ typed 目錄:`alerts/` 放 alert-response runbook、`operations/` 放標準運維、
65
+ `emergency/` 放重大事件程序、`troubleshooting/` 放一般調查指南。每個 runbook 檔
66
+ MUST 在 front matter 宣告其類型。
67
+
68
+ ### REQ-004 — 檢視與演練節奏
69
+
70
+ Runbook MUST 依類型按排程檢視:alert-response runbook 每季、emergency 程序每月、
71
+ 標準運維與 troubleshooting 指南每半年、change 程序在每次使用後。Runbook MUST 演練:
72
+ P1 runbook 每月、P2 每季、emergency 程序每季。演練紀錄 MUST 附加於 runbook 或由其
73
+ 連結。
74
+
75
+ ### REQ-005 — Rollback 與 Fallback 步驟
76
+
77
+ 任何描述變更或修復的 runbook MUST 包含一個標示清楚的 rollback 章節,說明若修復失敗
78
+ 或造成額外問題時如何復原變更。Rollback 章節 MUST 出現在 escalation 章節之前,並
79
+ 包含其自身的驗證步驟。
80
+
81
+ ### REQ-006 — 告警整合 Metadata
82
+
83
+ Alert-response runbook SHOULD 包含一個 metadata 區塊,將 runbook 連結至特定 alert
84
+ 規則。這讓告警工具(PagerDuty、Alertmanager)能自動連結 runbook。Metadata MUST
85
+ 包含 alert 名稱、dashboard URL,以及用於調查的 Prometheus/logging query。
86
+
87
+ ## 與既有標準的整合
88
+
89
+ - **`runbook-standards`**——既有的 Skill 錨點標準;`runbook` 提供其背後的 AI 可
90
+ 執行 schema 與章節/演練要求。
91
+ - **`incident-response`**——runbook 於事件 mitigate 階段執行;SEV runbook 依此處
92
+ 節奏演練。
93
+ - **`slo-sli`**——error budget 政策 MUST 由服務 runbook 連結。
94
+ - **`rollback-standards`**——REQ-005 rollback 步驟與 rollback 標準的復原程序對齊。
95
+ - **`alerting-standards`**——REQ-006 metadata 將 alert 規則連結至其 runbook。
96
+ - **`execution-history`**——當 runbook 標記 `automation_level: automated` 時,
97
+ Governance Agent 的執行結果記錄為 execution history。
98
+
99
+ ## 相關規格
100
+
101
+ - XSPEC-063 — UDS SRE/運維標準包(本標準來源)
102
+ - XSPEC-251 — Operator 主動可靠性(runbook 責任)
103
+ - DEC-042 — Guardian / Governance Agent 模式(agent 執行 `automated` runbook)
104
+ - DEC-041 — EU AI Act 2026 合規(可稽核的復原程序)
105
+
106
+ ## 變更紀錄
107
+
108
+ | 版本 | 日期 | 變更 |
109
+ |------|------|------|
110
+ | v1.0.0 | 2026-06-17 | 初版——REQ-001~006:必備章節、可重現步驟、命名/組織、檢視/演練節奏、rollback/fallback、告警整合 metadata(XSPEC-063) |
@@ -0,0 +1,309 @@
1
+ ---
2
+ source: ../../../core/sast-advanced.md
3
+ source_version: 1.0.0
4
+ translation_version: 1.0.0
5
+ last_synced: 2026-06-10
6
+ source_hash: aa3d9f9ad760
7
+ status: current
8
+ ---
9
+
10
+ # 進階 SAST 標準
11
+
12
+ > **語言**: [English](../../../core/sast-advanced.md) | 繁體中文
13
+
14
+ **版本**: 1.0.0
15
+ **最後更新**: 2026-05-05
16
+ **適用範圍**: TypeScript / JavaScript 專案
17
+ **Scope**: universal
18
+ **參考資料**: [CodeQL 文件](https://codeql.github.com/)、[gitleaks](https://github.com/gitleaks/gitleaks)、[Biome linter](https://biomejs.dev/)
19
+
20
+ ---
21
+
22
+ ## 目的
23
+
24
+ 本標準定義進階靜態應用程式安全測試(SAST)實踐,作為依賴項稽核(`npm audit`)的補充。涵蓋三個獨立但互補的層次:
25
+
26
+ 1. **CodeQL 語意分析** — 找出第一方程式碼中的注入漏洞
27
+ 2. **Secret 掃描** — 防止提交 API 金鑰與憑證
28
+ 3. **Biome 安全 lint 規則** — 在編輯器和 CI 層面強制執行安全的程式碼模式
29
+
30
+ ---
31
+
32
+ ## 為什麼 npm audit 不夠用
33
+
34
+ `npm audit` 會對照 NPM 諮詢資料庫掃描你的 `package-lock.json`,它只能找出**第三方依賴中已知的 CVE**。
35
+
36
+ 它**無法**找出:
37
+
38
+ | 漏洞類型 | 範例 | 偵測方法 |
39
+ |---|---|---|
40
+ | **命令注入** | `exec(\`git log ${userInput}\`)` | CodeQL 資料流分析 |
41
+ | **路徑穿越** | `fs.readFile(path.join(base, req.params.file))` | CodeQL 資料流分析 |
42
+ | **原型污染** | `target[req.body.key] = req.body.value` | CodeQL 污點分析 |
43
+ | **XSS(透過 DOM sink)** | `element.innerHTML = userContent` | CodeQL 資料流分析 |
44
+ | **SQL 注入** | `db.query("SELECT * FROM users WHERE id = " + id)` | CodeQL 資料流分析 |
45
+ | **硬編碼 secret** | `const apiKey = "sk-live-abc123..."` | gitleaks 模式比對 |
46
+
47
+ ---
48
+
49
+ ## 第一層:CodeQL 語意分析
50
+
51
+ ### CodeQL 的作用
52
+
53
+ CodeQL 會建構你的 TypeScript 程式碼的語意模型,然後執行查詢,追蹤從**來源**(使用者輸入、請求參數、環境變數)到**接收點**(命令執行、檔案系統存取、DOM 操作)的資料流。
54
+
55
+ ### GitHub Actions 工作流程
56
+
57
+ 建立 `.github/workflows/codeql.yml`:
58
+
59
+ ```yaml
60
+ # SPDX-License-Identifier: MIT
61
+ name: CodeQL Analysis
62
+
63
+ on:
64
+ push:
65
+ branches: [main]
66
+ pull_request:
67
+ branches: [main]
68
+ schedule:
69
+ - cron: '0 2 * * 1' # 每週一 02:00 UTC
70
+
71
+ jobs:
72
+ analyze:
73
+ name: Analyze TypeScript
74
+ runs-on: ubuntu-latest
75
+ permissions:
76
+ actions: read
77
+ contents: read
78
+ security-events: write
79
+
80
+ steps:
81
+ - name: Checkout repository
82
+ uses: actions/checkout@v4
83
+
84
+ - name: Initialize CodeQL
85
+ uses: github/codeql-action/init@v3
86
+ with:
87
+ languages: javascript-typescript
88
+ queries: security-extended
89
+ query-filters: |
90
+ - include:
91
+ tags contain: security
92
+
93
+ - name: Autobuild
94
+ uses: github/codeql-action/autobuild@v3
95
+
96
+ - name: Perform CodeQL Analysis
97
+ uses: github/codeql-action/analyze@v3
98
+ with:
99
+ category: "/language:javascript-typescript"
100
+ ```
101
+
102
+ ### 關鍵設定選項
103
+
104
+ | 選項 | 值 | 原因 |
105
+ |---|---|---|
106
+ | `languages` | `javascript-typescript` | 涵蓋 `.ts` 與 `.js` 檔案 |
107
+ | `queries` | `security-extended` | 包含預設集中未涵蓋的注入/XSS/路徑穿越查詢 |
108
+ | `schedule` | `0 2 * * 1` | 每週抓取 GitHub 發布的新查詢包 |
109
+ | `security-events: write` | 必填 | 將 SARIF 結果上傳至 GitHub Security 分頁 |
110
+
111
+ ### 分支保護設定
112
+
113
+ 新增工作流程後,設定分支保護規則:
114
+
115
+ 1. Settings → Branches → Branch protection rules → Edit main
116
+ 2. 啟用「Require status checks to pass before merging」
117
+ 3. 將 `CodeQL` 與 `sast` 加入必要檢查項目
118
+
119
+ ---
120
+
121
+ ## 第二層:使用 gitleaks 掃描 Secret
122
+
123
+ ### gitleaks 能偵測什麼
124
+
125
+ gitleaks 使用模式比對與熵分析來偵測:
126
+ - AWS 存取金鑰(`AKIA[0-9A-Z]{16}`)
127
+ - GitHub token(`ghp_`、`gho_`、`ghs_`、`ghr_`)
128
+ - 私鑰 PEM 區塊(`-----BEGIN RSA PRIVATE KEY-----`)
129
+ - 符合憑證模式的高熵字串
130
+ - 定義於 `.gitleaks.toml` 的自訂模式
131
+
132
+ ### CI 整合
133
+
134
+ 在你的 CI 工作流程中加入 `sast` 工作:
135
+
136
+ ```yaml
137
+ sast:
138
+ name: Secret Scanning
139
+ runs-on: ubuntu-latest
140
+ steps:
141
+ - uses: actions/checkout@v4
142
+ with:
143
+ fetch-depth: 0 # 完整歷史以確保準確掃描
144
+ - name: Run gitleaks
145
+ uses: gitleaks/gitleaks-action@v2
146
+ env:
147
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
148
+ ```
149
+
150
+ ### `.gitleaks.toml` 設定範例
151
+
152
+ ```toml
153
+ title = "Gitleaks Configuration (example)"
154
+ version = "8"
155
+
156
+ [extend]
157
+ # 從 gitleaks 基礎設定繼承預設規則
158
+ useDefault = true
159
+
160
+ [[rules]]
161
+ id = "app-license-key"
162
+ description = "App license key"
163
+ regex = '''app[_\-]?license[_\-]?key\s*[:=]\s*["']?([A-Za-z0-9\-]{32,})["']?'''
164
+ severity = "CRITICAL"
165
+ tags = ["license", "app"]
166
+
167
+ [[allowlist.commits]]
168
+ # 範例:允許已修復的特定 commit hash
169
+ # commits = ["abc1234"]
170
+
171
+ [[allowlist.regexes]]
172
+ # 將測試 fixture 值加入白名單
173
+ description = "Test fixture placeholder keys"
174
+ regex = '''PLACEHOLDER_KEY_FOR_TESTING'''
175
+ ```
176
+
177
+ ### 處理誤報(False Positives)
178
+
179
+ 當 gitleaks 標記誤報時:
180
+
181
+ 1. 找出觸發比對的確切模式
182
+ 2. 在 `.gitleaks.toml` 中加入有針對性的 `allowlist.regexes` 條目,並附上說明
183
+ 3. 在被標記的值旁邊加上程式碼註解,記錄允許原因
184
+ 4. 每季審查所有白名單條目
185
+
186
+ ---
187
+
188
+ ## 第三層:Biome 安全規則
189
+
190
+ ### 為什麼選擇 Biome 而不是 ESLint
191
+
192
+ 採用 Biome 作為 linter 的專案,無需額外安裝 ESLint 套件,即可獲得內建的安全相關規則。Biome 中的關鍵安全規則:
193
+
194
+ | 規則 | 類別 | 防止的問題 |
195
+ |---|---|---|
196
+ | `suspicious/noGlobalEval` | suspicious | 透過 `eval()` 動態執行程式碼 |
197
+ | `suspicious/noWith` | suspicious | 透過 `with` 陳述式污染作用域 |
198
+ | `suspicious/noConsoleLog` | suspicious | 透過 `console.log` 意外記錄 secret |
199
+ | `correctness/noUnusedVariables` | correctness | 可能包含敏感邏輯的廢棄程式碼 |
200
+ | `security/noBlankTarget` | security | 未加 `rel="noopener"` 的 `target="_blank"` 分頁劫持 |
201
+
202
+ ### `biome.json` 設定
203
+
204
+ ```json
205
+ {
206
+ "$schema": "https://biomejs.dev/schemas/1.9.0/schema.json",
207
+ "linter": {
208
+ "enabled": true,
209
+ "rules": {
210
+ "recommended": true,
211
+ "suspicious": {
212
+ "noGlobalEval": "error",
213
+ "noWith": "error"
214
+ },
215
+ "security": {
216
+ "noBlankTarget": "error"
217
+ }
218
+ }
219
+ }
220
+ }
221
+ ```
222
+
223
+ ### CI 整合
224
+
225
+ ```yaml
226
+ - name: Lint (Biome)
227
+ run: npm run lint # 對應:biome check .
228
+ ```
229
+
230
+ `biome check .` 指令會同時執行格式檢查與 linter 規則。安全規則失敗會產生非零退出碼,阻擋 CI 流程。
231
+
232
+ ---
233
+
234
+ ## 品質閘門門檻
235
+
236
+ | 嚴重性 | 合併政策 | 修復 SLA |
237
+ |---|---|---|
238
+ | **CRITICAL** | 阻擋合併,無例外 | 立即處理 |
239
+ | **HIGH** | 阻擋合併,main 分支 HIGH 為零 | 立即處理 |
240
+ | **MEDIUM** | 不阻擋;建立追蹤 issue | 30 天 |
241
+ | **LOW** | 不阻擋;記錄以供查閱 | 選擇性 |
242
+
243
+ ### 設定 GitHub Code Scanning 阻擋政策
244
+
245
+ 在儲存庫安全性設定中:
246
+ 1. Security → Code scanning → Protection rules
247
+ 2. 將「Security severity level」設定為「High or higher」
248
+ 3. 這會在 CodeQL 回報任何 HIGH 或 CRITICAL 問題時阻擋 PR 合併
249
+
250
+ ---
251
+
252
+ ## npm test 整合
253
+
254
+ 在 `package.json` 中加入 `test:sast` 腳本作為開發者入口:
255
+
256
+ ```json
257
+ {
258
+ "scripts": {
259
+ "test:sast": "npm audit --audit-level=high"
260
+ }
261
+ }
262
+ ```
263
+
264
+ 這允許透過 `npm run test:sast` 執行本地推送前檢查。注意:此指令只涵蓋依賴項漏洞;完整的 SAST 管線在 CI 中執行。
265
+
266
+ ---
267
+
268
+ ## 總結:縱深防禦安全掃描
269
+
270
+ ```
271
+ Commit → pre-push hook (npm audit)
272
+
273
+ └─→ CI: sast job (gitleaks secret scan)
274
+
275
+ └─→ CI: check job (biome lint — security rules)
276
+
277
+ └─→ CI: codeql.yml (semantic analysis — injection/XSS/traversal)
278
+
279
+ └─→ GitHub Code Scanning (SARIF results — blocks PR on HIGH+)
280
+ ```
281
+
282
+ 沒有任何單一掃描器能抓到所有問題。這種分層方式提供:
283
+ - **依賴項漏洞**:npm audit(快速,每次推送)
284
+ - **提交的 secret**:gitleaks(每次推送,完整歷史)
285
+ - **程式碼品質/安全**:Biome 規則(每次提交,編輯器即時回饋)
286
+ - **第一方漏洞**:CodeQL(深度分析,PR 及每週)
287
+
288
+ ---
289
+
290
+ ## 相關標準
291
+
292
+ - [安全標準](../../../core/security-standards.md)
293
+ - [Secret 管理標準](../../../core/secret-management-standards.md)
294
+ - [Check-in 標準](../../../core/checkin-standards.md)
295
+ - [容器安全](../../../core/container-security.md)
296
+
297
+ ---
298
+
299
+ ## 版本歷史
300
+
301
+ | 版本 | 日期 | 變更內容 |
302
+ |---|---|---|
303
+ | 1.0.0 | 2026-05-05 | 初始發布(XSPEC-161) |
304
+
305
+ ---
306
+
307
+ ## 授權
308
+
309
+ 本標準以 [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/) 授權釋出。
@@ -0,0 +1,98 @@
1
+ ---
2
+ source: ../../../core/schema-evolution.md
3
+ source_version: 1.0.0
4
+ translation_version: 1.0.0
5
+ last_synced: 2026-06-17
6
+ source_hash: 0e8f6242bf38
7
+ status: current
8
+ ---
9
+
10
+ # Schema 演進標準
11
+
12
+ > **Language**: [English](../../../core/schema-evolution.md) | 繁體中文
13
+
14
+ > **版本**: 1.0.0 | **狀態**: Active | **更新日期**: 2026-06-17
15
+ > **AI 最佳化版本**: `ai/standards/schema-evolution.ai.yaml`
16
+ > **規格**: XSPEC-068(cross-project/specs/XSPEC-068-uds-data-engineering-pack.md)
17
+
18
+ ## 概觀
19
+
20
+ 本標準定義資料庫與資料儲存的 schema 如何**安全演進**而不破壞既有消費者。涵蓋向後
21
+ 相容變更樣態、禁止的破壞性變更、expand-contract 遷移策略、schema 版本化與 registry、
22
+ CI 中的自動相容性檢查,以及回滾程序。適用於關聯式資料庫、文件儲存、事件 schema
23
+ (Avro/Protobuf)與 API request/response schema。
24
+
25
+ 本標準屬於**資料工程標準包**(XSPEC-068),以安全演進規則延伸 `database-standards`
26
+ 的靜態 schema 定義。
27
+
28
+ > **範圍**:本標準定義*相容性分類*、*expand-contract* 部署紀律與 CI 閘控。具體遷移
29
+ > 工具(Flyway/Liquibase)與 schema registry(Confluent)屬採用者的選擇。
30
+
31
+ ## 需求
32
+
33
+ | ID | 規則 | 等級 |
34
+ |----|------|------|
35
+ | REQ-001 | 向後相容變更樣態 | MUST |
36
+ | REQ-002 | 無遷移計劃禁止破壞性變更 | MUST |
37
+ | REQ-003 | Expand-contract 遷移策略 | MUST |
38
+ | REQ-004 | Schema 版本化與 registry | MUST |
39
+ | REQ-005 | CI 中的自動 schema 相容性檢查 | MUST |
40
+ | REQ-006 | Schema 變更回滾程序 | MUST |
41
+
42
+ ### REQ-001 — 向後相容變更樣態
43
+
44
+ 所有 schema 變更 MUST 向後相容,除非遵循正式的破壞性變更流程。向後相容變更包含:
45
+ 新增帶預設值的可空欄位、新增表/collection、新增可選訊息欄位、新增 enum 值(含
46
+ 未知處理)、放寬資料型別(INT → BIGINT),以及新增索引。這些變更 MUST 可在不協調
47
+ 消費者更新的情況下部署。
48
+
49
+ ### REQ-002 — 無遷移計劃禁止破壞性變更
50
+
51
+ 下列分類為 **BREAKING**,未經正式 expand-contract 遷移計劃與消費者協調 MUST NOT
52
+ 部署:重新命名或刪除欄位、不相容地變更資料型別、對既有欄位加上無預設值的 NOT
53
+ NULL、變更主鍵/外鍵定義、移除 enum 值,以及變更欄位語意(將欄位挪作他用)。
54
+
55
+ ### REQ-003 — Expand-Contract 遷移策略
56
+
57
+ 破壞性變更 MUST 使用 **expand-contract**(平行變更)樣態:**Phase 1(Expand)**在舊
58
+ 結構旁新增新結構;**Phase 2(Migrate)**將舊資料回填至新結構並更新所有 writer;
59
+ **Phase 3(Contract)**將所有 reader 更新至新結構;**Phase 4(Cleanup)**在所有
60
+ 消費者更新後移除舊結構。每階段 MUST 為獨立且經驗證的部署。階段間最短等待:一個
61
+ 完整部署週期。
62
+
63
+ ### REQ-004 — Schema 版本化與 Registry
64
+
65
+ 事件驅動與 API schema(Avro、Protobuf、JSON Schema)MUST 以明確版號註冊於 schema
66
+ registry,並遵循語意版本:PATCH 用於向後相容新增、MINOR 用於新可選欄位、MAJOR 用於
67
+ 破壞性變更。每次 schema 變更 MUST 在註冊前審查核准。消費者 MUST 指定其消費的 schema
68
+ 版本。
69
+
70
+ ### REQ-005 — CI 中的自動 Schema 相容性檢查
71
+
72
+ 每個修改 schema 定義的 PR MUST 在 CI 觸發自動相容性檢查。對關聯式 schema,遷移腳本
73
+ MUST 在 CI 對 production-snapshot 資料庫執行以在合併前偵測錯誤。對事件 schema,
74
+ MUST 針對所有已註冊消費者版本檢查相容性。相容性失敗 MUST 阻擋 PR 合併。
75
+
76
+ ### REQ-006 — Schema 變更回滾程序
77
+
78
+ 每個遷移腳本 MUST 具備對應的回滾(down)腳本。回滾腳本 MUST 在 CI 與正向遷移一同
79
+ 測試。對破壞性變更(drop、型別變更),MUST 在執行前進行並驗證資料備份。回滾計劃
80
+ MUST 記載於遷移 PR 並在部署 runbook 中引用。
81
+
82
+ ## 與既有標準的整合
83
+
84
+ - **`database-standards`**——本標準在靜態 schema 定義之上加入*演進*紀律。
85
+ - **`data-contract`**——MAJOR schema 版本對映 contract 破壞性變更治理與消費者簽核。
86
+ - **`data-pipeline`**——管線須依 REQ-001 容忍來源的向後相容變更。
87
+ - **`deployment-standards`**——expand-contract 各階段為獨立部署;回滾計劃置於部署
88
+ runbook。
89
+
90
+ ## 相關規格
91
+
92
+ - XSPEC-068 — UDS 資料工程標準包(本標準來源)
93
+
94
+ ## 變更紀錄
95
+
96
+ | 版本 | 日期 | 變更 |
97
+ |------|------|------|
98
+ | v1.0.0 | 2026-06-17 | 初版——REQ-001~006:向後相容樣態、禁止破壞性變更、expand-contract、版本化/registry、CI 相容性檢查、回滾(XSPEC-068) |