universal-dev-standards 5.10.0 → 5.11.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 (85) hide show
  1. package/bundled/core/adversarial-test.md +3 -0
  2. package/bundled/core/behavior-snapshot.md +1 -1
  3. package/bundled/core/capability-declaration.md +3 -0
  4. package/bundled/core/cd-deployment-strategies.md +3 -0
  5. package/bundled/core/chaos-injection-tests.md +3 -0
  6. package/bundled/core/circuit-breaker.md +3 -0
  7. package/bundled/core/container-security.md +3 -0
  8. package/bundled/core/cost-budget-test.md +3 -0
  9. package/bundled/core/data-migration-testing.md +3 -0
  10. package/bundled/core/disaster-recovery-drill.md +3 -0
  11. package/bundled/core/dual-phase-output.md +3 -0
  12. package/bundled/core/failure-source-taxonomy.md +3 -0
  13. package/bundled/core/feature-manifest-standard.md +1 -1
  14. package/bundled/core/flaky-test-management.md +3 -0
  15. package/bundled/core/full-coverage-testing.md +3 -0
  16. package/bundled/core/health-check-standards.md +3 -0
  17. package/bundled/core/immutability-first.md +3 -0
  18. package/bundled/core/llm-output-validation.md +3 -0
  19. package/bundled/core/no-cicd-deployment.md +3 -0
  20. package/bundled/core/pipeline-security-gates.md +3 -0
  21. package/bundled/core/policy-as-code-testing.md +3 -0
  22. package/bundled/core/prompt-regression.md +3 -0
  23. package/bundled/core/property-based-testing.md +3 -0
  24. package/bundled/core/recovery-recipe-registry.md +3 -0
  25. package/bundled/core/release-quality-manifest.md +3 -0
  26. package/bundled/core/replay-test.md +3 -0
  27. package/bundled/core/retry-standards.md +3 -0
  28. package/bundled/core/rollback-standards.md +3 -0
  29. package/bundled/core/sast-advanced.md +1 -1
  30. package/bundled/core/secure-op.md +3 -0
  31. package/bundled/core/security-decision.md +3 -0
  32. package/bundled/core/server-ops-security.md +3 -0
  33. package/bundled/core/skill-standard-alignment-check.md +3 -0
  34. package/bundled/core/smoke-test.md +3 -0
  35. package/bundled/core/standard-admission-criteria.md +3 -0
  36. package/bundled/core/standard-lifecycle-management.md +3 -0
  37. package/bundled/core/supply-chain-attestation.md +3 -0
  38. package/bundled/core/timeout-standards.md +3 -0
  39. package/bundled/core/token-budget.md +3 -0
  40. package/bundled/locales/zh-CN/CHANGELOG.md +13 -3
  41. package/bundled/locales/zh-CN/CLAUDE.md +1 -1
  42. package/bundled/locales/zh-CN/README.md +3 -3
  43. package/bundled/locales/zh-CN/SECURITY.md +1 -2
  44. package/bundled/locales/zh-CN/docs/CHEATSHEET.md +127 -15
  45. package/bundled/locales/zh-CN/docs/FEATURE-REFERENCE.md +141 -25
  46. package/bundled/locales/zh-CN/skills/adr-assistant/SKILL.md +43 -0
  47. package/bundled/locales/zh-CN/skills/ai-collaboration-standards/SKILL.md +35 -0
  48. package/bundled/locales/zh-CN/skills/ai-friendly-architecture/SKILL.md +35 -0
  49. package/bundled/locales/zh-CN/skills/ai-instruction-standards/SKILL.md +35 -0
  50. package/bundled/locales/zh-CN/skills/contract-test-assistant/SKILL.md +24 -0
  51. package/bundled/locales/zh-CN/skills/documentation-guide/SKILL.md +37 -0
  52. package/bundled/locales/zh-CN/skills/error-code-guide/SKILL.md +33 -0
  53. package/bundled/locales/zh-CN/skills/git-workflow-guide/SKILL.md +34 -0
  54. package/bundled/locales/zh-CN/skills/logging-guide/SKILL.md +33 -0
  55. package/bundled/locales/zh-CN/skills/project-structure-guide/SKILL.md +19 -0
  56. package/bundled/locales/zh-CN/skills/retrospective-assistant/SKILL.md +38 -0
  57. package/bundled/locales/zh-CN/skills/testing-guide/SKILL.md +36 -0
  58. package/bundled/locales/zh-TW/CHANGELOG.md +13 -3
  59. package/bundled/locales/zh-TW/CLAUDE.md +1 -1
  60. package/bundled/locales/zh-TW/README.md +3 -3
  61. package/bundled/locales/zh-TW/SECURITY.md +1 -2
  62. package/bundled/locales/zh-TW/docs/CHEATSHEET.md +127 -15
  63. package/bundled/locales/zh-TW/docs/FEATURE-REFERENCE.md +141 -25
  64. package/bundled/locales/zh-TW/skills/adr-assistant/SKILL.md +43 -0
  65. package/bundled/locales/zh-TW/skills/ai-collaboration-standards/SKILL.md +35 -0
  66. package/bundled/locales/zh-TW/skills/ai-friendly-architecture/SKILL.md +35 -0
  67. package/bundled/locales/zh-TW/skills/ai-instruction-standards/SKILL.md +35 -0
  68. package/bundled/locales/zh-TW/skills/brainstorm-assistant/guide.md +661 -267
  69. package/bundled/locales/zh-TW/skills/contract-test-assistant/SKILL.md +24 -0
  70. package/bundled/locales/zh-TW/skills/documentation-guide/SKILL.md +37 -0
  71. package/bundled/locales/zh-TW/skills/error-code-guide/SKILL.md +33 -0
  72. package/bundled/locales/zh-TW/skills/git-workflow-guide/SKILL.md +34 -0
  73. package/bundled/locales/zh-TW/skills/logging-guide/SKILL.md +33 -0
  74. package/bundled/locales/zh-TW/skills/project-structure-guide/SKILL.md +19 -0
  75. package/bundled/locales/zh-TW/skills/retrospective-assistant/SKILL.md +38 -0
  76. package/bundled/locales/zh-TW/skills/testing-guide/SKILL.md +36 -0
  77. package/bundled/skills/README.md +1 -1
  78. package/bundled/skills/spec-driven-dev/SKILL.md +41 -0
  79. package/package.json +1 -1
  80. package/src/commands/update.js +35 -0
  81. package/src/config/ai-agent-paths.js +8 -0
  82. package/src/i18n/messages.js +3 -0
  83. package/src/utils/integration-generator.js +18 -2
  84. package/standards-registry.json +3 -3
  85. package/bundled/locales/zh-TW/docs/MIGRATION-V5.md +0 -79
@@ -27,3 +27,27 @@ description: "[UDS] 引導 API 和微服務的合約測試策略"
27
27
 
28
28
  - 詳細指南:[contract-testing.md](../../../../options/testing/contract-testing.md)
29
29
  - 技能指南:[guide.md](./guide.md)
30
+
31
+
32
+ ## Next Steps Guidance | 下一步引導
33
+
34
+ After `/contract-test` completes:
35
+
36
+ > **合約測試引導完成。建議下一步:**
37
+ > - 執行 `/ci-cd` 將合約驗證加入 CI 管線
38
+ > - 執行 `/api-design` 完善 API 設計
39
+ > - 執行 `/testing` 整合到整體測試策略
40
+
41
+ ## Reference | 參考
42
+
43
+ - Detailed guide: [contract-testing.md](../../options/testing/contract-testing.md)
44
+ - Related: [api-design-assistant](../api-design-assistant/SKILL.md)
45
+
46
+ ## AI Agent Behavior | AI 代理行為
47
+
48
+ When `/contract-test` is invoked:
49
+ 1. **Assess** — Ask about architecture (monolith, microservices, number of APIs)
50
+ 2. **Recommend** — Suggest strategy based on architecture
51
+ 3. **Guide** — Walk through setup for chosen strategy
52
+ 4. **Generate** — Create example contract test files
53
+ 5. **Verify** — If `verify` subcommand, scan for contracts and report coverage
@@ -417,3 +417,40 @@ MIT
417
417
  本 Skill 以 [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/) 授權發布。
418
418
 
419
419
  **來源**: [universal-dev-standards](https://github.com/AsiaOstrich/universal-dev-standards)
420
+
421
+
422
+ ## Next Steps Guidance | 下一步引導
423
+
424
+ After `/docs-guide` completes, the AI assistant should suggest:
425
+
426
+ > **文件結構與需求已釐清。建議下一步 / Documentation structure and requirements clarified. Suggested next steps:**
427
+ > - 執行 `/docs` 根據指南直接產生專案文件 ⭐ **Recommended / 推薦** — 立即將文件指南化為行動 / Turn documentation guidelines into action immediately
428
+ > - 執行 `/changelog` 建立或更新 CHANGELOG.md — 確保變更歷史完整 / Ensure change history is complete
429
+ > - 執行 `/sdd` 將文件需求納入規格驅動開發 — 確保文件與功能同步 / Ensure docs stay in sync with features
430
+
431
+ ---
432
+
433
+ ## Related Standards
434
+
435
+ - [Documentation Writing Standards](../../core/documentation-writing-standards.md) - Content requirements
436
+ - [Documentation Structure](../../core/documentation-structure.md) - File organization
437
+ - [Changelog Standards](../../core/changelog-standards.md) - CHANGELOG format
438
+ - [Changelog Guide Skill](../changelog-guide/SKILL.md) - CHANGELOG skill
439
+
440
+ ---
441
+
442
+ ## Version History
443
+
444
+ | Version | Date | Changes |
445
+ |---------|------|---------|
446
+ | 2.1.0 | 2026-03-17 | Added: Diátaxis classification, LLM discovery, quality metrics, enhanced ADR template, translation-friendly writing |
447
+ | 2.0.0 | 2026-01-12 | Added: Project type matrix, document templates, documentation pyramid |
448
+ | 1.0.0 | 2025-12-24 | Initial release |
449
+
450
+ ---
451
+
452
+ ## License
453
+
454
+ This skill is released under [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/).
455
+
456
+ **Source**: [universal-dev-standards](https://github.com/AsiaOstrich/universal-dev-standards)
@@ -264,3 +264,36 @@ export const ErrorCodes = {
264
264
  此技能採用 [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/) 授權。
265
265
 
266
266
  **來源**: [universal-dev-standards](https://github.com/AsiaOstrich/universal-dev-standards)
267
+
268
+
269
+ ## Next Steps Guidance | 下一步引導
270
+
271
+ After `/errors` completes, the AI assistant should suggest:
272
+
273
+ > **錯誤碼設計已完成。建議下一步 / Error code design completed. Suggested next steps:**
274
+ > - 執行 `/sdd` 將錯誤碼設計納入正式規格 ⭐ **Recommended / 推薦** — 確保錯誤碼在規格中有完整定義 / Ensure error codes are fully defined in specs
275
+ > - 執行 `/logging` 設定結構化日誌以配合錯誤碼 — 讓錯誤碼與日誌系統整合 / Integrate error codes with logging system
276
+ > - 執行 `/tdd` 為錯誤處理邏輯撰寫測試 — 確保每個錯誤碼都有對應的測試 / Ensure each error code has corresponding tests
277
+
278
+ ---
279
+
280
+ ## Related Standards
281
+
282
+ - [Error Code Standards](../../core/error-code-standards.md)
283
+ - [Logging Standards](../../core/logging-standards.md)
284
+
285
+ ---
286
+
287
+ ## Version History
288
+
289
+ | Version | Date | Changes |
290
+ |---------|------|---------|
291
+ | 1.0.0 | 2025-12-30 | Initial release |
292
+
293
+ ---
294
+
295
+ ## License
296
+
297
+ This skill is released under [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/).
298
+
299
+ **Source**: [universal-dev-standards](https://github.com/AsiaOstrich/universal-dev-standards)
@@ -213,3 +213,37 @@ git push origin feature/my-feature
213
213
  本技能採用 [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/) 授權發布。
214
214
 
215
215
  **來源**:[universal-dev-standards](https://github.com/AsiaOstrich/universal-dev-standards)
216
+
217
+
218
+ ## Next Steps Guidance | 下一步引導
219
+
220
+ After `/git-flow` completes, the AI assistant should suggest:
221
+
222
+ > **Git 工作流程已設定。建議下一步 / Git workflow configured. Suggested next steps:**
223
+ > - 執行 `git checkout -b feature/<描述>` 建立功能分支開始開發 ⭐ **Recommended / 推薦** — 立即套用所選的分支策略 / Apply the chosen branching strategy immediately
224
+ > - 執行 `/commit` 學習提交訊息規範 — 確保提交訊息格式一致 / Ensure consistent commit message format
225
+ > - 執行 `/checkin` 了解簽入品質門檻 — 在提交前確保程式碼品質 / Ensure code quality before commits
226
+
227
+ ---
228
+
229
+ ## Related Standards
230
+
231
+ - [Git Workflow](../../core/git-workflow.md) - Core Git workflow standard
232
+ - [Commit Message Guide](../../core/commit-message-guide.md) - Commit message conventions
233
+ - [Checkin Standards](../../core/checkin-standards.md) - Pre-commit quality gates
234
+
235
+ ---
236
+
237
+ ## Version History
238
+
239
+ | Version | Date | Changes |
240
+ |---------|------|---------|
241
+ | 1.0.0 | 2025-12-24 | Added: Standard sections (Purpose, Related Standards, Version History, License) |
242
+
243
+ ---
244
+
245
+ ## License
246
+
247
+ This skill is released under [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/).
248
+
249
+ **Source**: [universal-dev-standards](https://github.com/AsiaOstrich/universal-dev-standards)
@@ -280,3 +280,36 @@ logger.error('處理訂單失敗', {
280
280
  此技能採用 [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/) 授權。
281
281
 
282
282
  **來源**: [universal-dev-standards](https://github.com/AsiaOstrich/universal-dev-standards)
283
+
284
+
285
+ ## Next Steps Guidance | 下一步引導
286
+
287
+ After `/logging` completes, the AI assistant should suggest:
288
+
289
+ > **日誌標準已掌握。建議下一步 / Logging standards understood. Suggested next steps:**
290
+ > - 根據日誌指南在程式碼中實作結構化日誌 ⭐ **Recommended / 推薦** — 立即將日誌標準應用到專案 / Apply logging standards to the project immediately
291
+ > - 執行 `/errors` 設計錯誤碼以配合日誌系統 — 讓錯誤追蹤更有效率 / Make error tracking more efficient
292
+ > - 執行 `/sdd` 將可觀測性需求納入規格 — 確保日誌需求在規格中有定義 / Ensure logging requirements are defined in specs
293
+
294
+ ---
295
+
296
+ ## Related Standards
297
+
298
+ - [Logging Standards](../../core/logging-standards.md)
299
+ - [Error Code Standards](../../core/error-code-standards.md)
300
+
301
+ ---
302
+
303
+ ## Version History
304
+
305
+ | Version | Date | Changes |
306
+ |---------|------|---------|
307
+ | 1.0.0 | 2025-12-30 | Initial release |
308
+
309
+ ---
310
+
311
+ ## License
312
+
313
+ This skill is released under [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/).
314
+
315
+ **Source**: [universal-dev-standards](https://github.com/AsiaOstrich/universal-dev-standards)
@@ -150,3 +150,22 @@ project/
150
150
  - [核心:文件結構](../../core/documentation-structure.md)
151
151
  - [指南:檔案歸檔決策指南](../../core/guides/file-placement-guide.md)
152
152
  - [AI:專案結構選項](../../../../options/project-structure/)
153
+
154
+
155
+ ## Next Steps Guidance | 下一步引導
156
+
157
+ After `/project-structure` completes, the AI assistant should suggest:
158
+
159
+ > **專案結構已建立或審查完成。建議下一步 / Project structure created or reviewed. Suggested next steps:**
160
+ > - 執行 `/sdd` 開始規格驅動開發,將專案結構納入正式規格 ⭐ **Recommended / 推薦** — 確保結構決策有規格追蹤 / Ensures structure decisions are tracked in specs
161
+ > - 執行 `/docs` 產生專案文件(README、ARCHITECTURE.md 等) — 讓結構決策有文件記錄 / Document structure decisions
162
+ > - 執行 `/ai-friendly-architecture` 設定 AI 上下文配置 — 讓 AI 助手更好地理解專案結構 / Help AI assistants understand the project structure
163
+
164
+ ---
165
+
166
+ ## Related Standards
167
+
168
+ - [Core: Project Structure](../../core/project-structure.md)
169
+ - [Core: Documentation Structure](../../core/documentation-structure.md)
170
+ - [Guide: File Placement Decision Guide](../../core/guides/file-placement-guide.md)
171
+ - [AI: Project Structure Options](../../ai/options/project-structure/)
@@ -28,3 +28,41 @@ description: "[UDS] 引導結構化的團隊回顧,支援 Sprint 和 Release
28
28
 
29
29
  - 核心規範:[retrospective-standards.md](../../../../core/retrospective-standards.md)
30
30
  - 詳細指南:[guide.md](./guide.md)
31
+
32
+
33
+ ## Next Steps Guidance | 下一步引導
34
+
35
+ After `/retrospective` completes:
36
+
37
+ > **Retrospective complete. Suggested next steps:**
38
+ > - Commit the retrospective report: `/commit`
39
+ > - Create ADRs for architectural decisions identified: `/adr`
40
+ > - Track action items in your issue tracker
41
+ > - Schedule next retrospective
42
+
43
+ > **回顧完成。建議下一步:**
44
+ > - 提交回顧報告:`/commit`
45
+ > - 為識別的架構決策建立 ADR:`/adr`
46
+ > - 在 issue tracker 中追蹤行動項目
47
+ > - 排定下次回顧
48
+
49
+ ## AI Agent Behavior | AI 代理行為
50
+
51
+ When `/retrospective` is invoked:
52
+
53
+ 1. **Check type** — Sprint (default) or Release
54
+ 2. **Gather data** — Scan git log, check `docs/retrospectives/` for previous actions
55
+ 3. **Guide technique** — Use Start-Stop-Continue by default, or specified technique
56
+ 4. **Generate report** — Write to `docs/retrospectives/RETRO-YYYY-MM-DD-[type].md`
57
+ 5. **Review past actions** — Check previous retro for open action items
58
+ 6. **Offer next steps** — Show guidance above
59
+
60
+ When `/retrospective actions` is invoked:
61
+ 1. Scan `docs/retrospectives/` for all retro files
62
+ 2. Parse action items from each
63
+ 3. Display open/in-progress items as table
64
+
65
+ ## Reference | 參考
66
+
67
+ - Core Standard: [retrospective-standards.md](../../core/retrospective-standards.md)
68
+ - Detailed Guide: [guide.md](./guide.md)
@@ -228,3 +228,39 @@ test('method_scenario_expected', () => {
228
228
  本 Skill 以 [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/) 授權發布。
229
229
 
230
230
  **來源**: [universal-dev-standards](https://github.com/AsiaOstrich/universal-dev-standards)
231
+
232
+
233
+ ## Next Steps Guidance | 下一步引導
234
+
235
+ After `/testing` completes, the AI assistant should suggest:
236
+
237
+ > **測試標準與最佳實踐已掌握。建議下一步 / Testing standards and best practices understood. Suggested next steps:**
238
+ > - 執行 `/tdd` 開始測試驅動開發(紅-綠-重構循環) ⭐ **Recommended / 推薦** — 將測試知識立即轉化為實踐 / Turn testing knowledge into practice immediately
239
+ > - 執行 `/coverage` 分析目前程式碼覆蓋率 — 找出測試缺口 / Identify testing gaps
240
+ > - 執行 `/bdd` 撰寫行為驅動的 Given-When-Then 場景 — 從使用者角度定義測試 / Define tests from user perspective
241
+
242
+ ---
243
+
244
+ ## Related Standards
245
+
246
+ - [Testing Standards](../../core/testing-standards.md) - Actionable rules
247
+ - [Testing Theory](./testing-theory.md) - Educational knowledge base
248
+ - [Code Review Checklist](../../core/code-review-checklist.md)
249
+
250
+ ---
251
+
252
+ ## Version History
253
+
254
+ | Version | Date | Changes |
255
+ |---------|------|---------|
256
+ | 1.2.0 | 2026-01-29 | Added links to new testing-theory.md knowledge base |
257
+ | 1.1.0 | 2025-12-29 | Added Testing Theory Essentials YAML section |
258
+ | 1.0.0 | 2025-12-24 | Initial: Standard sections (Purpose, Related Standards, Version History, License) |
259
+
260
+ ---
261
+
262
+ ## License
263
+
264
+ This skill is released under [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/).
265
+
266
+ **Source**: [universal-dev-standards](https://github.com/AsiaOstrich/universal-dev-standards)
@@ -39,7 +39,7 @@ These skills provide standard guidance and workflows. They can be accessed via s
39
39
  | `documentation-guide` | `/docs` | [UDS] Documentation management |
40
40
  | `requirement-assistant` | `/requirement` | [UDS] Requirement writing |
41
41
  | `reverse-engineer` | `/reverse` | [UDS] Reverse engineer code |
42
- | `spec-derivation` | `/spec-derive` | [UDS] Derive BDD/TDD/ATDD artifacts from spec |
42
+ | `spec-derivation` | `/derive` | [UDS] Derive BDD/TDD/ATDD artifacts from spec |
43
43
  | `spec-driven-dev` | `/sdd` | [UDS] Spec-Driven Development |
44
44
  | `test-coverage-assistant` | `/coverage` | [UDS] Test coverage analysis |
45
45
  | `dev-methodology` | `/methodology` | [UDS] Development methodology |
@@ -55,6 +55,7 @@ New request? | 新需求?
55
55
  ├─ New feature/capability? → Create proposal | 建立提案
56
56
  ├─ Breaking change? → Create proposal | 建立提案
57
57
  ├─ Architecture change? → Create proposal | 建立提案
58
+ ├─ Agent/role definition (spans multiple features)? → Use spec-type: agent | 使用 Agent SPEC template
58
59
  └─ Unclear? → Create proposal (safer) | 建立提案(較安全)
59
60
  ```
60
61
 
@@ -126,6 +127,46 @@ The system SHALL [behavior description].
126
127
  - [ ] Integration tests for [flow]
127
128
  ```
128
129
 
130
+ ### Agent SPEC Structure | Agent 規格結構(`spec-type: agent`)
131
+
132
+ ```markdown
133
+ # [SPEC-ID] Agent: [Role Name]
134
+ <!-- spec-type: agent -->
135
+ <!-- agent-id auto-referenced by feature SPECs -->
136
+
137
+ ## Role Definition
138
+ - **Role**: [Agent Name]
139
+ - **Responsibility**: [One sentence]
140
+ - **Autonomy Level**: L[1-5] (per DEC-065)
141
+
142
+ ## Capability Scope
143
+ **Owns:**
144
+ - [Capability 1]
145
+ - [Capability 2]
146
+
147
+ **Does NOT own:**
148
+ - [Explicit exclusion]
149
+
150
+ ## Interface Contract
151
+ ### Input
152
+ | Message Type | Required Fields | Optional Fields |
153
+ |---|---|---|
154
+ | [Type] | [fields] | [fields] |
155
+
156
+ ### Output
157
+ | Artifact Type | Success Condition | Failure Condition |
158
+ |---|---|---|
159
+ | [Type] | [condition] | [condition] |
160
+
161
+ ## Agent Interactions
162
+ - **Upstream**: [Who calls this agent]
163
+ - **Downstream**: [Who this agent calls]
164
+ - **Parallel**: [Agents working alongside]
165
+
166
+ ## Related Feature SPECs
167
+ - [SPEC-NNN] — [This agent's role in that spec]
168
+ ```
169
+
129
170
  ### Scenario Formatting Rules | 場景格式規則
130
171
 
131
172
  - Use `#### Scenario:` (h4 header) for each scenario
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "universal-dev-standards",
3
- "version": "5.10.0",
3
+ "version": "5.11.0",
4
4
  "description": "CLI tool for adopting Universal Development Standards",
5
5
  "keywords": [
6
6
  "documentation",
@@ -614,6 +614,41 @@ export async function updateCommand(options) {
614
614
  }
615
615
 
616
616
  intSpinner.succeed(msg.syncedIntegrations.replace('{count}', results.integrations.length));
617
+
618
+ // XSPEC-208 BUG-208-02: prune orphaned integrationBlockHashes whose
619
+ // integration file is no longer claimed by manifest.aiTools (e.g. aiTools
620
+ // shrank from ["claude-code","gemini-cli"] to ["claude-code"], leaving a
621
+ // stale GEMINI.md hash). Without this, `uds check` -> checkIntegrationBlocksIntegrity
622
+ // falsely reports those files as missing.
623
+ //
624
+ // The expected set is built from manifest.aiTools (the declared
625
+ // configuration), NOT results.integrations (what was actually written).
626
+ // Using results.integrations would over-prune when writes fail (e.g.
627
+ // sandbox EPERM) and incorrectly drop valid hashes.
628
+ if (manifest.integrationBlockHashes) {
629
+ const expectedFiles = new Set();
630
+ for (const tool of (manifest.aiTools || [])) {
631
+ const targetFile = getToolFilePath(tool);
632
+ if (targetFile) expectedFiles.add(targetFile);
633
+ }
634
+ // Universal AGENTS.md is tracked when generateAgentsMd is enabled.
635
+ if (manifest.generateAgentsMd) {
636
+ expectedFiles.add('AGENTS.md');
637
+ }
638
+
639
+ const orphaned = Object.keys(manifest.integrationBlockHashes)
640
+ .filter(f => !expectedFiles.has(f));
641
+ for (const f of orphaned) {
642
+ delete manifest.integrationBlockHashes[f];
643
+ }
644
+ if (orphaned.length > 0) {
645
+ console.log(chalk.gray(
646
+ ` ${(msg.prunedOrphanedBlockHashes || 'Pruned {count} orphaned integration hash(es): {files}')
647
+ .replace('{count}', orphaned.length)
648
+ .replace('{files}', orphaned.join(', '))}`
649
+ ));
650
+ }
651
+ }
617
652
  }
618
653
 
619
654
  // Update layered CLAUDE.md if content_layout is layered
@@ -540,6 +540,14 @@ export const AVAILABLE_COMMANDS = [
540
540
  { name: 'migrate', description: 'Code migration, framework upgrades, and tech modernization' },
541
541
  { name: 'audit', description: 'Audit standards compliance and generate reports' },
542
542
 
543
+ // ═══════════════════════════════════════════════════════════════════════════
544
+ // Observability / SRE (Commands-only)
545
+ // ═══════════════════════════════════════════════════════════════════════════
546
+ { name: 'e2e', description: 'Generate E2E test scaffolding from BDD scenarios' },
547
+ { name: 'observability', description: 'Guide observability instrumentation (logs, metrics, traces)' },
548
+ { name: 'runbook', description: 'Author operational runbooks for incidents and routine procedures' },
549
+ { name: 'slo', description: 'Define SLOs, SLIs, and error budgets' },
550
+
543
551
  // ═══════════════════════════════════════════════════════════════════════════
544
552
  // CLI Management (Commands-only, UDS CLI specific)
545
553
  // ═══════════════════════════════════════════════════════════════════════════
@@ -1052,6 +1052,7 @@ export const messages = {
1052
1052
  updatedStandards: 'Updated {count} standard files',
1053
1053
  syncingIntegrations: 'Syncing integration files...',
1054
1054
  syncedIntegrations: 'Synced {count} integration files',
1055
+ prunedOrphanedBlockHashes: 'Pruned {count} orphaned integration hash(es): {files}',
1055
1056
  // Success
1056
1057
  updateSuccess: '✓ Standards updated successfully!',
1057
1058
  versionUpdated: 'Version: {current} → {latest}',
@@ -2312,6 +2313,7 @@ export const messages = {
2312
2313
  updatedStandards: '已更新 {count} 個標準檔案',
2313
2314
  syncingIntegrations: '同步整合檔案中...',
2314
2315
  syncedIntegrations: '已同步 {count} 個整合檔案',
2316
+ prunedOrphanedBlockHashes: '已清除 {count} 個孤兒整合雜湊:{files}',
2315
2317
  // Success
2316
2318
  updateSuccess: '✓ 標準更新成功!',
2317
2319
  versionUpdated: '版本:{current} → {latest}',
@@ -3501,6 +3503,7 @@ export const messages = {
3501
3503
  updatedStandards: '已更新 {count} 个标准文件',
3502
3504
  syncingIntegrations: '正在同步集成文件...',
3503
3505
  syncedIntegrations: '已同步 {count} 个集成文件',
3506
+ prunedOrphanedBlockHashes: '已清除 {count} 个孤儿集成哈希:{files}',
3504
3507
  // Success
3505
3508
  updateSuccess: '✓ 标准更新成功!',
3506
3509
  versionUpdated: '版本:{current} → {latest}',
@@ -45,15 +45,31 @@ export function resolveContentModeForTool(tool, userContentMode) {
45
45
  * Helper functions for tool configuration
46
46
  */
47
47
 
48
+ /**
49
+ * Set of all known integration file names (e.g. "CLAUDE.md", ".cursorrules"),
50
+ * derived from SUPPORTED_AI_TOOLS so reverse lookup stays in sync.
51
+ */
52
+ const KNOWN_TOOL_FILES = new Set(
53
+ Object.values(SUPPORTED_AI_TOOLS).map(c => c.file)
54
+ );
55
+
48
56
  /**
49
57
  * Get tool file name with legacy mapping support
50
- * @param {string} tool - Tool name
58
+ * @param {string} tool - Tool name (e.g. "claude-code") or filename (e.g. "CLAUDE.md")
51
59
  * @returns {string} File name
52
60
  */
53
61
  function getToolFileName(tool) {
54
62
  const normalizedName = LEGACY_TOOL_MAPPINGS[tool] || tool;
55
63
  const config = SUPPORTED_AI_TOOLS[normalizedName];
56
- return config ? config.file : `${tool}.md`;
64
+ if (config) return config.file;
65
+
66
+ // XSPEC-208 BUG-208-01: schema 3.x manifests store filenames (not tool keys)
67
+ // in manifest.integrations. Without this guard, getToolFileName("CLAUDE.md")
68
+ // returns "CLAUDE.md.md" and triggers spurious missing-file restore failures.
69
+ if (KNOWN_TOOL_FILES.has(tool) || /\.(md|yaml|yml|json)$/i.test(tool)) {
70
+ return tool;
71
+ }
72
+ return `${tool}.md`;
57
73
  }
58
74
 
59
75
  /**
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "version": "5.10.0",
3
+ "version": "5.11.0",
4
4
  "lastUpdated": "2026-05-13",
5
5
  "description": "Standards registry for universal-dev-standards with integrated skills and AI-optimized formats",
6
6
  "formats": {
@@ -58,14 +58,14 @@
58
58
  "standards": {
59
59
  "name": "universal-dev-standards",
60
60
  "url": "https://github.com/AsiaOstrich/universal-dev-standards",
61
- "version": "5.10.0"
61
+ "version": "5.11.0"
62
62
  },
63
63
  "skills": {
64
64
  "name": "universal-dev-standards",
65
65
  "url": "https://github.com/AsiaOstrich/universal-dev-standards",
66
66
  "localPath": "skills",
67
67
  "rawUrl": "https://raw.githubusercontent.com/AsiaOstrich/universal-dev-standards/main/skills",
68
- "version": "5.10.0",
68
+ "version": "5.11.0",
69
69
  "note": "Skills are now included in the main repository under skills/"
70
70
  }
71
71
  },
@@ -1,79 +0,0 @@
1
- ---
2
- source: ../../../docs/archive/MIGRATION-V5.md
3
- source_version: 5.0.0
4
- translation_version: 5.0.0
5
- last_synced: 2026-04-22
6
- status: current
7
- ---
8
-
9
- # 遷移指南:Universal Dev Standards V5
10
-
11
- > **語言**: English | [繁體中文](MIGRATION-V5.md)
12
-
13
- **版本**: 5.0.0
14
- **狀態**: 重大變更(Token 使用量最佳化)
15
-
16
- ## 概覽
17
-
18
- Universal Development Standards V5 引入了重大的架構變更,旨在**減少 AI Token 消耗量高達 75%**。我們將「可執行的規則」與「教育性內容」進行了分離。
19
-
20
- ## 主要變更
21
-
22
- ### 1. 規則 (Rules) 與指南 (Guides) 分離
23
-
24
- 在 V4 中,許多標準檔案體積龐大(例如 `testing-standards.md` 高達 141KB)。在 V5 中,這些檔案已被拆分:
25
-
26
- | 組件 | 位置 | 目的 | AI 行為 |
27
- |------|------|------|---------|
28
- | **規則 (Rules)** | `core/*.md` | 可執行的規則、檢查清單、閾值 | **務必讀取** |
29
- | **指南 (Guides)** | `core/guides/*.md` | 詳細解釋、教學、範例 | **僅在需要時讀取** |
30
- | **方法論** | `methodologies/guides/*.md` | 完整的方法論指南 (TDD, BDD 等) | **僅在需要時讀取** |
31
-
32
- ### 2. 檔案位置移動
33
-
34
- 以下方法論檔案已從 `core/` 移至 `methodologies/guides/`:
35
- - `test-driven-development.md`
36
- - `acceptance-test-driven-development.md`
37
- - `spec-driven-development.md`
38
- - `behavior-driven-development.md`
39
- - `requirement-engineering.md`
40
-
41
- ### 3. AI 代理指令
42
-
43
- 新的 AI 工具設定(`.cursorrules`、`CLAUDE.md` 等)現在包含 **核心標準使用規則 (Core Standards Usage Rule)**,指示 AI 代理優先讀取 `core/` 中的輕量化規則以節省 Token。
44
-
45
- ## 如何升級
46
-
47
- ### 現有專案
48
-
49
- 如果您已在專案中初始化了 UDS,請按照以下步驟操作以獲取 Token 最佳化效益:
50
-
51
- 1. **更新 CLI**:
52
- ```bash
53
- npm install -g universal-dev-standards@alpha
54
- ```
55
-
56
- 2. **同步參考 (Sync References)**:
57
- 執行更新指令以獲取新的輕量化規則檔案與指南:
58
- ```bash
59
- uds update --sync-refs
60
- ```
61
-
62
- 3. **更新 AI 規則**:
63
- 重新生成或更新您的 AI 工具設定檔(例如 `.cursorrules`),以包含新的使用指令:
64
- ```bash
65
- uds configure
66
- # 選擇您的 AI 工具並選擇 "Update"
67
- ```
68
-
69
- ### 向後相容性
70
-
71
- 我們在原始的 `core/` 位置留下了 **Stub 檔案 (轉址檔案)**。這些是小型檔案(約 1KB),提供摘要以及指向新完整指南的連結。這確保了您文件中任何現有的硬編碼連結或參考不會失效。
72
-
73
- ## 常見問題 (FAQ)
74
-
75
- ### 為什麼要這樣做?
76
- 現代 AI 模型具有上下文視窗 (Context Window) 限制以及 Token 成本。大型文件會降低 AI 效能並增加延遲。V5 使「常駐」上下文變得更小,同時保持完整知識庫可用。
77
-
78
- ### 我需要修改程式碼嗎?
79
- 不需要。此變更僅影響文件結構和 AI 代理的行為。