universal-dev-standards 5.14.0 → 5.16.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 (134) hide show
  1. package/bin/uds.js +2 -0
  2. package/bundled/ai/standards/acceptance-criteria-traceability.ai.yaml +31 -0
  3. package/bundled/ai/standards/ai-instruction-standards.ai.yaml +190 -3
  4. package/bundled/ai/standards/forward-derivation-standards.ai.yaml +23 -0
  5. package/bundled/ai/standards/knowledge-graph-memory.ai.yaml +83 -0
  6. package/bundled/core/acceptance-criteria-traceability.md +46 -0
  7. package/bundled/core/ai-instruction-standards.md +136 -11
  8. package/bundled/core/forward-derivation-standards.md +19 -0
  9. package/bundled/core/knowledge-graph-memory.md +119 -0
  10. package/bundled/locales/COVERAGE.md +226 -0
  11. package/bundled/locales/zh-CN/CHANGELOG.md +42 -3
  12. package/bundled/locales/zh-CN/README.md +1 -1
  13. package/bundled/locales/zh-CN/SECURITY.md +1 -1
  14. package/bundled/locales/zh-CN/core/acceptance-criteria-traceability.md +46 -0
  15. package/bundled/locales/zh-CN/core/ai-instruction-standards.md +111 -5
  16. package/bundled/locales/zh-CN/core/forward-derivation-standards.md +19 -0
  17. package/bundled/locales/zh-CN/skills/ac-coverage/SKILL.md +194 -0
  18. package/bundled/locales/zh-CN/skills/adr-assistant/SKILL.md +135 -40
  19. package/bundled/locales/zh-CN/skills/brainstorm-assistant/SKILL.md +217 -63
  20. package/bundled/locales/zh-CN/skills/brainstorm-assistant/guide.md +599 -0
  21. package/bundled/locales/zh-CN/skills/commands/brainstorm.md +92 -25
  22. package/bundled/locales/zh-CN/skills/commit-standards/SKILL.md +78 -16
  23. package/bundled/locales/zh-CN/skills/contract-test-assistant/SKILL.md +85 -26
  24. package/bundled/locales/zh-CN/skills/deploy-assistant/SKILL.md +189 -0
  25. package/bundled/locales/zh-CN/skills/dev-methodology/SKILL.md +110 -0
  26. package/bundled/locales/zh-CN/skills/dev-methodology/guide.md +255 -0
  27. package/bundled/locales/zh-CN/skills/dev-workflow-guide/SKILL.md +70 -11
  28. package/bundled/locales/zh-CN/skills/journey-test-assistant/SKILL.md +209 -0
  29. package/bundled/locales/zh-CN/skills/knowledge-graph/SKILL.md +58 -0
  30. package/bundled/locales/zh-CN/skills/knowledge-graph/guide.md +74 -0
  31. package/bundled/locales/zh-CN/skills/migration-assistant/SKILL.md +125 -8
  32. package/bundled/locales/zh-CN/skills/observability-assistant/guide.md +188 -0
  33. package/bundled/locales/zh-CN/skills/orchestrate/SKILL.md +173 -0
  34. package/bundled/locales/zh-CN/skills/plan/SKILL.md +240 -0
  35. package/bundled/locales/zh-CN/skills/push/SKILL.md +242 -0
  36. package/bundled/locales/zh-CN/skills/retrospective-assistant/SKILL.md +104 -36
  37. package/bundled/locales/zh-CN/skills/reverse-engineer/SKILL.md +88 -32
  38. package/bundled/locales/zh-CN/skills/runbook-assistant/guide.md +216 -0
  39. package/bundled/locales/zh-CN/skills/skill-builder/SKILL.md +149 -0
  40. package/bundled/locales/zh-CN/skills/slo-assistant/guide.md +188 -0
  41. package/bundled/locales/zh-CN/skills/spec-derivation/SKILL.md +86 -0
  42. package/bundled/locales/zh-CN/skills/spec-derivation/guide.md +476 -0
  43. package/bundled/locales/zh-CN/skills/spec-driven-dev/SKILL.md +155 -81
  44. package/bundled/locales/zh-CN/skills/sweep/SKILL.md +151 -0
  45. package/bundled/locales/zh-CN/skills/testing-guide/SKILL.md +207 -110
  46. package/bundled/locales/zh-TW/CHANGELOG.md +46 -3
  47. package/bundled/locales/zh-TW/README.md +1 -1
  48. package/bundled/locales/zh-TW/SECURITY.md +1 -1
  49. package/bundled/locales/zh-TW/core/acceptance-criteria-traceability.md +46 -0
  50. package/bundled/locales/zh-TW/core/ai-instruction-standards.md +130 -5
  51. package/bundled/locales/zh-TW/core/browser-compatibility-standards.md +222 -5
  52. package/bundled/locales/zh-TW/core/contract-testing-standards.md +184 -5
  53. package/bundled/locales/zh-TW/core/cross-flow-regression.md +192 -5
  54. package/bundled/locales/zh-TW/core/forward-derivation-standards.md +19 -0
  55. package/bundled/locales/zh-TW/core/knowledge-graph-memory.md +127 -0
  56. package/bundled/locales/zh-TW/core/release-readiness-gate.md +186 -5
  57. package/bundled/locales/zh-TW/core/self-review-protocol.md +9 -1
  58. package/bundled/locales/zh-TW/skills/ac-coverage/SKILL.md +192 -0
  59. package/bundled/locales/zh-TW/skills/adr-assistant/SKILL.md +21 -42
  60. package/bundled/locales/zh-TW/skills/ai-collaboration-standards/SKILL.md +5 -1
  61. package/bundled/locales/zh-TW/skills/brainstorm-assistant/SKILL.md +212 -59
  62. package/bundled/locales/zh-TW/skills/brainstorm-assistant/guide.md +266 -579
  63. package/bundled/locales/zh-TW/skills/commands/brainstorm.md +91 -26
  64. package/bundled/locales/zh-TW/skills/commit-standards/SKILL.md +77 -15
  65. package/bundled/locales/zh-TW/skills/contract-test-assistant/SKILL.md +75 -16
  66. package/bundled/locales/zh-TW/skills/deploy-assistant/SKILL.md +187 -0
  67. package/bundled/locales/zh-TW/skills/dev-methodology/SKILL.md +108 -0
  68. package/bundled/locales/zh-TW/skills/dev-methodology/guide.md +255 -0
  69. package/bundled/locales/zh-TW/skills/dev-workflow-guide/SKILL.md +125 -64
  70. package/bundled/locales/zh-TW/skills/journey-test-assistant/SKILL.md +222 -0
  71. package/bundled/locales/zh-TW/skills/knowledge-graph/SKILL.md +56 -0
  72. package/bundled/locales/zh-TW/skills/knowledge-graph/guide.md +74 -0
  73. package/bundled/locales/zh-TW/skills/migration-assistant/SKILL.md +128 -11
  74. package/bundled/locales/zh-TW/skills/observability-assistant/guide.md +188 -0
  75. package/bundled/locales/zh-TW/skills/orchestrate/SKILL.md +173 -0
  76. package/bundled/locales/zh-TW/skills/plan/SKILL.md +240 -0
  77. package/bundled/locales/zh-TW/skills/project-structure-guide/SKILL.md +5 -1
  78. package/bundled/locales/zh-TW/skills/push/SKILL.md +242 -0
  79. package/bundled/locales/zh-TW/skills/retrospective-assistant/SKILL.md +94 -28
  80. package/bundled/locales/zh-TW/skills/reverse-engineer/SKILL.md +84 -28
  81. package/bundled/locales/zh-TW/skills/runbook-assistant/guide.md +216 -0
  82. package/bundled/locales/zh-TW/skills/skill-builder/SKILL.md +165 -0
  83. package/bundled/locales/zh-TW/skills/slo-assistant/guide.md +188 -0
  84. package/bundled/locales/zh-TW/skills/spec-derivation/SKILL.md +83 -0
  85. package/bundled/locales/zh-TW/skills/spec-derivation/guide.md +476 -0
  86. package/bundled/locales/zh-TW/skills/spec-driven-dev/SKILL.md +148 -77
  87. package/bundled/locales/zh-TW/skills/sweep/SKILL.md +149 -0
  88. package/bundled/locales/zh-TW/skills/testing-guide/SKILL.md +141 -44
  89. package/bundled/skills/adr-assistant/SKILL.md +1 -1
  90. package/bundled/skills/ai-collaboration-standards/SKILL.md +1 -1
  91. package/bundled/skills/ai-friendly-architecture/SKILL.md +1 -1
  92. package/bundled/skills/ai-instruction-standards/SKILL.md +1 -1
  93. package/bundled/skills/api-design-assistant/SKILL.md +1 -1
  94. package/bundled/skills/audit-assistant/SKILL.md +1 -1
  95. package/bundled/skills/brainstorm-assistant/SKILL.md +142 -106
  96. package/bundled/skills/brainstorm-assistant/guide.md +256 -661
  97. package/bundled/skills/ci-cd-assistant/SKILL.md +1 -1
  98. package/bundled/skills/commands/brainstorm.md +51 -30
  99. package/bundled/skills/contract-test-assistant/SKILL.md +1 -1
  100. package/bundled/skills/database-assistant/SKILL.md +1 -1
  101. package/bundled/skills/deploy-assistant/SKILL.md +1 -1
  102. package/bundled/skills/documentation-guide/SKILL.md +1 -1
  103. package/bundled/skills/error-code-guide/SKILL.md +1 -1
  104. package/bundled/skills/git-workflow-guide/SKILL.md +1 -1
  105. package/bundled/skills/incident-response-assistant/SKILL.md +1 -1
  106. package/bundled/skills/journey-test-assistant/SKILL.md +1 -1
  107. package/bundled/skills/knowledge-graph/SKILL.md +58 -0
  108. package/bundled/skills/knowledge-graph/guide.md +69 -0
  109. package/bundled/skills/logging-guide/SKILL.md +1 -1
  110. package/bundled/skills/observability-assistant/SKILL.md +1 -1
  111. package/bundled/skills/orchestrate/SKILL.md +1 -1
  112. package/bundled/skills/plan/SKILL.md +1 -1
  113. package/bundled/skills/pr-automation-assistant/SKILL.md +1 -1
  114. package/bundled/skills/project-structure-guide/SKILL.md +1 -1
  115. package/bundled/skills/push/SKILL.md +1 -1
  116. package/bundled/skills/retrospective-assistant/SKILL.md +1 -1
  117. package/bundled/skills/reverse-engineer/SKILL.md +1 -1
  118. package/bundled/skills/runbook-assistant/SKILL.md +1 -1
  119. package/bundled/skills/security-assistant/SKILL.md +1 -1
  120. package/bundled/skills/security-scan-assistant/SKILL.md +1 -1
  121. package/bundled/skills/slo-assistant/SKILL.md +1 -1
  122. package/bundled/skills/sweep/SKILL.md +1 -1
  123. package/bundled/skills/testing-guide/SKILL.md +1 -1
  124. package/package.json +2 -2
  125. package/src/commands/check.js +80 -0
  126. package/src/commands/init.js +8 -1
  127. package/src/commands/update.js +49 -14
  128. package/src/i18n/messages.js +32 -5
  129. package/src/installers/skills-installer.js +49 -0
  130. package/src/lint/i18n.js +424 -0
  131. package/src/utils/config-manager.js +39 -0
  132. package/src/utils/skills-installer.js +39 -7
  133. package/standards-registry.json +16 -4
  134. package/bundled/locales/zh-TW/docs/SKILL-FALLBACK-GUIDE.md +0 -407
@@ -0,0 +1,119 @@
1
+ # Knowledge Graph Memory Standards
2
+
3
+ > **Language**: English | [繁體中文](../locales/zh-TW/core/knowledge-graph-memory.md)
4
+
5
+ **Version**: 1.0.0
6
+ **Last Updated**: 2026-05-30
7
+ **Applicability**: Projects using AI assistants across code + specification/decision corpora
8
+ **Scope**: uds-specific
9
+
10
+ ---
11
+
12
+ ## Purpose
13
+
14
+ This standard defines a **relationship schema** so that specifications, decisions, and code can be traversed as a graph — answering questions like *"if I change `execute()`, which specs and decisions are affected?"*. It complements vector/semantic memory (which finds *similar* artifacts) with **structural traversal** (which finds *connected* artifacts).
15
+
16
+ The schema is engine-agnostic: it is expressed as plain Markdown front-matter that an AI assistant can read directly (degraded mode), and that an optional graph engine (e.g. [EngramGraph](https://github.com/AsiaOstrich/EngramGraph)) can index for multi-hop queries (service mode).
17
+
18
+ ---
19
+
20
+ ## Quick Reference
21
+
22
+ ### Relationship Front-Matter Schema
23
+
24
+ Add these optional fields to a spec/decision document's YAML front-matter:
25
+
26
+ | Field | Type | Direction | Meaning |
27
+ |-------|------|-----------|---------|
28
+ | `related` | list of ids | undirected | Loosely associated artifacts |
29
+ | `impacts` | list of spec ids | this → spec | This decision changes those specs |
30
+ | `impacted_by` | list of decision ids | decision → this | Those decisions change this spec |
31
+ | `supersedes` | list of decision ids | this → decision | This decision replaces those |
32
+ | `implements` | list of spec ids | code/spec → spec | This artifact realises those specs |
33
+
34
+ Ids are artifact identifiers (e.g. `XSPEC-205`, `DEC-062`, `ADR-001`). Inline `[[XSPEC-NNN]]` wiki-links in the body are an equivalent, lower-fidelity signal.
35
+
36
+ ### Node Kinds
37
+
38
+ | Prefix | Node kind |
39
+ |--------|-----------|
40
+ | `XSPEC-*` / `SPEC-*` | Spec |
41
+ | `DEC-*` / `ADR-*` | Decision |
42
+ | function / class / module (from code) | Code node |
43
+
44
+ ---
45
+
46
+ ## 1. Schema
47
+
48
+ ### 1.1 Front-Matter Example
49
+
50
+ ```markdown
51
+ ---
52
+ id: XSPEC-205
53
+ title: Agent/Role Spec SDD Variant
54
+ status: Implemented
55
+ impacted_by: [DEC-062]
56
+ related: [XSPEC-204]
57
+ ---
58
+ ```
59
+
60
+ ```markdown
61
+ ---
62
+ id: DEC-069
63
+ title: EngramGraph Architecture
64
+ date: 2026-05-27
65
+ supersedes: [DEC-057]
66
+ impacts: [XSPEC-237]
67
+ ---
68
+ ```
69
+
70
+ ### 1.2 Edge Derivation
71
+
72
+ | Front-matter on doc | Derived edge |
73
+ |---------------------|--------------|
74
+ | Decision `impacts: [SPEC]` | `IMPACTS` (Decision → Spec) |
75
+ | Spec `impacted_by: [DEC]` | `IMPACTS` (Decision → Spec) |
76
+ | Decision `supersedes: [DEC]` | `SUPERSEDES` (Decision → Decision) |
77
+ | `[[XSPEC-NNN]]` link in a Decision body | `IMPACTS` (Decision → Spec) |
78
+
79
+ Edges are **idempotent**: declaring the same relationship from both ends (a decision's `impacts` and the spec's `impacted_by`) yields one edge, not two.
80
+
81
+ ---
82
+
83
+ ## 2. Two Operating Modes
84
+
85
+ A consumer of this standard MUST work in both modes:
86
+
87
+ ### 2.1 Degraded Mode (no engine)
88
+
89
+ The AI assistant reads the target document, follows its front-matter / `[[ref]]` links by reading the linked files, and assembles the impact chain manually. Always available; bounded by how many files the assistant can read.
90
+
91
+ ### 2.2 Service Mode (graph engine available)
92
+
93
+ The corpus is indexed into a graph engine; the assistant issues a single multi-hop query (e.g. `impact-analysis { nodeId, maxHops }`) and receives the full chain — including cross-domain links (code → spec → decision) that degraded mode would miss.
94
+
95
+ > A correct implementation produces the **same answer shape** in both modes; service mode is faster and more complete, not different in kind.
96
+
97
+ ---
98
+
99
+ ## 3. Confidence (optional)
100
+
101
+ Nodes MAY carry a `confidence` in `[0.1, 1.0]`. Feedback signals (test pass/fail, human correction, status changes) evolve confidence so that reads can surface the most-reinforced artifacts first. Confidence has a floor (never zero) so a run of failures cannot erase an important node. This is the basis of self-evolving graph memory (SAGE).
102
+
103
+ ---
104
+
105
+ ## 4. Rules
106
+
107
+ 1. Relationship fields are **optional** and **additive** — absence never breaks tooling.
108
+ 2. Reference ids that do not (yet) exist are allowed; they become stub nodes resolved when the target document appears.
109
+ 3. Declare each relationship from the side that *owns* it (a decision owns `impacts`/`supersedes`; a spec owns `impacted_by`), but either side is accepted.
110
+ 4. The graph engine is **opt-in**. Tools MUST degrade gracefully to Markdown reading when no engine is configured.
111
+ 5. Vector/semantic memory is **complementary**, not replaced — use graph traversal for structure, vectors for similarity.
112
+
113
+ ---
114
+
115
+ ## Related Standards
116
+
117
+ - [Project Context Memory](project-context-memory.md) — per-project long-term facts
118
+ - [Developer Memory](developer-memory.md) — universal, transferable preferences
119
+ - [ADR Standards](adr-standards.md) — decision record format that feeds Decision nodes
@@ -0,0 +1,226 @@
1
+ # UDS Locale Coverage
2
+
3
+ > Auto-generated by `scripts/generate-locale-coverage.mjs` on 2026-05-28.
4
+ > Do not edit manually — re-run the script.
5
+
6
+ > **Canonical**: `skills/` (54) + `core/` (127). **Locales tracked**: `zh-CN`, `zh-TW`.
7
+
8
+ ## Skills (54 canonical)
9
+
10
+ | Skill | zh-CN | zh-TW |
11
+ | :-- | :-: | :-: |
12
+ | ac-coverage | :x: | :white_check_mark: 1.0.0 |
13
+ | adr-assistant | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
14
+ | ai-collaboration-standards | :white_check_mark: 1.1.0 | :white_check_mark: 1.1.0 |
15
+ | ai-friendly-architecture | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
16
+ | ai-instruction-standards | :white_check_mark: 2.0.0 | :white_check_mark: 2.0.0 |
17
+ | api-design-assistant | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
18
+ | atdd-assistant | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
19
+ | audit-assistant | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
20
+ | bdd-assistant | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
21
+ | brainstorm-assistant | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
22
+ | changelog-guide | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
23
+ | checkin-assistant | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
24
+ | ci-cd-assistant | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
25
+ | code-review-assistant | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
26
+ | commit-standards | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
27
+ | contract-test-assistant | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
28
+ | database-assistant | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
29
+ | deploy-assistant | :x: | :white_check_mark: 1.0.0 |
30
+ | dev-methodology | :x: | :white_check_mark: 1.0.0 |
31
+ | dev-workflow-guide | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
32
+ | docs-generator | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
33
+ | documentation-guide | :white_check_mark: 2.1.0 | :white_check_mark: 2.1.0 |
34
+ | durable-execution-assistant | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
35
+ | e2e-assistant | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
36
+ | error-code-guide | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
37
+ | git-workflow-guide | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
38
+ | incident-response-assistant | :white_check_mark: 1.1.0 | :white_check_mark: 1.1.0 |
39
+ | journey-test-assistant | :x: | :white_check_mark: 1.0.0 |
40
+ | logging-guide | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
41
+ | metrics-dashboard-assistant | :white_check_mark: 1.1.0 | :white_check_mark: 1.1.0 |
42
+ | migration-assistant | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
43
+ | observability-assistant | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
44
+ | orchestrate | :x: | :warning: 1.0.0 (major) |
45
+ | plan | :x: | :warning: 1.0.0 (major) |
46
+ | pr-automation-assistant | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
47
+ | project-discovery | :white_check_mark: 1.1.0 | :white_check_mark: 1.1.0 |
48
+ | project-structure-guide | :white_check_mark: 1.1.0 | :white_check_mark: 1.1.0 |
49
+ | push | :x: | :warning: 1.0.0 (major) |
50
+ | refactoring-assistant | :white_check_mark: 2.0.0 | :white_check_mark: 2.0.0 |
51
+ | release-standards | :white_check_mark: 1.1.0 | :white_check_mark: 1.1.0 |
52
+ | requirement-assistant | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
53
+ | retrospective-assistant | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
54
+ | reverse-engineer | :white_check_mark: 1.2.0 | :white_check_mark: 1.2.0 |
55
+ | runbook-assistant | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
56
+ | security-assistant | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
57
+ | security-scan-assistant | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
58
+ | skill-builder | :x: | :white_check_mark: 1.0.0 |
59
+ | slo-assistant | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
60
+ | spec-derivation | :x: | :white_check_mark: 1.0.0 |
61
+ | spec-driven-dev | :white_check_mark: 1.2.0 | :white_check_mark: 1.2.0 |
62
+ | sweep | :x: | :white_check_mark: 1.0.0 |
63
+ | tdd-assistant | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
64
+ | test-coverage-assistant | :white_check_mark: 1.1.0 | :white_check_mark: 1.1.0 |
65
+ | testing-guide | :white_check_mark: 1.2.0 | :white_check_mark: 1.2.0 |
66
+
67
+ **zh-CN skills coverage**: 44/54 (81%)
68
+ **zh-TW skills coverage**: 54/54 (100%)
69
+
70
+ ## Standards (`core/` — 127 canonical)
71
+
72
+ | Standard | zh-CN | zh-TW |
73
+ | :-- | :-: | :-: |
74
+ | acceptance-criteria-traceability.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
75
+ | acceptance-test-driven-development.md | :white_check_mark: 1.1.0 | :white_check_mark: 1.1.0 |
76
+ | accessibility-standards.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
77
+ | adr-standards.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
78
+ | adversarial-test.md | :x: | :x: |
79
+ | agent-behavior-discipline.md | :x: | :x: |
80
+ | agent-communication-protocol.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
81
+ | agent-dispatch.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
82
+ | ai-agreement-standards.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
83
+ | ai-command-behavior.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
84
+ | ai-friendly-architecture.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
85
+ | ai-instruction-standards.md | :white_check_mark: 1.1.0 | :white_check_mark: 1.1.0 |
86
+ | ai-response-navigation.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
87
+ | alerting-standards.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
88
+ | anti-hallucination.md | :white_check_mark: 1.5.1 | :white_check_mark: 1.5.1 |
89
+ | anti-sycophancy-prompting.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
90
+ | api-design-standards.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
91
+ | behavior-driven-development.md | :white_check_mark: 1.1.0 | :white_check_mark: 1.1.0 |
92
+ | behavior-snapshot.md | :x: | :x: |
93
+ | branch-completion.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
94
+ | browser-compatibility-standards.md | :x: | :warning: 0.0.0 (major) |
95
+ | capability-declaration.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
96
+ | cd-deployment-strategies.md | :x: | :x: |
97
+ | change-batching-standards.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
98
+ | changelog-standards.md | :white_check_mark: 1.0.2 | :white_check_mark: 1.0.2 |
99
+ | chaos-engineering-standards.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
100
+ | chaos-injection-tests.md | :x: | :x: |
101
+ | checkin-standards.md | :white_check_mark: 1.6.0 | :white_check_mark: 1.6.0 |
102
+ | circuit-breaker.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
103
+ | code-review-checklist.md | :white_check_mark: 1.3.0 | :white_check_mark: 1.3.0 |
104
+ | commit-message-guide.md | :white_check_mark: 1.3.0 | :white_check_mark: 1.3.0 |
105
+ | container-security.md | :x: | :x: |
106
+ | containerization-standards.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
107
+ | context-aware-loading.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
108
+ | contract-testing-standards.md | :x: | :warning: 0.0.0 (major) |
109
+ | cost-budget-test.md | :x: | :x: |
110
+ | cross-flow-regression.md | :x: | :warning: 0.0.0 (major) |
111
+ | data-migration-testing.md | :x: | :x: |
112
+ | database-standards.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
113
+ | deployment-standards.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
114
+ | deprecation-standards.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
115
+ | design-document-standards.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
116
+ | developer-memory.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
117
+ | disaster-recovery-drill.md | :x: | :x: |
118
+ | documentation-lifecycle.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
119
+ | documentation-structure.md | :white_check_mark: 1.5.0 | :white_check_mark: 1.5.0 |
120
+ | documentation-writing-standards.md | :white_check_mark: 1.2.0 | :white_check_mark: 1.2.0 |
121
+ | dual-phase-output.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
122
+ | environment-standards.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
123
+ | error-code-standards.md | :white_check_mark: 1.1.0 | :white_check_mark: 1.2.0 |
124
+ | estimation-standards.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
125
+ | execution-history.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
126
+ | failure-source-taxonomy.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
127
+ | feature-flag-standards.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
128
+ | feature-manifest-standard.md | :x: | :x: |
129
+ | flaky-test-management.md | :x: | :x: |
130
+ | flow-based-testing.md | :x: | :x: |
131
+ | forward-derivation-standards.md | :white_check_mark: 1.2.0 | :white_check_mark: 1.2.0 |
132
+ | frontend-design-standards.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
133
+ | full-coverage-testing.md | :x: | :x: |
134
+ | git-workflow.md | :white_check_mark: 1.4.0 | :white_check_mark: 1.4.0 |
135
+ | git-worktree.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
136
+ | governance-layer.md | :x: | :white_check_mark: 1.0.0 |
137
+ | health-check-standards.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
138
+ | immutability-first.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
139
+ | knowledge-transfer-standards.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
140
+ | license-compliance.md | :x: | :x: |
141
+ | llm-output-validation.md | :x: | :x: |
142
+ | logging-standards.md | :white_check_mark: 1.2.0 | :white_check_mark: 1.2.0 |
143
+ | mock-boundary.md | :x: | :x: |
144
+ | model-selection.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
145
+ | mutation-testing.md | :x: | :x: |
146
+ | no-cicd-deployment.md | :x: | :x: |
147
+ | observability-standards.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
148
+ | packaging-standards.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
149
+ | performance-standards.md | :white_check_mark: 1.1.0 | :white_check_mark: 1.1.0 |
150
+ | pipeline-integration-standards.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
151
+ | pipeline-security-gates.md | :x: | :x: |
152
+ | policy-as-code-testing.md | :x: | :x: |
153
+ | postmortem-standards.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
154
+ | privacy-standards.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
155
+ | project-context-memory.md | :white_check_mark: 1.1.0 | :white_check_mark: 1.1.0 |
156
+ | project-structure.md | :white_check_mark: 1.2.0 | :white_check_mark: 1.2.0 |
157
+ | prompt-regression.md | :x: | :x: |
158
+ | property-based-testing.md | :x: | :x: |
159
+ | recovery-recipe-registry.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
160
+ | refactoring-standards.md | :white_check_mark: 2.1.0 | :white_check_mark: 2.1.0 |
161
+ | release-quality-manifest.md | :x: | :x: |
162
+ | release-readiness-gate.md | :x: | :warning: 0.0.0 (major) |
163
+ | replay-test.md | :x: | :x: |
164
+ | requirement-engineering.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
165
+ | retrospective-standards.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
166
+ | retry-standards.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
167
+ | reverse-engineering-standards.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
168
+ | rollback-standards.md | :x: | :x: |
169
+ | runbook-standards.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
170
+ | sast-advanced.md | :x: | :x: |
171
+ | secure-op.md | :x: | :x: |
172
+ | security-decision.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
173
+ | security-standards.md | :white_check_mark: 1.1.0 | :white_check_mark: 1.1.0 |
174
+ | security-testing.md | :x: | :x: |
175
+ | self-review-protocol.md | :x: | :white_check_mark: ? |
176
+ | server-ops-security.md | :x: | :x: |
177
+ | skill-standard-alignment-check.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
178
+ | slo-standards.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
179
+ | smoke-test.md | :x: | :x: |
180
+ | spec-driven-development.md | :white_check_mark: 2.2.0 | :white_check_mark: 2.2.0 |
181
+ | standard-admission-criteria.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
182
+ | standard-lifecycle-management.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
183
+ | structured-task-definition.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
184
+ | supply-chain-attestation.md | :x: | :x: |
185
+ | supply-chain-security-standards.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
186
+ | systematic-debugging.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
187
+ | tech-debt-standards.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
188
+ | test-completeness-dimensions.md | :white_check_mark: 1.1.0 | :white_check_mark: 1.1.0 |
189
+ | test-data-standards.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
190
+ | test-driven-development.md | :white_check_mark: 1.2.0 | :white_check_mark: 1.2.0 |
191
+ | test-governance.md | :white_check_mark: 1.1.0 | :white_check_mark: 1.1.0 |
192
+ | testing-standards.md | :white_check_mark: 3.2.0 | :white_check_mark: 3.2.0 |
193
+ | timeout-standards.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
194
+ | token-budget.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
195
+ | translation-lifecycle-standards.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
196
+ | verification-evidence.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
197
+ | versioning.md | :white_check_mark: 1.2.0 | :white_check_mark: 1.2.0 |
198
+ | virtual-organization-standards.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
199
+ | workflow-enforcement.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
200
+ | workflow-state-protocol.md | :white_check_mark: 1.0.0 | :white_check_mark: 1.0.0 |
201
+
202
+ **zh-CN core coverage**: 90/127 (71%)
203
+ **zh-TW core coverage**: 96/127 (76%)
204
+
205
+ ## Drift Warnings
206
+
207
+ Locale variants whose `translation_version` lags `source_version` by more than 2 minor versions, or by any major version. (Per XSPEC-239 Chimera Prevention — `translation-drift-warn`.)
208
+
209
+ ### zh-TW
210
+
211
+ - **skill/orchestrate**: translation `1.0.0` vs source `2.0.0` (major-version gap)
212
+ - **skill/plan**: translation `1.0.0` vs source `2.0.0` (major-version gap)
213
+ - **skill/push**: translation `1.0.0` vs source `2.0.0` (major-version gap)
214
+ - **core/browser-compatibility-standards.md**: translation `0.0.0` vs source `1.0.0` (major-version gap)
215
+ - **core/contract-testing-standards.md**: translation `0.0.0` vs source `1.0.0` (major-version gap)
216
+ - **core/cross-flow-regression.md**: translation `0.0.0` vs source `1.0.0` (major-version gap)
217
+ - **core/release-readiness-gate.md**: translation `0.0.0` vs source `1.0.0` (major-version gap)
218
+
219
+ ## Legend
220
+
221
+ | Symbol | Meaning |
222
+ |--------|---------|
223
+ | :white_check_mark: `x.y.z` | Translated; `translation_version` shown |
224
+ | :warning: `x.y.z` (drift) | Translation lags source by > 2 minor versions |
225
+ | :warning: `x.y.z` (major) | Translation lags source by a major version |
226
+ | :x: | Not translated for this locale |
@@ -1,8 +1,8 @@
1
1
  ---
2
2
  source: ../../CHANGELOG.md
3
- source_version: 5.14.0
4
- translation_version: 5.14.0
5
- last_synced: 2026-05-27
3
+ source_version: 5.16.0
4
+ translation_version: 5.16.0
5
+ last_synced: 2026-06-08
6
6
  status: current
7
7
  ---
8
8
 
@@ -17,6 +17,45 @@ status: current
17
17
 
18
18
  ## [Unreleased]
19
19
 
20
+ ## [5.16.0] - 2026-06-08
21
+
22
+ ### 新增 — 测试推导链延伸至用户指南(XSPEC-260)
23
+
24
+ - **`core/forward-derivation-standards.md`**:新增 `## Terminal Projection: User Guide`(终端投影:用户指南)段 + `### Single-Spine Principle`(单一主干原则)。把推导管道从测试延伸到用户指南——用户指南是 journey/E2E 测试以机器验证的同一条 AC 主干的终端投影。定义共用 `T-NNN` 编号(用户指南步骤的 `T-NNN` 必须等于某个真实 journey/E2E 测试的 id)、user-facing AC 筛选与保守预设,以及单一主干原则:测试/文件来源是同一 AC 主干的 N×1 投影、非 N×N 平行对照;另立平行编号体系即为违规。
25
+ - **`ai/standards/forward-derivation-standards.ai.yaml`**:对应 `terminal_projection` 区块 + 3 条 rules(`single-spine-no-parallel-numbering`、`user-guide-shared-tnnn`、`user-facing-ac-conservative-default`)。
26
+ - **`core/acceptance-criteria-traceability.md`**:新增 `## User-Documentation Coverage`(用户文件覆盖)维度——追踪 user-facing AC 是否被用户指南记载。含 user-facing AC 筛选(保守预设:判不准归 user-facing)、沿用 ✅/⚠️/❌ 状态,及排除非 user-facing 与 `not_implemented` AC 的覆盖率公式。
27
+ - **`ai/standards/acceptance-criteria-traceability.ai.yaml`**:对应 `user_doc_coverage` 区块 + 2 条 rules(`user-doc-user-facing-only`、`user-doc-shared-tnnn`)。
28
+ - **zh-TW / zh-CN 语言版**:两标准的新段落均完整翻译。
29
+
30
+ ## [5.15.0] - 2026-05-28
31
+
32
+ ### 新增 — i18n 分层语言策略(XSPEC-239)
33
+
34
+ - **`core/ai-instruction-standards.md` v1.0.0 → v1.1.0**:新增 `## 国际化(i18n)` 章节,定义 SKILL.md 与 root 级 AI 指令档的 L1/L2/L3/L4 分层语言策略。**范围延伸**自原本只规范 root 级(`CLAUDE.md`、`.cursorrules` 等)扩张至涵盖 skill 级档案(`SKILL.md`)。定义 canonical/locale 档案结构、责任边界、chimera 防范规则、采用者安装模式。
35
+ - **`ai/standards/ai-instruction-standards.ai.yaml` v1.0.0 → v1.1.0**:对应的 `i18n:` 区块 + 4 条新规则。
36
+ - **10 个缺漏 zh-TW locale skill 变体**:`ac-coverage`、`deploy-assistant`、`dev-methodology`、`journey-test-assistant`、`orchestrate`、`plan`、`push`、`skill-builder`、`spec-derivation`、`sweep`。zh-TW skill 覆盖率达 54/54(100%)。
37
+ - **`cli/src/lint/i18n.js` + `uds check --i18n` 命令**:强制执行 5 条 chimera 防范规则。Error 退出码 1。`--json` 模式给 CI 用。
38
+ - **`scripts/generate-locale-coverage.mjs` + 自动产生的 `locales/COVERAGE.md`**:依 skill/standard × locale 的覆盖率矩阵 + drift 警告。npm script `docs:locale-coverage`。
39
+ - **`UDS_LOCALE` 环境变数支援**。
40
+ - **`.uds/install.yaml` `locale:` 栏位支援**:让采用者宣告偏好 locale 一次,免去每次 `--locale`。
41
+ - **Locale fallback WARN**:取代原本的 silent fallback。
42
+ - **i18n 讯息**:新增 `localeFallbackTitle` / `localeFallbackHint` 键(en/zh-tw/zh-cn)。
43
+
44
+ ### 变更
45
+
46
+ - **CLI locale 解析优先顺序**:6 阶层 — `--locale` > `.uds/install.yaml` > `UDS_LOCALE` env > manifest > `.standards/` 侦测 > `'en'`。
47
+ - **`core/ai-instruction-standards.md` 译本**:zh-TW 与 zh-CN locale 同步至 v1.1.0 含完整在地化 i18n 章节。(zh-CN 章节标记 pending-review,依 XSPEC-239 O-2 — 简中翻译质量策略未定。)
48
+
49
+ ### 修正
50
+
51
+ - **29 个 canonical SKILL.md 描述 chimera 修正**(XSPEC-239 Phase 1B):从下列 skill 的 `description:` frontmatter 移除 CJK 内容:`adr-assistant`、`ai-collaboration-standards`、`ai-friendly-architecture`、`ai-instruction-standards`、`api-design-assistant`、`audit-assistant`、`ci-cd-assistant`、`contract-test-assistant`、`database-assistant`、`deploy-assistant`、`documentation-guide`、`error-code-guide`、`git-workflow-guide`、`incident-response-assistant`、`journey-test-assistant`、`logging-guide`、`observability-assistant`、`orchestrate`、`plan`、`pr-automation-assistant`、`project-structure-guide`、`push`、`retrospective-assistant`、`runbook-assistant`、`security-assistant`、`security-scan-assistant`、`slo-assistant`、`sweep`、`testing-guide`。
52
+ - **`skills/reverse-engineer/SKILL.md` description em dash** 改为 ASCII hyphen。
53
+ - **`locales/zh-TW/core/self-review-protocol.md` 缺 YAML frontmatter** 已补。
54
+
55
+ ### 采用者升级注意
56
+
57
+ 对于以 `--locale zh-TW` 或 `--locale zh-CN` 安装 UDS 的项目,请执行 `uds update`。手动编辑过 canonical 档案的采用者,请将客制化内容调整至 locale 变体或 overlay。新的 `uds check --i18n` lint 可验证项目干净。
58
+
20
59
  ## [5.14.0] - 2026-05-27
21
60
 
22
61
  ### 新增
@@ -14,7 +14,7 @@ status: current
14
14
 
15
15
  > **语言**: [English](../../README.md) | [繁體中文](../zh-TW/README.md) | 简体中文
16
16
 
17
- **版本**: 5.14.0 | **发布日期**: 2026-05-26 | **授权**: [双重授权](../../LICENSE) (CC BY 4.0 + MIT)
17
+ **版本**: 5.16.0 | **发布日期**: 2026-05-28 | **授权**: [双重授权](../../LICENSE) (CC BY 4.0 + MIT)
18
18
 
19
19
  语言无关、框架无关的软件项目文档标准。通过 AI 原生工作流,确保不同技术栈之间的一致性、质量和可维护性。
20
20
 
@@ -13,7 +13,7 @@ status: current
13
13
  <!-- UDS_SUPPORTED_VERSIONS_START -->
14
14
  | 版本 | 支持状态 |
15
15
  |------|--------|
16
- | 5.13.2 | ✅ 最新正式版 |
16
+ | 5.15.0 | ✅ 最新正式版 |
17
17
  | < 5.0.0 | ❌ 已终止支持 |
18
18
  <!-- UDS_SUPPORTED_VERSIONS_END -->
19
19
 
@@ -116,6 +116,52 @@ Coverage = (5 + 2×0.5) / 8 = 6/8 = 75%
116
116
 
117
117
  ---
118
118
 
119
+ ## 用户文件覆盖
120
+
121
+ 上方的 AC↔测试矩阵验证 AC 是否被*测试*。第二个维度则验证 **user-facing AC 是否同时被用户指南记载**。这把可追溯主干从测试延伸到用户指南——见正向推演标准 →《终端投影:用户指南》。用户指南与 journey/E2E 套件是同一作业流程的两个投影,因此共用一把尺:`T-NNN`。
122
+
123
+ ### User-Facing AC 筛选
124
+
125
+ 此维度**只套用于 user-facing AC**——终端用户可直接观察或操作者。如此可避免此维度退化成对每个内部 AC 的全面文件义务。
126
+
127
+ | AC 类型 | user-facing? |
128
+ |---------|--------------|
129
+ | UI 流程、画面、导航 | 是 |
130
+ | 用户执行的 CLI 指令/标志 | 是 |
131
+ | 对外 API 的用户语义(用户调用的公开契约)| 是 |
132
+ | 内部重构/模块契约 | 否 |
133
+ | 性能门槛、容量 | 否 |
134
+ | 安全内控、内部护栏 | 否 |
135
+
136
+ **保守预设**:判不准时一律归 user-facing。排除某个 AC 必须**明确标记**(如 `user_facing: false`),绝不静默省略。
137
+
138
+ ### 用户文件状态
139
+
140
+ 沿用相同符号,改回答「此 user-facing AC 是否被某个用户指南步骤覆盖?」:
141
+
142
+ | 状态 | 符号 | 定义 |
143
+ |------|------|------|
144
+ | **已记载** | ✅ | 有用户指南步骤覆盖此 AC,并标上该 AC 共用的 `T-NNN` |
145
+ | **部分** | ⚠️ | 有用户指南步骤但不完整或标记模棱两可 |
146
+ | **未记载** | ❌ | 无任何用户指南步骤引用此 user-facing AC |
147
+
148
+ `not_implemented`(🚫)AC 排除于用户文件分母之外,与测试覆盖率计算一致。
149
+
150
+ ### 用户文件覆盖率计算
151
+
152
+ ```
153
+ 用户文件覆盖率 % = (已记载 + 部分 × 0.5) / (user_facing_ac_count - not_implemented_count) × 100
154
+
155
+ 其中:
156
+ user_facing_ac_count = 归类为 user-facing 的 AC 数(套用保守预设)
157
+ 非 user-facing AC 不计入分子也不计入分母
158
+ 部分计为 0.5
159
+ ```
160
+
161
+ > **同一把尺**:用户指南步骤的 `T-NNN` 必须等于某个真实 journey/E2E 测试的 id(正向推演标准)。这把同一 AC 的三个投影——测试、journey、用户指南——绑到单一主干。自造平行 id 却无对应测试的用户指南步骤,一律报为**未记载**,绝不算覆盖。
162
+
163
+ ---
164
+
119
165
  ## 品质门槛
120
166
 
121
167
  ### 默认门槛
@@ -1,8 +1,8 @@
1
1
  ---
2
2
  source: ../../../core/ai-instruction-standards.md
3
- source_version: 1.0.0
4
- translation_version: 1.0.0
5
- last_synced: 2026-01-14
3
+ source_version: 1.1.0
4
+ translation_version: 1.1.0
5
+ last_synced: 2026-05-28
6
6
  status: current
7
7
  ---
8
8
 
@@ -10,8 +10,8 @@ status: current
10
10
 
11
11
  > **语言**: [English](../../../core/ai-instruction-standards.md) | [简体中文](../../zh-TW/core/ai-instruction-standards.md) | 简体中文
12
12
 
13
- **版本**: 1.0.0
14
- **最后更新**: 2026-01-14
13
+ **版本**: 1.1.0
14
+ **最后更新**: 2026-05-28
15
15
  **适用范围**: 所有使用 AI 编码助手的项目
16
16
 
17
17
  ---
@@ -151,6 +151,111 @@ AI 指令文件通常混合两种类型的内容:
151
151
 
152
152
  ---
153
153
 
154
+ ## 国际化(i18n)
155
+
156
+ AI 指令档常需提供多语言版本——既为了国际采用者,也为了非英语母语维护者主导的项目。本章节定义多语言指令档的组织、验证与安装规则。
157
+
158
+ ### AI 指令档的范围
159
+
160
+ 本标准涵盖两个层级的 AI 指令档:
161
+
162
+ | 层级 | 范例 | i18n 模式 |
163
+ |------|------|----------|
164
+ | **Root 层** | `CLAUDE.md`、`.cursorrules`、`.windsurfrules`、`.opencode/instructions.md` | 单档内以 inline 段落分语言(例:`## 中文` / `## English`)|
165
+ | **Skill 层** | Claude Code `.claude/skills/{name}/SKILL.md`、OpenCode plugin instructions | Canonical(英文)+ `locales/{lang}/` 变体 |
166
+
167
+ > 注意:skill 层的多档结构主要对 Claude Code 适用。其他工具是 root 单档;对它们只有下方「分层语言策略」与「Chimera 防范」规则适用。
168
+
169
+ ### 分层语言策略
170
+
171
+ 每份 AI 指令档概念上有 **4 层**,各层语言责任不同:
172
+
173
+ | 层 | 内容 | Canonical (en) | Locale ({lang}) | 为何分这层 |
174
+ |----|------|---------------|----------------|-----------|
175
+ | **L1 — Metadata** | YAML frontmatter `description`、`argument-hint`、`allowed-tools` | **必须英文** | **必须对应 locale 语言** | AI 触发讯号;英文 token 效率最高 + 训练语料密度高 |
176
+ | **L2 — 指令(Instructions)** | 对 AI 的命令式规则 | **必须英文** | 对应 locale 语言(可选;可保留英文)| AI 读英文指令最精准 |
177
+ | **L3 — 输出范本(Output Templates)** | 范例输出、回应格式、情境范本 | 英文(canonical 锁定英文)| **强制对应 locale**(mandatory)| **唯一直接影响 AI 输出语言的层** |
178
+ | **L4 — 人类文件** | 维护者注解、贡献者说明 | 英文 | 对应 locale 语言(强烈建议)| 给人类维护者读,AI 不读 |
179
+
180
+ **关键 insight**:L1(description)是 AI 用来决定「**是否调用**」此 skill 的触发讯号——它**不**影响 AI 之后说什么。L3(output template)才是控制 AI 输出语言的唯一开关。**i18n 强制检查应该聚焦在 L3——加强 L1 的强制是常见错误。**
181
+
182
+ ### Canonical / Locale 档案结构
183
+
184
+ UDS 标准与 skill 的 locale 变体结构:
185
+
186
+ ```text
187
+ core/{name}.md
188
+ core/{name}.ai.yaml
189
+ locales/{lang}/core/{name}.md
190
+ locales/{lang}/ai/standards/{name}.ai.yaml
191
+ skills/{name}/SKILL.md
192
+ locales/{lang}/skills/{name}/SKILL.md
193
+ ```
194
+
195
+ **命名惯例**:使用 BCP 47 语言标签——`zh-TW`、`zh-CN`、`ja`、`ko`、`en-US` 等。
196
+
197
+ ### Locale 变体 Frontmatter 必填栏位
198
+
199
+ ```yaml
200
+ ---
201
+ name: {与 canonical 同名}
202
+ source: {指回 canonical 的相对路径}
203
+ source_version: {翻译时 canonical 的版本}
204
+ translation_version: {本翻译的版本}
205
+ ---
206
+ ```
207
+
208
+ `source_version` 落后超过 2 个 minor 版本会触发 drift 警告。
209
+
210
+ ### 责任边界
211
+
212
+ | 角色 | 拥有 | 必须做 |
213
+ |------|------|--------|
214
+ | **Canonical 拥有者** | `core/{name}.md` 等 | 维持 L1/L2/L3/L4 为英文;breaking change 时 bump `source_version` |
215
+ | **Locale 维护者** | `locales/{lang}/...` | `translation_version` 对齐 `source_version`;翻译 L1(必)、L2(选)、L3(必)、L4(建议)|
216
+ | **采用者** | 自己的 `.claude/skills/`、`CLAUDE.md` | 用 `uds install --locale {lang}` 安装;**绝不**手动修改 canonical |
217
+
218
+ ### Chimera 防范
219
+
220
+ | 模式 | 严重度 | 侦测方式 |
221
+ |------|--------|----------|
222
+ | Canonical 的 `description` 含 CJK | ❌ Error | Lint |
223
+ | Locale 变体的 `description` 是纯 ASCII | ❌ Error | Lint |
224
+ | Locale 变体缺 `source:` frontmatter | ❌ Error | Lint |
225
+ | Canonical L3 含非英文范例 | ⚠️ Warn | Lint |
226
+ | 采用者档案与 canonical/locale 都不同 | ⚠️ Warn | Sync check |
227
+ | `translation_version` 落后过多 | ⚠️ Warn | Drift check |
228
+
229
+ ### 采用者安装
230
+
231
+ ```bash
232
+ uds install --locale zh-CN # 以简体中文安装 skills 与 standards
233
+ ```
234
+
235
+ **Locale 解析优先顺序**:`--locale` flag > `.uds/install.yaml` > `UDS_LOCALE` env > fallback `en`
236
+
237
+ Locale 不存在时 fallback 到 canonical + WARN,**不**阻断安装。
238
+
239
+ ### 迁移:已有 chimera 的采用者
240
+
241
+ 1. **辨识 chimera**:比对采用者档案与 UDS canonical / locale 变体
242
+ 2. **安装正确变体**:`uds install --locale {lang}`
243
+ 3. **保留专案级客制**:抽出为 overlay
244
+ 4. **丢弃纯翻译**:locale 变体取代之
245
+
246
+ ### 快速参考
247
+
248
+ | 动作 | 何时 | 工具 / 档案 |
249
+ |------|------|------------|
250
+ | 新增语言支援 | 想支援新 locale | `locales/{lang}/...` |
251
+ | 更新 canonical | 改进英文 source | Bump `source_version` |
252
+ | 翻译 / 同步 locale | 新增或更新 locale 内容 | Bump `translation_version` |
253
+ | 检查覆盖率 | 定期 review | `locales/COVERAGE.md` |
254
+ | 带 locale 安装 | 采用者初设 | `uds install --locale {lang}` |
255
+ | 跑 i18n lint | Commit 前 / CI | `uds lint --i18n` |
256
+
257
+ ---
258
+
154
259
  ## 维护检查清单
155
260
 
156
261
  在提交 AI 指令文件的变更之前:
@@ -205,6 +310,7 @@ grep -n "npm\|yarn\|pip\|cargo" CLAUDE.md | head -20
205
310
  | 版本 | 日期 | 变更 |
206
311
  |------|------|------|
207
312
  | 1.0.0 | 2026-01-14 | 初始发布 |
313
+ | 1.1.0 | 2026-05-28 | 新增 i18n 章节;范围延伸至 skill 层级文件 |
208
314
 
209
315
  ---
210
316
 
@@ -333,6 +333,25 @@ spec-review → forward-derivation → discovery
333
333
 
334
334
  ---
335
335
 
336
+ ## 终端投影:用户指南
337
+
338
+ 推演链不止于测试。**用户指南是同一条链的终端投影**——E2E/旅程测试以机器验证的那条作业流程,其供人阅读的视图。「用户读到的操作步骤」与「E2E 实际验证的行为」因此成为一个被维持的不变量。
339
+
340
+ - **单一真实来源**:SPEC 的验收条件(AC)。所有下游产物——BDD 场景、TDD/IT/E2E 骨架、ATDD 表格、契约,**以及用户指南**——都是同一条 AC 主干的投影。用户指南不是另一个要互相对照的来源,而是又一个投影。
341
+ - **仅限 user-facing AC**:唯有**终端用户可直接观察或操作**的 AC(UI 流程、CLI 指令、对外 API 的用户语义)才需要用户指南步骤。纯内部 AC(重构、内部模块契约、性能门槛、安全内控)无用户指南义务。**判不准时一律归 user-facing**——保守预设;必须明确标记才能排除。
342
+ - **共用编号(`T-NNN`)**:每个用户指南步骤标 `T-NNN`,且该 `T-NNN` 必须是某个真实 journey/E2E 测试的 id。用户指南与 E2E 套件是同一作业流程的两个投影、共用一把尺。模棱两可或未标记一律报为**未覆盖**(宁可冗余不要遗漏)。
343
+ - ✅ 用户指南步骤 `T-012「创建项目」` ↔ journey spec 中的 E2E 测试 `T-012`。
344
+ - ❌ 用户指南自造 `UG-3` 却无对应测试 → drift,报为未覆盖。
345
+ - **Drift 反例**:用户指南写「2-click checkout」、E2E 却仍验「3-step payment」——没有共用编号就无人察觉。共用 `T-NNN` 把这种 drift 变成被报出的覆盖缺口。
346
+
347
+ ### 单一主干原则(非平行对照)
348
+
349
+ 测试与文件来源是**同一条 AC 主干的多层投影**,不是互相对照的独立真实来源。TDD/IT/E2E 是同一主干的金字塔**层级**(依 AC 性质分层),非彼此竞争的来源。两两对照 N 个来源(N×N)会滋生 drift;把每个产物投影回单一 AC 主干(N×1)则消除它。
350
+
351
+ > **规则**:每个测试或文件产物都必须回溯到某个 AC。另立**平行编号体系**——一条脱离 AC 主干的第二套 `T-NNN` 系列——即为违规。只有一把尺:AC 主干,且 `T-NNN` 由 journey/E2E 测试与用户指南共用。
352
+
353
+ ---
354
+
336
355
  ## 命令
337
356
 
338
357
  ### 命令参考