universal-dev-standards 5.17.0 → 6.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (539) hide show
  1. package/bin/uds.js +13 -135
  2. package/bundled/ai/standards/acceptance-criteria-traceability.ai.yaml +13 -4
  3. package/bundled/ai/standards/accessibility-standards.ai.yaml +1 -1
  4. package/bundled/ai/standards/ai-response-navigation.ai.yaml +15 -2
  5. package/bundled/ai/standards/api-design-standards.ai.yaml +27 -4
  6. package/bundled/ai/standards/behavior-snapshot.ai.yaml +86 -9
  7. package/bundled/ai/standards/checkin-standards.ai.yaml +2 -2
  8. package/bundled/ai/standards/code-review.ai.yaml +2 -2
  9. package/bundled/ai/standards/context-aware-loading.ai.yaml +3 -3
  10. package/bundled/ai/standards/data-migration-testing.ai.yaml +79 -3
  11. package/bundled/ai/standards/deprecation-standards.ai.yaml +10 -2
  12. package/bundled/ai/standards/developer-memory.ai.yaml +4 -3
  13. package/bundled/ai/standards/flow-based-testing.ai.yaml +2 -2
  14. package/bundled/ai/standards/forward-derivation-standards.ai.yaml +26 -2
  15. package/bundled/ai/standards/full-coverage-testing.ai.yaml +34 -2
  16. package/bundled/ai/standards/git-worktree.ai.yaml +3 -3
  17. package/bundled/ai/standards/logging.ai.yaml +97 -3
  18. package/bundled/ai/standards/mock-boundary.ai.yaml +48 -2
  19. package/bundled/ai/standards/model-provenance.ai.yaml +297 -0
  20. package/bundled/ai/standards/model-selection.ai.yaml +11 -2
  21. package/bundled/ai/standards/observability-standards.ai.yaml +10 -0
  22. package/bundled/ai/standards/performance-standards.ai.yaml +46 -1
  23. package/bundled/ai/standards/pii-classification.ai.yaml +15 -1
  24. package/bundled/ai/standards/pipeline-security-gates.ai.yaml +10 -0
  25. package/bundled/ai/standards/privacy-standards.ai.yaml +2 -2
  26. package/bundled/ai/standards/project-context-memory.ai.yaml +2 -2
  27. package/bundled/ai/standards/refactoring-standards.ai.yaml +68 -3
  28. package/bundled/ai/standards/resource-cost-boundary.ai.yaml +279 -0
  29. package/bundled/ai/standards/reverse-engineering-standards.ai.yaml +55 -2
  30. package/bundled/ai/standards/security-testing.ai.yaml +13 -2
  31. package/bundled/ai/standards/skill-standard-alignment-check.ai.yaml +37 -2
  32. package/bundled/ai/standards/user-journey-testing.ai.yaml +107 -0
  33. package/bundled/ai/standards/verification-oracle.ai.yaml +278 -0
  34. package/bundled/ai/standards/versioning.ai.yaml +32 -38
  35. package/bundled/core/acceptance-criteria-traceability.md +15 -5
  36. package/bundled/core/accessibility-standards.md +8 -4
  37. package/bundled/core/ai-friendly-architecture.md +1 -1
  38. package/bundled/core/ai-response-navigation.md +31 -3
  39. package/bundled/core/anti-sycophancy-prompting.md +1 -1
  40. package/bundled/core/api-design-standards.md +92 -7
  41. package/bundled/core/audit-trail.md +119 -0
  42. package/bundled/core/behavior-snapshot.md +94 -7
  43. package/bundled/core/browser-compatibility-standards.md +15 -2
  44. package/bundled/core/checkin-standards.md +9 -2
  45. package/bundled/core/code-review-checklist.md +10 -2
  46. package/bundled/core/container-image-standards.md +97 -0
  47. package/bundled/core/context-aware-loading.md +2 -2
  48. package/bundled/core/cost-budget-test.md +1 -1
  49. package/bundled/core/cross-flow-regression.md +3 -2
  50. package/bundled/core/data-contract.md +104 -0
  51. package/bundled/core/data-migration-testing.md +90 -0
  52. package/bundled/core/data-pipeline.md +113 -0
  53. package/bundled/core/deprecation-standards.md +16 -2
  54. package/bundled/core/developer-memory.md +13 -8
  55. package/bundled/core/documentation-writing-standards.md +1 -1
  56. package/bundled/core/error-code-standards.md +4 -3
  57. package/bundled/core/flaky-test-management.md +1 -1
  58. package/bundled/core/flow-based-testing.md +3 -3
  59. package/bundled/core/forward-derivation-standards.md +33 -5
  60. package/bundled/core/full-coverage-testing.md +72 -0
  61. package/bundled/core/git-worktree.md +4 -4
  62. package/bundled/core/guides/performance-guide.md +1 -1
  63. package/bundled/core/guides/security-guide.md +1 -1
  64. package/bundled/core/health-check-standards.md +2 -2
  65. package/bundled/core/iac-design-principles.md +97 -0
  66. package/bundled/core/incident-response.md +119 -0
  67. package/bundled/core/license-compliance.md +2 -0
  68. package/bundled/core/logging-standards.md +78 -2
  69. package/bundled/core/mock-boundary.md +54 -2
  70. package/bundled/core/model-provenance.md +181 -0
  71. package/bundled/core/model-selection.md +27 -2
  72. package/bundled/core/packaging-standards.md +1 -0
  73. package/bundled/core/performance-standards.md +96 -2
  74. package/bundled/core/pii-classification.md +148 -0
  75. package/bundled/core/pipeline-security-gates.md +22 -2
  76. package/bundled/core/postmortem-standards.md +2 -0
  77. package/bundled/core/prd-standards.md +91 -0
  78. package/bundled/core/privacy-standards.md +14 -3
  79. package/bundled/core/product-metrics-standards.md +100 -0
  80. package/bundled/core/project-context-memory.md +8 -2
  81. package/bundled/core/prompt-regression.md +1 -1
  82. package/bundled/core/refactoring-standards.md +44 -3
  83. package/bundled/core/replay-test.md +1 -1
  84. package/bundled/core/resource-cost-boundary.md +180 -0
  85. package/bundled/core/reverse-engineering-standards.md +66 -2
  86. package/bundled/core/runbook.md +113 -0
  87. package/bundled/core/schema-evolution.md +105 -0
  88. package/bundled/core/secret-management-standards.md +110 -0
  89. package/bundled/core/security-testing.md +26 -2
  90. package/bundled/core/self-review-protocol.md +2 -2
  91. package/bundled/core/skill-standard-alignment-check.md +53 -0
  92. package/bundled/core/slo-sli.md +109 -0
  93. package/bundled/core/smoke-test.md +1 -1
  94. package/bundled/core/tech-debt-standards.md +1 -1
  95. package/bundled/core/test-data-standards.md +2 -2
  96. package/bundled/core/user-journey-testing.md +102 -0
  97. package/bundled/core/user-story-mapping.md +96 -0
  98. package/bundled/core/verification-oracle.md +167 -0
  99. package/bundled/core/versioning.md +133 -109
  100. package/bundled/locales/COVERAGE.md +84 -73
  101. package/bundled/locales/zh-CN/CHANGELOG.md +71 -6
  102. package/bundled/locales/zh-CN/CLAUDE.md +1 -1
  103. package/bundled/locales/zh-CN/README.md +22 -9
  104. package/bundled/locales/zh-CN/SECURITY.md +1 -1
  105. package/bundled/locales/zh-CN/adoption/DAILY-WORKFLOW-GUIDE.md +2 -2
  106. package/bundled/locales/zh-CN/core/acceptance-criteria-traceability.md +4 -6
  107. package/bundled/locales/zh-CN/core/accessibility-standards.md +1 -1
  108. package/bundled/locales/zh-CN/core/adversarial-test.md +226 -0
  109. package/bundled/locales/zh-CN/core/agent-behavior-discipline.md +187 -0
  110. package/bundled/locales/zh-CN/core/ai-response-navigation.md +32 -6
  111. package/bundled/locales/zh-CN/core/anti-sycophancy-prompting.md +1 -1
  112. package/bundled/locales/zh-CN/core/api-design-standards.md +1 -1
  113. package/bundled/locales/zh-CN/core/behavior-snapshot.md +335 -0
  114. package/bundled/locales/zh-CN/core/browser-compatibility-standards.md +229 -0
  115. package/bundled/locales/zh-CN/core/cd-deployment-strategies.md +135 -0
  116. package/bundled/locales/zh-CN/core/chaos-injection-tests.md +130 -0
  117. package/bundled/locales/zh-CN/core/checkin-standards.md +1 -1
  118. package/bundled/locales/zh-CN/core/code-review-checklist.md +1 -1
  119. package/bundled/locales/zh-CN/core/container-security.md +535 -0
  120. package/bundled/locales/zh-CN/core/context-aware-loading.md +1 -1
  121. package/bundled/locales/zh-CN/core/contract-testing-standards.md +191 -0
  122. package/bundled/locales/zh-CN/core/cost-budget-test.md +86 -0
  123. package/bundled/locales/zh-CN/core/cross-flow-regression.md +199 -0
  124. package/bundled/locales/zh-CN/core/data-migration-testing.md +217 -0
  125. package/bundled/locales/zh-CN/core/deployment-standards.md +328 -9
  126. package/bundled/locales/zh-CN/core/deprecation-standards.md +1 -1
  127. package/bundled/locales/zh-CN/core/developer-memory.md +2 -2
  128. package/bundled/locales/zh-CN/core/disaster-recovery-drill.md +87 -0
  129. package/bundled/locales/zh-CN/core/documentation-structure.md +1 -1
  130. package/bundled/locales/zh-CN/core/documentation-writing-standards.md +1 -1
  131. package/bundled/locales/zh-CN/core/error-code-standards.md +2 -2
  132. package/bundled/locales/zh-CN/core/feature-manifest-standard.md +222 -0
  133. package/bundled/locales/zh-CN/core/flaky-test-management.md +87 -0
  134. package/bundled/locales/zh-CN/core/flow-based-testing.md +284 -0
  135. package/bundled/locales/zh-CN/core/forward-derivation-standards.md +3 -4
  136. package/bundled/locales/zh-CN/core/full-coverage-testing.md +197 -0
  137. package/bundled/locales/zh-CN/core/git-worktree.md +1 -1
  138. package/bundled/locales/zh-CN/core/governance-layer.md +160 -0
  139. package/bundled/locales/zh-CN/core/guides/performance-guide.md +515 -0
  140. package/bundled/locales/zh-CN/core/guides/security-guide.md +494 -0
  141. package/bundled/locales/zh-CN/core/knowledge-graph-memory.md +128 -0
  142. package/bundled/locales/zh-CN/core/license-compliance.md +129 -0
  143. package/bundled/locales/zh-CN/core/llm-output-validation.md +192 -0
  144. package/bundled/locales/zh-CN/core/logging-standards.md +130 -8
  145. package/bundled/locales/zh-CN/core/mock-boundary.md +109 -0
  146. package/bundled/locales/zh-CN/core/model-selection.md +28 -5
  147. package/bundled/locales/zh-CN/core/mutation-testing.md +106 -0
  148. package/bundled/locales/zh-CN/core/no-cicd-deployment.md +219 -0
  149. package/bundled/locales/zh-CN/core/packaging-standards.md +76 -5
  150. package/bundled/locales/zh-CN/core/pipeline-security-gates.md +126 -0
  151. package/bundled/locales/zh-CN/core/policy-as-code-testing.md +203 -0
  152. package/bundled/locales/zh-CN/core/privacy-standards.md +1 -1
  153. package/bundled/locales/zh-CN/core/project-context-memory.md +1 -1
  154. package/bundled/locales/zh-CN/core/prompt-regression.md +88 -0
  155. package/bundled/locales/zh-CN/core/property-based-testing.md +87 -0
  156. package/bundled/locales/zh-CN/core/release-quality-manifest.md +207 -0
  157. package/bundled/locales/zh-CN/core/release-readiness-gate.md +193 -0
  158. package/bundled/locales/zh-CN/core/replay-test.md +102 -0
  159. package/bundled/locales/zh-CN/core/reverse-engineering-standards.md +46 -1
  160. package/bundled/locales/zh-CN/core/rollback-standards.md +120 -0
  161. package/bundled/locales/zh-CN/core/sast-advanced.md +309 -0
  162. package/bundled/locales/zh-CN/core/secure-op.md +328 -0
  163. package/bundled/locales/zh-CN/core/security-testing.md +96 -0
  164. package/bundled/locales/zh-CN/core/self-review-protocol.md +167 -0
  165. package/bundled/locales/zh-CN/core/server-ops-security.md +507 -0
  166. package/bundled/locales/zh-CN/core/smoke-test.md +79 -0
  167. package/bundled/locales/zh-CN/core/spec-driven-development.md +39 -3
  168. package/bundled/locales/zh-CN/core/supply-chain-attestation.md +131 -0
  169. package/bundled/locales/zh-CN/core/versioning.md +1 -1
  170. package/bundled/locales/zh-CN/docs/CHEATSHEET.md +31 -6
  171. package/bundled/locales/zh-CN/docs/FEATURE-REFERENCE.md +61 -34
  172. package/bundled/locales/zh-CN/docs/MIGRATION-v6.md +88 -0
  173. package/bundled/locales/zh-CN/docs/USAGE-MODES-COMPARISON.md +2 -2
  174. package/bundled/locales/zh-CN/docs/USER-MANUAL.md +14 -14
  175. package/bundled/locales/zh-CN/docs/specs/system/memory-adoption-strategy.md +105 -0
  176. package/bundled/locales/zh-CN/docs/user/FAQ.md +132 -0
  177. package/bundled/locales/zh-CN/docs/user/GETTING-STARTED.md +144 -0
  178. package/bundled/locales/zh-CN/docs/user/GLOSSARY.md +178 -0
  179. package/bundled/locales/zh-CN/docs/user/README.md +70 -0
  180. package/bundled/locales/zh-CN/docs/user/TROUBLESHOOTING.md +190 -0
  181. package/bundled/locales/zh-CN/integrations/github-copilot/COPILOT-CHAT-REFERENCE.md +1 -1
  182. package/bundled/locales/zh-CN/integrations/github-copilot/README.md +1 -1
  183. package/bundled/locales/zh-CN/integrations/github-copilot/skills-mapping.md +3 -3
  184. package/bundled/locales/zh-CN/integrations/opencode/skills-mapping.md +3 -3
  185. package/bundled/locales/zh-CN/methodologies/guides/sdd-guide.md +836 -0
  186. package/bundled/locales/zh-CN/options/changelog/auto-generated.md +166 -0
  187. package/bundled/locales/zh-CN/options/changelog/keep-a-changelog.md +140 -0
  188. package/bundled/locales/zh-CN/options/code-review/automated-review.md +214 -0
  189. package/bundled/locales/zh-CN/options/code-review/pair-programming.md +166 -0
  190. package/bundled/locales/zh-CN/options/code-review/pr-review.md +167 -0
  191. package/bundled/locales/zh-CN/options/documentation/api-docs.md +191 -0
  192. package/bundled/locales/zh-CN/options/documentation/markdown-docs.md +150 -0
  193. package/bundled/locales/zh-CN/options/documentation/wiki-style.md +131 -0
  194. package/bundled/locales/zh-CN/options/project-structure/kotlin.md +144 -0
  195. package/bundled/locales/zh-CN/options/project-structure/php.md +168 -0
  196. package/bundled/locales/zh-CN/options/project-structure/ruby.md +156 -0
  197. package/bundled/locales/zh-CN/options/project-structure/rust.md +136 -0
  198. package/bundled/locales/zh-CN/options/project-structure/swift.md +165 -0
  199. package/bundled/locales/zh-CN/options/testing/contract-testing.md +237 -0
  200. package/bundled/locales/zh-CN/options/testing/industry-pyramid.md +200 -0
  201. package/bundled/locales/zh-CN/options/testing/istqb-framework.md +144 -0
  202. package/bundled/locales/zh-CN/options/testing/performance-testing.md +251 -0
  203. package/bundled/locales/zh-CN/options/testing/security-testing.md +192 -0
  204. package/bundled/locales/zh-CN/skills/README.md +89 -126
  205. package/bundled/locales/zh-CN/skills/ac-coverage/SKILL.md +5 -7
  206. package/bundled/locales/zh-CN/skills/adr-assistant/SKILL.md +1 -1
  207. package/bundled/locales/zh-CN/skills/agents/code-architect.md +263 -0
  208. package/bundled/locales/zh-CN/skills/agents/doc-writer.md +410 -0
  209. package/bundled/locales/zh-CN/skills/agents/reviewer.md +357 -0
  210. package/bundled/locales/zh-CN/skills/agents/spec-analyst.md +410 -0
  211. package/bundled/locales/zh-CN/skills/agents/test-specialist.md +368 -0
  212. package/bundled/locales/zh-CN/skills/ai-collaboration-standards/SKILL.md +2 -2
  213. package/bundled/locales/zh-CN/skills/ai-friendly-architecture/SKILL.md +2 -2
  214. package/bundled/locales/zh-CN/skills/ai-instruction-standards/SKILL.md +1 -1
  215. package/bundled/locales/zh-CN/skills/atdd-assistant/acceptance-criteria-guide.md +1 -1
  216. package/bundled/locales/zh-CN/skills/atdd-assistant/atdd-workflow.md +3 -4
  217. package/bundled/locales/zh-CN/skills/audit-assistant/SKILL.md +2 -2
  218. package/bundled/locales/zh-CN/skills/bdd-assistant/guide.md +1 -2
  219. package/bundled/locales/zh-CN/skills/brainstorm-assistant/SKILL.md +109 -13
  220. package/bundled/locales/zh-CN/skills/brainstorm-assistant/guide.md +30 -8
  221. package/bundled/locales/zh-CN/skills/checkin-assistant/SKILL.md +1 -1
  222. package/bundled/locales/zh-CN/skills/ci-cd-assistant/SKILL.md +50 -0
  223. package/bundled/locales/zh-CN/skills/code-review-assistant/SKILL.md +5 -5
  224. package/bundled/locales/zh-CN/skills/commands/ac-coverage.md +1 -1
  225. package/bundled/locales/zh-CN/skills/commands/atdd.md +3 -3
  226. package/bundled/locales/zh-CN/skills/commands/bdd.md +2 -2
  227. package/bundled/locales/zh-CN/skills/commands/brainstorm.md +26 -17
  228. package/bundled/locales/zh-CN/skills/commands/{review.md → code-review.md} +4 -4
  229. package/bundled/locales/zh-CN/skills/commands/derive-all.md +1 -1
  230. package/bundled/locales/zh-CN/skills/commands/derive-atdd.md +1 -1
  231. package/bundled/locales/zh-CN/skills/commands/derive-bdd.md +2 -3
  232. package/bundled/locales/zh-CN/skills/commands/derive-tdd.md +1 -1
  233. package/bundled/locales/zh-CN/skills/commands/derive.md +1 -1
  234. package/bundled/locales/zh-CN/skills/commands/dev-workflow.md +2 -2
  235. package/bundled/locales/zh-CN/skills/commands/methodology.md +4 -4
  236. package/bundled/locales/zh-CN/skills/commands/pr.md +1 -1
  237. package/bundled/locales/zh-CN/skills/commands/tdd.md +1 -1
  238. package/bundled/locales/zh-CN/skills/commit-standards/SKILL.md +1 -1
  239. package/bundled/locales/zh-CN/skills/contract-test-assistant/SKILL.md +1 -1
  240. package/bundled/locales/zh-CN/skills/dev-methodology/SKILL.md +1 -1
  241. package/bundled/locales/zh-CN/skills/dev-methodology/create-methodology.md +456 -0
  242. package/bundled/locales/zh-CN/skills/dev-methodology/guide.md +6 -6
  243. package/bundled/locales/zh-CN/skills/dev-methodology/runtime.md +296 -0
  244. package/bundled/locales/zh-CN/skills/dev-workflow-guide/SKILL.md +5 -5
  245. package/bundled/locales/zh-CN/skills/docs-generator/SKILL.md +1 -1
  246. package/bundled/locales/zh-CN/skills/e2e-assistant/SKILL.md +1 -1
  247. package/bundled/locales/zh-CN/skills/incident-response-assistant/SKILL.md +2 -2
  248. package/bundled/locales/zh-CN/skills/journey-test-assistant/SKILL.md +1 -1
  249. package/bundled/locales/zh-CN/skills/logging-guide/SKILL.md +146 -142
  250. package/bundled/locales/zh-CN/skills/migration-assistant/SKILL.md +1 -1
  251. package/bundled/locales/zh-CN/skills/observability-assistant/guide.md +1 -1
  252. package/bundled/locales/zh-CN/skills/pr-automation-assistant/SKILL.md +1 -1
  253. package/bundled/locales/zh-CN/skills/project-discovery/guide.md +2 -2
  254. package/bundled/locales/zh-CN/skills/reverse-engineer/SKILL.md +1 -1
  255. package/bundled/locales/zh-CN/skills/runbook-assistant/guide.md +1 -1
  256. package/bundled/locales/zh-CN/skills/security-assistant/SKILL.md +1 -1
  257. package/bundled/locales/zh-CN/skills/skill-builder/SKILL.md +3 -3
  258. package/bundled/locales/zh-CN/skills/slo-assistant/guide.md +1 -1
  259. package/bundled/locales/zh-CN/skills/spec-derivation/SKILL.md +1 -1
  260. package/bundled/locales/zh-CN/skills/spec-derivation/guide.md +8 -9
  261. package/bundled/locales/zh-CN/skills/spec-driven-dev/SKILL.md +2 -2
  262. package/bundled/locales/zh-CN/skills/sweep/SKILL.md +1 -1
  263. package/bundled/locales/zh-CN/skills/tdd-assistant/SKILL.md +1 -1
  264. package/bundled/locales/zh-CN/skills/testing-guide/SKILL.md +2 -2
  265. package/bundled/locales/zh-CN/skills/testing-guide/testing-theory.md +2298 -0
  266. package/bundled/locales/zh-CN/skills/workflows/README.md +451 -0
  267. package/bundled/locales/zh-TW/CHANGELOG.md +71 -6
  268. package/bundled/locales/zh-TW/CLAUDE.md +1 -1
  269. package/bundled/locales/zh-TW/MAINTENANCE.md +25 -2
  270. package/bundled/locales/zh-TW/README.md +22 -9
  271. package/bundled/locales/zh-TW/SECURITY.md +1 -1
  272. package/bundled/locales/zh-TW/adoption/DAILY-WORKFLOW-GUIDE.md +2 -2
  273. package/bundled/locales/zh-TW/ai/standards/versioning.ai.yaml +8 -48
  274. package/bundled/locales/zh-TW/core/acceptance-criteria-traceability.md +4 -6
  275. package/bundled/locales/zh-TW/core/accessibility-standards.md +1 -1
  276. package/bundled/locales/zh-TW/core/adversarial-test.md +226 -0
  277. package/bundled/locales/zh-TW/core/agent-behavior-discipline.md +187 -0
  278. package/bundled/locales/zh-TW/core/ai-response-navigation.md +32 -6
  279. package/bundled/locales/zh-TW/core/anti-sycophancy-prompting.md +1 -1
  280. package/bundled/locales/zh-TW/core/api-design-standards.md +91 -9
  281. package/bundled/locales/zh-TW/core/audit-trail.md +110 -0
  282. package/bundled/locales/zh-TW/core/behavior-snapshot.md +335 -0
  283. package/bundled/locales/zh-TW/core/browser-compatibility-standards.md +1 -0
  284. package/bundled/locales/zh-TW/core/cd-deployment-strategies.md +135 -0
  285. package/bundled/locales/zh-TW/core/chaos-injection-tests.md +130 -0
  286. package/bundled/locales/zh-TW/core/checkin-standards.md +1 -1
  287. package/bundled/locales/zh-TW/core/code-review-checklist.md +1 -1
  288. package/bundled/locales/zh-TW/core/container-image-standards.md +93 -0
  289. package/bundled/locales/zh-TW/core/container-security.md +535 -0
  290. package/bundled/locales/zh-TW/core/cost-budget-test.md +86 -0
  291. package/bundled/locales/zh-TW/core/cross-flow-regression.md +1 -0
  292. package/bundled/locales/zh-TW/core/data-contract.md +101 -0
  293. package/bundled/locales/zh-TW/core/data-migration-testing.md +217 -0
  294. package/bundled/locales/zh-TW/core/data-pipeline.md +105 -0
  295. package/bundled/locales/zh-TW/core/deployment-standards.md +363 -25
  296. package/bundled/locales/zh-TW/core/deprecation-standards.md +17 -4
  297. package/bundled/locales/zh-TW/core/developer-memory.md +2 -2
  298. package/bundled/locales/zh-TW/core/disaster-recovery-drill.md +87 -0
  299. package/bundled/locales/zh-TW/core/documentation-writing-standards.md +1 -1
  300. package/bundled/locales/zh-TW/core/error-code-standards.md +2 -2
  301. package/bundled/locales/zh-TW/core/feature-manifest-standard.md +222 -0
  302. package/bundled/locales/zh-TW/core/flaky-test-management.md +87 -0
  303. package/bundled/locales/zh-TW/core/flow-based-testing.md +284 -0
  304. package/bundled/locales/zh-TW/core/forward-derivation-standards.md +3 -4
  305. package/bundled/locales/zh-TW/core/full-coverage-testing.md +250 -0
  306. package/bundled/locales/zh-TW/core/git-worktree.md +1 -1
  307. package/bundled/locales/zh-TW/core/guides/performance-guide.md +515 -0
  308. package/bundled/locales/zh-TW/core/guides/security-guide.md +494 -0
  309. package/bundled/locales/zh-TW/core/iac-design-principles.md +90 -0
  310. package/bundled/locales/zh-TW/core/incident-response.md +111 -0
  311. package/bundled/locales/zh-TW/core/license-compliance.md +129 -0
  312. package/bundled/locales/zh-TW/core/llm-output-validation.md +192 -0
  313. package/bundled/locales/zh-TW/core/logging-standards.md +208 -4
  314. package/bundled/locales/zh-TW/core/mock-boundary.md +161 -0
  315. package/bundled/locales/zh-TW/core/model-provenance.md +173 -0
  316. package/bundled/locales/zh-TW/core/model-selection.md +28 -5
  317. package/bundled/locales/zh-TW/core/mutation-testing.md +106 -0
  318. package/bundled/locales/zh-TW/core/no-cicd-deployment.md +219 -0
  319. package/bundled/locales/zh-TW/core/packaging-standards.md +76 -5
  320. package/bundled/locales/zh-TW/core/performance-standards.md +84 -5
  321. package/bundled/locales/zh-TW/core/pii-classification.md +102 -0
  322. package/bundled/locales/zh-TW/core/pipeline-security-gates.md +126 -0
  323. package/bundled/locales/zh-TW/core/policy-as-code-testing.md +203 -0
  324. package/bundled/locales/zh-TW/core/prd-standards.md +88 -0
  325. package/bundled/locales/zh-TW/core/privacy-standards.md +1 -1
  326. package/bundled/locales/zh-TW/core/product-metrics-standards.md +96 -0
  327. package/bundled/locales/zh-TW/core/project-context-memory.md +1 -1
  328. package/bundled/locales/zh-TW/core/prompt-regression.md +88 -0
  329. package/bundled/locales/zh-TW/core/property-based-testing.md +87 -0
  330. package/bundled/locales/zh-TW/core/refactoring-standards.md +43 -6
  331. package/bundled/locales/zh-TW/core/release-quality-manifest.md +207 -0
  332. package/bundled/locales/zh-TW/core/replay-test.md +102 -0
  333. package/bundled/locales/zh-TW/core/resource-cost-boundary.md +175 -0
  334. package/bundled/locales/zh-TW/core/reverse-engineering-standards.md +64 -5
  335. package/bundled/locales/zh-TW/core/rollback-standards.md +120 -0
  336. package/bundled/locales/zh-TW/core/runbook.md +110 -0
  337. package/bundled/locales/zh-TW/core/sast-advanced.md +309 -0
  338. package/bundled/locales/zh-TW/core/schema-evolution.md +98 -0
  339. package/bundled/locales/zh-TW/core/secret-management-standards.md +101 -0
  340. package/bundled/locales/zh-TW/core/secure-op.md +328 -0
  341. package/bundled/locales/zh-TW/core/security-testing.md +96 -0
  342. package/bundled/locales/zh-TW/core/self-review-protocol.md +2 -2
  343. package/bundled/locales/zh-TW/core/server-ops-security.md +507 -0
  344. package/bundled/locales/zh-TW/core/slo-sli.md +108 -0
  345. package/bundled/locales/zh-TW/core/smoke-test.md +79 -0
  346. package/bundled/locales/zh-TW/core/spec-driven-development.md +19 -11
  347. package/bundled/locales/zh-TW/core/supply-chain-attestation.md +131 -0
  348. package/bundled/locales/zh-TW/core/user-journey-testing.md +111 -0
  349. package/bundled/locales/zh-TW/core/user-story-mapping.md +94 -0
  350. package/bundled/locales/zh-TW/core/verification-oracle.md +159 -0
  351. package/bundled/locales/zh-TW/core/versioning.md +112 -112
  352. package/bundled/locales/zh-TW/docs/CHEATSHEET.md +31 -6
  353. package/bundled/locales/zh-TW/docs/DEV-WORKFLOW-MAPPING.md +6 -6
  354. package/bundled/locales/zh-TW/docs/FEATURE-REFERENCE.md +61 -34
  355. package/bundled/locales/zh-TW/docs/MIGRATION-v6.md +88 -0
  356. package/bundled/locales/zh-TW/docs/USAGE-MODES-COMPARISON.md +2 -2
  357. package/bundled/locales/zh-TW/docs/USER-MANUAL.md +14 -14
  358. package/bundled/locales/zh-TW/docs/specs/system/memory-adoption-strategy.md +105 -0
  359. package/bundled/locales/zh-TW/docs/user/FAQ.md +132 -0
  360. package/bundled/locales/zh-TW/docs/user/GETTING-STARTED.md +144 -0
  361. package/bundled/locales/zh-TW/docs/user/GLOSSARY.md +178 -0
  362. package/bundled/locales/zh-TW/docs/user/README.md +70 -0
  363. package/bundled/locales/zh-TW/docs/user/TROUBLESHOOTING.md +190 -0
  364. package/bundled/locales/zh-TW/integrations/github-copilot/COPILOT-CHAT-REFERENCE.md +1 -1
  365. package/bundled/locales/zh-TW/integrations/github-copilot/README.md +1 -1
  366. package/bundled/locales/zh-TW/integrations/github-copilot/skills-mapping.md +3 -3
  367. package/bundled/locales/zh-TW/integrations/opencode/skills-mapping.md +3 -3
  368. package/bundled/locales/zh-TW/methodologies/guides/sdd-guide.md +523 -26
  369. package/bundled/locales/zh-TW/options/changelog/auto-generated.md +166 -0
  370. package/bundled/locales/zh-TW/options/changelog/keep-a-changelog.md +140 -0
  371. package/bundled/locales/zh-TW/options/code-review/automated-review.md +214 -0
  372. package/bundled/locales/zh-TW/options/code-review/pair-programming.md +166 -0
  373. package/bundled/locales/zh-TW/options/code-review/pr-review.md +167 -0
  374. package/bundled/locales/zh-TW/options/documentation/api-docs.md +191 -0
  375. package/bundled/locales/zh-TW/options/documentation/markdown-docs.md +150 -0
  376. package/bundled/locales/zh-TW/options/documentation/wiki-style.md +131 -0
  377. package/bundled/locales/zh-TW/options/project-structure/kotlin.md +144 -0
  378. package/bundled/locales/zh-TW/options/project-structure/php.md +168 -0
  379. package/bundled/locales/zh-TW/options/project-structure/ruby.md +156 -0
  380. package/bundled/locales/zh-TW/options/project-structure/rust.md +136 -0
  381. package/bundled/locales/zh-TW/options/project-structure/swift.md +165 -0
  382. package/bundled/locales/zh-TW/options/testing/contract-testing.md +237 -0
  383. package/bundled/locales/zh-TW/options/testing/industry-pyramid.md +200 -0
  384. package/bundled/locales/zh-TW/options/testing/istqb-framework.md +144 -0
  385. package/bundled/locales/zh-TW/options/testing/performance-testing.md +251 -0
  386. package/bundled/locales/zh-TW/options/testing/security-testing.md +192 -0
  387. package/bundled/locales/zh-TW/skills/README.md +91 -128
  388. package/bundled/locales/zh-TW/skills/ac-coverage/SKILL.md +4 -6
  389. package/bundled/locales/zh-TW/skills/adr-assistant/SKILL.md +1 -1
  390. package/bundled/locales/zh-TW/skills/agents/code-architect.md +263 -0
  391. package/bundled/locales/zh-TW/skills/agents/doc-writer.md +410 -0
  392. package/bundled/locales/zh-TW/skills/agents/reviewer.md +357 -0
  393. package/bundled/locales/zh-TW/skills/agents/spec-analyst.md +410 -0
  394. package/bundled/locales/zh-TW/skills/agents/test-specialist.md +368 -0
  395. package/bundled/locales/zh-TW/skills/ai-collaboration-standards/SKILL.md +2 -2
  396. package/bundled/locales/zh-TW/skills/ai-friendly-architecture/SKILL.md +2 -2
  397. package/bundled/locales/zh-TW/skills/ai-instruction-standards/SKILL.md +1 -1
  398. package/bundled/locales/zh-TW/skills/atdd-assistant/SKILL.md +2 -0
  399. package/bundled/locales/zh-TW/skills/atdd-assistant/acceptance-criteria-guide.md +1 -1
  400. package/bundled/locales/zh-TW/skills/atdd-assistant/atdd-workflow.md +3 -4
  401. package/bundled/locales/zh-TW/skills/audit-assistant/SKILL.md +2 -2
  402. package/bundled/locales/zh-TW/skills/bdd-assistant/SKILL.md +2 -0
  403. package/bundled/locales/zh-TW/skills/bdd-assistant/guide.md +1 -2
  404. package/bundled/locales/zh-TW/skills/brainstorm-assistant/SKILL.md +110 -14
  405. package/bundled/locales/zh-TW/skills/brainstorm-assistant/guide.md +31 -7
  406. package/bundled/locales/zh-TW/skills/checkin-assistant/SKILL.md +3 -1
  407. package/bundled/locales/zh-TW/skills/ci-cd-assistant/SKILL.md +50 -0
  408. package/bundled/locales/zh-TW/skills/code-review-assistant/SKILL.md +7 -5
  409. package/bundled/locales/zh-TW/skills/commands/ac-coverage.md +1 -1
  410. package/bundled/locales/zh-TW/skills/commands/atdd.md +3 -3
  411. package/bundled/locales/zh-TW/skills/commands/bdd.md +2 -2
  412. package/bundled/locales/zh-TW/skills/commands/brainstorm.md +26 -17
  413. package/bundled/locales/zh-TW/skills/commands/{review.md → code-review.md} +5 -5
  414. package/bundled/locales/zh-TW/skills/commands/derive-all.md +1 -1
  415. package/bundled/locales/zh-TW/skills/commands/derive-atdd.md +1 -1
  416. package/bundled/locales/zh-TW/skills/commands/derive-bdd.md +2 -3
  417. package/bundled/locales/zh-TW/skills/commands/derive-tdd.md +1 -1
  418. package/bundled/locales/zh-TW/skills/commands/derive.md +1 -1
  419. package/bundled/locales/zh-TW/skills/commands/dev-workflow.md +2 -2
  420. package/bundled/locales/zh-TW/skills/commands/methodology.md +4 -4
  421. package/bundled/locales/zh-TW/skills/commands/pr.md +1 -1
  422. package/bundled/locales/zh-TW/skills/commands/tdd.md +1 -1
  423. package/bundled/locales/zh-TW/skills/commit-standards/SKILL.md +1 -1
  424. package/bundled/locales/zh-TW/skills/contract-test-assistant/SKILL.md +1 -1
  425. package/bundled/locales/zh-TW/skills/dev-methodology/create-methodology.md +456 -0
  426. package/bundled/locales/zh-TW/skills/dev-methodology/guide.md +5 -5
  427. package/bundled/locales/zh-TW/skills/dev-methodology/runtime.md +296 -0
  428. package/bundled/locales/zh-TW/skills/dev-workflow-guide/SKILL.md +5 -5
  429. package/bundled/locales/zh-TW/skills/docs-generator/SKILL.md +1 -1
  430. package/bundled/locales/zh-TW/skills/e2e-assistant/SKILL.md +1 -1
  431. package/bundled/locales/zh-TW/skills/incident-response-assistant/SKILL.md +2 -2
  432. package/bundled/locales/zh-TW/skills/logging-guide/SKILL.md +29 -27
  433. package/bundled/locales/zh-TW/skills/migration-assistant/SKILL.md +1 -1
  434. package/bundled/locales/zh-TW/skills/pr-automation-assistant/SKILL.md +3 -1
  435. package/bundled/locales/zh-TW/skills/project-discovery/guide.md +2 -2
  436. package/bundled/locales/zh-TW/skills/reverse-engineer/SKILL.md +1 -1
  437. package/bundled/locales/zh-TW/skills/security-assistant/SKILL.md +1 -1
  438. package/bundled/locales/zh-TW/skills/spec-derivation/guide.md +7 -8
  439. package/bundled/locales/zh-TW/skills/spec-driven-dev/SKILL.md +2 -2
  440. package/bundled/locales/zh-TW/skills/sweep/SKILL.md +1 -1
  441. package/bundled/locales/zh-TW/skills/tdd-assistant/SKILL.md +3 -1
  442. package/bundled/locales/zh-TW/skills/testing-guide/SKILL.md +2 -2
  443. package/bundled/locales/zh-TW/skills/testing-guide/testing-theory.md +2298 -0
  444. package/bundled/locales/zh-TW/skills/workflows/README.md +451 -0
  445. package/bundled/skills/README.md +1 -1
  446. package/bundled/skills/ac-coverage/SKILL.md +17 -7
  447. package/bundled/skills/adr-assistant/SKILL.md +1 -1
  448. package/bundled/skills/agents/code-architect.md +1 -1
  449. package/bundled/skills/agents/doc-writer.md +1 -1
  450. package/bundled/skills/agents/reviewer.md +2 -2
  451. package/bundled/skills/agents/spec-analyst.md +1 -1
  452. package/bundled/skills/agents/test-specialist.md +1 -1
  453. package/bundled/skills/ai-collaboration-standards/SKILL.md +2 -2
  454. package/bundled/skills/ai-friendly-architecture/SKILL.md +2 -2
  455. package/bundled/skills/ai-instruction-standards/SKILL.md +1 -1
  456. package/bundled/skills/atdd-assistant/SKILL.md +7 -0
  457. package/bundled/skills/atdd-assistant/acceptance-criteria-guide.md +1 -1
  458. package/bundled/skills/atdd-assistant/atdd-workflow.md +6 -8
  459. package/bundled/skills/audit-assistant/SKILL.md +2 -2
  460. package/bundled/skills/bdd-assistant/SKILL.md +7 -0
  461. package/bundled/skills/bdd-assistant/guide.md +1 -2
  462. package/bundled/skills/brainstorm-assistant/SKILL.md +133 -11
  463. package/bundled/skills/brainstorm-assistant/guide.md +33 -5
  464. package/bundled/skills/checkin-assistant/SKILL.md +8 -1
  465. package/bundled/skills/ci-cd-assistant/SKILL.md +57 -0
  466. package/bundled/skills/code-review-assistant/SKILL.md +15 -8
  467. package/bundled/skills/commands/COMMAND-FAMILY-OVERVIEW.md +2 -2
  468. package/bundled/skills/commands/COMMAND-INDEX.json +3 -3
  469. package/bundled/skills/commands/README.md +2 -2
  470. package/bundled/skills/commands/ac-coverage.md +1 -1
  471. package/bundled/skills/commands/atdd.md +2 -2
  472. package/bundled/skills/commands/bdd.md +2 -2
  473. package/bundled/skills/commands/brainstorm.md +25 -14
  474. package/bundled/skills/commands/{review.md → code-review.md} +6 -6
  475. package/bundled/skills/commands/derive-all.md +1 -1
  476. package/bundled/skills/commands/derive-atdd.md +1 -1
  477. package/bundled/skills/commands/derive-bdd.md +2 -3
  478. package/bundled/skills/commands/derive-tdd.md +1 -1
  479. package/bundled/skills/commands/derive.md +1 -1
  480. package/bundled/skills/commands/dev-workflow.md +1 -1
  481. package/bundled/skills/commands/journey-test.md +45 -0
  482. package/bundled/skills/commands/methodology.md +4 -4
  483. package/bundled/skills/commands/pr.md +1 -1
  484. package/bundled/skills/commands/skill-builder.md +42 -0
  485. package/bundled/skills/commands/tdd.md +1 -1
  486. package/bundled/skills/dev-methodology/create-methodology.md +1 -1
  487. package/bundled/skills/dev-methodology/guide.md +1 -1
  488. package/bundled/skills/dev-methodology/runtime.md +1 -1
  489. package/bundled/skills/dev-workflow-guide/SKILL.md +3 -3
  490. package/bundled/skills/dev-workflow-guide/workflow-phases.md +3 -3
  491. package/bundled/skills/docs-generator/SKILL.md +3 -3
  492. package/bundled/skills/incident-response-assistant/SKILL.md +2 -2
  493. package/bundled/skills/logging-guide/SKILL.md +38 -2
  494. package/bundled/skills/migration-assistant/SKILL.md +226 -0
  495. package/bundled/skills/observability-assistant/SKILL.md +74 -0
  496. package/bundled/skills/pr-automation-assistant/SKILL.md +5 -1
  497. package/bundled/skills/project-discovery/guide.md +2 -2
  498. package/bundled/skills/push/SKILL.md +1 -1
  499. package/bundled/skills/release-standards/SKILL.md +19 -5
  500. package/bundled/skills/security-assistant/SKILL.md +1 -1
  501. package/bundled/skills/skill-builder/SKILL.md +1 -1
  502. package/bundled/skills/spec-derivation/guide.md +3 -4
  503. package/bundled/skills/spec-driven-dev/SKILL.md +2 -2
  504. package/bundled/skills/sweep/SKILL.md +1 -1
  505. package/bundled/skills/tdd-assistant/SKILL.md +8 -1
  506. package/bundled/skills/testing-guide/SKILL.md +1 -1
  507. package/bundled/skills/testing-guide/testing-theory.md +1 -1
  508. package/bundled/skills/workflows/README.md +2 -2
  509. package/package.json +3 -3
  510. package/src/commands/audit.js +30 -9
  511. package/src/commands/config.js +33 -2
  512. package/src/commands/hitl.js +14 -1
  513. package/src/commands/init.js +110 -58
  514. package/src/commands/quickstart.js +1 -2
  515. package/src/commands/release.js +51 -6
  516. package/src/commands/run-intent.js +9 -0
  517. package/src/commands/spec-split.js +27 -2
  518. package/src/commands/update.js +22 -6
  519. package/src/config/ai-agent-paths.js +3 -1
  520. package/src/i18n/messages.js +3 -102
  521. package/src/missions/MissionManager.js +44 -12
  522. package/src/utils/build-manifest.js +35 -3
  523. package/src/utils/friction-detector.js +71 -22
  524. package/src/utils/health-checker.js +29 -2
  525. package/src/utils/transaction.js +111 -0
  526. package/src/utils/version-promote.js +16 -0
  527. package/standards-registry.json +58 -146
  528. package/bundled/ai/standards/agent-communication-protocol.ai.yaml +0 -42
  529. package/bundled/ai/standards/agent-dispatch.ai.yaml +0 -42
  530. package/bundled/ai/standards/branch-completion.ai.yaml +0 -44
  531. package/bundled/ai/standards/change-batching-standards.ai.yaml +0 -44
  532. package/bundled/ai/standards/execution-history.ai.yaml +0 -42
  533. package/bundled/ai/standards/pipeline-integration-standards.ai.yaml +0 -42
  534. package/bundled/ai/standards/workflow-enforcement.ai.yaml +0 -44
  535. package/bundled/ai/standards/workflow-state-protocol.ai.yaml +0 -43
  536. package/src/commands/flow.js +0 -260
  537. package/src/commands/start.js +0 -372
  538. package/src/commands/sweep.js +0 -151
  539. package/src/commands/workflow.js +0 -681
@@ -8,8 +8,8 @@ standard:
8
8
  description: AI 模型分級選擇策略
9
9
 
10
10
  meta:
11
- version: "2.0.0"
12
- updated: "2026-04-13"
11
+ version: "2.0.1"
12
+ updated: "2026-06-10"
13
13
  source: core/model-selection.md
14
14
  description: "三層模型分級選擇策略 + 多模型池能力管理(XSPEC-027)"
15
15
  inspired_by: superpowers/subagent-driven-development
@@ -176,6 +176,15 @@ standard:
176
176
  action: "自動切換備用模型,上報 P1 Issue"
177
177
  priority: critical
178
178
 
179
+ navigation_integration:
180
+ description: >
181
+ The ai-response-navigation standard (Rule R6, optional) allows next-step suggestion
182
+ options to carry a Tier annotation (〔model: Fast〕 / 〔model: Standard〕 / 〔model: Capable〕).
183
+ The complexity signals in this standard serve as the judgment basis for those annotations.
184
+ vendor_neutral_principle: >
185
+ Tier names (Fast / Standard / Capable) are vendor-agnostic labels.
186
+ Each platform independently maps these tiers to its available models.
187
+
179
188
  physical_spec:
180
189
  type: checklist
181
190
  validator:
@@ -8,6 +8,16 @@ meta:
8
8
  source: core/observability-standards.md
9
9
  description: Three pillars observability framework (Logs, Metrics, Traces) with Golden Signals and maturity model
10
10
 
11
+ # XSPEC-070 Phase 2 — skill↔standard content-coverage audit.
12
+ # Consumed by scripts/check-skill-content-coverage.ts. The anchor skill
13
+ # (observability-assistant) is a thin launcher; require it to carry at least 30%
14
+ # of the standard's depth so a stale skeleton is flagged (CONTENT-003).
15
+ audit:
16
+ min_skill_ratio: 0.30
17
+ mandatory_keywords:
18
+ - golden signals
19
+ - maturity
20
+
11
21
  three_pillars:
12
22
  logs: "Discrete events — debugging, audit, error details (see logging.ai.yaml)"
13
23
  metrics: "Numerical measurements over time — dashboards, alerting, capacity"
@@ -1,7 +1,7 @@
1
1
  # Performance Standards (AI-Optimized)
2
2
  # Source: core/performance-standards.md
3
3
  # Guide: core/guides/performance-guide.md
4
- # Version: 1.0.0
4
+ # Version: 1.2.0
5
5
 
6
6
  iso25010_efficiency:
7
7
  time_behavior: "Response time, throughput"
@@ -127,3 +127,48 @@ capacity_planning:
127
127
  cpu: "Plan at 70%"
128
128
  memory: "Plan at 80%"
129
129
  storage: "Plan at 70%"
130
+
131
+ # XSPEC-286: Migration Non-Functional Parity (axis 6 of XSPEC-284 completeness matrix)
132
+ # Covers "function correct, data correct, but RUNS differently" omissions in a legacy rewrite.
133
+ # Differential oracle: legacy is the baseline, "no regression beyond declared tolerance" is pass.
134
+ migration_non_functional_parity:
135
+ axis: "6 (non-functional) of XSPEC-284 migration completeness matrix"
136
+ principle: "Legacy is the baseline; declared tolerance, not absolute target. Divergence self-reports."
137
+ why_gap: "General baseline/drift compares a version to its OWN prior baseline, not new-vs-legacy. Per-request and behavior-snapshot parity both pass while the system silently runs slower / loses a lock semantic."
138
+ derive: # R3 mechanized baseline capture
139
+ sources:
140
+ key_routes: "p50/p95/p99 latency per critical path"
141
+ hot_queries: "per-query latency, rows scanned (slow-query log)"
142
+ background_jobs: "job duration, throughput records/min"
143
+ connection_pool: "min/max connections, idle/connection timeout"
144
+ timeout_ratelimit: "per-endpoint timeout, requests/min, burst"
145
+ transaction_config: "isolation level"
146
+ note: "Captured set is both the regression baseline AND the resource/limit parity checklist."
147
+ regression_gate: # R1 performance regression differential
148
+ oracle: "measure new-system path, compare vs legacy baseline within declared tolerance"
149
+ default_tolerance:
150
+ p50_latency: "<= +10% vs legacy"
151
+ p95_latency: "<= +15% vs legacy"
152
+ p99_latency: "<= +20% vs legacy"
153
+ throughput: "<= -10% decrease vs legacy"
154
+ per_path_configurable: true
155
+ rollout: "shadow (measure-only) first to calibrate per-path tolerance, then promote to blocking"
156
+ gate_timing: [pre-UAT, post-cutover]
157
+ concurrency_isolation: # R2
158
+ method: "drive a race with concurrent stress, then assert DOMAIN INVARIANTS (not one-at-a-time output checks)"
159
+ invariants:
160
+ conservation: "SUM(balance) unchanged after N concurrent transfers"
161
+ uniqueness: "no duplicate sequence number under concurrent allocation"
162
+ no_lost_update: "committed write not silently replaced"
163
+ ordering: "events applied in guaranteed order under concurrency"
164
+ blocks_on: "isolation downgrade (e.g. SERIALIZABLE -> READ COMMITTED, removed row lock)"
165
+ boundary: "state-transition legality and temporal invariants owned by XSPEC-287 (axis 8); concurrency race owned here (axis 6)"
166
+ gate_timing: [pre-UAT]
167
+ resource_limit_parity: # R4
168
+ checklist: [request_timeout, rate_limit, connection_pool, batch_size, transaction_isolation]
169
+ rule: "each item matched OR has a declared justified delta; undeclared delta blocks cutover"
170
+ completeness_declaration:
171
+ derive: "Step1 mechanized baseline"
172
+ oracle: "Step2 regression differential + Step3 invariant assertions"
173
+ gate_timing: "pre-UAT + post-cutover"
174
+ reuse: "general baseline/drift + observability-assistant measurement; adds only migration before/after + concurrency-isolation semantics"
@@ -3,7 +3,7 @@
3
3
 
4
4
  id: pii-classification
5
5
  title: PII Classification and Handling Standards
6
- version: "1.0.0"
6
+ version: "1.1.0"
7
7
  status: Active
8
8
  tags: [compliance, privacy, pii, gdpr, data-protection, security]
9
9
  summary: |
@@ -107,3 +107,17 @@ requirements:
107
107
  - "New feature: 'Save payment method' → PIA required (TIER-1 card data)"
108
108
  - "PIA template: docs/templates/privacy-impact-assessment.md"
109
109
  - "PIA outcome: fingerprint auth approved with biometric data stored only on-device"
110
+
111
+ # Hand-off contract (XSPEC-292 T16): how a classification reaches its consumers
112
+ hand_off:
113
+ trigger:
114
+ - "New feature design: REQ-006 PIA classifies new PII fields before implementation"
115
+ - "PR/scan time: a PII field with no tier is a blocking finding"
116
+ - "Data-dictionary change: tier added/removed -> re-notify consumers"
117
+ interface: "PII classification registry entry per field {field, tier, purpose, legal_basis, masking_rule, retention}; consumers register per data-contract REQ-005"
118
+ consumers:
119
+ - "logging-standards: applies masking_rule to TIER-1/2 in non-prod"
120
+ - "audit-trail: records access/export/erasure events"
121
+ - "security-standards: enforces encryption for TIER-1"
122
+ - "privacy/compliance owner: notified on new TIER-1 field or classification change"
123
+ state: "Found -> Classified -> Handled (masked/encrypted/retention) -> Verified; a field stuck in Found blocks release"
@@ -13,6 +13,7 @@ standard:
13
13
  - "Secrets scan at pre-commit — block ALL commits containing secrets"
14
14
  - "SAST after build — block Critical/High findings"
15
15
  - "SCA + SBOM generation at package stage"
16
+ - "Attestation verification before deploy — verify artifact checksum, cosign signature, SLSA provenance (consume supply-chain-attestation output; never generate SBOM/signature without verifying it)"
16
17
  - "DAST after staging deploy — warn on findings, require approval for Critical"
17
18
  - "Never skip security gates with --force or emergency bypass without audit trail"
18
19
  - "Treat security gate failures as pipeline failures, not warnings"
@@ -51,6 +52,14 @@ gate_positions:
51
52
  block_on: ["Critical CVE with fix available"]
52
53
  warn_on: ["High CVE", "outdated dependencies"]
53
54
  sbom_format: ["spdx", "cyclonedx"]
55
+ pre_deploy_attestation:
56
+ type: attestation_verification
57
+ tools: ["cosign", "sha256sum", "slsa-verifier"]
58
+ scope: "packaged release artifact (archive / container image)"
59
+ block_on: ["signature verification failure", "checksum mismatch", "missing SLSA provenance"]
60
+ warn_on: ["SLSA level below target (>= L2 recommended for public release)"]
61
+ consumes: supply-chain-attestation
62
+ note: "Runs after package_stage, before deploy — closes the generate-but-never-verify gap"
54
63
 
55
64
  bypass_policy:
56
65
  allowed: false
@@ -66,6 +75,7 @@ failure_behavior:
66
75
  integration_points:
67
76
  secrets_vault: "Integrate with HashiCorp Vault or AWS Secrets Manager for secrets injection"
68
77
  sbom_registry: "Upload SBOM to dependency-track or grype-db for continuous monitoring"
78
+ artifact_signing: "Verify SBOM/provenance signatures and checksum with cosign before release (see supply-chain-attestation)"
69
79
  incident_response: "Critical findings automatically create incident tickets"
70
80
 
71
81
  physical_spec:
@@ -1,5 +1,5 @@
1
1
  id: privacy-standards
2
2
  meta:
3
- version: "1.0.0"
4
- updated: "2026-04-01"
3
+ version: "1.1.0"
4
+ updated: "2026-06-18"
5
5
  source: core/privacy-standards.md
@@ -12,8 +12,8 @@ standard:
12
12
  - "Use identified paths and specific names (unlike Developer Memory)"
13
13
 
14
14
  meta:
15
- version: "1.0.0"
16
- updated: "2026-02-09"
15
+ version: "1.2.0"
16
+ updated: "2026-06-18"
17
17
  source: core/project-context-memory.md
18
18
  description: System for capturing, retrieving, and enforcing project-specific context, architectural decisions, and domain knowledge
19
19
 
@@ -3,8 +3,8 @@
3
3
 
4
4
  id: refactoring-standards
5
5
  meta:
6
- version: "2.0.0"
7
- updated: "2026-01-21"
6
+ version: "2.2.0"
7
+ updated: "2026-07-01"
8
8
  source: core/refactoring-standards.md
9
9
  guide: core/guides/refactoring-guide.md
10
10
  description: Refactoring guidelines with tactical, strategic, and safety strategies including decision matrix
@@ -292,9 +292,14 @@ metrics:
292
292
  - metric: Coupling
293
293
  measurement: Module dependencies count
294
294
  target: Reduce dependencies
295
- - metric: Code Duplication
295
+ - metric: Code Duplication (textual)
296
296
  measurement: Duplicate percentage
297
297
  target: "< 3%"
298
+ note: Detects textual duplication only; cannot detect semantic duplication (see semantic_duplication)
299
+ - metric: Semantic Duplication
300
+ measurement: Golden / architecture test
301
+ target: 0 unmanaged domain facts
302
+ note: Static analysis cannot detect the same domain fact re-implemented across call sites
298
303
 
299
304
  test_quality:
300
305
  - metric: Test Coverage
@@ -314,6 +319,40 @@ metrics:
314
319
  source: Rollback count
315
320
  expected: Should decrease
316
321
 
322
+ # Semantic Duplication & Copy-Drift (issue #142)
323
+ semantic_duplication:
324
+ anti_pattern:
325
+ id: copy-drift
326
+ name: Copy-Drift
327
+ definition: Same domain fact implemented in multiple places, OR a derived value persisted without an enforced binding to its source, so the copies drift apart independently
328
+ why_undetected: Copies are not byte-identical (paraphrased logic, formula right in one place and wrong in another), so textual-duplication metrics report nothing
329
+ symptoms:
330
+ - List view disagrees with detail view
331
+ - Stored counter double-counts because one update path's decrement/rollback branch was skipped or commented out
332
+ - Same formula gives different answers in different modules
333
+ - Scope over-reach where one path adjusts an aggregate others also touch
334
+
335
+ pattern:
336
+ id: single-source-of-truth
337
+ name: Single Source of Truth / Derive-Don't-Duplicate
338
+ rules:
339
+ - one_unit_per_fact: Extract each domain fact into a single classifier/calculator/resolver; every call site calls it, no re-implementations or paraphrases
340
+ - derive_dont_store: Prefer computing on read over persisting a second copy; a value always derived cannot drift
341
+ - aggregate_as_projection: If an aggregate must be stored, treat it as a projection of its detail rows and recompute it at a single choke point (e.g. SaveChanges interceptor or one shared recompute() function) so every write path (incl. async jobs and failure write-backs) stays consistent
342
+ - never_incremental_adjust: Never let an individual path apply incremental "col = col + delta" to a stored aggregate; that is how decrement/rollback branches get skipped and counters diverge
343
+ - lock_with_tests: Use a golden test to pin the single source of truth, and an architecture test that fails if the rule is redefined anywhere else
344
+
345
+ intentional_divergence_registry:
346
+ when: New system intentionally diverges from legacy behavior (e.g. legacy function returns X but legacy pipeline reconciles it to Y; the port folds that reconciliation into the single unit so it returns Y directly)
347
+ actions:
348
+ - Register each intentional divergence (legacy behavior, new behavior, rationale, owning fact)
349
+ - Pin the new behavior with a golden test so a future "correction" back to legacy fails the build
350
+ - Feed the registry into any differential test against legacy so the divergence is treated as expected, not a regression
351
+
352
+ adopter_notes:
353
+ - Per-function legacy-vs-new diffing produces candidates, not verdicts; adjudicate each against the ENTIRE legacy pipeline (which may already reconcile the difference downstream) before calling it a bug
354
+ - Extract legacy function bodies programmatically / token-based (not by hand) to avoid reintroducing transcription errors
355
+
317
356
  # Team Collaboration
318
357
  team_collaboration:
319
358
  pr_size_limits:
@@ -456,8 +495,34 @@ rules:
456
495
  instruction: Keep PRs under 200 lines; split larger refactorings
457
496
  priority: recommended
458
497
 
498
+ - id: single-source-of-truth
499
+ trigger: same domain fact (classification, rule, calculation) needed at multiple call sites
500
+ instruction: Extract one shared classifier/calculator/resolver and call it everywhere; never re-implement or paraphrase the fact
501
+ priority: required
502
+
503
+ - id: derive-dont-duplicate
504
+ trigger: a derived value (aggregate, counter, denormalized field) is being persisted
505
+ instruction: Prefer deriving on read; if it must be stored, recompute it as a projection at a single choke point and never apply incremental col = col + delta adjustments per write path
506
+ priority: required
507
+
508
+ - id: lock-single-source-with-tests
509
+ trigger: after establishing a single source of truth for a domain fact
510
+ instruction: Add a golden test to pin it and an architecture test that fails if the rule is redefined elsewhere
511
+ priority: recommended
512
+
513
+ - id: register-intentional-divergence
514
+ trigger: new system intentionally diverges from legacy behavior during a port/migration
515
+ instruction: Record it in an intentional-divergence registry, pin with a golden test, and feed differential tests so it is treated as expected not a regression
516
+ priority: required
517
+
518
+ - id: adjudicate-diff-against-pipeline
519
+ trigger: reviewing per-function legacy-vs-new diffs
520
+ instruction: Treat diffs as candidates only; adjudicate each against the entire legacy pipeline before calling it a bug, and extract legacy bodies programmatically to avoid transcription errors
521
+ priority: recommended
522
+
459
523
  related_standards:
460
524
  - test-driven-development.md
461
525
  - testing-standards.md
526
+ - test-governance.md
462
527
  - code-review-checklist.md
463
528
  - checkin-standards.md
@@ -0,0 +1,279 @@
1
+ # Resource / Cost Boundary Declaration Standards - AI Optimized
2
+ # Sources:
3
+ # v1.0.0 — XSPEC-277 Resource / Cost Boundary Declaration (cost burn as a declared, fail-closed boundary)
4
+ # XSPEC-276 (parent boundary-materialization lens; cost is the split-out dimension)
5
+ # XSPEC-285 (VibeOps proactive cost governance — the enforcement/executor face)
6
+
7
+ id: resource-cost-boundary
8
+ title: Resource / Cost Boundary Declaration Standards (Explicit, Machine-Readable, Fail-Closed Budgets)
9
+ version: "1.0.0"
10
+ status: Active
11
+ tags: [cost-boundary, resource-budget, token-budget, cost-burn, fail-closed, governance-gate, llm-native, budget-declaration, runaway-loop]
12
+ created: 2026-06-17
13
+ updated: 2026-06-17
14
+
15
+ spec_ref: XSPEC-277 # Resource / Cost Boundary Declaration complete spec
16
+
17
+ references:
18
+ - XSPEC-277 # v1.0.0 source — Resource / Cost Boundary Declaration
19
+ - XSPEC-276 # Parent boundary-materialization lens (cost = split-out dimension)
20
+ - XSPEC-285 # VibeOps proactive cost governance — enforcement/executor face
21
+ - XSPEC-191 # Unit-economics PoC / BudgetGuard (reference implementation)
22
+ - XSPEC-270 # Model right-sizing router (cost-driven downgrade)
23
+ - XSPEC-037 # Capability declaration (fail-closed posture mirrored)
24
+ - DEC-024 # Pareto evolution token-cost gate (reference implementation)
25
+
26
+ summary: |
27
+ The resource consumption of an agentic / LLM execution unit (pipeline run, agent, role) is
28
+ often implicit: token usage, loop/iteration count, retry count, per-run cost ceiling,
29
+ wall-clock, call rate. When those bounds are not explicitly declared and enforced, runaway
30
+ loops and token burn are a known LLM-native failure mode (cost burn).
31
+
32
+ This standard makes the resource/cost boundary a first-class, machine-readable, fail-closed
33
+ declaration. Any LLM execution unit MUST declare its resource budget; a runtime breach MUST
34
+ fail-closed per the declared behaviour. It is the COST dimension of boundary materialization
35
+ (XSPEC-276) — the one dimension UDS has no existing standard for, and concrete enough to be
36
+ AI-executable, so it is split out as a narrow standard.
37
+
38
+ REQ-001~005: a resource budget taxonomy (token/iteration/retry/cost_usd/wallclock/rate); a
39
+ machine-readable resource_budget: declaration (kind + limit + breach behaviour); a
40
+ fail-closed check-resource-budget gate (undeclared -> warn/block; runtime breach -> abort);
41
+ convergence of existing point mechanisms as reference implementations; and budget value
42
+ sovereignty (mechanism standardized, ceiling values owned by the adopter). This standard is
43
+ the "declare what bounds" half; XSPEC-285 is the "enforce/govern" half.
44
+
45
+ scope:
46
+ applies_to:
47
+ - Any LLM execution unit (pipeline run, agent, role) whose resource consumption must be bounded
48
+ - Plans / agent configs / role configs that carry a resource_budget declaration
49
+ - Budget-breach run reports used as cost-governance / audit evidence
50
+ excludes:
51
+ - The budget VALUES themselves (actual ceilings) — owned by the adopter/customer (a project/economics decision)
52
+ - Enforcement-engine wiring (e.g. the VibeOps proactive cost-governance executor, XSPEC-285) — downstream
53
+ - Latency/throughput performance targets — that is performance-standards (adjacent, distinct)
54
+
55
+ budget_taxonomy:
56
+ description: |
57
+ A standard set of resource budget kinds. A unit need not declare every kind, but a kind
58
+ it relies on for safety MUST be declared (an unbounded relied-upon kind is a violation).
59
+ kinds:
60
+ - kind: token
61
+ bound: input / output / total token ceiling
62
+ typical_breach: prompt/output explosion
63
+ - kind: iteration
64
+ bound: loop / iteration / tool-round upper bound
65
+ typical_breach: runaway loop
66
+ - kind: retry
67
+ bound: retry upper bound
68
+ typical_breach: unbounded re-attempt
69
+ - kind: cost_usd
70
+ bound: per-call / per-run / per-session cost ceiling
71
+ typical_breach: silent budget burn
72
+ - kind: wallclock
73
+ bound: timeout
74
+ typical_breach: hung run
75
+ - kind: rate
76
+ bound: call frequency
77
+ typical_breach: call storm
78
+
79
+ declaration_format:
80
+ description: |
81
+ A first-class resource_budget: block embedded in a plan / agent / role config. Each entry
82
+ carries a kind + (optional) scope + limit value + on_breach behaviour.
83
+ example: |
84
+ resource_budget:
85
+ - kind: cost_usd
86
+ scope: per_run
87
+ limit: 3.00
88
+ on_breach: abort
89
+ - kind: iteration
90
+ limit: 60
91
+ on_breach: abort
92
+ - kind: retry
93
+ limit: 3
94
+ on_breach: warn
95
+ - kind: token
96
+ scope: total
97
+ limit: 400000
98
+ on_breach: abort
99
+ on_breach_values: [warn, abort]
100
+
101
+ reference_implementations:
102
+ description: |
103
+ Existing VibeOps point mechanisms converge onto this standard as reference implementations
104
+ (REQ-004) — unified, not re-invented.
105
+ mappings:
106
+ - mechanism: "orchestrator quality profile max_retries / max_retry_budget_usd"
107
+ budget_kind: "retry / cost_usd (per-task fix-loop)"
108
+ - mechanism: "BudgetGuard / PoC abort max_cost_per_session_usd / min_cache_hit_ratio (XSPEC-191)"
109
+ budget_kind: "cost_usd / rate"
110
+ - mechanism: "Pareto Evolution Gate token-cost dimension (DEC-024)"
111
+ budget_kind: "token / cost_usd"
112
+ - mechanism: "agent-loop maxToolRounds / maxTotalTokens"
113
+ budget_kind: "iteration / token"
114
+
115
+ principles:
116
+ - id: P-1
117
+ name: Bounds are Explicit
118
+ description: |
119
+ Resource budgets MUST be declared, not implicit in a developer's head or scattered
120
+ settings. An undeclared relied-upon bound is a violation, not an omission.
121
+
122
+ - id: P-2
123
+ name: Machine-Readable
124
+ description: |
125
+ The resource_budget: block is a first-class artifact a generator/runtime can read at
126
+ generation/execution time — so a unit knows its bounds up front, not after review.
127
+
128
+ - id: P-3
129
+ name: Fail-Closed
130
+ description: |
131
+ An undeclared relied-upon bound, or a runtime breach, MUST block/abort per declaration.
132
+ Never a silent unbounded pass — mirroring capability-declaration (XSPEC-037) fail-closed.
133
+
134
+ - id: P-4
135
+ name: No Re-Invention
136
+ description: |
137
+ Existing point mechanisms converge as reference implementations. New units inherit the
138
+ declaration habit rather than re-inventing a budget knob.
139
+
140
+ - id: P-5
141
+ name: Value Sovereignty
142
+ description: |
143
+ The declaration mechanism is standardized; the ceiling values are owned by the adopter
144
+ (a project/economics decision). The standard mandates that bounds are declared, not which.
145
+
146
+ requirements:
147
+ - id: REQ-001
148
+ title: Resource Budget Taxonomy
149
+ description: |
150
+ Every LLM execution unit's resource bounds MUST be expressible from a standard set of
151
+ kinds: token, iteration, retry, cost_usd, wallclock, rate. A unit need not declare every
152
+ kind, but kinds it relies on for safety MUST be declared.
153
+ level: MUST
154
+ examples:
155
+ - "agent-loop declares iteration:60 + token(total):400000"
156
+ - "pipeline run declares cost_usd(per_run):3.00 + retry:3"
157
+
158
+ - id: REQ-002
159
+ title: Machine-Readable Declaration
160
+ description: |
161
+ A resource_budget: block MUST be declarable (embedded in plan / agent / role config),
162
+ each entry carrying kind + limit value + breach behaviour (warn / abort). It is a
163
+ first-class artifact, not a scattered setting or after-the-fact note.
164
+ level: MUST
165
+ schema_fields:
166
+ - "kind: token | iteration | retry | cost_usd | wallclock | rate"
167
+ - "scope (optional): per_call | per_run | per_session | total"
168
+ - "limit: numeric ceiling"
169
+ - "on_breach: warn | abort"
170
+
171
+ - id: REQ-003
172
+ title: Fail-Closed Enforcement Gate (check-resource-budget)
173
+ description: |
174
+ A quality gate check-resource-budget MUST (a) flag any LLM execution unit that does not
175
+ declare a budget (warn by default, block in strict mode); and (b) on a runtime breach
176
+ fail-closed per the declared on_breach (abort halts the unit, warn records and continues).
177
+ Mirrors capability-declaration (XSPEC-037) and the governance-gate family — never silent.
178
+ level: MUST
179
+ checks:
180
+ - "Unit with no resource_budget -> gate warns (strict mode: blocks)"
181
+ - "Runtime cost_usd exceeds declared limit with on_breach:abort -> unit aborts, breach recorded"
182
+ - "Runtime breach with on_breach:warn -> recorded and continues"
183
+
184
+ - id: REQ-004
185
+ title: Converge Existing Mechanisms (reference implementations)
186
+ description: |
187
+ Existing point mechanisms (orchestrator max_retries / max_retry_budget_usd, XSPEC-191
188
+ BudgetGuard, DEC-024 Pareto token gate, XSPEC-270 right-sizing router) SHOULD be mapped
189
+ to this standard as reference implementations — unified, not re-implemented.
190
+ level: SHOULD
191
+ checks:
192
+ - "Each existing budget mechanism maps to a taxonomy kind + on_breach behaviour"
193
+ - "A new agent/role adopts a resource_budget block rather than a bespoke budget knob"
194
+
195
+ - id: REQ-005
196
+ title: Budget Value Sovereignty
197
+ description: |
198
+ The declaration mechanism is standardized; the budget values (ceilings) are owned by the
199
+ adopter/customer (a project/economics decision). The standard mandates that bounds are
200
+ declared and enforced, not which numbers.
201
+ level: SHOULD
202
+ checks:
203
+ - "Ceiling values are adopter-configurable; the standard does not hard-code numbers"
204
+ - "The gate enforces presence + fail-closed behaviour, not a specific limit value"
205
+
206
+ # ─────────────────────────────────────────────────────────────
207
+ # GWT scenarios (admission condition 4 — AI-executable)
208
+ # ─────────────────────────────────────────────────────────────
209
+
210
+ scenarios:
211
+ - id: GWT-1
212
+ given: "a pipeline / agent unit with no token or cost_usd budget declared"
213
+ when: "check-resource-budget runs"
214
+ then: "it warns 'undeclared resource budget' (and blocks in strict mode)"
215
+ - id: GWT-2
216
+ given: "a unit declares cost_usd per_run limit 3.00 with on_breach: abort"
217
+ when: "the run's accumulated cost exceeds 3.00 at runtime"
218
+ then: "the unit fail-closed aborts and the breach is recorded for audit / cost governance"
219
+
220
+ # ─────────────────────────────────────────────────────────────
221
+ # Boundaries with adjacent standards (admission condition 3, <30% overlap)
222
+ # ─────────────────────────────────────────────────────────────
223
+
224
+ adjacent_boundaries:
225
+ - standard: performance-standards
226
+ its_angle: latency / throughput targets
227
+ distinct: targets, not a fail-closed cost ceiling
228
+ - standard: model-selection
229
+ its_angle: choose a model tier
230
+ distinct: tier selection, not budget enforcement
231
+ - standard: capability-declaration (XSPEC-037)
232
+ its_angle: explicit capability + fail-closed
233
+ distinct: capability surface, not resource budget
234
+
235
+ # ─────────────────────────────────────────────────────────────
236
+ # Gate timing
237
+ # ─────────────────────────────────────────────────────────────
238
+
239
+ gate_timing:
240
+ pre_run: REQ-003(a) check-resource-budget declaration check (undeclared -> warn / strict block)
241
+ on_runtime_breach: REQ-003(b) fail-closed per on_breach (abort / warn)
242
+ after_breach: record breach for audit / cost-governance executor (XSPEC-285)
243
+
244
+ # ─────────────────────────────────────────────────────────────
245
+ # Telemetry (DEC-066 / XSPEC-189 v2 envelope)
246
+ # ─────────────────────────────────────────────────────────────
247
+
248
+ telemetry:
249
+ required_events:
250
+ - resource_budget_undeclared # unit missing a relied-upon budget (REQ-003a)
251
+ - resource_budget_breach # runtime breach detail (kind, limit, actual)
252
+ - resource_budget_abort # fail-closed abort on breach (on_breach:abort)
253
+ envelope_reference: XSPEC-189 # Telemetry Schema v2 envelope
254
+ event_type: quality
255
+ event_subtype_examples:
256
+ - resource_budget_breach
257
+ - gate_pass / gate_fail # when check-resource-budget acts as a ship/run gate
258
+
259
+ # ─────────────────────────────────────────────────────────────
260
+ # Integration with existing standards
261
+ # ─────────────────────────────────────────────────────────────
262
+
263
+ integration:
264
+ performance-standards: performance sets latency/throughput targets; this sets fail-closed resource ceilings (adjacent, distinct)
265
+ model-selection: right-sizing picks a model tier; a cost_usd breach can drive a downgrade (XSPEC-270), but the budget declaration is this standard's concern
266
+ test-governance: check-resource-budget is a governed gate; budget declarations are governed policy
267
+ verification-evidence: a breach/no-breach run report is a kind of verification evidence (budgets honoured + trace)
268
+
269
+ # ─────────────────────────────────────────────────────────────
270
+ # Adoption guidance
271
+ # ─────────────────────────────────────────────────────────────
272
+
273
+ adoption_guidance:
274
+ uds_install_path: ai/standards/resource-cost-boundary.ai.yaml
275
+ notes:
276
+ - "v1.0.0 defines the budget declaration mechanism and a fail-closed gate. Budget values are adopter-owned."
277
+ - "This standard is the 'declare what bounds' half; XSPEC-285 (VibeOps proactive cost governance) is the 'enforce/govern' half."
278
+ - "Map existing budget knobs (max_retries, BudgetGuard, Pareto token gate, right-sizing router) to taxonomy kinds rather than re-inventing."
279
+ - "Collect only the cost/resource dimension — do not expand into a vague 'resource governance' (XSPEC-276 over-design guardrail)."
@@ -3,8 +3,8 @@
3
3
 
4
4
  id: reverse-engineering
5
5
  meta:
6
- version: "1.0.0"
7
- updated: "2026-01-19"
6
+ version: "1.2.0"
7
+ updated: "2026-06-27"
8
8
  source: core/reverse-engineering-standards.md
9
9
  description: Standards for reverse engineering code into structured specifications
10
10
 
@@ -32,6 +32,28 @@ workflow:
32
32
  - Identify boundary conditions
33
33
  - Note coverage gaps
34
34
 
35
+ - stage: IMPLICIT_RULE_SCAN
36
+ description: Scan non-HTTP persistence write paths for undocumented business rules
37
+ output: Implicit-rule inventory locked as behavior-snapshot scenarios or reconciliation invariants
38
+ certainty: "[Confirmed]/[Inferred]/[Unknown]"
39
+ position: after CODE_SCAN/TEST_ANALYSIS, before GAP_IDENTIFICATION
40
+ derive:
41
+ - "Scheduled: crontab / scheduler config / @Scheduled-style annotations / batch jobs"
42
+ - "Queue: queue consumers / job handlers / background workers / message listeners"
43
+ - "DB-layer: triggers / computed-generated columns / DEFAULT expressions / check constraints"
44
+ - "ORM lifecycle: beforeSave/afterSave/observer/model-event hooks / state-mutating middleware"
45
+ oracle_three_questions:
46
+ - "When is the field SET? (first-assign condition/trigger)"
47
+ - "When is it OVERWRITTEN? (every later write, INCLUDING async overwrites)"
48
+ - "When is it RESET / zeroed? (clear/default-back conditions)"
49
+ actions:
50
+ - Derive every non-HTTP persistence write path across the four categories
51
+ - Answer the three questions per persisted field and lock answers as snapshot scenarios or reconciliation invariants
52
+ - Extend Devil's Advocate (5 categories) from HTTP layer to non-HTTP paths
53
+ - Tag each rule [Confirmed] (with file:line) / [Inferred] / [Unknown]; route [Unknown] to GAP_IDENTIFICATION
54
+ - "PHP-specific: flag loose-comparison / type-juggling (==, truthy/falsy of \"0\"/\"\"/null/0, string-to-number coercion) — no equivalent under strongly-typed targets"
55
+ gate: pre-flight; unanswered three-question field marked not_implemented and blocks cutover
56
+
35
57
  - stage: GAP_IDENTIFICATION
36
58
  description: List unknowns requiring human input
37
59
  output: Gap analysis document
@@ -139,6 +161,19 @@ extraction_capability:
139
161
  reason: Often implicit
140
162
  required_action: Discuss with architects
141
163
 
164
+ # Failure handling (failure -> escalate -> re-verify)
165
+ failure_handling:
166
+ description: Inputs that cannot be analyzed safely must escalate, never ship as authoritative
167
+ matrix:
168
+ - condition: Parse failure (unsupported language / broken syntax tree)
169
+ action: Mark [Unknown], report language/file, escalate to a human domain expert, emit no inferred behavior
170
+ - condition: High unknown ratio (> 50% of behaviors [Unknown])
171
+ action: Halt spec finalization, require SME interview to fill [Unknown] first; never ship a majority-guessed spec
172
+ - condition: Contradicted inference (code contradicts an inferred behavior)
173
+ action: Downgrade to [Assumption], escalate to code owner; never record as [Confirmed]
174
+ - condition: Test-analysis failure (tests cannot be run/parsed)
175
+ action: Fall back to static analysis; mark behaviors [Inferred], never [Confirmed]
176
+
142
177
  # Anti-Patterns
143
178
  anti_patterns:
144
179
  code_analysis:
@@ -202,6 +237,10 @@ integration:
202
237
 
203
238
  # Rules for AI
204
239
  rules:
240
+ - id: re-fail-escalate-low-confidence
241
+ trigger: parse failure or above-threshold [Unknown] ratio
242
+ instruction: Block spec finalization and escalate to a human; never present a sub-threshold-confidence spec as authoritative
243
+ priority: required
205
244
  - id: read-before-claim
206
245
  trigger: starting reverse engineering
207
246
  instruction: Read ALL relevant files before making any claims about code behavior
@@ -232,6 +271,19 @@ rules:
232
271
  instruction: Map test cases to acceptance criteria with [Confirmed] tag and line references
233
272
  priority: required
234
273
 
274
+ - id: implicit-rule-scan-non-http
275
+ trigger: reverse engineering a system for refactor/migration where persisted fields may be written off the HTTP path
276
+ instruction: >
277
+ Run an IMPLICIT_RULE_SCAN after CODE_SCAN/TEST_ANALYSIS and before GAP_IDENTIFICATION. Mechanically derive
278
+ every non-HTTP persistence write path across four categories (scheduled, queue, DB-layer trigger/computed-column/
279
+ DEFAULT/check, ORM lifecycle hooks/middleware). For each persisted field answer three questions — when SET, when
280
+ OVERWRITTEN (including async overwrites), when RESET/zeroed — and lock each answer as a behavior-snapshot scenario
281
+ or reconciliation invariant. Extend Devil's Advocate to non-HTTP paths. Tag every rule [Confirmed] (with file:line)
282
+ / [Inferred] / [Unknown]; route [Unknown] to gap analysis. For PHP sources, additionally flag loose-comparison /
283
+ type-juggling dependencies that have no strongly-typed equivalent. Any field whose three questions are unanswered
284
+ is marked not_implemented and blocks cutover.
285
+ priority: required
286
+
235
287
  - id: human-review-required
236
288
  trigger: completing spec generation
237
289
  instruction: Always mark specification as requiring human review; [Unknown] sections MUST be filled by humans
@@ -267,6 +319,7 @@ quick_reference:
267
319
  rows:
268
320
  - [Code Scan, Technical inventory, "[Confirmed]"]
269
321
  - [Test Analysis, Draft AC, "[Confirmed]/[Inferred]"]
322
+ - [Implicit Rule Scan, Non-HTTP implicit-rule inventory, "[Confirmed]/[Inferred]/[Unknown]"]
270
323
  - [Gap ID, Gap analysis, "[Unknown] items"]
271
324
  - [Spec Gen, Draft SPEC, Mixed]
272
325
  - [Human Review, Validated spec, "[Confirmed]"]