universal-dev-standards 5.16.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 (540) 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/spec-driven-development.md +21 -3
  95. package/bundled/core/tech-debt-standards.md +1 -1
  96. package/bundled/core/test-data-standards.md +2 -2
  97. package/bundled/core/user-journey-testing.md +102 -0
  98. package/bundled/core/user-story-mapping.md +96 -0
  99. package/bundled/core/verification-oracle.md +167 -0
  100. package/bundled/core/versioning.md +133 -109
  101. package/bundled/locales/COVERAGE.md +84 -73
  102. package/bundled/locales/zh-CN/CHANGELOG.md +81 -6
  103. package/bundled/locales/zh-CN/CLAUDE.md +1 -1
  104. package/bundled/locales/zh-CN/README.md +22 -9
  105. package/bundled/locales/zh-CN/SECURITY.md +1 -1
  106. package/bundled/locales/zh-CN/adoption/DAILY-WORKFLOW-GUIDE.md +2 -2
  107. package/bundled/locales/zh-CN/core/acceptance-criteria-traceability.md +4 -6
  108. package/bundled/locales/zh-CN/core/accessibility-standards.md +1 -1
  109. package/bundled/locales/zh-CN/core/adversarial-test.md +226 -0
  110. package/bundled/locales/zh-CN/core/agent-behavior-discipline.md +187 -0
  111. package/bundled/locales/zh-CN/core/ai-response-navigation.md +32 -6
  112. package/bundled/locales/zh-CN/core/anti-sycophancy-prompting.md +1 -1
  113. package/bundled/locales/zh-CN/core/api-design-standards.md +1 -1
  114. package/bundled/locales/zh-CN/core/behavior-snapshot.md +335 -0
  115. package/bundled/locales/zh-CN/core/browser-compatibility-standards.md +229 -0
  116. package/bundled/locales/zh-CN/core/cd-deployment-strategies.md +135 -0
  117. package/bundled/locales/zh-CN/core/chaos-injection-tests.md +130 -0
  118. package/bundled/locales/zh-CN/core/checkin-standards.md +1 -1
  119. package/bundled/locales/zh-CN/core/code-review-checklist.md +1 -1
  120. package/bundled/locales/zh-CN/core/container-security.md +535 -0
  121. package/bundled/locales/zh-CN/core/context-aware-loading.md +1 -1
  122. package/bundled/locales/zh-CN/core/contract-testing-standards.md +191 -0
  123. package/bundled/locales/zh-CN/core/cost-budget-test.md +86 -0
  124. package/bundled/locales/zh-CN/core/cross-flow-regression.md +199 -0
  125. package/bundled/locales/zh-CN/core/data-migration-testing.md +217 -0
  126. package/bundled/locales/zh-CN/core/deployment-standards.md +328 -9
  127. package/bundled/locales/zh-CN/core/deprecation-standards.md +1 -1
  128. package/bundled/locales/zh-CN/core/developer-memory.md +2 -2
  129. package/bundled/locales/zh-CN/core/disaster-recovery-drill.md +87 -0
  130. package/bundled/locales/zh-CN/core/documentation-structure.md +1 -1
  131. package/bundled/locales/zh-CN/core/documentation-writing-standards.md +1 -1
  132. package/bundled/locales/zh-CN/core/error-code-standards.md +2 -2
  133. package/bundled/locales/zh-CN/core/feature-manifest-standard.md +222 -0
  134. package/bundled/locales/zh-CN/core/flaky-test-management.md +87 -0
  135. package/bundled/locales/zh-CN/core/flow-based-testing.md +284 -0
  136. package/bundled/locales/zh-CN/core/forward-derivation-standards.md +3 -4
  137. package/bundled/locales/zh-CN/core/full-coverage-testing.md +197 -0
  138. package/bundled/locales/zh-CN/core/git-worktree.md +1 -1
  139. package/bundled/locales/zh-CN/core/governance-layer.md +160 -0
  140. package/bundled/locales/zh-CN/core/guides/performance-guide.md +515 -0
  141. package/bundled/locales/zh-CN/core/guides/security-guide.md +494 -0
  142. package/bundled/locales/zh-CN/core/knowledge-graph-memory.md +128 -0
  143. package/bundled/locales/zh-CN/core/license-compliance.md +129 -0
  144. package/bundled/locales/zh-CN/core/llm-output-validation.md +192 -0
  145. package/bundled/locales/zh-CN/core/logging-standards.md +130 -8
  146. package/bundled/locales/zh-CN/core/mock-boundary.md +109 -0
  147. package/bundled/locales/zh-CN/core/model-selection.md +28 -5
  148. package/bundled/locales/zh-CN/core/mutation-testing.md +106 -0
  149. package/bundled/locales/zh-CN/core/no-cicd-deployment.md +219 -0
  150. package/bundled/locales/zh-CN/core/packaging-standards.md +76 -5
  151. package/bundled/locales/zh-CN/core/pipeline-security-gates.md +126 -0
  152. package/bundled/locales/zh-CN/core/policy-as-code-testing.md +203 -0
  153. package/bundled/locales/zh-CN/core/privacy-standards.md +1 -1
  154. package/bundled/locales/zh-CN/core/project-context-memory.md +1 -1
  155. package/bundled/locales/zh-CN/core/prompt-regression.md +88 -0
  156. package/bundled/locales/zh-CN/core/property-based-testing.md +87 -0
  157. package/bundled/locales/zh-CN/core/release-quality-manifest.md +207 -0
  158. package/bundled/locales/zh-CN/core/release-readiness-gate.md +193 -0
  159. package/bundled/locales/zh-CN/core/replay-test.md +102 -0
  160. package/bundled/locales/zh-CN/core/reverse-engineering-standards.md +46 -1
  161. package/bundled/locales/zh-CN/core/rollback-standards.md +120 -0
  162. package/bundled/locales/zh-CN/core/sast-advanced.md +309 -0
  163. package/bundled/locales/zh-CN/core/secure-op.md +328 -0
  164. package/bundled/locales/zh-CN/core/security-testing.md +96 -0
  165. package/bundled/locales/zh-CN/core/self-review-protocol.md +167 -0
  166. package/bundled/locales/zh-CN/core/server-ops-security.md +507 -0
  167. package/bundled/locales/zh-CN/core/smoke-test.md +79 -0
  168. package/bundled/locales/zh-CN/core/spec-driven-development.md +55 -5
  169. package/bundled/locales/zh-CN/core/supply-chain-attestation.md +131 -0
  170. package/bundled/locales/zh-CN/core/versioning.md +1 -1
  171. package/bundled/locales/zh-CN/docs/CHEATSHEET.md +31 -6
  172. package/bundled/locales/zh-CN/docs/FEATURE-REFERENCE.md +61 -34
  173. package/bundled/locales/zh-CN/docs/MIGRATION-v6.md +88 -0
  174. package/bundled/locales/zh-CN/docs/USAGE-MODES-COMPARISON.md +2 -2
  175. package/bundled/locales/zh-CN/docs/USER-MANUAL.md +14 -14
  176. package/bundled/locales/zh-CN/docs/specs/system/memory-adoption-strategy.md +105 -0
  177. package/bundled/locales/zh-CN/docs/user/FAQ.md +132 -0
  178. package/bundled/locales/zh-CN/docs/user/GETTING-STARTED.md +144 -0
  179. package/bundled/locales/zh-CN/docs/user/GLOSSARY.md +178 -0
  180. package/bundled/locales/zh-CN/docs/user/README.md +70 -0
  181. package/bundled/locales/zh-CN/docs/user/TROUBLESHOOTING.md +190 -0
  182. package/bundled/locales/zh-CN/integrations/github-copilot/COPILOT-CHAT-REFERENCE.md +1 -1
  183. package/bundled/locales/zh-CN/integrations/github-copilot/README.md +1 -1
  184. package/bundled/locales/zh-CN/integrations/github-copilot/skills-mapping.md +3 -3
  185. package/bundled/locales/zh-CN/integrations/opencode/skills-mapping.md +3 -3
  186. package/bundled/locales/zh-CN/methodologies/guides/sdd-guide.md +836 -0
  187. package/bundled/locales/zh-CN/options/changelog/auto-generated.md +166 -0
  188. package/bundled/locales/zh-CN/options/changelog/keep-a-changelog.md +140 -0
  189. package/bundled/locales/zh-CN/options/code-review/automated-review.md +214 -0
  190. package/bundled/locales/zh-CN/options/code-review/pair-programming.md +166 -0
  191. package/bundled/locales/zh-CN/options/code-review/pr-review.md +167 -0
  192. package/bundled/locales/zh-CN/options/documentation/api-docs.md +191 -0
  193. package/bundled/locales/zh-CN/options/documentation/markdown-docs.md +150 -0
  194. package/bundled/locales/zh-CN/options/documentation/wiki-style.md +131 -0
  195. package/bundled/locales/zh-CN/options/project-structure/kotlin.md +144 -0
  196. package/bundled/locales/zh-CN/options/project-structure/php.md +168 -0
  197. package/bundled/locales/zh-CN/options/project-structure/ruby.md +156 -0
  198. package/bundled/locales/zh-CN/options/project-structure/rust.md +136 -0
  199. package/bundled/locales/zh-CN/options/project-structure/swift.md +165 -0
  200. package/bundled/locales/zh-CN/options/testing/contract-testing.md +237 -0
  201. package/bundled/locales/zh-CN/options/testing/industry-pyramid.md +200 -0
  202. package/bundled/locales/zh-CN/options/testing/istqb-framework.md +144 -0
  203. package/bundled/locales/zh-CN/options/testing/performance-testing.md +251 -0
  204. package/bundled/locales/zh-CN/options/testing/security-testing.md +192 -0
  205. package/bundled/locales/zh-CN/skills/README.md +89 -126
  206. package/bundled/locales/zh-CN/skills/ac-coverage/SKILL.md +5 -7
  207. package/bundled/locales/zh-CN/skills/adr-assistant/SKILL.md +1 -1
  208. package/bundled/locales/zh-CN/skills/agents/code-architect.md +263 -0
  209. package/bundled/locales/zh-CN/skills/agents/doc-writer.md +410 -0
  210. package/bundled/locales/zh-CN/skills/agents/reviewer.md +357 -0
  211. package/bundled/locales/zh-CN/skills/agents/spec-analyst.md +410 -0
  212. package/bundled/locales/zh-CN/skills/agents/test-specialist.md +368 -0
  213. package/bundled/locales/zh-CN/skills/ai-collaboration-standards/SKILL.md +2 -2
  214. package/bundled/locales/zh-CN/skills/ai-friendly-architecture/SKILL.md +2 -2
  215. package/bundled/locales/zh-CN/skills/ai-instruction-standards/SKILL.md +1 -1
  216. package/bundled/locales/zh-CN/skills/atdd-assistant/acceptance-criteria-guide.md +1 -1
  217. package/bundled/locales/zh-CN/skills/atdd-assistant/atdd-workflow.md +3 -4
  218. package/bundled/locales/zh-CN/skills/audit-assistant/SKILL.md +2 -2
  219. package/bundled/locales/zh-CN/skills/bdd-assistant/guide.md +1 -2
  220. package/bundled/locales/zh-CN/skills/brainstorm-assistant/SKILL.md +109 -13
  221. package/bundled/locales/zh-CN/skills/brainstorm-assistant/guide.md +30 -8
  222. package/bundled/locales/zh-CN/skills/checkin-assistant/SKILL.md +1 -1
  223. package/bundled/locales/zh-CN/skills/ci-cd-assistant/SKILL.md +50 -0
  224. package/bundled/locales/zh-CN/skills/code-review-assistant/SKILL.md +5 -5
  225. package/bundled/locales/zh-CN/skills/commands/ac-coverage.md +1 -1
  226. package/bundled/locales/zh-CN/skills/commands/atdd.md +3 -3
  227. package/bundled/locales/zh-CN/skills/commands/bdd.md +2 -2
  228. package/bundled/locales/zh-CN/skills/commands/brainstorm.md +26 -17
  229. package/bundled/locales/zh-CN/skills/commands/{review.md → code-review.md} +4 -4
  230. package/bundled/locales/zh-CN/skills/commands/derive-all.md +1 -1
  231. package/bundled/locales/zh-CN/skills/commands/derive-atdd.md +1 -1
  232. package/bundled/locales/zh-CN/skills/commands/derive-bdd.md +2 -3
  233. package/bundled/locales/zh-CN/skills/commands/derive-tdd.md +1 -1
  234. package/bundled/locales/zh-CN/skills/commands/derive.md +1 -1
  235. package/bundled/locales/zh-CN/skills/commands/dev-workflow.md +2 -2
  236. package/bundled/locales/zh-CN/skills/commands/methodology.md +4 -4
  237. package/bundled/locales/zh-CN/skills/commands/pr.md +1 -1
  238. package/bundled/locales/zh-CN/skills/commands/tdd.md +1 -1
  239. package/bundled/locales/zh-CN/skills/commit-standards/SKILL.md +1 -1
  240. package/bundled/locales/zh-CN/skills/contract-test-assistant/SKILL.md +1 -1
  241. package/bundled/locales/zh-CN/skills/dev-methodology/SKILL.md +1 -1
  242. package/bundled/locales/zh-CN/skills/dev-methodology/create-methodology.md +456 -0
  243. package/bundled/locales/zh-CN/skills/dev-methodology/guide.md +6 -6
  244. package/bundled/locales/zh-CN/skills/dev-methodology/runtime.md +296 -0
  245. package/bundled/locales/zh-CN/skills/dev-workflow-guide/SKILL.md +5 -5
  246. package/bundled/locales/zh-CN/skills/docs-generator/SKILL.md +1 -1
  247. package/bundled/locales/zh-CN/skills/e2e-assistant/SKILL.md +1 -1
  248. package/bundled/locales/zh-CN/skills/incident-response-assistant/SKILL.md +2 -2
  249. package/bundled/locales/zh-CN/skills/journey-test-assistant/SKILL.md +1 -1
  250. package/bundled/locales/zh-CN/skills/logging-guide/SKILL.md +146 -142
  251. package/bundled/locales/zh-CN/skills/migration-assistant/SKILL.md +1 -1
  252. package/bundled/locales/zh-CN/skills/observability-assistant/guide.md +1 -1
  253. package/bundled/locales/zh-CN/skills/pr-automation-assistant/SKILL.md +1 -1
  254. package/bundled/locales/zh-CN/skills/project-discovery/guide.md +2 -2
  255. package/bundled/locales/zh-CN/skills/reverse-engineer/SKILL.md +1 -1
  256. package/bundled/locales/zh-CN/skills/runbook-assistant/guide.md +1 -1
  257. package/bundled/locales/zh-CN/skills/security-assistant/SKILL.md +1 -1
  258. package/bundled/locales/zh-CN/skills/skill-builder/SKILL.md +3 -3
  259. package/bundled/locales/zh-CN/skills/slo-assistant/guide.md +1 -1
  260. package/bundled/locales/zh-CN/skills/spec-derivation/SKILL.md +1 -1
  261. package/bundled/locales/zh-CN/skills/spec-derivation/guide.md +8 -9
  262. package/bundled/locales/zh-CN/skills/spec-driven-dev/SKILL.md +2 -2
  263. package/bundled/locales/zh-CN/skills/sweep/SKILL.md +1 -1
  264. package/bundled/locales/zh-CN/skills/tdd-assistant/SKILL.md +1 -1
  265. package/bundled/locales/zh-CN/skills/testing-guide/SKILL.md +2 -2
  266. package/bundled/locales/zh-CN/skills/testing-guide/testing-theory.md +2298 -0
  267. package/bundled/locales/zh-CN/skills/workflows/README.md +451 -0
  268. package/bundled/locales/zh-TW/CHANGELOG.md +81 -6
  269. package/bundled/locales/zh-TW/CLAUDE.md +1 -1
  270. package/bundled/locales/zh-TW/MAINTENANCE.md +25 -2
  271. package/bundled/locales/zh-TW/README.md +22 -9
  272. package/bundled/locales/zh-TW/SECURITY.md +1 -1
  273. package/bundled/locales/zh-TW/adoption/DAILY-WORKFLOW-GUIDE.md +2 -2
  274. package/bundled/locales/zh-TW/ai/standards/versioning.ai.yaml +8 -48
  275. package/bundled/locales/zh-TW/core/acceptance-criteria-traceability.md +4 -6
  276. package/bundled/locales/zh-TW/core/accessibility-standards.md +1 -1
  277. package/bundled/locales/zh-TW/core/adversarial-test.md +226 -0
  278. package/bundled/locales/zh-TW/core/agent-behavior-discipline.md +187 -0
  279. package/bundled/locales/zh-TW/core/ai-response-navigation.md +32 -6
  280. package/bundled/locales/zh-TW/core/anti-sycophancy-prompting.md +1 -1
  281. package/bundled/locales/zh-TW/core/api-design-standards.md +91 -9
  282. package/bundled/locales/zh-TW/core/audit-trail.md +110 -0
  283. package/bundled/locales/zh-TW/core/behavior-snapshot.md +335 -0
  284. package/bundled/locales/zh-TW/core/browser-compatibility-standards.md +1 -0
  285. package/bundled/locales/zh-TW/core/cd-deployment-strategies.md +135 -0
  286. package/bundled/locales/zh-TW/core/chaos-injection-tests.md +130 -0
  287. package/bundled/locales/zh-TW/core/checkin-standards.md +1 -1
  288. package/bundled/locales/zh-TW/core/code-review-checklist.md +1 -1
  289. package/bundled/locales/zh-TW/core/container-image-standards.md +93 -0
  290. package/bundled/locales/zh-TW/core/container-security.md +535 -0
  291. package/bundled/locales/zh-TW/core/cost-budget-test.md +86 -0
  292. package/bundled/locales/zh-TW/core/cross-flow-regression.md +1 -0
  293. package/bundled/locales/zh-TW/core/data-contract.md +101 -0
  294. package/bundled/locales/zh-TW/core/data-migration-testing.md +217 -0
  295. package/bundled/locales/zh-TW/core/data-pipeline.md +105 -0
  296. package/bundled/locales/zh-TW/core/deployment-standards.md +363 -25
  297. package/bundled/locales/zh-TW/core/deprecation-standards.md +17 -4
  298. package/bundled/locales/zh-TW/core/developer-memory.md +2 -2
  299. package/bundled/locales/zh-TW/core/disaster-recovery-drill.md +87 -0
  300. package/bundled/locales/zh-TW/core/documentation-writing-standards.md +1 -1
  301. package/bundled/locales/zh-TW/core/error-code-standards.md +2 -2
  302. package/bundled/locales/zh-TW/core/feature-manifest-standard.md +222 -0
  303. package/bundled/locales/zh-TW/core/flaky-test-management.md +87 -0
  304. package/bundled/locales/zh-TW/core/flow-based-testing.md +284 -0
  305. package/bundled/locales/zh-TW/core/forward-derivation-standards.md +3 -4
  306. package/bundled/locales/zh-TW/core/full-coverage-testing.md +250 -0
  307. package/bundled/locales/zh-TW/core/git-worktree.md +1 -1
  308. package/bundled/locales/zh-TW/core/guides/performance-guide.md +515 -0
  309. package/bundled/locales/zh-TW/core/guides/security-guide.md +494 -0
  310. package/bundled/locales/zh-TW/core/iac-design-principles.md +90 -0
  311. package/bundled/locales/zh-TW/core/incident-response.md +111 -0
  312. package/bundled/locales/zh-TW/core/license-compliance.md +129 -0
  313. package/bundled/locales/zh-TW/core/llm-output-validation.md +192 -0
  314. package/bundled/locales/zh-TW/core/logging-standards.md +208 -4
  315. package/bundled/locales/zh-TW/core/mock-boundary.md +161 -0
  316. package/bundled/locales/zh-TW/core/model-provenance.md +173 -0
  317. package/bundled/locales/zh-TW/core/model-selection.md +28 -5
  318. package/bundled/locales/zh-TW/core/mutation-testing.md +106 -0
  319. package/bundled/locales/zh-TW/core/no-cicd-deployment.md +219 -0
  320. package/bundled/locales/zh-TW/core/packaging-standards.md +76 -5
  321. package/bundled/locales/zh-TW/core/performance-standards.md +84 -5
  322. package/bundled/locales/zh-TW/core/pii-classification.md +102 -0
  323. package/bundled/locales/zh-TW/core/pipeline-security-gates.md +126 -0
  324. package/bundled/locales/zh-TW/core/policy-as-code-testing.md +203 -0
  325. package/bundled/locales/zh-TW/core/prd-standards.md +88 -0
  326. package/bundled/locales/zh-TW/core/privacy-standards.md +1 -1
  327. package/bundled/locales/zh-TW/core/product-metrics-standards.md +96 -0
  328. package/bundled/locales/zh-TW/core/project-context-memory.md +1 -1
  329. package/bundled/locales/zh-TW/core/prompt-regression.md +88 -0
  330. package/bundled/locales/zh-TW/core/property-based-testing.md +87 -0
  331. package/bundled/locales/zh-TW/core/refactoring-standards.md +43 -6
  332. package/bundled/locales/zh-TW/core/release-quality-manifest.md +207 -0
  333. package/bundled/locales/zh-TW/core/replay-test.md +102 -0
  334. package/bundled/locales/zh-TW/core/resource-cost-boundary.md +175 -0
  335. package/bundled/locales/zh-TW/core/reverse-engineering-standards.md +64 -5
  336. package/bundled/locales/zh-TW/core/rollback-standards.md +120 -0
  337. package/bundled/locales/zh-TW/core/runbook.md +110 -0
  338. package/bundled/locales/zh-TW/core/sast-advanced.md +309 -0
  339. package/bundled/locales/zh-TW/core/schema-evolution.md +98 -0
  340. package/bundled/locales/zh-TW/core/secret-management-standards.md +101 -0
  341. package/bundled/locales/zh-TW/core/secure-op.md +328 -0
  342. package/bundled/locales/zh-TW/core/security-testing.md +96 -0
  343. package/bundled/locales/zh-TW/core/self-review-protocol.md +2 -2
  344. package/bundled/locales/zh-TW/core/server-ops-security.md +507 -0
  345. package/bundled/locales/zh-TW/core/slo-sli.md +108 -0
  346. package/bundled/locales/zh-TW/core/smoke-test.md +79 -0
  347. package/bundled/locales/zh-TW/core/spec-driven-development.md +39 -13
  348. package/bundled/locales/zh-TW/core/supply-chain-attestation.md +131 -0
  349. package/bundled/locales/zh-TW/core/user-journey-testing.md +111 -0
  350. package/bundled/locales/zh-TW/core/user-story-mapping.md +94 -0
  351. package/bundled/locales/zh-TW/core/verification-oracle.md +159 -0
  352. package/bundled/locales/zh-TW/core/versioning.md +112 -112
  353. package/bundled/locales/zh-TW/docs/CHEATSHEET.md +31 -6
  354. package/bundled/locales/zh-TW/docs/DEV-WORKFLOW-MAPPING.md +6 -6
  355. package/bundled/locales/zh-TW/docs/FEATURE-REFERENCE.md +61 -34
  356. package/bundled/locales/zh-TW/docs/MIGRATION-v6.md +88 -0
  357. package/bundled/locales/zh-TW/docs/USAGE-MODES-COMPARISON.md +2 -2
  358. package/bundled/locales/zh-TW/docs/USER-MANUAL.md +14 -14
  359. package/bundled/locales/zh-TW/docs/specs/system/memory-adoption-strategy.md +105 -0
  360. package/bundled/locales/zh-TW/docs/user/FAQ.md +132 -0
  361. package/bundled/locales/zh-TW/docs/user/GETTING-STARTED.md +144 -0
  362. package/bundled/locales/zh-TW/docs/user/GLOSSARY.md +178 -0
  363. package/bundled/locales/zh-TW/docs/user/README.md +70 -0
  364. package/bundled/locales/zh-TW/docs/user/TROUBLESHOOTING.md +190 -0
  365. package/bundled/locales/zh-TW/integrations/github-copilot/COPILOT-CHAT-REFERENCE.md +1 -1
  366. package/bundled/locales/zh-TW/integrations/github-copilot/README.md +1 -1
  367. package/bundled/locales/zh-TW/integrations/github-copilot/skills-mapping.md +3 -3
  368. package/bundled/locales/zh-TW/integrations/opencode/skills-mapping.md +3 -3
  369. package/bundled/locales/zh-TW/methodologies/guides/sdd-guide.md +523 -26
  370. package/bundled/locales/zh-TW/options/changelog/auto-generated.md +166 -0
  371. package/bundled/locales/zh-TW/options/changelog/keep-a-changelog.md +140 -0
  372. package/bundled/locales/zh-TW/options/code-review/automated-review.md +214 -0
  373. package/bundled/locales/zh-TW/options/code-review/pair-programming.md +166 -0
  374. package/bundled/locales/zh-TW/options/code-review/pr-review.md +167 -0
  375. package/bundled/locales/zh-TW/options/documentation/api-docs.md +191 -0
  376. package/bundled/locales/zh-TW/options/documentation/markdown-docs.md +150 -0
  377. package/bundled/locales/zh-TW/options/documentation/wiki-style.md +131 -0
  378. package/bundled/locales/zh-TW/options/project-structure/kotlin.md +144 -0
  379. package/bundled/locales/zh-TW/options/project-structure/php.md +168 -0
  380. package/bundled/locales/zh-TW/options/project-structure/ruby.md +156 -0
  381. package/bundled/locales/zh-TW/options/project-structure/rust.md +136 -0
  382. package/bundled/locales/zh-TW/options/project-structure/swift.md +165 -0
  383. package/bundled/locales/zh-TW/options/testing/contract-testing.md +237 -0
  384. package/bundled/locales/zh-TW/options/testing/industry-pyramid.md +200 -0
  385. package/bundled/locales/zh-TW/options/testing/istqb-framework.md +144 -0
  386. package/bundled/locales/zh-TW/options/testing/performance-testing.md +251 -0
  387. package/bundled/locales/zh-TW/options/testing/security-testing.md +192 -0
  388. package/bundled/locales/zh-TW/skills/README.md +91 -128
  389. package/bundled/locales/zh-TW/skills/ac-coverage/SKILL.md +4 -6
  390. package/bundled/locales/zh-TW/skills/adr-assistant/SKILL.md +1 -1
  391. package/bundled/locales/zh-TW/skills/agents/code-architect.md +263 -0
  392. package/bundled/locales/zh-TW/skills/agents/doc-writer.md +410 -0
  393. package/bundled/locales/zh-TW/skills/agents/reviewer.md +357 -0
  394. package/bundled/locales/zh-TW/skills/agents/spec-analyst.md +410 -0
  395. package/bundled/locales/zh-TW/skills/agents/test-specialist.md +368 -0
  396. package/bundled/locales/zh-TW/skills/ai-collaboration-standards/SKILL.md +2 -2
  397. package/bundled/locales/zh-TW/skills/ai-friendly-architecture/SKILL.md +2 -2
  398. package/bundled/locales/zh-TW/skills/ai-instruction-standards/SKILL.md +1 -1
  399. package/bundled/locales/zh-TW/skills/atdd-assistant/SKILL.md +2 -0
  400. package/bundled/locales/zh-TW/skills/atdd-assistant/acceptance-criteria-guide.md +1 -1
  401. package/bundled/locales/zh-TW/skills/atdd-assistant/atdd-workflow.md +3 -4
  402. package/bundled/locales/zh-TW/skills/audit-assistant/SKILL.md +2 -2
  403. package/bundled/locales/zh-TW/skills/bdd-assistant/SKILL.md +2 -0
  404. package/bundled/locales/zh-TW/skills/bdd-assistant/guide.md +1 -2
  405. package/bundled/locales/zh-TW/skills/brainstorm-assistant/SKILL.md +110 -14
  406. package/bundled/locales/zh-TW/skills/brainstorm-assistant/guide.md +31 -7
  407. package/bundled/locales/zh-TW/skills/checkin-assistant/SKILL.md +3 -1
  408. package/bundled/locales/zh-TW/skills/ci-cd-assistant/SKILL.md +50 -0
  409. package/bundled/locales/zh-TW/skills/code-review-assistant/SKILL.md +7 -5
  410. package/bundled/locales/zh-TW/skills/commands/ac-coverage.md +1 -1
  411. package/bundled/locales/zh-TW/skills/commands/atdd.md +3 -3
  412. package/bundled/locales/zh-TW/skills/commands/bdd.md +2 -2
  413. package/bundled/locales/zh-TW/skills/commands/brainstorm.md +26 -17
  414. package/bundled/locales/zh-TW/skills/commands/{review.md → code-review.md} +5 -5
  415. package/bundled/locales/zh-TW/skills/commands/derive-all.md +1 -1
  416. package/bundled/locales/zh-TW/skills/commands/derive-atdd.md +1 -1
  417. package/bundled/locales/zh-TW/skills/commands/derive-bdd.md +2 -3
  418. package/bundled/locales/zh-TW/skills/commands/derive-tdd.md +1 -1
  419. package/bundled/locales/zh-TW/skills/commands/derive.md +1 -1
  420. package/bundled/locales/zh-TW/skills/commands/dev-workflow.md +2 -2
  421. package/bundled/locales/zh-TW/skills/commands/methodology.md +4 -4
  422. package/bundled/locales/zh-TW/skills/commands/pr.md +1 -1
  423. package/bundled/locales/zh-TW/skills/commands/tdd.md +1 -1
  424. package/bundled/locales/zh-TW/skills/commit-standards/SKILL.md +1 -1
  425. package/bundled/locales/zh-TW/skills/contract-test-assistant/SKILL.md +1 -1
  426. package/bundled/locales/zh-TW/skills/dev-methodology/create-methodology.md +456 -0
  427. package/bundled/locales/zh-TW/skills/dev-methodology/guide.md +5 -5
  428. package/bundled/locales/zh-TW/skills/dev-methodology/runtime.md +296 -0
  429. package/bundled/locales/zh-TW/skills/dev-workflow-guide/SKILL.md +5 -5
  430. package/bundled/locales/zh-TW/skills/docs-generator/SKILL.md +1 -1
  431. package/bundled/locales/zh-TW/skills/e2e-assistant/SKILL.md +1 -1
  432. package/bundled/locales/zh-TW/skills/incident-response-assistant/SKILL.md +2 -2
  433. package/bundled/locales/zh-TW/skills/logging-guide/SKILL.md +29 -27
  434. package/bundled/locales/zh-TW/skills/migration-assistant/SKILL.md +1 -1
  435. package/bundled/locales/zh-TW/skills/pr-automation-assistant/SKILL.md +3 -1
  436. package/bundled/locales/zh-TW/skills/project-discovery/guide.md +2 -2
  437. package/bundled/locales/zh-TW/skills/reverse-engineer/SKILL.md +1 -1
  438. package/bundled/locales/zh-TW/skills/security-assistant/SKILL.md +1 -1
  439. package/bundled/locales/zh-TW/skills/spec-derivation/guide.md +7 -8
  440. package/bundled/locales/zh-TW/skills/spec-driven-dev/SKILL.md +2 -2
  441. package/bundled/locales/zh-TW/skills/sweep/SKILL.md +1 -1
  442. package/bundled/locales/zh-TW/skills/tdd-assistant/SKILL.md +3 -1
  443. package/bundled/locales/zh-TW/skills/testing-guide/SKILL.md +2 -2
  444. package/bundled/locales/zh-TW/skills/testing-guide/testing-theory.md +2298 -0
  445. package/bundled/locales/zh-TW/skills/workflows/README.md +451 -0
  446. package/bundled/skills/README.md +1 -1
  447. package/bundled/skills/ac-coverage/SKILL.md +17 -7
  448. package/bundled/skills/adr-assistant/SKILL.md +1 -1
  449. package/bundled/skills/agents/code-architect.md +1 -1
  450. package/bundled/skills/agents/doc-writer.md +1 -1
  451. package/bundled/skills/agents/reviewer.md +2 -2
  452. package/bundled/skills/agents/spec-analyst.md +1 -1
  453. package/bundled/skills/agents/test-specialist.md +1 -1
  454. package/bundled/skills/ai-collaboration-standards/SKILL.md +2 -2
  455. package/bundled/skills/ai-friendly-architecture/SKILL.md +2 -2
  456. package/bundled/skills/ai-instruction-standards/SKILL.md +1 -1
  457. package/bundled/skills/atdd-assistant/SKILL.md +7 -0
  458. package/bundled/skills/atdd-assistant/acceptance-criteria-guide.md +1 -1
  459. package/bundled/skills/atdd-assistant/atdd-workflow.md +6 -8
  460. package/bundled/skills/audit-assistant/SKILL.md +2 -2
  461. package/bundled/skills/bdd-assistant/SKILL.md +7 -0
  462. package/bundled/skills/bdd-assistant/guide.md +1 -2
  463. package/bundled/skills/brainstorm-assistant/SKILL.md +133 -11
  464. package/bundled/skills/brainstorm-assistant/guide.md +33 -5
  465. package/bundled/skills/checkin-assistant/SKILL.md +8 -1
  466. package/bundled/skills/ci-cd-assistant/SKILL.md +57 -0
  467. package/bundled/skills/code-review-assistant/SKILL.md +15 -8
  468. package/bundled/skills/commands/COMMAND-FAMILY-OVERVIEW.md +2 -2
  469. package/bundled/skills/commands/COMMAND-INDEX.json +3 -3
  470. package/bundled/skills/commands/README.md +2 -2
  471. package/bundled/skills/commands/ac-coverage.md +1 -1
  472. package/bundled/skills/commands/atdd.md +2 -2
  473. package/bundled/skills/commands/bdd.md +2 -2
  474. package/bundled/skills/commands/brainstorm.md +25 -14
  475. package/bundled/skills/commands/{review.md → code-review.md} +6 -6
  476. package/bundled/skills/commands/derive-all.md +1 -1
  477. package/bundled/skills/commands/derive-atdd.md +1 -1
  478. package/bundled/skills/commands/derive-bdd.md +2 -3
  479. package/bundled/skills/commands/derive-tdd.md +1 -1
  480. package/bundled/skills/commands/derive.md +1 -1
  481. package/bundled/skills/commands/dev-workflow.md +1 -1
  482. package/bundled/skills/commands/journey-test.md +45 -0
  483. package/bundled/skills/commands/methodology.md +4 -4
  484. package/bundled/skills/commands/pr.md +1 -1
  485. package/bundled/skills/commands/skill-builder.md +42 -0
  486. package/bundled/skills/commands/tdd.md +1 -1
  487. package/bundled/skills/dev-methodology/create-methodology.md +1 -1
  488. package/bundled/skills/dev-methodology/guide.md +1 -1
  489. package/bundled/skills/dev-methodology/runtime.md +1 -1
  490. package/bundled/skills/dev-workflow-guide/SKILL.md +3 -3
  491. package/bundled/skills/dev-workflow-guide/workflow-phases.md +3 -3
  492. package/bundled/skills/docs-generator/SKILL.md +3 -3
  493. package/bundled/skills/incident-response-assistant/SKILL.md +2 -2
  494. package/bundled/skills/logging-guide/SKILL.md +38 -2
  495. package/bundled/skills/migration-assistant/SKILL.md +226 -0
  496. package/bundled/skills/observability-assistant/SKILL.md +74 -0
  497. package/bundled/skills/pr-automation-assistant/SKILL.md +5 -1
  498. package/bundled/skills/project-discovery/guide.md +2 -2
  499. package/bundled/skills/push/SKILL.md +1 -1
  500. package/bundled/skills/release-standards/SKILL.md +19 -5
  501. package/bundled/skills/security-assistant/SKILL.md +1 -1
  502. package/bundled/skills/skill-builder/SKILL.md +1 -1
  503. package/bundled/skills/spec-derivation/guide.md +3 -4
  504. package/bundled/skills/spec-driven-dev/SKILL.md +27 -0
  505. package/bundled/skills/sweep/SKILL.md +1 -1
  506. package/bundled/skills/tdd-assistant/SKILL.md +8 -1
  507. package/bundled/skills/testing-guide/SKILL.md +1 -1
  508. package/bundled/skills/testing-guide/testing-theory.md +1 -1
  509. package/bundled/skills/workflows/README.md +2 -2
  510. package/package.json +3 -3
  511. package/src/commands/audit.js +30 -9
  512. package/src/commands/config.js +33 -2
  513. package/src/commands/hitl.js +14 -1
  514. package/src/commands/init.js +110 -58
  515. package/src/commands/quickstart.js +1 -2
  516. package/src/commands/release.js +51 -6
  517. package/src/commands/run-intent.js +9 -0
  518. package/src/commands/spec-split.js +27 -2
  519. package/src/commands/update.js +22 -6
  520. package/src/config/ai-agent-paths.js +3 -1
  521. package/src/i18n/messages.js +3 -102
  522. package/src/missions/MissionManager.js +44 -12
  523. package/src/utils/build-manifest.js +35 -3
  524. package/src/utils/friction-detector.js +71 -22
  525. package/src/utils/health-checker.js +29 -2
  526. package/src/utils/transaction.js +111 -0
  527. package/src/utils/version-promote.js +16 -0
  528. package/standards-registry.json +58 -146
  529. package/bundled/ai/standards/agent-communication-protocol.ai.yaml +0 -42
  530. package/bundled/ai/standards/agent-dispatch.ai.yaml +0 -42
  531. package/bundled/ai/standards/branch-completion.ai.yaml +0 -44
  532. package/bundled/ai/standards/change-batching-standards.ai.yaml +0 -44
  533. package/bundled/ai/standards/execution-history.ai.yaml +0 -42
  534. package/bundled/ai/standards/pipeline-integration-standards.ai.yaml +0 -42
  535. package/bundled/ai/standards/workflow-enforcement.ai.yaml +0 -44
  536. package/bundled/ai/standards/workflow-state-protocol.ai.yaml +0 -43
  537. package/src/commands/flow.js +0 -260
  538. package/src/commands/start.js +0 -372
  539. package/src/commands/sweep.js +0 -151
  540. package/src/commands/workflow.js +0 -681
@@ -0,0 +1,203 @@
1
+ ---
2
+ source: ../../../core/policy-as-code-testing.md
3
+ source_version: 1.0.0
4
+ translation_version: 1.0.0
5
+ last_synced: 2026-06-10
6
+ source_hash: 80f3b5726ad3
7
+ status: current
8
+ ---
9
+
10
+ # Policy as Code 测试标准
11
+
12
+ > **Language**: [English](../../../core/policy-as-code-testing.md) | [繁體中文](../../zh-TW/core/policy-as-code-testing.md) | 简体中文
13
+
14
+ > 标准 ID:`policy-as-code-testing`
15
+ > 版本:v1.0.0
16
+ > 最后更新:2026-05-05
17
+
18
+ ---
19
+
20
+ ## 为什么需要测试 Policy as Code?
21
+
22
+ OPA(Open Policy Agent)的 Rego policy 控制 AI Agent 能否执行生产环境操作。**未测试的 policy = 静默的安全漏洞。**
23
+
24
+ Policy as Code 的特殊风险:
25
+ 1. **边界条件难以推理**:`reversible: false` + `target_env: "prod"` 组合是否触发?
26
+ 2. **类型错误只在运行时爆发**:`array.concat()` 用在 set 类型 → 静默失效
27
+ 3. **Fail-Open 风险**:评估失败若返回 `allow: true`,攻击者可触发未定义路径
28
+ 4. **Policy 改动回归**:新增一条 rule 可能意外放行原本被拦截的案例
29
+
30
+ ---
31
+
32
+ ## 一、OPA 测试框架
33
+
34
+ ### 测试规则格式
35
+
36
+ ```rego
37
+ # 文件命名:<policy_module>_test.rego
38
+ # Package:<policy_package>_test
39
+ package governance.guardian.forbidden_patterns_test
40
+
41
+ import future.keywords.if
42
+
43
+ # 正向测试:规则应触发(assert rule fires)
44
+ test_drop_database_is_forbidden if {
45
+ data.governance.guardian.forbidden_patterns.has_forbidden_pattern with input as {
46
+ "plan": [{"command_type": "sql", "command": "DROP DATABASE prod_main", "reversible": false}]
47
+ }
48
+ }
49
+
50
+ # 负向测试:规则不应触发(assert rule does NOT fire)
51
+ test_safe_select_is_not_forbidden if {
52
+ not data.governance.guardian.forbidden_patterns.has_forbidden_pattern with input as {
53
+ "plan": [{"command_type": "sql", "command": "SELECT * FROM users LIMIT 10", "reversible": true}]
54
+ }
55
+ }
56
+ ```
57
+
58
+ ### 执行方式
59
+
60
+ ```bash
61
+ # OPA 已安装时
62
+ opa test src/guardian/policies/ -v
63
+
64
+ # 通过 Docker(无需安装 OPA)
65
+ docker run --rm \
66
+ -v "$(pwd)/src/guardian/policies:/policies:ro" \
67
+ openpolicyagent/opa:latest-static \
68
+ test /policies -v
69
+ ```
70
+
71
+ ---
72
+
73
+ ## 二、每个 Policy Module 的最低测试要求
74
+
75
+ | 类型 | 最少案例 | 说明 |
76
+ |------|---------|------|
77
+ | ALLOW cases | 2 | 应该通过的正常操作 |
78
+ | DENY cases | 3 | 应该被拦截的危险操作 |
79
+ | Boundary cases | 1 | 边界条件(如 reversible=true vs. false)|
80
+ | Integration(main policy)| 2 | 集成 main.rego 的允许 + 拒绝路径 |
81
+
82
+ ---
83
+
84
+ ## 三、Policy Module 设计原则
85
+
86
+ ### 3.1 Fail-Closed 默认
87
+
88
+ ```rego
89
+ # main.rego 必须包含以下默认值
90
+ default allow = false
91
+
92
+ allow if {
93
+ not data.governance.guardian.forbidden_patterns.has_forbidden_pattern
94
+ not data.governance.guardian.env_policy.prod_violation
95
+ not data.governance.guardian.logic_constraints.has_logic_violation
96
+ }
97
+ ```
98
+
99
+ 任何 `undefined` 评估结果都应返回 DENY,不能返回 ALLOW。
100
+
101
+ ### 3.2 使用 Set(不要 array.concat)
102
+
103
+ OPA ≥ 0.40 的类型系统严格区分 array 和 set。`violations` partial rule 是 set 类型,**不可用 `array.concat()`**。
104
+
105
+ ```rego
106
+ # ✅ 正确:partial set rule 收集 violations
107
+ deny_reasons[r] if { r := data.governance.guardian.forbidden_patterns.violations[_] }
108
+ deny_reasons[r] if { r := data.governance.guardian.env_policy.violations[_] }
109
+ deny_reasons[r] if { r := data.governance.guardian.logic_constraints.violations[_] }
110
+
111
+ # ❌ 错误:array.concat 用在 set 上 → rego_type_error
112
+ # deny_reasons := array.concat(violations1, violations2)
113
+ ```
114
+
115
+ ### 3.3 禁止解析自由文本字段
116
+
117
+ Policy 决策**不得依赖** `intent`、`description`、`annotation` 等用户可控文本字段。
118
+
119
+ ```rego
120
+ # ❌ 危险:解析 intent 字段 → Prompt Injection 攻击面(OWASP LLM01)
121
+ allow if { contains(input.intent, "EMERGENCY") }
122
+
123
+ # ✅ 安全:只使用结构化字段
124
+ allow if {
125
+ input.target_env != "prod"
126
+ every step in input.plan { step.reversible == true }
127
+ }
128
+ ```
129
+
130
+ ### 3.4 一个 Module 管一个关注点
131
+
132
+ ```
133
+ policies/
134
+ forbidden_patterns.rego ← 禁止指令模式
135
+ forbidden_patterns_test.rego
136
+ env_policy.rego ← 环境特定规则(prod 保护)
137
+ env_policy_test.rego
138
+ logic_constraints.rego ← 逻辑一致性(stop+start 用 restart)
139
+ logic_constraints_test.rego
140
+ risk_gate.rego ← 风险分数阈值
141
+ risk_gate_test.rego
142
+ main.rego ← 集成所有 module,Fail-Closed
143
+ main_test.rego ← 集成测试
144
+ ```
145
+
146
+ ---
147
+
148
+ ## 四、CI 集成
149
+
150
+ ### GitHub Actions 步骤
151
+
152
+ ```yaml
153
+ - name: Test OPA Rego Policies
154
+ run: |
155
+ docker run --rm \
156
+ -v "${{ github.workspace }}/src/guardian/policies:/policies:ro" \
157
+ openpolicyagent/opa:latest-static \
158
+ test /policies -v
159
+ ```
160
+
161
+ ### npm script
162
+
163
+ ```json
164
+ {
165
+ "test:policy": "docker run --rm -v \"$(pwd)/src/guardian/policies:/policies:ro\" openpolicyagent/opa:latest-static test /policies -v"
166
+ }
167
+ ```
168
+
169
+ ---
170
+
171
+ ## 五、质量闸门
172
+
173
+ | 闸门 | 阈值 | 强制程度 |
174
+ |------|------|---------|
175
+ | OPA 测试通过率(CI) | 100%(所有 test_ rule 通过)| Block merge |
176
+ | Root policy Fail-Closed | `default allow = false` 存在 | Block merge |
177
+ | 每个 policy module 有 _test.rego | 每个 .rego 有对应测试 | Advisory |
178
+
179
+ ---
180
+
181
+ ## 六、反模式(Anti-patterns)
182
+
183
+ | 反模式 | 问题 | 正确做法 |
184
+ |--------|------|---------|
185
+ | `array.concat()` 用在 violations(set 类型)| OPA 类型错误 | 改用 partial set rule |
186
+ | Root policy 缺少 `default allow = false` | Fail-Open 漏洞 | 加入 default |
187
+ | Intent 字段参与安全决策 | Prompt Injection 攻击面 | 只用结构化字段 |
188
+ | 只测试 DENY(无 ALLOW 测试)| 无法检测过度限制 | 加入 ALLOW 案例 |
189
+ | _test.rego 只在本地运行,不在 CI | policy 改动无安全网 | CI 加 `opa test` step |
190
+
191
+ ---
192
+
193
+ ## 参考标准
194
+
195
+ - [OPA Testing Guide](https://www.openpolicyagent.org/docs/latest/policy-testing/)
196
+ - NIST SP 800-204C — Attribute-based Access Control
197
+ - [UDS `secure-op.ai.yaml`](../../../core/secure-op.md) — AI Agent 安全操作六大支柱
198
+ - [UDS `adversarial-test.ai.yaml`](../../../core/adversarial-test.md) — 对抗性测试(OWASP LLM01)
199
+ - [UDS `container-security.ai.yaml`](../../../core/container-security.md) — 容器安全(OPA Sidecar 部署)
200
+
201
+ ---
202
+
203
+ **Scope**: universal
@@ -3,7 +3,7 @@ source: ../../../core/privacy-standards.md
3
3
  source_version: 1.0.0
4
4
  translation_version: 1.0.0
5
5
  last_synced: 2026-04-10
6
- status: current
6
+ status: stale
7
7
  ---
8
8
 
9
9
  # 隐私标准
@@ -3,7 +3,7 @@ source: ../../../core/project-context-memory.md
3
3
  source_version: 1.1.0
4
4
  translation_version: 1.1.0
5
5
  last_synced: 2026-03-24
6
- status: current
6
+ status: stale
7
7
  ---
8
8
 
9
9
  > **语言**: [English](../../../core/project-context-memory.md) | 简体中文
@@ -0,0 +1,88 @@
1
+ ---
2
+ source: ../../../core/prompt-regression.md
3
+ source_version: 1.0.0
4
+ translation_version: 1.0.0
5
+ last_synced: 2026-06-10
6
+ source_hash: 418f48be7045
7
+ status: current
8
+ ---
9
+
10
+ # Prompt 回归测试标准
11
+
12
+ > **语言**: [English](../../../core/prompt-regression.md) | [繁體中文](../../zh-TW/core/prompt-regression.md) | 简体中文
13
+
14
+ ---
15
+
16
+ ## 概述
17
+
18
+ AI 代理的 prompt 即代码。未预期的变更会悄悄降低代理行为质量,却不会触发类型错误或单元测试失败。Prompt 回归测试利用 SHA-256 黄金校验和(golden checksum)检测任何修改,强制开发者明确确认并记录每次 prompt 变更。
19
+
20
+ ## 为什么要使用校验和
21
+
22
+ - 仅有 diff 不能阻止 CI 流程——校验和可以
23
+ - Prompt 是大型 Markdown 文件;细微的编辑(空白字符、标点符号)都可能改变模型行为
24
+ - 校验和更新 + 说明注释会建立每次 prompt 变更原因的审计轨迹
25
+
26
+ ## 实现方式
27
+
28
+ ### 1. 计算初始校验和
29
+
30
+ ```bash
31
+ for f in agents/*/prompt.md; do
32
+ echo -n "$f: "
33
+ sha256sum "$f" | cut -d' ' -f1
34
+ done
35
+ ```
36
+
37
+ ### 2. 黄金校验和测试(Vitest)
38
+
39
+ ```typescript
40
+ // SPDX-License-Identifier: AGPL-3.0-only
41
+ import { createHash } from "crypto"
42
+ import { readFileSync } from "fs"
43
+ import { join } from "path"
44
+ import { describe, it, expect } from "vitest"
45
+
46
+ // 仅在 prompt 变更为刻意行为时才更新这些值。
47
+ // 在同一行加上说明 WHY prompt 发生变更的注释。
48
+ const GOLDEN_CHECKSUMS: Record<string, string> = {
49
+ architect: "98017d39b0e48cda88b796687d21e0f884c810805e534453a23b7ad935e4a5ef",
50
+ builder: "5c2acda3e48dae771c61f55d3a5b0d5ac7383870054ef71e757714e367c50031",
51
+ // ... 所有代理
52
+ }
53
+
54
+ describe("Agent prompt regression (XSPEC-162)", () => {
55
+ for (const [agent, expected] of Object.entries(GOLDEN_CHECKSUMS)) {
56
+ it(`agents/${agent}/prompt.md checksum matches golden`, () => {
57
+ const filePath = join(__dirname, "..", "..", "agents", agent, "prompt.md")
58
+ const content = readFileSync(filePath)
59
+ const actual = createHash("sha256").update(content).digest("hex")
60
+ expect(actual, `Prompt for '${agent}' changed unexpectedly. If intentional, update GOLDEN_CHECKSUMS with a comment.`).toBe(expected)
61
+ })
62
+ }
63
+ })
64
+ ```
65
+
66
+ ### 3. CI 集成
67
+
68
+ 校验和测试作为标准 `npm run test:coverage` 闸门的一部分执行(已通过 XSPEC-156 强制执行)。不需要额外的 CI 步骤。
69
+
70
+ ### 4. 更新校验和
71
+
72
+ 当 prompt 变更为刻意行为时:
73
+
74
+ ```typescript
75
+ // 之前:
76
+ architect: "98017d39...", // updated 2026-05-05: added Guardian policy XSPEC-160 reference
77
+ ```
78
+
79
+ 说明注释是必填的。在代码审查时,应拒绝未附说明注释即更新校验和的 PR。
80
+
81
+ ## 相关标准
82
+
83
+ - [LLM 输出验证](../../../core/llm-output-validation.md) — schema 层级验证
84
+ - [对抗性测试](../../../core/adversarial-test.md) — 红队语料库
85
+ - [测试标准](../../../core/testing-standards.md) — 整体测试金字塔
86
+
87
+
88
+ **Scope**: universal
@@ -0,0 +1,87 @@
1
+ ---
2
+ source: ../../../core/property-based-testing.md
3
+ source_version: 1.0.0
4
+ translation_version: 1.0.0
5
+ last_synced: 2026-06-10
6
+ source_hash: 13f5eba04aef
7
+ status: current
8
+ ---
9
+
10
+ # Property-Based Testing 标准
11
+
12
+ > **语言**: [English](../../../core/property-based-testing.md) | [繁體中文](../../zh-TW/core/property-based-testing.md) | 简体中文
13
+
14
+ ## 概述
15
+
16
+ 基于示例的测试只能验证开发者想得到的用例。Property-based testing 反转了这一思路:你定义一个不变量("分数永远介于 0 到 100 之间"),框架会生成数百个输入来尝试推翻它。当找到失败的输入时,框架会将其收缩(shrink)为最小反例。
17
+
18
+ ## 使用时机
19
+
20
+ | 使用 Property 测试 | 使用示例测试 |
21
+ |-------------------|------------------|
22
+ | 纯数学函数 | 复杂业务逻辑 |
23
+ | 解析器 / 序列化器 | 集成路径 |
24
+ | 分数截断 / 四舍五入 | UI 行为 |
25
+ | 哈希 / 编码 | 数据库操作 |
26
+ | 安全验证器 | 外部 API 调用 |
27
+
28
+ ## 工具:fast-check(TypeScript)
29
+
30
+ ```bash
31
+ npm install --save-dev fast-check
32
+ ```
33
+
34
+ ```typescript
35
+ import fc from "fast-check"
36
+ import { describe, it, expect } from "vitest"
37
+ import { classifyTokenZone, TOKEN_BUDGET } from "../types/index.js"
38
+
39
+ describe("classifyTokenZone property: result is always a valid zone", () => {
40
+ it("for any ratio in [0, 2], returns a valid TokenBudgetZone", () => {
41
+ fc.assert(
42
+ fc.property(
43
+ fc.float({ min: 0, max: 2, noNaN: true }),
44
+ (ratio) => {
45
+ const zone = classifyTokenZone(ratio)
46
+ return ["safe", "warning", "danger", "blocking"].includes(zone)
47
+ }
48
+ ),
49
+ { numRuns: 1000 }
50
+ )
51
+ })
52
+ })
53
+ ```
54
+
55
+ ## Guardian scoreReviewable 属性
56
+
57
+ 需要测试的关键不变量:
58
+
59
+ | 属性 | 说明 |
60
+ |----------|-------------|
61
+ | **范围截断** | `score` 永远在 `[0, 100]` 范围内 |
62
+ | **确定性** | 相同输入永远产生相同分数 |
63
+ | **单调性** | 对相同操作,prod > staging > dev |
64
+ | **非负性** | `breakdown` 的值全部 >= 0 |
65
+
66
+ ## 反例收缩(Counterexample Shrinking)
67
+
68
+ 当 fast-check 找到失败用例时,会自动收缩:
69
+
70
+ ```
71
+ Original failure: { target_env: "prod", command: "rm -rf /tmp/xyz123...", ... }
72
+ Shrunk to: { target_env: "prod", command: "rm", ... }
73
+ ```
74
+
75
+ 从错误消息中保存 seed 以便复现:
76
+ ```typescript
77
+ fc.assert(property, { seed: 1234567890 })
78
+ ```
79
+
80
+ ## 相关标准
81
+
82
+ - [Mutation Testing 标准](mutation-testing.md) — PBT 的互补
83
+ - [测试标准](testing-standards.md) — 整体测试金字塔
84
+ - [Adversarial Test 标准](adversarial-test.md) — 以安全为导向的 fuzzing
85
+
86
+
87
+ **Scope**: universal
@@ -0,0 +1,207 @@
1
+ ---
2
+ source: ../../../core/release-quality-manifest.md
3
+ source_version: 1.0.0
4
+ translation_version: 1.0.0
5
+ last_synced: 2026-06-10
6
+ source_hash: 9ab9b61963df
7
+ status: current
8
+ ---
9
+
10
+ # Release Quality Manifest(发布质量清单)
11
+
12
+ > **语言**: [English](../../../core/release-quality-manifest.md) | [繁體中文](../../zh-TW/core/release-quality-manifest.md) | 简体中文
13
+
14
+ ## 概述
15
+
16
+ Release Quality Manifest(RQM)是由 CI 为每次发布自动生成的机器可读文档。它将所有质量门禁的结果汇总为单一产物,作为发布就绪度的权威证据——既供内部 go/no-go 自动化使用,也供客户审计使用。
17
+
18
+ ## 为什么需要 Manifest?
19
+
20
+ 没有 manifest 时,质量证据会散落在 CI 日志、覆盖率 HTML 报告、SARIF 文件与容器扫描摘要之中。当客户问"这个发布是怎么测试的?",答案要么是"相信我们",要么是一场 45 分钟的手动汇总作业。
21
+
22
+ Release Quality Manifest 让质量证据变得:
23
+ - **汇总化**:一个文件,所有门禁
24
+ - **机器可读**:下游工具可以解析并强制执行
25
+ - **带时间戳且绑定 commit**:与特定发布产物绑定
26
+ - **可与客户共享**:可直接附加到发布包
27
+
28
+ ## Schema
29
+
30
+ RQM 目前覆盖 **16 个质量维度**,与 `release-readiness-gate.md` 对齐。自动化门禁出现在此处;人工验证的门禁则出现在 Release Readiness Sign-off 文档中。
31
+
32
+ ```yaml
33
+ release: app-commercial-1.2.0
34
+ generated_at: "2026-05-05T04:00:00Z"
35
+ commit: "abc1234"
36
+ gates:
37
+ # ── Automated quality gates ──────────────────────────────
38
+ unit_coverage:
39
+ actual: "73%"
40
+ target: "80%"
41
+ status: warn # within 10pp of target → warn, not fail
42
+ mutation_score:
43
+ actual: "62%"
44
+ target: "60%"
45
+ status: pass
46
+ sca_critical_cve:
47
+ actual: 0
48
+ target: 0
49
+ status: pass
50
+ sca_high_cve:
51
+ actual: 0
52
+ target: 0
53
+ status: pass
54
+ sast_high:
55
+ actual: 0
56
+ target: 0
57
+ status: pass
58
+ e2e_pass_rate:
59
+ actual: "96%"
60
+ target: "95%"
61
+ status: pass
62
+ container_cve_critical:
63
+ actual: 0
64
+ target: 0
65
+ status: pass
66
+ image_signed:
67
+ actual: true
68
+ target: true
69
+ status: pass
70
+ sbom_present:
71
+ actual: true
72
+ target: true
73
+ status: pass
74
+ # ── Extended dimensions (aligned with release-readiness-gate.md) ──
75
+ a11y_critical: # Dimension 3: axe-core critical violations
76
+ actual: 0
77
+ target: 0
78
+ status: pass
79
+ a11y_serious: # Dimension 3: axe-core serious violations
80
+ actual: 0
81
+ target: 0
82
+ status: pass
83
+ contract_drift: # Dimension 4: consumer contracts failing (n/a if no consumers)
84
+ actual: 0
85
+ target: 0
86
+ status: pass # or "n/a" if no API consumers
87
+ cross_flow_cuj_pass_rate: # Dimension 6: critical user journey pass rate
88
+ actual: "100%"
89
+ target: "95%"
90
+ status: pass
91
+ browser_tier1_pass_rate: # Dimension 9: Tier-1 browser matrix (n/a for non-frontend)
92
+ actual: "100%"
93
+ target: "100%"
94
+ status: pass # or "n/a" for CLI/backend
95
+ capacity_headroom_cpu_pct: # Dimension 10: CPU headroom at projected peak (n/a for small projects)
96
+ actual: "42%"
97
+ target: "30%"
98
+ status: pass # or "n/a" for small-scale projects
99
+ smoke_pass_rate: # Dimension 14: post-deploy smoke (populated after staging deploy)
100
+ actual: "100%"
101
+ target: "100%"
102
+ status: pass
103
+ flow_gate_report: # Dimension 16: Multi-Gate Flow verification
104
+ gate_0_complete: true # all flows with ≥3 steps have §2.4 + §9.4 filled
105
+ gate_1_pr_coverage: true # all PRs touching flows include terminal-state tests
106
+ gate_3_ci_pass: true # Decision Table CI all green; branch coverage ≥ 90%
107
+ gate_4_uat_signoff: true # UAT sign-off table signed
108
+ status: pass
109
+ overall: WARN # worst gate status across all dimensions (2 warns, no fails)
110
+ ```
111
+
112
+ ## 状态语义
113
+
114
+ | 状态 | 含义 | 行动 |
115
+ |--------|---------|--------|
116
+ | `pass` | 达到或超过目标 | 无需任何行动 |
117
+ | `warn` | 在可接受偏差范围内(见各门禁策略) | 记录原因;不阻断发布 |
118
+ | `fail` | 低于硬性下限 | **阻断发布** |
119
+
120
+ ### 各门禁硬性下限
121
+
122
+ | 门禁 | Warn 区间 | Fail 阈值 | Release Readiness 维度 |
123
+ |------|-----------|----------------|----------------------------|
124
+ | unit_coverage | target - 10pp 至 target | 低于 target - 10pp | (核心 RQM) |
125
+ | mutation_score | target - 5pp 至 target | 低于 target - 5pp | (核心 RQM) |
126
+ | sca_critical_cve | — | 任何 critical CVE = fail | Dim 2(安全) |
127
+ | container_cve_critical | — | 任何 critical CVE = fail | Dim 2(安全) |
128
+ | e2e_pass_rate | target - 3pp 至 target | 低于 target - 3pp | (核心 RQM) |
129
+ | a11y_critical | — | > 0 = fail | Dim 3(a11y) |
130
+ | a11y_serious | 项目阈值 | 项目阈值 + 1-2 | Dim 3(a11y) |
131
+ | contract_drift | — | 任何红灯 consumer contract = fail(若 n/a:跳过) | Dim 4(Contract) |
132
+ | cross_flow_cuj_pass_rate | 90–95% | < 90% | Dim 6(跨流程回归) |
133
+ | browser_tier1_pass_rate | — | < 100%(若 n/a:跳过) | Dim 9(浏览器兼容性) |
134
+ | capacity_headroom_cpu_pct | 20–30% | < 20%(若 n/a:跳过) | Dim 10(容量) |
135
+ | smoke_pass_rate | — | 任何 smoke 失败 = fail | Dim 14(Smoke) |
136
+ | flow_gate_report | gate_3_ci_pass=false | gate_0_complete=false 或 gate_4_uat_signoff=false | Dim 16(Multi-Gate Flow) |
137
+
138
+ ## 自动生成
139
+
140
+ 在所有门禁 job 完成后于 CI 生成 manifest:
141
+
142
+ ```bash
143
+ #!/usr/bin/env bash
144
+ # scripts/generate-quality-manifest.sh
145
+ set -euo pipefail
146
+
147
+ COVERAGE=$(node -e "
148
+ const r = JSON.parse(require('fs').readFileSync('coverage/coverage-summary.json'));
149
+ console.log(r.total.lines.pct.toFixed(1) + '%')
150
+ ")
151
+
152
+ MUTATION=$(node -e "
153
+ const r = JSON.parse(require('fs').readFileSync('reports/mutation/mutation-testing-report.json'));
154
+ console.log(r.metrics.mutationScore.toFixed(1) + '%')
155
+ ")
156
+
157
+ CRITICAL_CVE=$(jq '[.Results[]?.Vulnerabilities[]? | select(.Severity == "CRITICAL")] | length' trivy-report.json)
158
+
159
+ cat > quality-manifest.yaml <<YAML
160
+ release: ${RELEASE_TAG}
161
+ generated_at: "$(date -u +%Y-%m-%dT%H:%M:%SZ)"
162
+ commit: "${GITHUB_SHA:-$(git rev-parse HEAD)}"
163
+ gates:
164
+ unit_coverage:
165
+ actual: "${COVERAGE}"
166
+ target: "80%"
167
+ status: $([ $(echo "$COVERAGE" | tr -d '%') -ge 80 ] && echo pass || echo warn)
168
+ sca_critical_cve:
169
+ actual: ${CRITICAL_CVE}
170
+ target: 0
171
+ status: $([ "$CRITICAL_CVE" -eq 0 ] && echo pass || echo fail)
172
+ overall: $(grep -q "fail" quality-manifest.yaml && echo FAIL || grep -q "warn" quality-manifest.yaml && echo WARN || echo PASS)
173
+ YAML
174
+ ```
175
+
176
+ ## 面向客户的摘要
177
+
178
+ 在 YAML 之外同时生成 Markdown 表格,以便纳入 release notes:
179
+
180
+ ```markdown
181
+ ## Release Quality Gates — app-commercial-1.2.0
182
+
183
+ | Gate | Actual | Target | Status |
184
+ |------|--------|--------|--------|
185
+ | Unit Test Coverage | 73% | 80% | ⚠️ WARN |
186
+ | Mutation Score | 62% | 60% | ✅ PASS |
187
+ | Critical CVEs | 0 | 0 | ✅ PASS |
188
+ ...
189
+ | **Overall** | | | ⚠️ WARN |
190
+ ```
191
+
192
+ ## 反模式
193
+
194
+ - **手动编写 manifest** —— 违背初衷;必须由工具输出生成
195
+ - **对关键安全门禁使用 warn** —— `sca_critical_cve` 与 `container_cve_critical` 是二元判定
196
+ - **在所有门禁跑完之前生成 manifest** —— 数值必须反映实际结果,而非估计值
197
+ - **未将 manifest 附加到发布产物** —— 只存在于 git 历史中的 manifest 客户无法获取
198
+
199
+ ## 另请参阅
200
+
201
+ - `verification-evidence.ai.yaml` — 审计证据原则
202
+ - `supply-chain-attestation.ai.yaml` — SBOM 与 provenance
203
+ - `testing.ai.yaml` — 整体测试策略
204
+ - `deployment-standards.ai.yaml` — 发布门禁集成
205
+
206
+
207
+ **Scope**: universal