universal-dev-standards 6.5.0 → 6.7.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 (181) hide show
  1. package/bundled/ai/standards/ai-response-navigation.ai.yaml +70 -3
  2. package/bundled/ai/standards/spec-driven-development.ai.yaml +28 -1
  3. package/bundled/core/ai-response-navigation.md +128 -2
  4. package/bundled/core/spec-driven-development.md +57 -2
  5. package/bundled/locales/zh-CN/CHANGELOG.md +34 -3
  6. package/bundled/locales/zh-CN/README.md +1 -1
  7. package/bundled/locales/zh-CN/SECURITY.md +1 -1
  8. package/bundled/locales/zh-CN/core/ai-response-navigation.md +115 -5
  9. package/bundled/locales/zh-CN/core/spec-driven-development.md +1 -1
  10. package/bundled/locales/zh-CN/skills/ac-coverage/SKILL.md +8 -4
  11. package/bundled/locales/zh-CN/skills/adr-assistant/SKILL.md +7 -6
  12. package/bundled/locales/zh-CN/skills/ai-collaboration-standards/SKILL.md +7 -2
  13. package/bundled/locales/zh-CN/skills/ai-friendly-architecture/SKILL.md +6 -5
  14. package/bundled/locales/zh-CN/skills/ai-instruction-standards/SKILL.md +6 -5
  15. package/bundled/locales/zh-CN/skills/api-design-assistant/SKILL.md +6 -5
  16. package/bundled/locales/zh-CN/skills/atdd-assistant/SKILL.md +6 -5
  17. package/bundled/locales/zh-CN/skills/audit-assistant/SKILL.md +6 -5
  18. package/bundled/locales/zh-CN/skills/bdd-assistant/SKILL.md +6 -5
  19. package/bundled/locales/zh-CN/skills/brainstorm-assistant/SKILL.md +7 -6
  20. package/bundled/locales/zh-CN/skills/changelog-guide/SKILL.md +6 -5
  21. package/bundled/locales/zh-CN/skills/checkin-assistant/SKILL.md +6 -5
  22. package/bundled/locales/zh-CN/skills/ci-cd-assistant/SKILL.md +6 -5
  23. package/bundled/locales/zh-CN/skills/code-review-assistant/SKILL.md +6 -5
  24. package/bundled/locales/zh-CN/skills/commit-standards/SKILL.md +7 -6
  25. package/bundled/locales/zh-CN/skills/contract-test-assistant/SKILL.md +7 -6
  26. package/bundled/locales/zh-CN/skills/database-assistant/SKILL.md +6 -5
  27. package/bundled/locales/zh-CN/skills/deploy-assistant/SKILL.md +7 -6
  28. package/bundled/locales/zh-CN/skills/dev-methodology/SKILL.md +7 -6
  29. package/bundled/locales/zh-CN/skills/dev-workflow-guide/SKILL.md +7 -6
  30. package/bundled/locales/zh-CN/skills/docs-generator/SKILL.md +6 -5
  31. package/bundled/locales/zh-CN/skills/documentation-guide/SKILL.md +6 -5
  32. package/bundled/locales/zh-CN/skills/durable-execution-assistant/SKILL.md +6 -5
  33. package/bundled/locales/zh-CN/skills/e2e-assistant/SKILL.md +7 -3
  34. package/bundled/locales/zh-CN/skills/error-code-guide/SKILL.md +5 -4
  35. package/bundled/locales/zh-CN/skills/git-workflow-guide/SKILL.md +6 -5
  36. package/bundled/locales/zh-CN/skills/incident-response-assistant/SKILL.md +6 -5
  37. package/bundled/locales/zh-CN/skills/journey-test-assistant/SKILL.md +7 -4
  38. package/bundled/locales/zh-CN/skills/knowledge-graph/SKILL.md +7 -4
  39. package/bundled/locales/zh-CN/skills/logging-guide/SKILL.md +7 -6
  40. package/bundled/locales/zh-CN/skills/metrics-dashboard-assistant/SKILL.md +6 -5
  41. package/bundled/locales/zh-CN/skills/migration-assistant/SKILL.md +7 -6
  42. package/bundled/locales/zh-CN/skills/observability-assistant/SKILL.md +7 -3
  43. package/bundled/locales/zh-CN/skills/orchestrate/SKILL.md +7 -6
  44. package/bundled/locales/zh-CN/skills/plan/SKILL.md +7 -6
  45. package/bundled/locales/zh-CN/skills/pr-automation-assistant/SKILL.md +6 -5
  46. package/bundled/locales/zh-CN/skills/project-discovery/SKILL.md +6 -5
  47. package/bundled/locales/zh-CN/skills/project-structure-guide/SKILL.md +7 -2
  48. package/bundled/locales/zh-CN/skills/push/SKILL.md +7 -6
  49. package/bundled/locales/zh-CN/skills/refactoring-assistant/SKILL.md +6 -5
  50. package/bundled/locales/zh-CN/skills/release-standards/SKILL.md +6 -5
  51. package/bundled/locales/zh-CN/skills/requirement-assistant/SKILL.md +6 -5
  52. package/bundled/locales/zh-CN/skills/retrospective-assistant/SKILL.md +6 -5
  53. package/bundled/locales/zh-CN/skills/reverse-engineer/SKILL.md +7 -6
  54. package/bundled/locales/zh-CN/skills/runbook-assistant/SKILL.md +7 -3
  55. package/bundled/locales/zh-CN/skills/security-assistant/SKILL.md +6 -5
  56. package/bundled/locales/zh-CN/skills/security-scan-assistant/SKILL.md +6 -5
  57. package/bundled/locales/zh-CN/skills/skill-builder/SKILL.md +7 -4
  58. package/bundled/locales/zh-CN/skills/slo-assistant/SKILL.md +7 -3
  59. package/bundled/locales/zh-CN/skills/spec-derivation/SKILL.md +7 -4
  60. package/bundled/locales/zh-CN/skills/spec-driven-dev/SKILL.md +7 -6
  61. package/bundled/locales/zh-CN/skills/sweep/SKILL.md +7 -6
  62. package/bundled/locales/zh-CN/skills/tdd-assistant/SKILL.md +6 -5
  63. package/bundled/locales/zh-CN/skills/test-coverage-assistant/SKILL.md +6 -5
  64. package/bundled/locales/zh-CN/skills/testing-guide/SKILL.md +7 -6
  65. package/bundled/locales/zh-TW/CHANGELOG.md +34 -3
  66. package/bundled/locales/zh-TW/README.md +1 -1
  67. package/bundled/locales/zh-TW/SECURITY.md +1 -1
  68. package/bundled/locales/zh-TW/core/ai-response-navigation.md +115 -5
  69. package/bundled/locales/zh-TW/core/spec-driven-development.md +1 -1
  70. package/bundled/locales/zh-TW/skills/ac-coverage/SKILL.md +7 -3
  71. package/bundled/locales/zh-TW/skills/adr-assistant/SKILL.md +7 -3
  72. package/bundled/locales/zh-TW/skills/ai-collaboration-standards/SKILL.md +6 -5
  73. package/bundled/locales/zh-TW/skills/ai-friendly-architecture/SKILL.md +7 -3
  74. package/bundled/locales/zh-TW/skills/ai-instruction-standards/SKILL.md +7 -3
  75. package/bundled/locales/zh-TW/skills/api-design-assistant/SKILL.md +7 -3
  76. package/bundled/locales/zh-TW/skills/atdd-assistant/SKILL.md +7 -3
  77. package/bundled/locales/zh-TW/skills/audit-assistant/SKILL.md +7 -3
  78. package/bundled/locales/zh-TW/skills/bdd-assistant/SKILL.md +7 -3
  79. package/bundled/locales/zh-TW/skills/brainstorm-assistant/SKILL.md +8 -4
  80. package/bundled/locales/zh-TW/skills/changelog-guide/SKILL.md +7 -3
  81. package/bundled/locales/zh-TW/skills/checkin-assistant/SKILL.md +7 -3
  82. package/bundled/locales/zh-TW/skills/ci-cd-assistant/SKILL.md +7 -3
  83. package/bundled/locales/zh-TW/skills/code-review-assistant/SKILL.md +7 -3
  84. package/bundled/locales/zh-TW/skills/commit-standards/SKILL.md +7 -3
  85. package/bundled/locales/zh-TW/skills/contract-test-assistant/SKILL.md +7 -3
  86. package/bundled/locales/zh-TW/skills/database-assistant/SKILL.md +7 -3
  87. package/bundled/locales/zh-TW/skills/deploy-assistant/SKILL.md +6 -5
  88. package/bundled/locales/zh-TW/skills/dev-methodology/SKILL.md +6 -5
  89. package/bundled/locales/zh-TW/skills/dev-workflow-guide/SKILL.md +7 -3
  90. package/bundled/locales/zh-TW/skills/docs-generator/SKILL.md +7 -3
  91. package/bundled/locales/zh-TW/skills/documentation-guide/SKILL.md +7 -3
  92. package/bundled/locales/zh-TW/skills/durable-execution-assistant/SKILL.md +7 -3
  93. package/bundled/locales/zh-TW/skills/e2e-assistant/SKILL.md +7 -3
  94. package/bundled/locales/zh-TW/skills/error-code-guide/SKILL.md +7 -3
  95. package/bundled/locales/zh-TW/skills/git-workflow-guide/SKILL.md +7 -3
  96. package/bundled/locales/zh-TW/skills/incident-response-assistant/SKILL.md +7 -3
  97. package/bundled/locales/zh-TW/skills/journey-test-assistant/SKILL.md +7 -3
  98. package/bundled/locales/zh-TW/skills/knowledge-graph/SKILL.md +7 -3
  99. package/bundled/locales/zh-TW/skills/logging-guide/SKILL.md +8 -4
  100. package/bundled/locales/zh-TW/skills/metrics-dashboard-assistant/SKILL.md +7 -3
  101. package/bundled/locales/zh-TW/skills/migration-assistant/SKILL.md +7 -3
  102. package/bundled/locales/zh-TW/skills/observability-assistant/SKILL.md +7 -3
  103. package/bundled/locales/zh-TW/skills/orchestrate/SKILL.md +6 -5
  104. package/bundled/locales/zh-TW/skills/plan/SKILL.md +6 -5
  105. package/bundled/locales/zh-TW/skills/pr-automation-assistant/SKILL.md +7 -3
  106. package/bundled/locales/zh-TW/skills/project-discovery/SKILL.md +7 -3
  107. package/bundled/locales/zh-TW/skills/project-structure-guide/SKILL.md +6 -5
  108. package/bundled/locales/zh-TW/skills/push/SKILL.md +6 -5
  109. package/bundled/locales/zh-TW/skills/refactoring-assistant/SKILL.md +7 -3
  110. package/bundled/locales/zh-TW/skills/release-standards/SKILL.md +7 -3
  111. package/bundled/locales/zh-TW/skills/requirement-assistant/SKILL.md +7 -3
  112. package/bundled/locales/zh-TW/skills/retrospective-assistant/SKILL.md +7 -3
  113. package/bundled/locales/zh-TW/skills/reverse-engineer/SKILL.md +7 -3
  114. package/bundled/locales/zh-TW/skills/runbook-assistant/SKILL.md +7 -3
  115. package/bundled/locales/zh-TW/skills/security-assistant/SKILL.md +7 -3
  116. package/bundled/locales/zh-TW/skills/security-scan-assistant/SKILL.md +7 -3
  117. package/bundled/locales/zh-TW/skills/skill-builder/SKILL.md +7 -3
  118. package/bundled/locales/zh-TW/skills/slo-assistant/SKILL.md +7 -3
  119. package/bundled/locales/zh-TW/skills/spec-derivation/SKILL.md +7 -3
  120. package/bundled/locales/zh-TW/skills/spec-driven-dev/SKILL.md +7 -3
  121. package/bundled/locales/zh-TW/skills/sweep/SKILL.md +6 -5
  122. package/bundled/locales/zh-TW/skills/tdd-assistant/SKILL.md +7 -3
  123. package/bundled/locales/zh-TW/skills/test-coverage-assistant/SKILL.md +7 -3
  124. package/bundled/locales/zh-TW/skills/testing-guide/SKILL.md +8 -3
  125. package/bundled/skills/ac-coverage/SKILL.md +5 -1
  126. package/bundled/skills/adr-assistant/SKILL.md +1 -0
  127. package/bundled/skills/ai-collaboration-standards/SKILL.md +1 -0
  128. package/bundled/skills/ai-friendly-architecture/SKILL.md +1 -0
  129. package/bundled/skills/ai-instruction-standards/SKILL.md +1 -0
  130. package/bundled/skills/api-design-assistant/SKILL.md +1 -0
  131. package/bundled/skills/atdd-assistant/SKILL.md +5 -1
  132. package/bundled/skills/audit-assistant/SKILL.md +5 -1
  133. package/bundled/skills/bdd-assistant/SKILL.md +5 -1
  134. package/bundled/skills/brainstorm-assistant/SKILL.md +5 -1
  135. package/bundled/skills/changelog-guide/SKILL.md +5 -1
  136. package/bundled/skills/checkin-assistant/SKILL.md +5 -1
  137. package/bundled/skills/ci-cd-assistant/SKILL.md +1 -0
  138. package/bundled/skills/code-review-assistant/SKILL.md +5 -1
  139. package/bundled/skills/commit-standards/SKILL.md +5 -1
  140. package/bundled/skills/contract-test-assistant/SKILL.md +1 -0
  141. package/bundled/skills/database-assistant/SKILL.md +1 -0
  142. package/bundled/skills/deploy-assistant/SKILL.md +1 -0
  143. package/bundled/skills/dev-methodology/SKILL.md +5 -1
  144. package/bundled/skills/dev-workflow-guide/SKILL.md +5 -1
  145. package/bundled/skills/docs-generator/SKILL.md +5 -1
  146. package/bundled/skills/documentation-guide/SKILL.md +1 -0
  147. package/bundled/skills/durable-execution-assistant/SKILL.md +5 -1
  148. package/bundled/skills/e2e-assistant/SKILL.md +5 -1
  149. package/bundled/skills/error-code-guide/SKILL.md +1 -0
  150. package/bundled/skills/git-workflow-guide/SKILL.md +1 -0
  151. package/bundled/skills/incident-response-assistant/SKILL.md +1 -0
  152. package/bundled/skills/journey-test-assistant/SKILL.md +5 -1
  153. package/bundled/skills/knowledge-graph/SKILL.md +5 -1
  154. package/bundled/skills/logging-guide/SKILL.md +1 -0
  155. package/bundled/skills/metrics-dashboard-assistant/SKILL.md +5 -1
  156. package/bundled/skills/migration-assistant/SKILL.md +5 -1
  157. package/bundled/skills/observability-assistant/SKILL.md +1 -0
  158. package/bundled/skills/orchestrate/SKILL.md +1 -0
  159. package/bundled/skills/plan/SKILL.md +1 -0
  160. package/bundled/skills/pr-automation-assistant/SKILL.md +1 -0
  161. package/bundled/skills/project-discovery/SKILL.md +5 -1
  162. package/bundled/skills/project-structure-guide/SKILL.md +1 -0
  163. package/bundled/skills/push/SKILL.md +1 -0
  164. package/bundled/skills/refactoring-assistant/SKILL.md +5 -1
  165. package/bundled/skills/release-standards/SKILL.md +5 -1
  166. package/bundled/skills/requirement-assistant/SKILL.md +5 -1
  167. package/bundled/skills/retrospective-assistant/SKILL.md +1 -0
  168. package/bundled/skills/reverse-engineer/SKILL.md +5 -1
  169. package/bundled/skills/runbook-assistant/SKILL.md +1 -0
  170. package/bundled/skills/security-assistant/SKILL.md +1 -0
  171. package/bundled/skills/security-scan-assistant/SKILL.md +1 -0
  172. package/bundled/skills/skill-builder/SKILL.md +5 -1
  173. package/bundled/skills/slo-assistant/SKILL.md +1 -0
  174. package/bundled/skills/spec-derivation/SKILL.md +5 -1
  175. package/bundled/skills/spec-driven-dev/SKILL.md +5 -1
  176. package/bundled/skills/sweep/SKILL.md +1 -0
  177. package/bundled/skills/tdd-assistant/SKILL.md +5 -1
  178. package/bundled/skills/test-coverage-assistant/SKILL.md +5 -1
  179. package/bundled/skills/testing-guide/SKILL.md +1 -0
  180. package/package.json +1 -1
  181. package/standards-registry.json +7 -7
@@ -3,10 +3,14 @@
3
3
 
4
4
  id: ai-response-navigation
5
5
  meta:
6
- version: "1.1.0"
7
- updated: "2026-06-10"
6
+ version: "1.3.0"
7
+ updated: "2026-08-17"
8
8
  source: core/ai-response-navigation.md
9
- description: Every substantive AI response must include contextual next-step suggestions with recommended options
9
+ description: >
10
+ Every substantive AI response must include contextual next-step suggestions with recommended
11
+ options (rules 1-6, required). Optional rules 7-11 govern the answer itself: lead with the
12
+ finding, restate state across turns, no preamble, plain language as the subject, and a
13
+ trade-off on every option rather than only the recommended one.
10
14
 
11
15
  rules:
12
16
  - id: navigation-footer
@@ -77,7 +81,70 @@ rules:
77
81
  Localized notation: 〔模型:Fast〕 / 〔模型:Standard〕 / 〔模型:Capable〕
78
82
  priority: optional
79
83
 
84
+ # ── Rules 7-9 (v1.2.0): the answer itself, not the navigation after it ──
85
+ # Borrowed from ayghri/i-have-adhd (MIT), 3 of its 10 rules. The other 7 were dropped:
86
+ # 2 duplicate navigation-footer/recommendation-marking above, and 5 conflict with this
87
+ # standard ("no recap/no closers" contradicts navigation-footer; "cap lists at 5" would
88
+ # truncate evidence tables) or duplicate estimation-standards.
89
+ # Optional in the same sense as model-tier-annotation: a project MAY promote them to required.
90
+ # Their triggers are deliberately precise — a rule too loose to fire is not a rule.
91
+
92
+ - id: lead-with-the-finding
93
+ trigger: a response that answers a question, reports an investigation result, or presents a decision
94
+ instruction: >
95
+ Open with what was found or what to do — not the method, not a restatement of the request,
96
+ not a plan for answering. Evidence (file:line, command output, tables, measurements) is
97
+ support and belongs after the claim it supports. This orders the evidence; it does not
98
+ license omitting it.
99
+ priority: optional
100
+
101
+ - id: restate-state-each-turn
102
+ trigger: work spanning 3 or more exchanges, or a task with 3 or more steps
103
+ instruction: >
104
+ Restate in one line where the work stands. The reader cannot be assumed to hold
105
+ "we are on step 3 of 5" across messages. Composes with the in-progress template:
106
+ this rule governs the opening, that template governs the footer.
107
+ priority: optional
108
+
109
+ - id: no-preamble
110
+ trigger: any substantive response
111
+ instruction: >
112
+ Start with the answer. Do not open with a summary of what you are about to do, an
113
+ acknowledgement of the request, or an assessment of the question. Generalizes the
114
+ anti-sycophancy-prompting prohibition on "opening critique with positive affirmation"
115
+ from critiques to every substantive response — for a different reason: not flattery,
116
+ but the delay it puts between the reader and the answer.
117
+ Does NOT apply to closers: navigation-footer still stands.
118
+ priority: optional
119
+
120
+ - id: plain-language-is-the-subject
121
+ trigger: any response explaining a situation, a defect, or a system's behaviour to a human
122
+ instruction: >
123
+ Explain what happened in the words the reader would use. File paths, symbol names, line
124
+ references, command output and version strings are support: they belong after the sentence
125
+ they support, not as the sentence itself. This does NOT license omitting them — a reader who
126
+ wants to verify must be able to. It governs which of the two is the subject.
127
+ Distinct from lead-with-the-finding: that rule orders finding before evidence, this one
128
+ governs register. A response can lead with its finding and still state that finding in
129
+ vocabulary only its author holds; both leave the reader unable to act.
130
+ priority: optional
131
+
132
+ - id: every-option-carries-its-trade-off
133
+ trigger: a response asking the reader to choose between two or more courses of action
134
+ instruction: >
135
+ recommendation-marking requires marking the recommended option and giving ITS reason. This
136
+ extends that to the rest: each option states what it buys and what it costs, in its own terms.
137
+ A list where only the recommendation is argued hands the comparison back to the reader, which
138
+ is the work they asked to have done; and an option shown without its downside reads as having
139
+ none. A trade-off is not a hedge — "this may be slightly harder" is not a cost, "this rewrites
140
+ 110 files and needs a human to check the translations" is. If an option genuinely has no
141
+ downside worth stating, say so explicitly: an empty cell reads as "not analysed" and the
142
+ reader cannot tell those apart. Composes with adaptive-quantity — trade-offs make each option
143
+ costlier to read, so the 1-5 cap matters more, not less.
144
+ priority: optional
145
+
80
146
  related_standards:
81
147
  - ai-command-behavior
82
148
  - ai-instruction-standards
83
149
  - ai-agreement-standards
150
+ - anti-sycophancy-prompting
@@ -3,7 +3,7 @@
3
3
 
4
4
  id: spec-driven-development
5
5
  meta:
6
- version: "1.3.0"
6
+ version: "1.4.0"
7
7
  updated: "2026-08-12"
8
8
  source: methodologies/guides/sdd-guide.md
9
9
  description: Spec-Driven Development workflow where documentation precedes implementation
@@ -198,6 +198,33 @@ rules:
198
198
  instruction: Archive spec with links to commits/PRs
199
199
  priority: required
200
200
 
201
+ - id: SDD-AC-VERIFIED
202
+ name: An AC with no verification item is not an AC
203
+ name_zh: 沒有驗證項的 AC 不是 AC
204
+ severity: high
205
+ rule: >
206
+ Every acceptance criterion MUST have a verification item pointing at it —
207
+ a test, a check, a gate, or an explicitly recorded manual step. An AC that
208
+ no verification item references MUST be demoted to a design intent rather
209
+ than carried as an AC.
210
+ rule_zh: >
211
+ 每一條 AC 必須有指向它的驗證項(測試/檢查/閘門/明確記錄的手動步驟)。
212
+ 沒有任何驗證項引用的 AC 必須降級為設計意圖,不得繼續掛在 AC 欄。
213
+ rationale: >
214
+ An unverified AC does not fail loudly — it stops being true while the spec
215
+ continues to assert it. Measured instance (XSPEC-380): a spec's AC-7 required
216
+ a component be "fully preserved, no regression"; its Test Plan had seven items
217
+ and none pointed at AC-7. The component stopped running on the day the AC was
218
+ written and was found three months later by accident.
219
+ rationale_zh: >
220
+ 未經驗證的 AC 不會大聲失敗——它安靜地停止成立,而規格繼續宣稱它為真。
221
+ 實測案例:某規格的 AC-7 要求「完整保留、無回歸」,Test Plan 七項無一指向它;
222
+ 它保護的東西死在該 AC 被寫下的同一天,三個月後偶然才被發現。
223
+ anti_pattern: >
224
+ Treating "the reviewer will notice" as a verification item. A reviewer reads
225
+ the spec, and the spec says the AC holds. An AC is a claim about the world;
226
+ only something that touches the world can falsify it.
227
+
201
228
  best_practices:
202
229
  do:
203
230
  - Keep specs focused and atomic (one change per spec)
@@ -2,8 +2,8 @@
2
2
 
3
3
  > **Language**: English | [繁體中文](../locales/zh-TW/core/ai-response-navigation.md) | [简体中文](../locales/zh-CN/core/ai-response-navigation.md)
4
4
 
5
- **Version**: 1.1.0
6
- **Last Updated**: 2026-06-10
5
+ **Version**: 1.3.0
6
+ **Last Updated**: 2026-08-17
7
7
  **Applicability**: All projects using AI-assisted development
8
8
  **Scope**: universal
9
9
  **Industry Standards**: None (Emerging AI tool practice)
@@ -19,6 +19,13 @@ This standard defines navigation behavior for AI responses: every substantive AI
19
19
 
20
20
  **Solution**: A standard "Navigation Footer" appended to every substantive AI response, with contextual templates, recommendation marking, and adaptive option quantities.
21
21
 
22
+ **Scope note (v1.2.0, extended in 1.3.0)**: Rules 1–6 govern what comes *after* the answer.
23
+ Rules 7–11 — **all optional** — govern the answer itself: lead with the finding (R7), restate state
24
+ across turns (R8), no preamble (R9), plain language as the subject (R10), and a trade-off on every
25
+ option rather than only the recommended one (R11). They exist because a response can satisfy every
26
+ one of Rules 1–6 while burying its conclusion, stating it in vocabulary only its author holds, or
27
+ listing options the reader still has to compare themselves.
28
+
22
29
  ---
23
30
 
24
31
  ## Core Rules
@@ -97,6 +104,118 @@ Tier names are **vendor-neutral**. Each tool or platform maps these tiers to its
97
104
 
98
105
  ---
99
106
 
107
+ ## The Answer Before the Navigation (Rules 7–11, Optional)
108
+
109
+ > **R7–R9 borrowed from**: [`ayghri/i-have-adhd`](https://github.com/ayghri/i-have-adhd) (MIT), 3 of its 10 rules.
110
+ > **R10–R11 added in 1.3.0** from a different source — a user telling the author, twice in one session,
111
+ > that a correct and complete answer was unreadable. R7–R9 had already shipped and were being followed.
112
+ > The other 7 were dropped: 2 are already covered by Rules 1–2 above, and 5 either conflict with
113
+ > this standard (its "no recap / no closers" contradicts Rule 1's Navigation Footer; its
114
+ > "cap lists at 5" would truncate evidence tables and traversal denominators) or duplicate
115
+ > [estimation-standards](estimation-standards.md).
116
+
117
+ **Why this section exists**: Rules 1–6 govern what follows the answer. Nothing governed the answer
118
+ itself — a response could bury its conclusion under a wall of evidence and still satisfy every rule
119
+ in this standard by appending a correct Navigation Footer. A reader who cannot find the answer is
120
+ not helped by being told what to do next.
121
+
122
+ **These five rules are optional**, in the same sense as Rule 6: adopting projects are not required
123
+ to enable them, and existing skills need no retroactive update. A project MAY promote any of them to
124
+ required in its own configuration. What is *not* optional is that they have precise triggers — a rule
125
+ phrased so loosely that it never fires is indistinguishable from not having the rule.
126
+
127
+ ### Rule 7: Lead With the Finding, Not the Process (Optional)
128
+
129
+ **Trigger**: a response that answers a question, reports an investigation result, or presents a decision.
130
+
131
+ The first line states **what was found or what to do**. Not the method, not a restatement of the
132
+ request, not a plan for answering.
133
+
134
+ Evidence — file:line references, command output, tables, measurements — is **support**, and belongs
135
+ after the claim it supports. Leading with evidence forces the reader to reconstruct the conclusion
136
+ themselves, which is the work they asked to have done.
137
+
138
+ | Instead of | Write |
139
+ |-----------|-------|
140
+ | "I checked 44 days of data across 63 domains and found that…" | "Delete those three queries. 46% of what they return is download pages." |
141
+ | "Let me look at how this is configured." | "It is configured in `x.yaml:12`; the value is wrong because…" |
142
+
143
+ **This does not license omitting the evidence.** It orders it.
144
+
145
+ ### Rule 8: Restate State in Multi-Turn Work (Optional)
146
+
147
+ **Trigger**: work spanning 3 or more exchanges, or a task with 3 or more steps.
148
+
149
+ Each response restates where the work stands, in one line. The reader cannot be assumed to hold
150
+ "we are on step 3 of 5" across messages, and the cost of restating it is one sentence.
151
+
152
+ This composes with Template 4 (*In Progress*) below: Rule 8 governs the **opening**, Template 4
153
+ governs the **footer**.
154
+
155
+ ### Rule 9: No Preamble (Optional)
156
+
157
+ **Trigger**: any substantive response.
158
+
159
+ Start with the answer. Do not open with a summary of what you are about to do, an acknowledgement
160
+ of the request, or an assessment of the question.
161
+
162
+ This generalizes one existing prohibition: [anti-sycophancy-prompting](anti-sycophancy-prompting.md)
163
+ already forbids *"Opening critique with positive affirmation"* — but only for critiques. Rule 9
164
+ extends the same prohibition to every substantive response, for a different reason: not flattery,
165
+ but the delay it puts between the reader and the answer.
166
+
167
+ **Rule 9 does not apply to closers.** Rule 1 requires a Navigation Footer, and that requirement
168
+ stands — the end of a response is where this standard puts the reader's next move.
169
+
170
+ ### Rule 10: Plain Language Is the Subject; Identifiers Are Support (Optional)
171
+
172
+ **Trigger**: any response explaining a situation, a defect, or a system's behaviour to a human.
173
+
174
+ Explain what happened in the words the reader would use. File paths, symbol names, line
175
+ references, command output and version strings are **support** — they belong after the sentence
176
+ they support, not as the sentence itself.
177
+
178
+ | Instead of | Write |
179
+ |-----------|-------|
180
+ | "`load_topics()` at `intel-scout.py:883` reads `intel-topics.yaml`, while `load_feeds()` at `:1033` reads `intel-feeds.yaml`." | "It gathers material two ways: by searching keywords, and by subscribing to a fixed set of blogs." *(then cite both call sites)* |
181
+ | "`manifest.skillHashes` has 137 entries keyed by `claude-code/project/<n>/SKILL.md` while the lookup uses `.claude/skills/<n>`." | "The hashes are stored under one naming scheme and looked up under another, so none are ever found." *(then show both keys)* |
182
+
183
+ This is **not** a licence to omit the identifiers — a reader who wants to verify must be able to.
184
+ It governs which of the two is the subject of the sentence.
185
+
186
+ **Why it is separate from R7**: R7 orders *finding before evidence*. R10 governs *register* — a
187
+ response can lead with its finding and still state that finding in vocabulary only its author
188
+ holds. Both failures leave the reader unable to act; they are different failures.
189
+
190
+ ### Rule 11: Every Option Carries Its Own Trade-off (Optional)
191
+
192
+ **Trigger**: a response that asks the reader to choose between two or more courses of action.
193
+
194
+ Rule 2 requires marking the recommended option and giving *its* reason. Rule 11 extends that to
195
+ the rest: **each** option states what it buys and what it costs, in its own terms.
196
+
197
+ A list of options where only the recommended one is argued hands the comparison back to the
198
+ reader — which is the work they asked to have done. And an option presented without its downside
199
+ reads as having none, which is rarely true and never verifiable from the list alone.
200
+
201
+ ```markdown
202
+ > **Please choose:**
203
+ > | Option | Buys you | Costs you |
204
+ > |---|---|---|
205
+ > | **(A) …** ⭐ **Recommended** — [why this one] | … | … |
206
+ > | **(B) …** | … | … |
207
+ ```
208
+
209
+ **A trade-off is not a hedge.** "This may be slightly harder" is not a cost; "this rewrites 110
210
+ files and needs a human to check the translations" is. If an option genuinely has no downside
211
+ worth stating, say so explicitly rather than leaving the column empty — an empty cell reads as
212
+ "not analysed", and the reader cannot tell those apart.
213
+
214
+ **Composes with Rule 4**: the option count stays bounded (1–5). Trade-offs make each option
215
+ costlier to read, so this rule makes Rule 4's cap matter more, not less.
216
+
217
+ ---
218
+
100
219
  ## Contextual Templates
101
220
 
102
221
  ### Template 1: Task Completed
@@ -284,6 +403,11 @@ Each tool's integration layer is responsible for rendering the Navigation Footer
284
403
  | R4 | 1–5 options, adapt to context |
285
404
  | R5 | Use `/command` format when applicable |
286
405
  | R6 | *(Optional)* Append `〔model: Fast\|Standard\|Capable〕` when tier is clear |
406
+ | R7 | *(Optional)* Lead with the finding; evidence follows the claim it supports |
407
+ | R8 | *(Optional)* 3+ turns or 3+ steps → restate state in one line |
408
+ | R9 | *(Optional)* No preamble. Closers still required — see R1 |
409
+ | R10 | *(Optional)* Plain language is the subject; identifiers support it, after the claim |
410
+ | R11 | *(Optional)* Every option states what it buys and costs — not only the recommended one |
287
411
 
288
412
  | Exempt | Not Exempt |
289
413
  |--------|------------|
@@ -307,6 +431,8 @@ Each tool's integration layer is responsible for rendering the Navigation Footer
307
431
 
308
432
  | Version | Date | Changes |
309
433
  |---------|------|---------|
434
+ | 1.3.0 | 2026-08-17 | Add optional R10–R11. R10 governs register: plain language is the subject of the sentence and identifiers support it — distinct from R7, which orders finding before evidence, because a response can lead with its finding and still state it in vocabulary only its author holds. R11 extends Rule 2 from the recommended option to all of them: a list where only the recommendation is argued hands the comparison back to the reader, and an option shown without its cost reads as having none |
435
+ | 1.2.0 | 2026-08-17 | Add optional R7–R9 governing the answer itself (lead with the finding, restate state, no preamble). Borrowed from `ayghri/i-have-adhd` (MIT), 3 of its 10 rules; the other 7 were dropped as duplicated by R1–R2, in conflict with R1, or covered by estimation-standards. Rules 1–6 could all be satisfied by a response that buries its conclusion — R7–R9 close that |
310
436
  | 1.1.0 | 2026-06-10 | Add R6 optional model tier annotation (`〔model: Fast\|Standard\|Capable〕`); vendor-neutral; no forced changes to existing skills |
311
437
  | 1.0.0 | 2026-03-25 | Initial release |
312
438
 
@@ -1,7 +1,7 @@
1
1
  # Spec-Driven Development (SDD) Standards
2
2
 
3
- **Version**: 2.3.0
4
- **Last Updated**: 2026-06-08
3
+ **Version**: 2.4.0
4
+ **Last Updated**: 2026-08-17
5
5
  **Applicability**: All projects adopting Spec-Driven Development
6
6
  **Scope**: universal
7
7
  **Industry Standards**: None (Emerging 2025+ methodology)
@@ -50,6 +50,61 @@ UDS supports two AC notations. **GWT is the default and preferred** (Forward Der
50
50
 
51
51
  Provide **GWT or EARS** per AC (`.ac.yaml`: `given/when/then` **or** `ears`). Prefer GWT for BDD-derivable behaviour; reach for EARS when GWT feels forced. Do not require both; do not remove GWT.
52
52
 
53
+ ## An AC With No Verification Item Is Not an AC | 沒有驗證項的 AC 不是 AC
54
+
55
+ Every acceptance criterion must have a **verification item that points at it** — a test, a
56
+ check, a gate, or an explicitly recorded manual step. An AC that no verification item
57
+ references is a **promise nobody kept**, and it does not fail loudly: it simply stops being
58
+ true while the spec continues to assert it.
59
+
60
+ 每一條驗收標準都必須有一個**指向它的驗證項**——測試、檢查、閘門,或一則明確記錄的
61
+ 手動步驟。沒有任何驗證項引用的 AC 是**一張沒有人兌現的支票**,而且它不會大聲失敗:
62
+ 它只是安靜地停止成立,而規格繼續宣稱它為真。
63
+
64
+ **Rule**: an AC without a verification item must be **demoted to a design intent**, not
65
+ carried as an AC. Demotion is honest; an unverified AC is not.
66
+ **規則**:沒有驗證項的 AC 必須**降級為設計意圖**,不得繼續掛在 AC 欄。降級是誠實的,
67
+ 未經驗證的 AC 不是。
68
+
69
+ ### The measured instance | 實測案例
70
+
71
+ A 2026-05-14 spec carried `AC-7: the legacy system-report is fully preserved, no
72
+ regression`. Its Test Plan had seven items and **none of them pointed at AC-7**. The
73
+ report's timer was disabled and its deploy function was never called — **from the same day
74
+ the AC was written**. It was found three months later, by accident, while verifying an
75
+ unrelated install.
76
+
77
+ **It was never wired to a check and later came loose. It was never wired at all.**
78
+
79
+ 一份 2026-05-14 的規格寫著 `AC-7:舊版系統報告完整保留(無回歸)`。它的 Test Plan
80
+ 有七項,**沒有一項指向 AC-7**。該報告的 timer 是 disabled、部署函式從未被呼叫——
81
+ **從那條 AC 被寫下的同一天起**。三個月後在驗證另一件無關的安裝時偶然發現。
82
+
83
+ **它不是後來斷線的。它從來沒有被接上過。**
84
+
85
+ ### Why "someone will check it" is not a verification item
86
+
87
+ A verification item must be **executable or recorded**, not implied. "The reviewer will
88
+ notice" is not one, because a reviewer reads the spec — and the spec says the AC holds.
89
+ An AC is a claim **about the world**, and only something that touches the world can
90
+ falsify it.
91
+
92
+ 「有人會檢查」不是驗證項。它必須**可執行或有紀錄**,不能是隱含的。「審查者會注意到」
93
+ 不算——因為審查者讀的是規格,而規格說那條 AC 成立。**AC 是一個關於世界的宣稱,
94
+ 只有碰得到世界的東西才能證偽它。**
95
+
96
+ ### Related | 關聯
97
+
98
+ - [verification-evidence](verification-evidence.md) — VE-011 requires evidence to come from a
99
+ fresh run **after the last edit**; this standard is the upstream question of whether any
100
+ run was ever pointed at the claim in the first place.
101
+ - [class-level-fix](class-level-fix.md) — the same discipline applied to *scope*: traverse the
102
+ set rather than enumerate it.
103
+
104
+ ## What's New in v2.4.0
105
+
106
+ - **An AC with no verification item is not an AC** (XSPEC-380 R5). Every acceptance criterion must have a verification item pointing at it; one that has none is demoted to a design intent rather than carried as an AC. Measured instance: a spec's `AC-7` had no matching Test Plan item, and the thing it protected stopped running **on the day the AC was written** — found three months later by accident. An AC is a claim about the world, and only something that touches the world can falsify it.
107
+
53
108
  ## What's New in v2.3.0
54
109
 
55
110
  - **EARS notation** as an optional AC format (XSPEC-263): 5 EARS templates + `.ac.yaml` `ears` field. GWT remains default & preferred; `given/when/then` relaxed from `required` (backward compatible).
@@ -1,8 +1,8 @@
1
1
  ---
2
2
  source: ../../CHANGELOG.md
3
- source_version: 6.5.0
4
- translation_version: 6.5.0
5
- last_synced: 2026-08-14
3
+ source_version: 6.7.0
4
+ translation_version: 6.7.0
5
+ last_synced: 2026-08-17
6
6
  status: current
7
7
  ---
8
8
 
@@ -17,6 +17,37 @@ status: current
17
17
 
18
18
  ## [Unreleased]
19
19
 
20
+ ## [6.7.0] - 2026-08-17
21
+
22
+ ### 修正
23
+
24
+ - **skill 触发面在三层全数复原——55 个 skill × 英文、zh-TW、zh-CN。** 一个 skill 的 `description` 是模型决定要不要调用它时**唯一看得到的东西**。commit `d415937e`(2026-02-10)把其中 17 个改写成 `[UDS] <标签>`,删掉 `Use when:` 与 `Keywords:` 两行、**连中文关键字一起**;相邻 commit 的标题写着 `token optimization`。当时**只有 token 可数**——没有任何东西在量触发面,于是那个取舍看起来是单边的,而它不是。2026-08-14 测量:55 个含 `SKILL.md` 的 skill 中,**27 个有触发条件、27 个有关键字、0 个有排除条件、28 个两者皆无**——而那 28 个正是方法论核心:tdd、bdd、atdd、spec-driven-dev、code-review、commit-standards、checkin、requirement。
25
+ - **英文来源**:28 个复原,且**全部 55 个补上排除条件**(`Not for:`)。只加触发不加排除,换来的是过度触发;而一个不该响却响的 skill 会被整个关掉,**连带拖走还能用的那些**。15 个可从 git 历史救回者中**有 8 个被重写**,因为历史文字已不描述现行行为——其中六个宣称自己会引导某套生命周期,而那已于 XSPEC-095 移交采用层。**救回一个过期的描述,比不救更糟。**
26
+ - **语系层**:zh-TW 与 zh-CN **各 55/55,是翻译不是转码**。**这一半才是重点**——以 `--locale zh-tw` 安装的项目,在英文来源已修好时仍拿到被剥过的描述,这个修正本来到不了它要给的那个读者。繁体与简体各自用地道用词,另修正三份 zh-CN 描述中混入的繁体字。
27
+ - **翻译 drift 62 → 38**,剩下的 38 是刻意的停点:24 份漂移完全来自本次 description 编辑者更新了 hash,12 份正文早已漂移者保留过期 hash——更新它们等于宣称整份文件已同步,而那件事没有人验证过。
28
+ - ⚠️ **28 个中有 10 个带着 `disable-model-invocation: true`**,由同一个 `d415937e` 加入。对那 10 个而言,补描述**并不会**让它们变成可被选中——挡住的是那个标志,而要不要拿掉它是**设计决定不是缺陷**。模型真正选得到的数量是 **45,不是 55**。
29
+
30
+ ### 新增
31
+
32
+ - **`ai-response-navigation` 1.2.0 → 1.3.0 —— 可选规则 R10 与 R11。** 它们的来源与 R7–R9 不同:用户在同一次工作会话中**两度**指出,一个正确且完整的回答读不懂,而当时 R7–R9 已经出货且正在被遵守。**先讲发现并不足够。**
33
+ - **R10 —— 白话是主语,标识符是佐证。** *触发*:任何向人解释一个情况、一个缺陷、或一个系统行为的响应。用读者会用的话说清楚发生了什么;路径、符号、行号、命令输出、版本字符串属于它们所支持的那句话**之后**,而不是那句话本身。它**不是**可以省略它们的许可——想验证的读者必须验得了。**与 R7 分开是刻意的**:R7 管的是「先发现后证据」的顺序,而一个响应可以先讲发现、却仍用只有作者持有的词汇讲它。两者都让读者无法行动,但它们是不同的失效。
34
+ - **R11 —— 每个选项都要带自己的利弊。** *触发*:要求读者在两个以上做法之间选择的响应。规则 2 已要求标示推荐项并给出**它的**理由;R11 要求**每一个**选项都说明它换到什么、代价是什么。一份只有推荐项被论证的清单,等于**把比较的工作丢回给读者**——而那正是他请你做的事;而没标代价的选项读起来像是没有代价。**利弊不是模棱两可**:「稍微难一点」不是代价,「重写 110 个文件且翻译需要人审」才是。空白的代价栏读起来是「没有分析过」,而读者分不出这两者。
35
+
36
+ ## [6.6.0] - 2026-08-17
37
+
38
+ ### 新增
39
+
40
+ - **`spec-driven-development` 2.3.0 → 2.4.0 —— 没有验证项的 AC 不是 AC。** 每一条验收标准都必须有一个**指向它的验证项**——测试、检查、闸门,或一则明确记录的手动步骤。没有任何验证项引用的 AC 是一张没有人兑现的支票,而且它**不会**大声失败:它只是安静地停止成立,而规格继续宣称它为真。**规则**:这样的 AC 必须**降级为设计意图**,不得继续挂在 AC 栏——降级是诚实的,未经验证的 AC 不是。标准同时写明什么**不算**验证项:「审查者会注意到」不是验证项,因为审查者读的是规格,而规格说那条 AC 成立。新增规则 `SDD-AC-VERIFIED`。
41
+ - **实测案例**:一份 2026-05-14 的规格写着 `AC-7:旧版系统报告完整保留(无回归)`。它的 Test Plan 有七项,**没有一项指向 AC-7**。该报告的 timer 是 disabled、部署函数从未被调用——**从那条 AC 被写下的同一天起**。三个月后在验证一件无关的安装时偶然撞到。它不是接上了检查后来松脱,**它从来没有被接上过**。
42
+
43
+ - **`ai-response-navigation` 1.1.0 → 1.2.0 —— 可选规则 R7–R9,管答案本身**(XSPEC 借鉴 B-10,来源 [`ayghri/i-have-adhd`](https://github.com/ayghri/i-have-adhd),MIT)。规则 1–6 管的是答案**之后**要附什么:导航区块、标记过的推荐、匹配响应类型的模板。**答案本身没有任何规则在管。** 于是一个响应可以把结论埋在一整面证据底下,只要结尾附上正确的导航区块,它仍然满足**本标准的每一条**——而找不到答案的读者,不会因为被告知下一步而得到帮助。
44
+ - **R7 —— 先讲发现,不要先讲过程。** *触发*:回答问题、汇报调查结果、或提出决策的响应。第一行写**查到了什么**或**该做什么**——不是方法、不是把问题复述一遍、不是回答的计划。证据(`file:line`、命令输出、表格、测量数字)是**佐证**,应放在它所支持的论断之后;以证据开场会迫使读者自行重建结论,而那正是他请你做的工作。本条规范的是**顺序**,**不**代表可以省略证据。
45
+ - **R8 —— 每一轮重述进度。** *触发*:跨 3 轮以上的对话,或含 3 个以上步骤的任务。用一行说明工作进行到哪里。不能假设读者能在消息之间记住「我们在 5 步中的第 3 步」,而重述它的成本是一个句子。与模板 4(进行中)互补:**R8 管开头,模板管结尾。**
46
+ - **R9 —— 不要开场白。** *触发*:任何实质性响应。本条把一项既有禁令一般化:[`anti-sycophancy-prompting`](../../core/anti-sycophancy-prompting.md) 已经禁止「以正面肯定开场批评」,但**仅限批评情境**。R9 把同一项禁令扩及每一个实质响应,理由不同——不是为了防拍马屁,而是为了消除它在读者与答案之间制造的延迟。**R9 不适用于结语**;R1 的导航区块要求依然成立。
47
+ - **来源十条只取三条,其余七条的淘汰理由写进标准本文**,不是只写在待办清单里。两条与 R1–R2 重复。三条与本标准或其他标准冲突:它的「不要 recap/不要结语」**与 R1 的导航区块直接矛盾**;它的「列表上限 5 项」会截断证据表格与遍历分母;它的「具体时间估计」已由 [`estimation-standards`](../../core/estimation-standards.md) 涵盖。
48
+ - **可选的语义同 R6**(模型级别标注):采用者不必启用、既有 skill 不需回头补,项目**可以**在自己的配置中把任一条提升为必须。**不可选的是每一条都带有精确的触发条件**——一条松到永远不会启动的规则,与没有这条规则无从分辨,那正是 XSPEC-378 记录的失效模式。
49
+ - **扩充既有标准而非新建一支**:再开一支管「AI 怎么对人类写回答」的标准,会让同一条轴出现两个实现。
50
+
20
51
  ## [6.5.0] - 2026-08-14
21
52
 
22
53
  > ⚠️ **本节简体译文待补。** 本次发布包含两批内容:XSPEC 借鉴 B-01 的五条标准补强
@@ -15,7 +15,7 @@ status: current
15
15
 
16
16
  > **语言**: [English](../../README.md) | [繁體中文](../zh-TW/README.md) | 简体中文
17
17
 
18
- **版本**: 6.5.0 | **发布日期**: 2026-08-14 | **授权**: [双重授权](../../LICENSE) (CC BY 4.0 + MIT)
18
+ **版本**: 6.7.0 | **发布日期**: 2026-08-17 | **授权**: [双重授权](../../LICENSE) (CC BY 4.0 + MIT)
19
19
 
20
20
  语言无关、框架无关的软件项目文档标准。通过 AI 原生工作流,确保不同技术栈之间的一致性、质量和可维护性。
21
21
 
@@ -13,7 +13,7 @@ status: current
13
13
  <!-- UDS_SUPPORTED_VERSIONS_START -->
14
14
  | 版本 | 支持状态 |
15
15
  |------|--------|
16
- | 6.5.0 | ✅ 最新正式版 |
16
+ | 6.7.0 | ✅ 最新正式版 |
17
17
  | < 6.0.0 | ❌ 已终止支持 |
18
18
  <!-- UDS_SUPPORTED_VERSIONS_END -->
19
19
 
@@ -1,8 +1,8 @@
1
1
  ---
2
2
  source: ../../../core/ai-response-navigation.md
3
- source_version: 1.1.0
4
- translation_version: 1.1.0
5
- last_synced: 2026-06-10
3
+ source_version: 1.3.0
4
+ translation_version: 1.3.0
5
+ last_synced: 2026-08-17
6
6
  status: current
7
7
  ---
8
8
 
@@ -10,8 +10,8 @@ status: current
10
10
 
11
11
  > **语言**: [English](../../../core/ai-response-navigation.md) | [繁體中文](../../zh-TW/core/ai-response-navigation.md) | 简体中文
12
12
 
13
- **版本**: 1.1.0
14
- **最后更新**: 2026-06-10
13
+ **版本**: 1.3.0
14
+ **最后更新**: 2026-08-17
15
15
  **适用范围**: 所有使用 AI 辅助开发的项目
16
16
  **范围**: universal
17
17
  **行业标准**: 无(新兴 AI 工具实践)
@@ -27,6 +27,12 @@ status: current
27
27
 
28
28
  **解决方案**:在每个实质性 AI 响应结尾附加标准化的「导航区块」,包含情境模板、推荐标记和弹性选项数量。
29
29
 
30
+ **范围注记(v1.2.0,v1.3.0 扩充)**:规则 1–6 管的是答案**之后**要附什么。
31
+ 规则 7–11 **全部属可选**,管的是答案本身:先讲发现(R7)、每轮重述进度(R8)、不要开场白(R9)、
32
+ 白话是主语(R10)、每个选项都要带自己的利弊而非只有推荐项有(R11)。新增的理由是——
33
+ 一个响应可以满足规则 1–6 的每一条,同时把结论埋起来;
34
+ **而找不到答案的读者,不会因为结尾有一个正确的导航区块被告知下一步而得到帮助。**
35
+
30
36
  ---
31
37
 
32
38
  ## 核心规则
@@ -103,6 +109,103 @@ status: current
103
109
 
104
110
  ---
105
111
 
112
+ ## 导航之前的那个答案(规则 7–11,可选)
113
+
114
+ > **规则 7–9 借鉴自**:[`ayghri/i-have-adhd`](https://github.com/ayghri/i-have-adhd)(MIT),十条中取三条。
115
+ > **规则 10–11 于 1.3.0 新增**,来源不同——用户在同一次工作会话中两度指出,
116
+ > 一个正确且完整的回答读不懂。当时规则 7–9 已经出货且正在被遵守。
117
+ > 其余七条删去:两条已被上方规则 1–2 涵盖,五条与本标准冲突
118
+ > (它的「不要 recap/不要结语」与规则 1 的导航区块直接矛盾;它的「列表上限 5 项」
119
+ > 会截断证据表格与遍历分母)或与 [estimation-standards](estimation-standards.md) 重复。
120
+
121
+ **这一节为何存在**:规则 1–6 管的是答案**之后**要附什么,而答案本身没有任何规则在管——
122
+ 一个响应可以把结论埋在一整面证据底下,只要结尾附上正确的导航区块,
123
+ 它仍然满足本标准的每一条。**找不到答案的读者,不会因为被告知下一步而得到帮助。**
124
+
125
+ **这五条是可选的**,语义同规则 6:采用项目不必启用,既有 skill 也不需回头补。
126
+ 项目**可以**在自己的配置中把任一条提升为必须。**不可选的是它们必须有精确的触发条件**——
127
+ 一条松到永远不会启动的规则,与没有这条规则无从分辨。
128
+
129
+ ### 规则 7:先讲发现,不要先讲过程(可选)
130
+
131
+ **触发条件**:回答问题、汇报调查结果、或提出决策的响应。
132
+
133
+ 第一行写**查到了什么**或**该做什么**。不是方法、不是把问题复述一遍、不是回答的计划。
134
+
135
+ 证据——`file:line`、命令输出、表格、测量数字——是**佐证**,应放在它所支持的论断**之后**。
136
+ 以证据开场会迫使读者自行重建结论,而那正是他请你做的工作。
137
+
138
+ | 不要写 | 改写成 |
139
+ |---|---|
140
+ | 「我检查了 44 天、63 个域名的数据,发现……」 | 「那三组查询删掉。它返回的东西有 46% 是下载页。」 |
141
+ | 「让我看看这是怎么配置的。」 | 「配置在 `x.yaml:12`,值是错的,因为……」 |
142
+
143
+ **这不代表可以省略证据**,它规范的是顺序。
144
+
145
+ ### 规则 8:多轮工作中每一轮重述进度(可选)
146
+
147
+ **触发条件**:跨 3 轮以上的对话,或含 3 个以上步骤的任务。
148
+
149
+ 每条响应用一行说明工作进行到哪里。不能假设读者能在消息之间记住
150
+ 「我们在 5 步中的第 3 步」,而重述它的成本是一个句子。
151
+
152
+ 本条与下方模板 4(进行中)互补:**规则 8 管开头,模板 4 管结尾。**
153
+
154
+ ### 规则 9:不要开场白(可选)
155
+
156
+ **触发条件**:任何实质性响应。
157
+
158
+ 从答案开始。不要以「我接下来要做什么」的预告、对请求的确认、或对问题本身的评价开场。
159
+
160
+ 本条把一项既有禁令一般化:[anti-sycophancy-prompting](anti-sycophancy-prompting.md)
161
+ 已经禁止「以正面肯定开场批评」,但**仅限批评情境**。规则 9 把同一项禁令扩及每一个实质响应,
162
+ 理由不同:不是为了防拍马屁,而是为了消除它在读者与答案之间制造的延迟。
163
+
164
+ **规则 9 不适用于结语。** 规则 1 要求的导航区块依然成立——
165
+ 响应的结尾正是本标准安放「读者下一步」的位置。
166
+
167
+ ### 规则 10:白话是主语,标识符是佐证(可选)
168
+
169
+ **触发条件**:任何向人解释一个情况、一个缺陷、或一个系统行为的响应。
170
+
171
+ 用读者会用的话说清楚发生了什么。文件路径、符号名称、行号、命令输出、版本字符串是**佐证**——
172
+ 它们属于它们所支持的那句话**之后**,而不是那句话本身。
173
+
174
+ | 不要写 | 改写成 |
175
+ |---|---|
176
+ | 「`intel-scout.py:883` 的 `load_topics()` 读 `intel-topics.yaml`,`:1033` 的 `load_feeds()` 读 `intel-feeds.yaml`。」 | 「它有两种取材方式:搜关键字,和订阅固定几个博客。」*(然后再附两个调用点)* |
177
+ | 「`manifest.skillHashes` 有 137 条,key 是 `claude-code/project/<n>/SKILL.md`,而查询用的是 `.claude/skills/<n>`。」 | 「哈希值存在一套命名下,查询用的是另一套,所以一个都找不到。」*(然后再贴两边的 key)* |
178
+
179
+ 这**不是**可以省略标识符的许可——想验证的读者必须验得了。它规范的是**两者之中哪一个当主语**。
180
+
181
+ **为什么它与 R7 是两条**:R7 规范的是**先讲发现再给证据**的顺序。R10 规范的是**语域**——
182
+ 一个响应可以先讲发现,却仍然用只有作者持有的词汇讲那个发现。两者都让读者无法行动,但它们是不同的失效。
183
+
184
+ ### 规则 11:每个选项都要带自己的利弊(可选)
185
+
186
+ **触发条件**:要求读者在两个以上做法之间选择的响应。
187
+
188
+ 规则 2 要求标示推荐选项并给出**它的**理由。规则 11 把这件事扩及其余:
189
+ **每一个**选项都要用它自己的话说明它换到什么、代价是什么。
190
+
191
+ 一份只有推荐项被论证的选项清单,等于**把比较的工作丢回给读者**——而那正是他请你做的事。
192
+ 而一个没有标出代价的选项,读起来像是没有代价,这很少为真,且从清单本身无从验证。
193
+
194
+ ```markdown
195
+ > **请选择:**
196
+ > | 选项 | 换到什么 | 代价是什么 |
197
+ > |---|---|---|
198
+ > | **(A) …** ⭐ **推荐** — [为什么是这个] | … | … |
199
+ > | **(B) …** | … | … |
200
+ ```
201
+
202
+ **利弊不是模棱两可。**「这可能会稍微难一点」不是代价;「这要重写 110 个文件,而且翻译需要人审」才是。
203
+ 若某个选项真的没有值得一提的代价,**明说**,不要留空——空白读起来是「没有分析过」,而读者分不出这两者。
204
+
205
+ **与规则 4 相辅**:选项数维持在 1–5。利弊让每个选项读起来更花力气,所以这条规则让规则 4 的上限**更**要紧,不是更不要紧。
206
+
207
+ ---
208
+
106
209
  ## 情境模板
107
210
 
108
211
  ### 模板 1:任务完成
@@ -290,6 +393,11 @@ AI 需要用户做出选择或提供信息时使用。
290
393
  | R4 | 1–5 个选项,依情境调整 |
291
394
  | R5 | 适用时使用 `/command` 格式 |
292
395
  | R6 | *(可选)* 级别明确时附加 `〔模型:Fast|Standard|Capable〕` |
396
+ | R7 | *(可选)* 先讲发现;证据放在它所支持的论断之后 |
397
+ | R8 | *(可选)* 跨 3 轮或 3 步以上 → 用一行重述进度 |
398
+ | R9 | *(可选)* 不要开场白。结语仍为必须——见 R1 |
399
+ | R10 | *(可选)* 白话是主语;标识符放在论断之后当佐证 |
400
+ | R11 | *(可选)* 每个选项都要说明换到什么、代价是什么——不只推荐那一个 |
293
401
 
294
402
  | 豁免 | 不豁免 |
295
403
  |------|--------|
@@ -313,6 +421,8 @@ AI 需要用户做出选择或提供信息时使用。
313
421
 
314
422
  | 版本 | 日期 | 变更 |
315
423
  |------|------|------|
424
+ | 1.3.0 | 2026-08-17 | 新增可选规则 R10–R11。R10 管语域:白话是句子的主语、标识符当佐证——与 R7 不同,R7 管的是「先发现后证据」的顺序,而一个响应可以先讲发现却仍用只有作者持有的词汇讲它。R11 把规则 2 从推荐选项扩及全部:只论证推荐项的清单等于把比较丢回给读者,而没标代价的选项读起来像没有代价 |
425
+ | 1.2.0 | 2026-08-17 | 新增可选规则 R7–R9,管答案本身(先讲发现、重述进度、不要开场白)。借鉴自 `ayghri/i-have-adhd`(MIT),十条取三;其余七条因已被 R1–R2 涵盖、与 R1 冲突、或与 estimation-standards 重复而删去。规则 1–6 全部可以被一个把结论埋起来的响应满足——R7–R9 补上这个缺口 |
316
426
  | 1.1.0 | 2026-06-10 | 新增规则 R6 可选模型级别标注(`〔模型:Fast|Standard|Capable〕`);与厂商无关;不强制既有技能回改 |
317
427
  | 1.0.0 | 2026-03-25 | 初始版本 |
318
428
 
@@ -4,7 +4,7 @@ source_version: 2.3.0
4
4
  translation_version: 2.3.0
5
5
  last_synced: 2026-06-10
6
6
  source_hash: 08dd8c2bee20
7
- status: current
7
+ status: stale
8
8
  ---
9
9
 
10
10
  # 规格驱动开发 (SDD) 标准
@@ -2,12 +2,16 @@
2
2
  name: ac-coverage
3
3
  source: ../../../../skills/ac-coverage/SKILL.md
4
4
  source_version: 1.1.0
5
- translation_version: 1.1.0
6
- last_synced: 2026-07-09
7
- source_hash: eac0755fd844
5
+ translation_version: 1.2.0
6
+ last_synced: 2026-08-17
7
+ source_hash: 168298f3a994
8
8
  scope: universal
9
9
  status: current
10
- description: "[UDS] 分析验收条件(AC)与测试之间的追踪关系并生成覆盖率报告"
10
+ description: |
11
+ [UDS] 分析验收条件(AC)与测试之间的追踪关系,并生成需求层级的覆盖率报告。
12
+ Use when: 审计哪些验收条件已有测试、从 SPEC 文件建立追踪矩阵、发布前找出尚未被覆盖的 AC。
13
+ Not for: 代码层级的行/分支/函数覆盖率——请用 /coverage;补写缺少的测试——请用 /tdd 或 /spec-derive。
14
+ Keywords: AC coverage, traceability, acceptance criteria, SPEC, traceability matrix, 验收条件, 需求追踪, 覆盖率矩阵, 追踪矩阵.
11
15
  allowed-tools: Read, Grep, Glob
12
16
  argument-hint: "[规格文件路径]"
13
17
  ---