universal-dev-standards 6.7.0 → 6.7.2
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.
- package/bundled/locales/zh-CN/CHANGELOG.md +26 -3
- package/bundled/locales/zh-CN/README.md +1 -1
- package/bundled/locales/zh-CN/SECURITY.md +1 -1
- package/bundled/locales/zh-CN/docs/CHEATSHEET.md +56 -56
- package/bundled/locales/zh-CN/docs/FEATURE-REFERENCE.md +62 -62
- package/bundled/locales/zh-TW/CHANGELOG.md +26 -3
- package/bundled/locales/zh-TW/README.md +1 -1
- package/bundled/locales/zh-TW/SECURITY.md +1 -1
- package/bundled/locales/zh-TW/docs/CHEATSHEET.md +56 -56
- package/bundled/locales/zh-TW/docs/FEATURE-REFERENCE.md +62 -62
- package/bundled/skills/checkin-assistant/SKILL.md +7 -1
- package/bundled/skills/code-review-assistant/SKILL.md +7 -1
- package/package.json +1 -1
- package/src/commands/update.js +42 -2
- package/src/reconciler/diff-engine.js +46 -3
- package/standards-registry.json +7 -7
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
---
|
|
2
2
|
source: ../../CHANGELOG.md
|
|
3
|
-
source_version: 6.7.
|
|
4
|
-
translation_version: 6.7.
|
|
5
|
-
last_synced: 2026-08-
|
|
3
|
+
source_version: 6.7.2
|
|
4
|
+
translation_version: 6.7.2
|
|
5
|
+
last_synced: 2026-08-18
|
|
6
6
|
status: current
|
|
7
7
|
---
|
|
8
8
|
|
|
@@ -17,6 +17,29 @@ status: current
|
|
|
17
17
|
|
|
18
18
|
## [Unreleased]
|
|
19
19
|
|
|
20
|
+
## [6.7.2] - 2026-08-18
|
|
21
|
+
|
|
22
|
+
### 修正
|
|
23
|
+
|
|
24
|
+
- **`uds update --skills` 更新了全部内容,却永不推进版本标记。** 五个采用 repo 中有四个停在 6.6.0,而同一份 manifest 的 `skills.version` 已经是 6.7.0;唯一推进的,正是那个没装 skills 的。两次执行都 exit 0、都打印「57 succeeded」、都没打印任何失败。先前对此的判读——「有东西报告了失败而它没有浮上来」——**是错的**。探针测到 `results=57 failing=0`、registry 版本解为 `"6.7.1"`、准备写入的值也正确:**reconciler 每一步都做对了,是较晚的一次写入撤销了它。** `update.js` 在命令开头读一次 manifest,那是在 reconciler 执行之前;`updateSkillsOnly()` 随后把那份过期的内存对象写回去覆盖掉它。`updateCommandsOnly()` 有一模一样的缺陷,**它是遍历找出来的,不是撞到的**。两处现在各自重读 manifest,并且**只套用自己拥有的字段**——把整份对象复制回去,会让任何后续步骤新增的字段重蹈同一个缺陷。这件事之所以要紧,是因为该机制自己的注释写着:它存在的目的,就是让每周陈旧度侦察(读的正是这个字段)不再误报。
|
|
25
|
+
- **一份列出 57 项变更、其中 55 项是无条件的计划。** skill 没有内容比对(XSPEC-382 R1),于是每次升级都重印同样的 55 行、理由完全相同,把审阅者真正需要批准的那 2 行埋在底下。现在它们折叠成一行,**而那一行写出自己折了几个**,总数不变——一个不声明自己设限的上限,读起来就像「就这些了」。摘要那行同样改为 `Update: 57 (2 changed, 55 unconditional reinstall)`;单独的 `Update: 57` 是真的,而且什么都没回答,**而决定要不要批准一次升级时读的正是摘要**。
|
|
26
|
+
|
|
27
|
+
### 变更
|
|
28
|
+
|
|
29
|
+
- **无条件重装的理由字符串收敛为单一导出常量**,不再是产生端一份、渲染端一份。两份副本之间的漂移在这里是无声的:折叠会单纯地停止折叠,而计划看起来与它一直以来的样子一模一样。
|
|
30
|
+
|
|
31
|
+
### 测试
|
|
32
|
+
|
|
33
|
+
- **为版本标记补上行为层测试,与既有的形状测试并存。** 随修正加入的回归测试断言的是源代码文本——那两个函数含有 `readManifest(projectPath)`——若有人重构成「调用它然后丢掉结果」,它仍然全绿。而这里宣称的是行为,所以 `tests/e2e/update-version-advances.test.js` 会真的跑一次安装、种下探针版本、执行 `update --apply --yes --skills`,再断言标记真的动了。已双向验过:修正在场为绿,还原缺陷为红。
|
|
34
|
+
- 两份新测试都断言**正反两臂**。折叠测试会检查一般计划完全不受影响,因为只验「那 55 行不见了」的测试,对一个把所有 update 行都丢掉的渲染器也照样会过。
|
|
35
|
+
|
|
36
|
+
## [6.7.1] - 2026-08-18
|
|
37
|
+
|
|
38
|
+
### 修正
|
|
39
|
+
|
|
40
|
+
- **各语系的速查表内嵌的是英文 skill 描述——每一个语系、每一次都是。** `scripts/generate-usage-docs.mjs` 在语系循环**之外**扫描 skill 一次,且固定读 `skills/`(英文来源),于是三份速查表与功能参考共用同一组描述。修正前实测:**`locales/zh-TW/docs/CHEATSHEET.md` 的 82 则描述与英文版逐字节相同**——而且是 6.7.0 之前那个被剥过的 `[UDS] <标签>` 形式,所以繁体中文读者看到的是**用错语言的过期描述**,而他实际安装的 `SKILL.md` 带着完整的中文触发面。`scanSkills()` 现在接受语系并在**循环内**调用,优先取语系版、缺漏时逐个 skill 回退英文。**修在生成器而不是那 82 行**:手改的速查表下一次编辑必然再度与 `SKILL.md` 分岔。
|
|
41
|
+
- **`code-review-assistant` 与 `checkin-assistant` 的 `disable-model-invocation: true` 已移除。** 那个标志**不遵循任何可陈述的规则**:六个带 `status: reference` 的 skill 中,**有四个(`tdd`、`bdd`、`atdd`、`pr-automation`)从未被禁用**,而它们经历的是同一次 XSPEC-095 生命周期迁移——同一个类别、相反的处置——另外八个被禁用的**连 `status` 都没有**。系统自己早已记下后果:`pr-automation-assistant` 把*「审查的实质内容——请用 `/code-review`」*导向那里,**而那条转介在任何模型自主的路径上都到不了**。六个 reference 现在处置一致,规则因此说得出口:**reference 一律可被模型调用**。两个文件内都就地记录了理由。**其余八个刻意不动**——它们没有 `status`,拿掉等于用另一个没有规则的动作覆盖一个没有规则的状态;它们已在 XSPEC-378 R5 具名,不再是「不知道为什么关着」。
|
|
42
|
+
|
|
20
43
|
## [6.7.0] - 2026-08-17
|
|
21
44
|
|
|
22
45
|
### 修正
|
|
@@ -15,7 +15,7 @@ status: current
|
|
|
15
15
|
|
|
16
16
|
> **语言**: [English](../../README.md) | [繁體中文](../zh-TW/README.md) | 简体中文
|
|
17
17
|
|
|
18
|
-
**版本**: 6.7.
|
|
18
|
+
**版本**: 6.7.2 | **发布日期**: 2026-08-18 | **授权**: [双重授权](../../LICENSE) (CC BY 4.0 + MIT)
|
|
19
19
|
|
|
20
20
|
语言无关、框架无关的软件项目文档标准。通过 AI 原生工作流,确保不同技术栈之间的一致性、质量和可维护性。
|
|
21
21
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# UDS 速查表
|
|
2
2
|
|
|
3
|
-
> Quick reference for all UDS features | Last updated: 2026-08-
|
|
3
|
+
> Quick reference for all UDS features | Last updated: 2026-08-17
|
|
4
4
|
|
|
5
5
|
**Language**: [English](../../../docs/user/CHEATSHEET.md) | [繁體中文](../../zh-TW/docs/CHEATSHEET.md) | 简体中文
|
|
6
6
|
|
|
@@ -80,61 +80,61 @@
|
|
|
80
80
|
|
|
81
81
|
| Skill | 说明 |
|
|
82
82
|
|-------|-------------|
|
|
83
|
-
| `ac-coverage` |
|
|
84
|
-
| `adr-assistant` | [UDS]
|
|
85
|
-
| `ai-collaboration-standards` |
|
|
86
|
-
| `ai-friendly-architecture` |
|
|
87
|
-
| `ai-instruction-standards` |
|
|
88
|
-
| `api-design-assistant` |
|
|
89
|
-
| `atdd-assistant` |
|
|
90
|
-
| `audit-assistant` |
|
|
91
|
-
| `bdd-assistant` |
|
|
92
|
-
| `brainstorm-assistant` |
|
|
93
|
-
| `changelog-guide` |
|
|
94
|
-
| `checkin-assistant` |
|
|
95
|
-
| `ci-cd-assistant` |
|
|
96
|
-
| `code-review-assistant` |
|
|
97
|
-
| `commit-standards` |
|
|
98
|
-
| `contract-test-assistant` | [UDS]
|
|
99
|
-
| `database-assistant` |
|
|
100
|
-
| `deploy-assistant` |
|
|
101
|
-
| `dev-methodology` |
|
|
102
|
-
| `dev-workflow-guide` |
|
|
103
|
-
| `docs-generator` |
|
|
104
|
-
| `documentation-guide` |
|
|
105
|
-
| `durable-execution-assistant` |
|
|
106
|
-
| `e2e-assistant` |
|
|
107
|
-
| `error-code-guide` |
|
|
108
|
-
| `git-workflow-guide` |
|
|
109
|
-
| `incident-response-assistant` |
|
|
110
|
-
| `journey-test-assistant` |
|
|
111
|
-
| `knowledge-graph` |
|
|
112
|
-
| `logging-guide` |
|
|
113
|
-
| `metrics-dashboard-assistant` |
|
|
114
|
-
| `migration-assistant` |
|
|
115
|
-
| `observability-assistant` |
|
|
116
|
-
| `orchestrate` |
|
|
117
|
-
| `plan` |
|
|
118
|
-
| `pr-automation-assistant` |
|
|
119
|
-
| `project-discovery` |
|
|
120
|
-
| `project-structure-guide` |
|
|
121
|
-
| `push` | AI
|
|
122
|
-
| `refactoring-assistant` |
|
|
123
|
-
| `release-standards` |
|
|
124
|
-
| `requirement-assistant` |
|
|
125
|
-
| `retrospective-assistant` | [UDS]
|
|
126
|
-
| `reverse-engineer` |
|
|
127
|
-
| `runbook-assistant` |
|
|
128
|
-
| `security-assistant` |
|
|
129
|
-
| `security-scan-assistant` |
|
|
130
|
-
| `skill-builder` |
|
|
131
|
-
| `slo-assistant` |
|
|
132
|
-
| `spec-derivation` |
|
|
133
|
-
| `spec-driven-dev` |
|
|
134
|
-
| `sweep` |
|
|
135
|
-
| `tdd-assistant` |
|
|
136
|
-
| `test-coverage-assistant` |
|
|
137
|
-
| `testing-guide` |
|
|
83
|
+
| `ac-coverage` | [UDS] 分析验收条件(AC)与测试之间的追踪关系,并生成需求层级的覆盖率报告。 |
|
|
84
|
+
| `adr-assistant` | [UDS] 创建、管理并追踪架构决策记录(ADR)。 |
|
|
85
|
+
| `ai-collaboration-standards` | 防止 AI 幻觉,确保分析代码或提出建议时给出以证据为基础的回应。 |
|
|
86
|
+
| `ai-friendly-architecture` | 设计 AI 友善架构,包含明确的模式、分层文档与语义边界。 |
|
|
87
|
+
| `ai-instruction-standards` | 创建并维护 AI 指令文件(CLAUDE.md、AGENTS.md、.cursor/rules/ 等),并采用适当结构。 |
|
|
88
|
+
| `api-design-assistant` | 引导 API 设计,遵循 REST、GraphQL 与 gRPC 最佳实践。 |
|
|
89
|
+
| `atdd-assistant` | [UDS] 验收测试驱动开发(ATDD)的参考资料:INVEST 准则、Gherkin 验收条件格式与 Three Am |
|
|
90
|
+
| `audit-assistant` | [UDS] 诊断 UDS 安装的健康状态,并向上游提交结构化反馈。 |
|
|
91
|
+
| `bdd-assistant` | [UDS] 行为驱动开发(BDD)的参考资料:Gherkin 的 Given-When-Then 格式与 Three A |
|
|
92
|
+
| `brainstorm-assistant` | [UDS] 在规格出现之前执行的结构化多角色头脑风暴,并附带评分质量关卡。 |
|
|
93
|
+
| `changelog-guide` | [UDS] 以 Keep a Changelog 格式生成并维护 CHANGELOG.md 条目。 |
|
|
94
|
+
| `checkin-assistant` | [UDS] 提交前质量关卡的参考资料:关卡定义、检查清单项目,以及绝不可提交的规则。 |
|
|
95
|
+
| `ci-cd-assistant` | 引导 CI/CD 流水线的设计、配置与优化。 |
|
|
96
|
+
| `code-review-assistant` | [UDS] 系统性代码审查的参考资料:八大审查类别,以及 BLOCKING/IMPORTANT/SUGGESTION 评 |
|
|
97
|
+
| `commit-standards` | [UDS] 生成符合 Conventional Commits 规范的 commit message,包含双语格式。 |
|
|
98
|
+
| `contract-test-assistant` | [UDS] 引导 API 与微服务的契约测试策略。 |
|
|
99
|
+
| `database-assistant` | 引导数据库设计、迁移与查询优化。 |
|
|
100
|
+
| `deploy-assistant` | 引导在没有 CI/CD 平台(GitHub Actions/GitLab CI)的情况下完成可靠部署。 |
|
|
101
|
+
| `dev-methodology` | [UDS] 为项目选择并追踪当前采用的开发方法论(SDD、BDD、TDD)。 |
|
|
102
|
+
| `dev-workflow-guide` | [UDS] 把目前的软件开发阶段对应到正确的 UDS 命令与 Skill。 |
|
|
103
|
+
| `docs-generator` | [UDS] 从项目源文件生成使用文档(速查表、参考手册、使用指南)。 |
|
|
104
|
+
| `documentation-guide` | 引导文档结构、内容需求与项目文档的最佳实践。 |
|
|
105
|
+
| `durable-execution-assistant` | [UDS] 引导容错工作流设计,包含检查点、重试策略与回滚计划。 |
|
|
106
|
+
| `e2e-assistant` | [UDS] 从 BDD 的 .feature 场景生成 E2E 测试骨架,并支持框架检测与覆盖缺口分析。 |
|
|
107
|
+
| `error-code-guide` | 设计一致的错误码,遵循 PREFIX_CATEGORY_NUMBER 格式。 |
|
|
108
|
+
| `git-workflow-guide` | 引导 Git 分支策略、分支命名与合并操作。 |
|
|
109
|
+
| `incident-response-assistant` | 引导事故响应、根因分析与事后复盘文档撰写。 |
|
|
110
|
+
| `journey-test-assistant` | [UDS] 从项目描述生成连贯的用户旅程测试计划(TESTPLAN)与旅程 E2E 骨架。 |
|
|
111
|
+
| `knowledge-graph` | [UDS] 通过知识图谱追踪规格、决策与代码之间的影响链;没有引擎时以 Markdown 后备方案运作。 |
|
|
112
|
+
| `logging-guide` | 实现结构化日志,包含适当的日志级别与敏感数据处理。 |
|
|
113
|
+
| `metrics-dashboard-assistant` | [UDS] 长期追踪开发指标、代码质量指标与技术债。 |
|
|
114
|
+
| `migration-assistant` | [UDS] 引导系统性的代码迁移、框架升级与技术现代化。 |
|
|
115
|
+
| `observability-assistant` | 引导可观测性建设、指标设计与告警配置。 |
|
|
116
|
+
| `orchestrate` | 以 Claude 原生 Agent tool 编排多任务执行计划(以 DAG 为基础,不需外部引擎)。 |
|
|
117
|
+
| `plan` | 从 Spec 文档、OpenSpec 变更或自由文本需求生成 plan.json。 |
|
|
118
|
+
| `pr-automation-assistant` | 引导 pull request 创建、审查自动化与合并策略。 |
|
|
119
|
+
| `project-discovery` | [UDS] 在既有代码库新增功能之前,评估项目健康度、架构与风险。 |
|
|
120
|
+
| `project-structure-guide` | 依各语言的最佳实践组织项目目录结构的指南。 |
|
|
121
|
+
| `push` | AI 辅助的 git push 安全层,提供质量关卡与协作护栏。 |
|
|
122
|
+
| `refactoring-assistant` | [UDS] 引导重构决策与策略选择,包含「重构还是重写」这个判断。 |
|
|
123
|
+
| `release-standards` | [UDS] 引导发布流程——语义化版本、发布模式,以及 start/finish/promote/deploy 的顺序。 |
|
|
124
|
+
| `requirement-assistant` | [UDS] 撰写符合 INVEST 准则的用户故事与需求。 |
|
|
125
|
+
| `retrospective-assistant` | [UDS] 引导 Sprint 与 Release 周期的结构化团队回顾。 |
|
|
126
|
+
| `reverse-engineer` | [UDS] 系统考古——从逻辑、数据、运行时三个维度对既有系统做逆向工程。 |
|
|
127
|
+
| `runbook-assistant` | 引导 Runbook 的撰写、维护与演练。 |
|
|
128
|
+
| `security-assistant` | 引导安全审查与漏洞评估,遵循 OWASP 标准。 |
|
|
129
|
+
| `security-scan-assistant` | 引导自动化安全扫描、依赖包审计与密钥检测。 |
|
|
130
|
+
| `skill-builder` | [UDS] 把重复的手动流程转成范围界定得宜的 Skill,过程中拿捏恰当的流程分量。 |
|
|
131
|
+
| `slo-assistant` | 引导 SLI 选取、SLO 设置与 Error Budget 管理。 |
|
|
132
|
+
| `spec-derivation` | [UDS] 从已批准的规格推导出 BDD 场景、TDD 骨架、集成与 E2E 测试,以及 ATDD 表格。 |
|
|
133
|
+
| `spec-driven-dev` | [UDS] 在写代码之前建立并审查规格文档——规格格式、状态与差异操作。 |
|
|
134
|
+
| `sweep` | 扫描代码库中的调试残留与代码质量问题;可选择自动修正安全的模式。 |
|
|
135
|
+
| `tdd-assistant` | [UDS] 测试驱动开发(TDD)的参考资料:红-绿-重构循环、FIRST 原则与 Arrange-Act-Assert |
|
|
136
|
+
| `test-coverage-assistant` | [UDS] 以八维度框架分析代码层级的测试覆盖率,并建议该优先补上哪些缺口。 |
|
|
137
|
+
| `testing-guide` | 测试金字塔,以及 UT/IT/ST/E2E 的测试编写标准。 |
|
|
138
138
|
|
|
139
139
|
## 🤖 代理
|
|
140
140
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# UDS 功能参考手册
|
|
2
2
|
|
|
3
3
|
> Universal Development Standards - 完整功能文档
|
|
4
|
-
> Auto-generated | Last updated: 2026-08-
|
|
4
|
+
> Auto-generated | Last updated: 2026-08-17
|
|
5
5
|
|
|
6
6
|
**Language**: [English](../../../docs/reference/FEATURE-REFERENCE.md) | [繁體中文](../../zh-TW/docs/FEATURE-REFERENCE.md) | 简体中文
|
|
7
7
|
|
|
@@ -201,61 +201,61 @@
|
|
|
201
201
|
|
|
202
202
|
| Skill | 说明 |
|
|
203
203
|
|-------|-------------|
|
|
204
|
-
| `ac-coverage` |
|
|
205
|
-
| `adr-assistant` | [UDS]
|
|
206
|
-
| `ai-collaboration-standards` |
|
|
207
|
-
| `ai-friendly-architecture` |
|
|
208
|
-
| `ai-instruction-standards` |
|
|
209
|
-
| `api-design-assistant` |
|
|
210
|
-
| `atdd-assistant` |
|
|
211
|
-
| `audit-assistant` |
|
|
212
|
-
| `bdd-assistant` |
|
|
213
|
-
| `brainstorm-assistant` |
|
|
214
|
-
| `changelog-guide` |
|
|
215
|
-
| `checkin-assistant` |
|
|
216
|
-
| `ci-cd-assistant` |
|
|
217
|
-
| `code-review-assistant` |
|
|
218
|
-
| `commit-standards` |
|
|
219
|
-
| `contract-test-assistant` | [UDS]
|
|
220
|
-
| `database-assistant` |
|
|
221
|
-
| `deploy-assistant` |
|
|
222
|
-
| `dev-methodology` |
|
|
223
|
-
| `dev-workflow-guide` |
|
|
224
|
-
| `docs-generator` |
|
|
225
|
-
| `documentation-guide` |
|
|
226
|
-
| `durable-execution-assistant` |
|
|
227
|
-
| `e2e-assistant` |
|
|
228
|
-
| `error-code-guide` |
|
|
229
|
-
| `git-workflow-guide` |
|
|
230
|
-
| `incident-response-assistant` |
|
|
231
|
-
| `journey-test-assistant` |
|
|
232
|
-
| `knowledge-graph` |
|
|
233
|
-
| `logging-guide` |
|
|
234
|
-
| `metrics-dashboard-assistant` |
|
|
235
|
-
| `migration-assistant` |
|
|
236
|
-
| `observability-assistant` |
|
|
237
|
-
| `orchestrate` |
|
|
238
|
-
| `plan` |
|
|
239
|
-
| `pr-automation-assistant` |
|
|
240
|
-
| `project-discovery` |
|
|
241
|
-
| `project-structure-guide` |
|
|
242
|
-
| `push` | AI
|
|
243
|
-
| `refactoring-assistant` |
|
|
244
|
-
| `release-standards` |
|
|
245
|
-
| `requirement-assistant` |
|
|
246
|
-
| `retrospective-assistant` | [UDS]
|
|
247
|
-
| `reverse-engineer` |
|
|
248
|
-
| `runbook-assistant` |
|
|
249
|
-
| `security-assistant` |
|
|
250
|
-
| `security-scan-assistant` |
|
|
251
|
-
| `skill-builder` |
|
|
252
|
-
| `slo-assistant` |
|
|
253
|
-
| `spec-derivation` |
|
|
254
|
-
| `spec-driven-dev` |
|
|
255
|
-
| `sweep` |
|
|
256
|
-
| `tdd-assistant` |
|
|
257
|
-
| `test-coverage-assistant` |
|
|
258
|
-
| `testing-guide` |
|
|
204
|
+
| `ac-coverage` | [UDS] 分析验收条件(AC)与测试之间的追踪关系,并生成需求层级的覆盖率报告。 |
|
|
205
|
+
| `adr-assistant` | [UDS] 创建、管理并追踪架构决策记录(ADR)。 |
|
|
206
|
+
| `ai-collaboration-standards` | 防止 AI 幻觉,确保分析代码或提出建议时给出以证据为基础的回应。 |
|
|
207
|
+
| `ai-friendly-architecture` | 设计 AI 友善架构,包含明确的模式、分层文档与语义边界。 |
|
|
208
|
+
| `ai-instruction-standards` | 创建并维护 AI 指令文件(CLAUDE.md、AGENTS.md、.cursor/rules/ 等),并采用适当结构。 |
|
|
209
|
+
| `api-design-assistant` | 引导 API 设计,遵循 REST、GraphQL 与 gRPC 最佳实践。 |
|
|
210
|
+
| `atdd-assistant` | [UDS] 验收测试驱动开发(ATDD)的参考资料:INVEST 准则、Gherkin 验收条件格式与 Three Amigos 结构。 |
|
|
211
|
+
| `audit-assistant` | [UDS] 诊断 UDS 安装的健康状态,并向上游提交结构化反馈。 |
|
|
212
|
+
| `bdd-assistant` | [UDS] 行为驱动开发(BDD)的参考资料:Gherkin 的 Given-When-Then 格式与 Three Amigos 结构。 |
|
|
213
|
+
| `brainstorm-assistant` | [UDS] 在规格出现之前执行的结构化多角色头脑风暴,并附带评分质量关卡。 |
|
|
214
|
+
| `changelog-guide` | [UDS] 以 Keep a Changelog 格式生成并维护 CHANGELOG.md 条目。 |
|
|
215
|
+
| `checkin-assistant` | [UDS] 提交前质量关卡的参考资料:关卡定义、检查清单项目,以及绝不可提交的规则。 |
|
|
216
|
+
| `ci-cd-assistant` | 引导 CI/CD 流水线的设计、配置与优化。 |
|
|
217
|
+
| `code-review-assistant` | [UDS] 系统性代码审查的参考资料:八大审查类别,以及 BLOCKING/IMPORTANT/SUGGESTION 评论前缀。 |
|
|
218
|
+
| `commit-standards` | [UDS] 生成符合 Conventional Commits 规范的 commit message,包含双语格式。 |
|
|
219
|
+
| `contract-test-assistant` | [UDS] 引导 API 与微服务的契约测试策略。 |
|
|
220
|
+
| `database-assistant` | 引导数据库设计、迁移与查询优化。 |
|
|
221
|
+
| `deploy-assistant` | 引导在没有 CI/CD 平台(GitHub Actions/GitLab CI)的情况下完成可靠部署。 |
|
|
222
|
+
| `dev-methodology` | [UDS] 为项目选择并追踪当前采用的开发方法论(SDD、BDD、TDD)。 |
|
|
223
|
+
| `dev-workflow-guide` | [UDS] 把目前的软件开发阶段对应到正确的 UDS 命令与 Skill。 |
|
|
224
|
+
| `docs-generator` | [UDS] 从项目源文件生成使用文档(速查表、参考手册、使用指南)。 |
|
|
225
|
+
| `documentation-guide` | 引导文档结构、内容需求与项目文档的最佳实践。 |
|
|
226
|
+
| `durable-execution-assistant` | [UDS] 引导容错工作流设计,包含检查点、重试策略与回滚计划。 |
|
|
227
|
+
| `e2e-assistant` | [UDS] 从 BDD 的 .feature 场景生成 E2E 测试骨架,并支持框架检测与覆盖缺口分析。 |
|
|
228
|
+
| `error-code-guide` | 设计一致的错误码,遵循 PREFIX_CATEGORY_NUMBER 格式。 |
|
|
229
|
+
| `git-workflow-guide` | 引导 Git 分支策略、分支命名与合并操作。 |
|
|
230
|
+
| `incident-response-assistant` | 引导事故响应、根因分析与事后复盘文档撰写。 |
|
|
231
|
+
| `journey-test-assistant` | [UDS] 从项目描述生成连贯的用户旅程测试计划(TESTPLAN)与旅程 E2E 骨架。 |
|
|
232
|
+
| `knowledge-graph` | [UDS] 通过知识图谱追踪规格、决策与代码之间的影响链;没有引擎时以 Markdown 后备方案运作。 |
|
|
233
|
+
| `logging-guide` | 实现结构化日志,包含适当的日志级别与敏感数据处理。 |
|
|
234
|
+
| `metrics-dashboard-assistant` | [UDS] 长期追踪开发指标、代码质量指标与技术债。 |
|
|
235
|
+
| `migration-assistant` | [UDS] 引导系统性的代码迁移、框架升级与技术现代化。 |
|
|
236
|
+
| `observability-assistant` | 引导可观测性建设、指标设计与告警配置。 |
|
|
237
|
+
| `orchestrate` | 以 Claude 原生 Agent tool 编排多任务执行计划(以 DAG 为基础,不需外部引擎)。 |
|
|
238
|
+
| `plan` | 从 Spec 文档、OpenSpec 变更或自由文本需求生成 plan.json。 |
|
|
239
|
+
| `pr-automation-assistant` | 引导 pull request 创建、审查自动化与合并策略。 |
|
|
240
|
+
| `project-discovery` | [UDS] 在既有代码库新增功能之前,评估项目健康度、架构与风险。 |
|
|
241
|
+
| `project-structure-guide` | 依各语言的最佳实践组织项目目录结构的指南。 |
|
|
242
|
+
| `push` | AI 辅助的 git push 安全层,提供质量关卡与协作护栏。 |
|
|
243
|
+
| `refactoring-assistant` | [UDS] 引导重构决策与策略选择,包含「重构还是重写」这个判断。 |
|
|
244
|
+
| `release-standards` | [UDS] 引导发布流程——语义化版本、发布模式,以及 start/finish/promote/deploy 的顺序。 |
|
|
245
|
+
| `requirement-assistant` | [UDS] 撰写符合 INVEST 准则的用户故事与需求。 |
|
|
246
|
+
| `retrospective-assistant` | [UDS] 引导 Sprint 与 Release 周期的结构化团队回顾。 |
|
|
247
|
+
| `reverse-engineer` | [UDS] 系统考古——从逻辑、数据、运行时三个维度对既有系统做逆向工程。 |
|
|
248
|
+
| `runbook-assistant` | 引导 Runbook 的撰写、维护与演练。 |
|
|
249
|
+
| `security-assistant` | 引导安全审查与漏洞评估,遵循 OWASP 标准。 |
|
|
250
|
+
| `security-scan-assistant` | 引导自动化安全扫描、依赖包审计与密钥检测。 |
|
|
251
|
+
| `skill-builder` | [UDS] 把重复的手动流程转成范围界定得宜的 Skill,过程中拿捏恰当的流程分量。 |
|
|
252
|
+
| `slo-assistant` | 引导 SLI 选取、SLO 设置与 Error Budget 管理。 |
|
|
253
|
+
| `spec-derivation` | [UDS] 从已批准的规格推导出 BDD 场景、TDD 骨架、集成与 E2E 测试,以及 ATDD 表格。 |
|
|
254
|
+
| `spec-driven-dev` | [UDS] 在写代码之前建立并审查规格文档——规格格式、状态与差异操作。 |
|
|
255
|
+
| `sweep` | 扫描代码库中的调试残留与代码质量问题;可选择自动修正安全的模式。 |
|
|
256
|
+
| `tdd-assistant` | [UDS] 测试驱动开发(TDD)的参考资料:红-绿-重构循环、FIRST 原则与 Arrange-Act-Assert 结构。 |
|
|
257
|
+
| `test-coverage-assistant` | [UDS] 以八维度框架分析代码层级的测试覆盖率,并建议该优先补上哪些缺口。 |
|
|
258
|
+
| `testing-guide` | 测试金字塔,以及 UT/IT/ST/E2E 的测试编写标准。 |
|
|
259
259
|
|
|
260
260
|
---
|
|
261
261
|
|
|
@@ -299,7 +299,7 @@
|
|
|
299
299
|
| `ai-command-behavior` | 1.0.0 | This standard defines a structure for specifying AI Agent runtime behavior in co |
|
|
300
300
|
| `ai-friendly-architecture` | 1.0.0 | This standard defines architecture and documentation practices that maximize the |
|
|
301
301
|
| `ai-instruction-standards` | 1.1.0 | This standard defines best practices for creating and maintaining AI instruction |
|
|
302
|
-
| `ai-response-navigation` | 1.
|
|
302
|
+
| `ai-response-navigation` | 1.3.0 | This standard defines navigation behavior for AI responses: every substantive AI |
|
|
303
303
|
| `alerting-standards` | 1.0.0 | |
|
|
304
304
|
| `anti-hallucination` | 1.5.1 | This standard defines strict guidelines for AI assistants to prevent hallucinati |
|
|
305
305
|
| `anti-sycophancy-prompting` | 1.0.0 | This standard defines techniques and rules for designing prompts that elicit gen |
|
|
@@ -317,7 +317,7 @@
|
|
|
317
317
|
| `chaos-injection-tests` | - | |
|
|
318
318
|
| `checkin-standards` | 1.8.0 | This standard defines quality gates that MUST be passed before committing code t |
|
|
319
319
|
| `circuit-breaker` | - | |
|
|
320
|
-
| `class-level-fix` | 1.
|
|
320
|
+
| `class-level-fix` | 1.1.0 | A defect is almost never alone. It is one member of a set — one flag in a dispat |
|
|
321
321
|
| `code-review-checklist` | 1.4.0 | This standard provides a comprehensive checklist for reviewing code changes, ens |
|
|
322
322
|
| `commit-message-guide` | 1.3.0 | Standardized commit messages improve code review efficiency, facilitate automate |
|
|
323
323
|
| `container-image-standards` | 1.0.0 | **Status**: Active | **Updated**: 2026-06-17 | |
|
|
@@ -369,7 +369,7 @@
|
|
|
369
369
|
| `model-provenance` | 1.0.0 | **Status**: Active | **Updated**: 2026-06-17 | |
|
|
370
370
|
| `model-selection` | 2.1.0 | Define how to choose **which model** and **how deeply it should think** — two in |
|
|
371
371
|
| `multi-environment-e2e-testing` | 1.0.0 | **Status**: Active | **Updated**: 2026-05-13 | |
|
|
372
|
-
| `mutation-testing` | 1.
|
|
372
|
+
| `mutation-testing` | 1.1.0 | Mutation testing evaluates test suite effectiveness by injecting artificial bugs |
|
|
373
373
|
| `no-cicd-deployment` | - | |
|
|
374
374
|
| `observability-standards` | 1.0.0 | |
|
|
375
375
|
| `packaging-standards` | 1.1.0 | This standard defines a Recipe-based packaging framework that enables user proje |
|
|
@@ -413,7 +413,7 @@
|
|
|
413
413
|
| `slo-sli` | 1.0.0 | **Status**: Active | **Updated**: 2026-06-17 | |
|
|
414
414
|
| `slo-standards` | 1.0.0 | |
|
|
415
415
|
| `smoke-test` | - | |
|
|
416
|
-
| `spec-driven-development` | 2.
|
|
416
|
+
| `spec-driven-development` | 2.4.0 | |
|
|
417
417
|
| `standard-admission-criteria` | - | |
|
|
418
418
|
| `standard-lifecycle-management` | - | |
|
|
419
419
|
| `structured-task-definition` | 1.0.0 | |
|
|
@@ -424,14 +424,14 @@
|
|
|
424
424
|
| `test-completeness-dimensions` | 1.1.0 | This document defines a systematic framework for evaluating test completeness. I |
|
|
425
425
|
| `test-data-standards` | 1.0.0 | |
|
|
426
426
|
| `test-driven-development` | 1.2.0 | |
|
|
427
|
-
| `test-governance` | 1.
|
|
427
|
+
| `test-governance` | 1.2.0 | |
|
|
428
428
|
| `testing-standards` | 3.2.0 | This standard defines actionable testing rules and conventions for AI agents and |
|
|
429
429
|
| `timeout-standards` | - | |
|
|
430
430
|
| `token-budget` | - | |
|
|
431
431
|
| `translation-lifecycle-standards` | 1.0.1 | Translation lifecycle standards: MISSING vs OUTDATED distinction, semver-aware s |
|
|
432
432
|
| `user-journey-testing` | - | |
|
|
433
433
|
| `user-story-mapping` | 1.0.0 | **Status**: Active | **Updated**: 2026-06-17 | |
|
|
434
|
-
| `verification-evidence` | 1.
|
|
434
|
+
| `verification-evidence` | 1.3.0 | Establish an "Iron Law" that no task can be claimed as complete without verifica |
|
|
435
435
|
| `verification-oracle` | 1.0.0 | **Status**: Active | **Updated**: 2026-06-17 | |
|
|
436
436
|
| `versioning` | 1.5.0 | This standard defines how to version software releases using Semantic Versioning |
|
|
437
437
|
| `virtual-organization-standards` | 1.0.0 | This standard treats the AI ecosystem as a "Virtual Organization." It defines ho |
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
---
|
|
2
2
|
source: ../../CHANGELOG.md
|
|
3
|
-
source_version: 6.7.
|
|
4
|
-
translation_version: 6.7.
|
|
5
|
-
last_synced: 2026-08-
|
|
3
|
+
source_version: 6.7.2
|
|
4
|
+
translation_version: 6.7.2
|
|
5
|
+
last_synced: 2026-08-18
|
|
6
6
|
status: current
|
|
7
7
|
---
|
|
8
8
|
|
|
@@ -17,6 +17,29 @@ status: current
|
|
|
17
17
|
|
|
18
18
|
## [Unreleased]
|
|
19
19
|
|
|
20
|
+
## [6.7.2] - 2026-08-18
|
|
21
|
+
|
|
22
|
+
### 修正
|
|
23
|
+
|
|
24
|
+
- **`uds update --skills` 更新了全部內容,卻永不前進版本標記。** 五個採用 repo 中有四個停在 6.6.0,而同一份 manifest 的 `skills.version` 已經是 6.7.0;唯一前進的,正是那個沒裝 skills 的。兩次執行都 exit 0、都印「57 succeeded」、都沒印任何失敗。先前對此的判讀——「有東西回報了失敗而它沒有浮上來」——**是錯的**。探針量到 `results=57 failing=0`、registry 版本解為 `"6.7.1"`、準備寫入的值也正確:**reconciler 每一步都做對了,是較晚的一次寫入撤銷了它。** `update.js` 在指令開頭讀一次 manifest,那是在 reconciler 執行之前;`updateSkillsOnly()` 隨後把那份過期的記憶體物件寫回去覆蓋掉它。`updateCommandsOnly()` 有一模一樣的缺陷,**它是走訪找出來的,不是撞到的**。兩處現在各自重讀 manifest,並且**只套用自己擁有的欄位**——把整份物件複製回去,會讓任何後續步驟新增的欄位重蹈同一個缺陷。這件事之所以要緊,是因為該機制自己的註解寫著:它存在的目的,就是讓每週陳舊度偵察(讀的正是這個欄位)不再誤報。
|
|
25
|
+
- **一份列出 57 項變更、其中 55 項是無條件的計畫。** skill 沒有內容比對(XSPEC-382 R1),於是每次升級都重印同樣的 55 列、理由完全相同,把審閱者真正需要核可的那 2 列埋在底下。現在它們摺疊成一行,**而那一行寫出自己摺了幾個**,總數不變——一個不聲明自己設限的上限,讀起來就像「就這些了」。摘要那行同樣改為 `Update: 57 (2 changed, 55 unconditional reinstall)`;單獨的 `Update: 57` 是真的,而且什麼都沒回答,**而決定要不要核可一次升級時讀的正是摘要**。
|
|
26
|
+
|
|
27
|
+
### 變更
|
|
28
|
+
|
|
29
|
+
- **無條件重裝的理由字串收斂為單一匯出常數**,不再是產生端一份、渲染端一份。兩份副本之間的漂移在這裡是無聲的:摺疊會單純地停止摺疊,而計畫看起來與它一直以來的樣子一模一樣。
|
|
30
|
+
|
|
31
|
+
### 測試
|
|
32
|
+
|
|
33
|
+
- **為版本標記補上行為層測試,與既有的形狀測試並存。** 隨修正加入的迴歸測試斷言的是原始碼文字——那兩個函式含有 `readManifest(projectPath)`——若有人重構成「呼叫它然後丟掉結果」,它仍然全綠。而這裡宣稱的是行為,所以 `tests/e2e/update-version-advances.test.js` 會真的跑一次安裝、種下探針版本、執行 `update --apply --yes --skills`,再斷言標記真的動了。已雙向驗過:修正在場為綠,還原缺陷為紅。
|
|
34
|
+
- 兩份新測試都斷言**正反兩臂**。摺疊測試會檢查一般計畫完全不受影響,因為只驗「那 55 列不見了」的測試,對一個把所有 update 列都丟掉的渲染器也照樣會過。
|
|
35
|
+
|
|
36
|
+
## [6.7.1] - 2026-08-18
|
|
37
|
+
|
|
38
|
+
### 修正
|
|
39
|
+
|
|
40
|
+
- **各語系的速查表內嵌的是英文 skill 描述——每一個語系、每一次都是。** `scripts/generate-usage-docs.mjs` 在語系迴圈**之外**掃描 skill 一次,且固定讀 `skills/`(英文來源),於是三份速查表與功能參考共用同一組描述。修正前實測:**`locales/zh-TW/docs/CHEATSHEET.md` 的 82 則描述與英文版逐位元組相同**——而且是 6.7.0 之前那個被剝過的 `[UDS] <標籤>` 形式,所以繁體中文讀者看到的是**用錯語言的過期描述**,而他實際安裝的 `SKILL.md` 帶著完整的中文觸發面。`scanSkills()` 現在接受語系並在**迴圈內**呼叫,優先取語系版、缺漏時逐個 skill 回退英文。**修在產生器而不是那 82 列**:手改的速查表下一次編輯必然再度與 `SKILL.md` 分岔。
|
|
41
|
+
- **`code-review-assistant` 與 `checkin-assistant` 的 `disable-model-invocation: true` 已移除。** 那個旗標**不遵循任何可陳述的規則**:六個帶 `status: reference` 的 skill 中,**有四個(`tdd`、`bdd`、`atdd`、`pr-automation`)從未被禁用**,而它們經歷的是同一次 XSPEC-095 生命週期遷移——同一個類別、相反的處置——另外八個被禁用的**連 `status` 都沒有**。系統自己早已記下後果:`pr-automation-assistant` 把*「審查的實質內容——請用 `/code-review`」*導向那裡,**而那條轉介在任何模型自主的路徑上都到不了**。六個 reference 現在處置一致,規則因此說得出口:**reference 一律可被模型叫用**。兩個檔案內都就地記錄了理由。**其餘八個刻意不動**——它們沒有 `status`,拿掉等於用另一個沒有規則的動作覆蓋一個沒有規則的狀態;它們已在 XSPEC-378 R5 具名,不再是「不知道為什麼關著」。
|
|
42
|
+
|
|
20
43
|
## [6.7.0] - 2026-08-17
|
|
21
44
|
|
|
22
45
|
### 修正
|
|
@@ -15,7 +15,7 @@ status: current
|
|
|
15
15
|
|
|
16
16
|
> **語言**: [English](../../README.md) | 繁體中文 | [简体中文](../zh-CN/README.md)
|
|
17
17
|
|
|
18
|
-
**版本**: 6.7.
|
|
18
|
+
**版本**: 6.7.2 | **發布日期**: 2026-08-18 | **授權**: [雙重授權](../../LICENSE) (CC BY 4.0 + MIT)
|
|
19
19
|
|
|
20
20
|
語言無關、框架無關的軟體專案文件標準。透過 AI 原生工作流,確保不同技術堆疊之間的一致性、品質和可維護性。
|
|
21
21
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# UDS 速查表
|
|
2
2
|
|
|
3
|
-
> Quick reference for all UDS features | Last updated: 2026-08-
|
|
3
|
+
> Quick reference for all UDS features | Last updated: 2026-08-17
|
|
4
4
|
|
|
5
5
|
**Language**: [English](../../../docs/user/CHEATSHEET.md) | 繁體中文 | [简体中文](../../zh-CN/docs/CHEATSHEET.md)
|
|
6
6
|
|
|
@@ -80,61 +80,61 @@
|
|
|
80
80
|
|
|
81
81
|
| Skill | 說明 |
|
|
82
82
|
|-------|-------------|
|
|
83
|
-
| `ac-coverage` |
|
|
84
|
-
| `adr-assistant` | [UDS]
|
|
85
|
-
| `ai-collaboration-standards` |
|
|
86
|
-
| `ai-friendly-architecture` |
|
|
87
|
-
| `ai-instruction-standards` |
|
|
88
|
-
| `api-design-assistant` |
|
|
89
|
-
| `atdd-assistant` |
|
|
90
|
-
| `audit-assistant` |
|
|
91
|
-
| `bdd-assistant` |
|
|
92
|
-
| `brainstorm-assistant` |
|
|
93
|
-
| `changelog-guide` |
|
|
94
|
-
| `checkin-assistant` |
|
|
95
|
-
| `ci-cd-assistant` |
|
|
96
|
-
| `code-review-assistant` |
|
|
97
|
-
| `commit-standards` |
|
|
98
|
-
| `contract-test-assistant` | [UDS]
|
|
99
|
-
| `database-assistant` |
|
|
100
|
-
| `deploy-assistant` |
|
|
101
|
-
| `dev-methodology` |
|
|
102
|
-
| `dev-workflow-guide` |
|
|
103
|
-
| `docs-generator` |
|
|
104
|
-
| `documentation-guide` |
|
|
105
|
-
| `durable-execution-assistant` |
|
|
106
|
-
| `e2e-assistant` |
|
|
107
|
-
| `error-code-guide` |
|
|
108
|
-
| `git-workflow-guide` |
|
|
109
|
-
| `incident-response-assistant` |
|
|
110
|
-
| `journey-test-assistant` |
|
|
111
|
-
| `knowledge-graph` |
|
|
112
|
-
| `logging-guide` |
|
|
113
|
-
| `metrics-dashboard-assistant` |
|
|
114
|
-
| `migration-assistant` |
|
|
115
|
-
| `observability-assistant` |
|
|
116
|
-
| `orchestrate` |
|
|
117
|
-
| `plan` |
|
|
118
|
-
| `pr-automation-assistant` |
|
|
119
|
-
| `project-discovery` |
|
|
120
|
-
| `project-structure-guide` |
|
|
121
|
-
| `push` | AI
|
|
122
|
-
| `refactoring-assistant` |
|
|
123
|
-
| `release-standards` |
|
|
124
|
-
| `requirement-assistant` |
|
|
125
|
-
| `retrospective-assistant` | [UDS]
|
|
126
|
-
| `reverse-engineer` |
|
|
127
|
-
| `runbook-assistant` |
|
|
128
|
-
| `security-assistant` |
|
|
129
|
-
| `security-scan-assistant` |
|
|
130
|
-
| `skill-builder` |
|
|
131
|
-
| `slo-assistant` |
|
|
132
|
-
| `spec-derivation` |
|
|
133
|
-
| `spec-driven-dev` |
|
|
134
|
-
| `sweep` |
|
|
135
|
-
| `tdd-assistant` |
|
|
136
|
-
| `test-coverage-assistant` |
|
|
137
|
-
| `testing-guide` |
|
|
83
|
+
| `ac-coverage` | [UDS] 分析驗收條件(AC)與測試之間的追蹤關係,並產生需求層級的覆蓋率報告。 |
|
|
84
|
+
| `adr-assistant` | [UDS] 建立、管理並追蹤架構決策記錄(ADR)。 |
|
|
85
|
+
| `ai-collaboration-standards` | 防止 AI 幻覺,確保分析程式碼或提出建議時給出以證據為基礎的回應。 |
|
|
86
|
+
| `ai-friendly-architecture` | 設計 AI 友善架構,包含明確的模式、分層文件與語意邊界。 |
|
|
87
|
+
| `ai-instruction-standards` | 建立並維護 AI 指令檔(CLAUDE.md、AGENTS.md、.cursor/rules/ 等),並採用適當結構。 |
|
|
88
|
+
| `api-design-assistant` | 引導 API 設計,遵循 REST、GraphQL 與 gRPC 最佳實踐。 |
|
|
89
|
+
| `atdd-assistant` | [UDS] 驗收測試驅動開發(ATDD)的參考資料:INVEST 準則、Gherkin 驗收條件格式與 Three Am |
|
|
90
|
+
| `audit-assistant` | [UDS] 診斷 UDS 安裝的健康狀態,並向上游提交結構化回饋。 |
|
|
91
|
+
| `bdd-assistant` | [UDS] 行為驅動開發(BDD)的參考資料:Gherkin 的 Given-When-Then 格式與 Three A |
|
|
92
|
+
| `brainstorm-assistant` | [UDS] 在規格出現之前執行的結構化多角色腦力激盪,並附帶評分品質關卡。 |
|
|
93
|
+
| `changelog-guide` | [UDS] 以 Keep a Changelog 格式產生並維護 CHANGELOG.md 條目。 |
|
|
94
|
+
| `checkin-assistant` | [UDS] 提交前品質關卡的參考資料:關卡定義、檢查清單項目,以及絕不可提交的規則。 |
|
|
95
|
+
| `ci-cd-assistant` | 引導 CI/CD 管線的設計、設定與最佳化。 |
|
|
96
|
+
| `code-review-assistant` | [UDS] 系統性程式碼審查的參考資料:八大審查類別,以及 BLOCKING/IMPORTANT/SUGGESTION |
|
|
97
|
+
| `commit-standards` | [UDS] 產生符合 Conventional Commits 規範的 commit message,包含雙語格式。 |
|
|
98
|
+
| `contract-test-assistant` | [UDS] 引導 API 與微服務的合約測試策略。 |
|
|
99
|
+
| `database-assistant` | 引導資料庫設計、遷移與查詢最佳化。 |
|
|
100
|
+
| `deploy-assistant` | 引導在沒有 CI/CD 平台(GitHub Actions/GitLab CI)的情況下完成可靠部署。 |
|
|
101
|
+
| `dev-methodology` | [UDS] 為專案選擇並追蹤當前採用的開發方法論(SDD、BDD、TDD)。 |
|
|
102
|
+
| `dev-workflow-guide` | [UDS] 把目前的軟體開發階段對應到正確的 UDS 指令與 Skill。 |
|
|
103
|
+
| `docs-generator` | [UDS] 從專案原始檔產生使用文件(速查表、參考手冊、使用指南)。 |
|
|
104
|
+
| `documentation-guide` | 引導文件結構、內容需求與專案文件的最佳實踐。 |
|
|
105
|
+
| `durable-execution-assistant` | [UDS] 引導容錯工作流程設計,包含檢查點、重試策略與回滾計畫。 |
|
|
106
|
+
| `e2e-assistant` | [UDS] 從 BDD 的 .feature 場景產生 E2E 測試骨架,並支援框架偵測與覆蓋缺口分析。 |
|
|
107
|
+
| `error-code-guide` | 設計一致的錯誤碼,遵循 PREFIX_CATEGORY_NUMBER 格式。 |
|
|
108
|
+
| `git-workflow-guide` | 引導 Git 分支策略、分支命名與合併操作。 |
|
|
109
|
+
| `incident-response-assistant` | 引導事故回應、根因分析與事後檢討文件撰寫。 |
|
|
110
|
+
| `journey-test-assistant` | [UDS] 從專案描述產生連貫的使用者旅程測試計畫(TESTPLAN)與旅程 E2E 骨架。 |
|
|
111
|
+
| `knowledge-graph` | [UDS] 透過知識圖追蹤規格、決策與程式碼之間的影響鏈;沒有引擎時以 Markdown 後備方案運作。 |
|
|
112
|
+
| `logging-guide` | 實作結構化日誌,包含適當的日誌層級與敏感資料處理。 |
|
|
113
|
+
| `metrics-dashboard-assistant` | [UDS] 長期追蹤開發指標、程式碼品質指標與技術債。 |
|
|
114
|
+
| `migration-assistant` | [UDS] 引導系統性的程式碼遷移、框架升級與技術現代化。 |
|
|
115
|
+
| `observability-assistant` | 引導可觀測性建置、指標設計與告警設定。 |
|
|
116
|
+
| `orchestrate` | 以 Claude 原生 Agent tool 編排多任務執行計畫(以 DAG 為基礎,不需外部引擎)。 |
|
|
117
|
+
| `plan` | 從 Spec 文件、OpenSpec 變更或自由文字需求生成 plan.json。 |
|
|
118
|
+
| `pr-automation-assistant` | 引導 pull request 建立、審查自動化與合併策略。 |
|
|
119
|
+
| `project-discovery` | [UDS] 在既有程式碼庫新增功能之前,評估專案健康度、架構與風險。 |
|
|
120
|
+
| `project-structure-guide` | 依各語言的最佳實踐組織專案目錄結構的指南。 |
|
|
121
|
+
| `push` | AI 輔助的 git push 安全層,提供品質關卡與協作護欄。 |
|
|
122
|
+
| `refactoring-assistant` | [UDS] 引導重構決策與策略選擇,包含「重構還是重寫」這個判斷。 |
|
|
123
|
+
| `release-standards` | [UDS] 引導發布流程——語意化版本、發布模式,以及 start/finish/promote/deploy 的順序。 |
|
|
124
|
+
| `requirement-assistant` | [UDS] 撰寫符合 INVEST 準則的使用者故事與需求。 |
|
|
125
|
+
| `retrospective-assistant` | [UDS] 引導 Sprint 與 Release 週期的結構化團隊回顧。 |
|
|
126
|
+
| `reverse-engineer` | [UDS] 系統考古——從邏輯、資料、執行環境三個維度對既有系統做反向工程。 |
|
|
127
|
+
| `runbook-assistant` | 引導 Runbook 的撰寫、維護與演練。 |
|
|
128
|
+
| `security-assistant` | 引導安全審查與弱點評估,遵循 OWASP 標準。 |
|
|
129
|
+
| `security-scan-assistant` | 引導自動化安全掃描、相依套件稽核與機密偵測。 |
|
|
130
|
+
| `skill-builder` | [UDS] 把重複的手動流程轉成範圍界定得宜的 Skill,過程中拿捏恰當的流程份量。 |
|
|
131
|
+
| `slo-assistant` | 引導 SLI 選取、SLO 設定與 Error Budget 管理。 |
|
|
132
|
+
| `spec-derivation` | [UDS] 從已核准的規格推導出 BDD 場景、TDD 骨架、整合與 E2E 測試,以及 ATDD 表格。 |
|
|
133
|
+
| `spec-driven-dev` | [UDS] 在寫程式碼之前建立並審查規格文件——規格格式、狀態與差異操作。 |
|
|
134
|
+
| `sweep` | 掃描程式碼庫中的除錯殘留與程式碼品質問題;可選擇自動修正安全的模式。 |
|
|
135
|
+
| `tdd-assistant` | [UDS] 測試驅動開發(TDD)的參考資料:紅-綠-重構循環、FIRST 原則與 Arrange-Act-Assert |
|
|
136
|
+
| `test-coverage-assistant` | [UDS] 以八維度框架分析程式碼層級的測試覆蓋率,並建議該優先補上哪些缺口。 |
|
|
137
|
+
| `testing-guide` | 測試金字塔,以及 UT/IT/ST/E2E 的測試撰寫標準。 |
|
|
138
138
|
|
|
139
139
|
## 🤖 代理
|
|
140
140
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# UDS 功能參考手冊
|
|
2
2
|
|
|
3
3
|
> Universal Development Standards - 完整功能文件
|
|
4
|
-
> Auto-generated | Last updated: 2026-08-
|
|
4
|
+
> Auto-generated | Last updated: 2026-08-17
|
|
5
5
|
|
|
6
6
|
**Language**: [English](../../../docs/reference/FEATURE-REFERENCE.md) | 繁體中文 | [简体中文](../../zh-CN/docs/FEATURE-REFERENCE.md)
|
|
7
7
|
|
|
@@ -201,61 +201,61 @@
|
|
|
201
201
|
|
|
202
202
|
| Skill | 說明 |
|
|
203
203
|
|-------|-------------|
|
|
204
|
-
| `ac-coverage` |
|
|
205
|
-
| `adr-assistant` | [UDS]
|
|
206
|
-
| `ai-collaboration-standards` |
|
|
207
|
-
| `ai-friendly-architecture` |
|
|
208
|
-
| `ai-instruction-standards` |
|
|
209
|
-
| `api-design-assistant` |
|
|
210
|
-
| `atdd-assistant` |
|
|
211
|
-
| `audit-assistant` |
|
|
212
|
-
| `bdd-assistant` |
|
|
213
|
-
| `brainstorm-assistant` |
|
|
214
|
-
| `changelog-guide` |
|
|
215
|
-
| `checkin-assistant` |
|
|
216
|
-
| `ci-cd-assistant` |
|
|
217
|
-
| `code-review-assistant` |
|
|
218
|
-
| `commit-standards` |
|
|
219
|
-
| `contract-test-assistant` | [UDS]
|
|
220
|
-
| `database-assistant` |
|
|
221
|
-
| `deploy-assistant` |
|
|
222
|
-
| `dev-methodology` |
|
|
223
|
-
| `dev-workflow-guide` |
|
|
224
|
-
| `docs-generator` |
|
|
225
|
-
| `documentation-guide` |
|
|
226
|
-
| `durable-execution-assistant` |
|
|
227
|
-
| `e2e-assistant` |
|
|
228
|
-
| `error-code-guide` |
|
|
229
|
-
| `git-workflow-guide` |
|
|
230
|
-
| `incident-response-assistant` |
|
|
231
|
-
| `journey-test-assistant` |
|
|
232
|
-
| `knowledge-graph` |
|
|
233
|
-
| `logging-guide` |
|
|
234
|
-
| `metrics-dashboard-assistant` |
|
|
235
|
-
| `migration-assistant` |
|
|
236
|
-
| `observability-assistant` |
|
|
237
|
-
| `orchestrate` |
|
|
238
|
-
| `plan` |
|
|
239
|
-
| `pr-automation-assistant` |
|
|
240
|
-
| `project-discovery` |
|
|
241
|
-
| `project-structure-guide` |
|
|
242
|
-
| `push` | AI
|
|
243
|
-
| `refactoring-assistant` |
|
|
244
|
-
| `release-standards` |
|
|
245
|
-
| `requirement-assistant` |
|
|
246
|
-
| `retrospective-assistant` | [UDS]
|
|
247
|
-
| `reverse-engineer` |
|
|
248
|
-
| `runbook-assistant` |
|
|
249
|
-
| `security-assistant` |
|
|
250
|
-
| `security-scan-assistant` |
|
|
251
|
-
| `skill-builder` |
|
|
252
|
-
| `slo-assistant` |
|
|
253
|
-
| `spec-derivation` |
|
|
254
|
-
| `spec-driven-dev` |
|
|
255
|
-
| `sweep` |
|
|
256
|
-
| `tdd-assistant` |
|
|
257
|
-
| `test-coverage-assistant` |
|
|
258
|
-
| `testing-guide` |
|
|
204
|
+
| `ac-coverage` | [UDS] 分析驗收條件(AC)與測試之間的追蹤關係,並產生需求層級的覆蓋率報告。 |
|
|
205
|
+
| `adr-assistant` | [UDS] 建立、管理並追蹤架構決策記錄(ADR)。 |
|
|
206
|
+
| `ai-collaboration-standards` | 防止 AI 幻覺,確保分析程式碼或提出建議時給出以證據為基礎的回應。 |
|
|
207
|
+
| `ai-friendly-architecture` | 設計 AI 友善架構,包含明確的模式、分層文件與語意邊界。 |
|
|
208
|
+
| `ai-instruction-standards` | 建立並維護 AI 指令檔(CLAUDE.md、AGENTS.md、.cursor/rules/ 等),並採用適當結構。 |
|
|
209
|
+
| `api-design-assistant` | 引導 API 設計,遵循 REST、GraphQL 與 gRPC 最佳實踐。 |
|
|
210
|
+
| `atdd-assistant` | [UDS] 驗收測試驅動開發(ATDD)的參考資料:INVEST 準則、Gherkin 驗收條件格式與 Three Amigos 結構。 |
|
|
211
|
+
| `audit-assistant` | [UDS] 診斷 UDS 安裝的健康狀態,並向上游提交結構化回饋。 |
|
|
212
|
+
| `bdd-assistant` | [UDS] 行為驅動開發(BDD)的參考資料:Gherkin 的 Given-When-Then 格式與 Three Amigos 結構。 |
|
|
213
|
+
| `brainstorm-assistant` | [UDS] 在規格出現之前執行的結構化多角色腦力激盪,並附帶評分品質關卡。 |
|
|
214
|
+
| `changelog-guide` | [UDS] 以 Keep a Changelog 格式產生並維護 CHANGELOG.md 條目。 |
|
|
215
|
+
| `checkin-assistant` | [UDS] 提交前品質關卡的參考資料:關卡定義、檢查清單項目,以及絕不可提交的規則。 |
|
|
216
|
+
| `ci-cd-assistant` | 引導 CI/CD 管線的設計、設定與最佳化。 |
|
|
217
|
+
| `code-review-assistant` | [UDS] 系統性程式碼審查的參考資料:八大審查類別,以及 BLOCKING/IMPORTANT/SUGGESTION 評論前綴。 |
|
|
218
|
+
| `commit-standards` | [UDS] 產生符合 Conventional Commits 規範的 commit message,包含雙語格式。 |
|
|
219
|
+
| `contract-test-assistant` | [UDS] 引導 API 與微服務的合約測試策略。 |
|
|
220
|
+
| `database-assistant` | 引導資料庫設計、遷移與查詢最佳化。 |
|
|
221
|
+
| `deploy-assistant` | 引導在沒有 CI/CD 平台(GitHub Actions/GitLab CI)的情況下完成可靠部署。 |
|
|
222
|
+
| `dev-methodology` | [UDS] 為專案選擇並追蹤當前採用的開發方法論(SDD、BDD、TDD)。 |
|
|
223
|
+
| `dev-workflow-guide` | [UDS] 把目前的軟體開發階段對應到正確的 UDS 指令與 Skill。 |
|
|
224
|
+
| `docs-generator` | [UDS] 從專案原始檔產生使用文件(速查表、參考手冊、使用指南)。 |
|
|
225
|
+
| `documentation-guide` | 引導文件結構、內容需求與專案文件的最佳實踐。 |
|
|
226
|
+
| `durable-execution-assistant` | [UDS] 引導容錯工作流程設計,包含檢查點、重試策略與回滾計畫。 |
|
|
227
|
+
| `e2e-assistant` | [UDS] 從 BDD 的 .feature 場景產生 E2E 測試骨架,並支援框架偵測與覆蓋缺口分析。 |
|
|
228
|
+
| `error-code-guide` | 設計一致的錯誤碼,遵循 PREFIX_CATEGORY_NUMBER 格式。 |
|
|
229
|
+
| `git-workflow-guide` | 引導 Git 分支策略、分支命名與合併操作。 |
|
|
230
|
+
| `incident-response-assistant` | 引導事故回應、根因分析與事後檢討文件撰寫。 |
|
|
231
|
+
| `journey-test-assistant` | [UDS] 從專案描述產生連貫的使用者旅程測試計畫(TESTPLAN)與旅程 E2E 骨架。 |
|
|
232
|
+
| `knowledge-graph` | [UDS] 透過知識圖追蹤規格、決策與程式碼之間的影響鏈;沒有引擎時以 Markdown 後備方案運作。 |
|
|
233
|
+
| `logging-guide` | 實作結構化日誌,包含適當的日誌層級與敏感資料處理。 |
|
|
234
|
+
| `metrics-dashboard-assistant` | [UDS] 長期追蹤開發指標、程式碼品質指標與技術債。 |
|
|
235
|
+
| `migration-assistant` | [UDS] 引導系統性的程式碼遷移、框架升級與技術現代化。 |
|
|
236
|
+
| `observability-assistant` | 引導可觀測性建置、指標設計與告警設定。 |
|
|
237
|
+
| `orchestrate` | 以 Claude 原生 Agent tool 編排多任務執行計畫(以 DAG 為基礎,不需外部引擎)。 |
|
|
238
|
+
| `plan` | 從 Spec 文件、OpenSpec 變更或自由文字需求生成 plan.json。 |
|
|
239
|
+
| `pr-automation-assistant` | 引導 pull request 建立、審查自動化與合併策略。 |
|
|
240
|
+
| `project-discovery` | [UDS] 在既有程式碼庫新增功能之前,評估專案健康度、架構與風險。 |
|
|
241
|
+
| `project-structure-guide` | 依各語言的最佳實踐組織專案目錄結構的指南。 |
|
|
242
|
+
| `push` | AI 輔助的 git push 安全層,提供品質關卡與協作護欄。 |
|
|
243
|
+
| `refactoring-assistant` | [UDS] 引導重構決策與策略選擇,包含「重構還是重寫」這個判斷。 |
|
|
244
|
+
| `release-standards` | [UDS] 引導發布流程——語意化版本、發布模式,以及 start/finish/promote/deploy 的順序。 |
|
|
245
|
+
| `requirement-assistant` | [UDS] 撰寫符合 INVEST 準則的使用者故事與需求。 |
|
|
246
|
+
| `retrospective-assistant` | [UDS] 引導 Sprint 與 Release 週期的結構化團隊回顧。 |
|
|
247
|
+
| `reverse-engineer` | [UDS] 系統考古——從邏輯、資料、執行環境三個維度對既有系統做反向工程。 |
|
|
248
|
+
| `runbook-assistant` | 引導 Runbook 的撰寫、維護與演練。 |
|
|
249
|
+
| `security-assistant` | 引導安全審查與弱點評估,遵循 OWASP 標準。 |
|
|
250
|
+
| `security-scan-assistant` | 引導自動化安全掃描、相依套件稽核與機密偵測。 |
|
|
251
|
+
| `skill-builder` | [UDS] 把重複的手動流程轉成範圍界定得宜的 Skill,過程中拿捏恰當的流程份量。 |
|
|
252
|
+
| `slo-assistant` | 引導 SLI 選取、SLO 設定與 Error Budget 管理。 |
|
|
253
|
+
| `spec-derivation` | [UDS] 從已核准的規格推導出 BDD 場景、TDD 骨架、整合與 E2E 測試,以及 ATDD 表格。 |
|
|
254
|
+
| `spec-driven-dev` | [UDS] 在寫程式碼之前建立並審查規格文件——規格格式、狀態與差異操作。 |
|
|
255
|
+
| `sweep` | 掃描程式碼庫中的除錯殘留與程式碼品質問題;可選擇自動修正安全的模式。 |
|
|
256
|
+
| `tdd-assistant` | [UDS] 測試驅動開發(TDD)的參考資料:紅-綠-重構循環、FIRST 原則與 Arrange-Act-Assert 結構。 |
|
|
257
|
+
| `test-coverage-assistant` | [UDS] 以八維度框架分析程式碼層級的測試覆蓋率,並建議該優先補上哪些缺口。 |
|
|
258
|
+
| `testing-guide` | 測試金字塔,以及 UT/IT/ST/E2E 的測試撰寫標準。 |
|
|
259
259
|
|
|
260
260
|
---
|
|
261
261
|
|
|
@@ -299,7 +299,7 @@
|
|
|
299
299
|
| `ai-command-behavior` | 1.0.0 | This standard defines a structure for specifying AI Agent runtime behavior in co |
|
|
300
300
|
| `ai-friendly-architecture` | 1.0.0 | This standard defines architecture and documentation practices that maximize the |
|
|
301
301
|
| `ai-instruction-standards` | 1.1.0 | This standard defines best practices for creating and maintaining AI instruction |
|
|
302
|
-
| `ai-response-navigation` | 1.
|
|
302
|
+
| `ai-response-navigation` | 1.3.0 | This standard defines navigation behavior for AI responses: every substantive AI |
|
|
303
303
|
| `alerting-standards` | 1.0.0 | |
|
|
304
304
|
| `anti-hallucination` | 1.5.1 | This standard defines strict guidelines for AI assistants to prevent hallucinati |
|
|
305
305
|
| `anti-sycophancy-prompting` | 1.0.0 | This standard defines techniques and rules for designing prompts that elicit gen |
|
|
@@ -317,7 +317,7 @@
|
|
|
317
317
|
| `chaos-injection-tests` | - | |
|
|
318
318
|
| `checkin-standards` | 1.8.0 | This standard defines quality gates that MUST be passed before committing code t |
|
|
319
319
|
| `circuit-breaker` | - | |
|
|
320
|
-
| `class-level-fix` | 1.
|
|
320
|
+
| `class-level-fix` | 1.1.0 | A defect is almost never alone. It is one member of a set — one flag in a dispat |
|
|
321
321
|
| `code-review-checklist` | 1.4.0 | This standard provides a comprehensive checklist for reviewing code changes, ens |
|
|
322
322
|
| `commit-message-guide` | 1.3.0 | Standardized commit messages improve code review efficiency, facilitate automate |
|
|
323
323
|
| `container-image-standards` | 1.0.0 | **Status**: Active | **Updated**: 2026-06-17 | |
|
|
@@ -369,7 +369,7 @@
|
|
|
369
369
|
| `model-provenance` | 1.0.0 | **Status**: Active | **Updated**: 2026-06-17 | |
|
|
370
370
|
| `model-selection` | 2.1.0 | Define how to choose **which model** and **how deeply it should think** — two in |
|
|
371
371
|
| `multi-environment-e2e-testing` | 1.0.0 | **Status**: Active | **Updated**: 2026-05-13 | |
|
|
372
|
-
| `mutation-testing` | 1.
|
|
372
|
+
| `mutation-testing` | 1.1.0 | Mutation testing evaluates test suite effectiveness by injecting artificial bugs |
|
|
373
373
|
| `no-cicd-deployment` | - | |
|
|
374
374
|
| `observability-standards` | 1.0.0 | |
|
|
375
375
|
| `packaging-standards` | 1.1.0 | This standard defines a Recipe-based packaging framework that enables user proje |
|
|
@@ -413,7 +413,7 @@
|
|
|
413
413
|
| `slo-sli` | 1.0.0 | **Status**: Active | **Updated**: 2026-06-17 | |
|
|
414
414
|
| `slo-standards` | 1.0.0 | |
|
|
415
415
|
| `smoke-test` | - | |
|
|
416
|
-
| `spec-driven-development` | 2.
|
|
416
|
+
| `spec-driven-development` | 2.4.0 | |
|
|
417
417
|
| `standard-admission-criteria` | - | |
|
|
418
418
|
| `standard-lifecycle-management` | - | |
|
|
419
419
|
| `structured-task-definition` | 1.0.0 | |
|
|
@@ -424,14 +424,14 @@
|
|
|
424
424
|
| `test-completeness-dimensions` | 1.1.0 | This document defines a systematic framework for evaluating test completeness. I |
|
|
425
425
|
| `test-data-standards` | 1.0.0 | |
|
|
426
426
|
| `test-driven-development` | 1.2.0 | |
|
|
427
|
-
| `test-governance` | 1.
|
|
427
|
+
| `test-governance` | 1.2.0 | |
|
|
428
428
|
| `testing-standards` | 3.2.0 | This standard defines actionable testing rules and conventions for AI agents and |
|
|
429
429
|
| `timeout-standards` | - | |
|
|
430
430
|
| `token-budget` | - | |
|
|
431
431
|
| `translation-lifecycle-standards` | 1.0.1 | Translation lifecycle standards: MISSING vs OUTDATED distinction, semver-aware s |
|
|
432
432
|
| `user-journey-testing` | - | |
|
|
433
433
|
| `user-story-mapping` | 1.0.0 | **Status**: Active | **Updated**: 2026-06-17 | |
|
|
434
|
-
| `verification-evidence` | 1.
|
|
434
|
+
| `verification-evidence` | 1.3.0 | Establish an "Iron Law" that no task can be claimed as complete without verifica |
|
|
435
435
|
| `verification-oracle` | 1.0.0 | **Status**: Active | **Updated**: 2026-06-17 | |
|
|
436
436
|
| `versioning` | 1.5.0 | This standard defines how to version software releases using Semantic Versioning |
|
|
437
437
|
| `virtual-organization-standards` | 1.0.0 | This standard treats the AI ecosystem as a "Virtual Organization." It defines ho |
|
|
@@ -7,8 +7,14 @@ description: |
|
|
|
7
7
|
Not for: executing the gate sequence or aborting a commit — that moved to the adoption layer (XSPEC-095); finding and removing debug artifacts — use /sweep.
|
|
8
8
|
Keywords: check-in, pre-commit, quality gate, commit readiness, never commit, 簽入, 提交前檢查, 品質關卡.
|
|
9
9
|
allowed-tools: Read, Grep, Glob, Bash(git diff:*), Bash(git status:*), Bash(npm test:*), Bash(npm run lint:*)
|
|
10
|
-
disable-model-invocation: true
|
|
11
10
|
status: reference
|
|
11
|
+
# 2026-08-17: `disable-model-invocation: true` removed. It was applied by d415937e
|
|
12
|
+
# alongside the description rewrite, and followed no stateable rule — of the six
|
|
13
|
+
# skills carrying `status: reference`, four (tdd, bdd, atdd, pr-automation) were
|
|
14
|
+
# never disabled despite the identical XSPEC-095 relocation. Same category,
|
|
15
|
+
# opposite treatment. The rule is now stateable: a reference is model-invocable.
|
|
16
|
+
# pr-automation-assistant routes "the substance of the review itself" to
|
|
17
|
+
# /code-review, and that referral was unreachable while this flag was set.
|
|
12
18
|
---
|
|
13
19
|
<!-- DEPRECATION NOTICE (XSPEC-086 Phase 4, 2026-04-28):
|
|
14
20
|
Checkin workflow orchestration (gate execution sequence, abort logic) relocated to adoption layer
|
|
@@ -8,8 +8,14 @@ description: |
|
|
|
8
8
|
Keywords: code review, pull request review, review checklist, BLOCKING, comment prefix, 程式碼審查, 審查類別, 評論前綴.
|
|
9
9
|
allowed-tools: Read, Grep, Glob, Bash(git diff:*), Bash(git log:*), Bash(git show:*)
|
|
10
10
|
argument-hint: "[file path or branch | 檔案路徑或分支名稱]"
|
|
11
|
-
disable-model-invocation: true
|
|
12
11
|
status: reference
|
|
12
|
+
# 2026-08-17: `disable-model-invocation: true` removed. It was applied by d415937e
|
|
13
|
+
# alongside the description rewrite, and followed no stateable rule — of the six
|
|
14
|
+
# skills carrying `status: reference`, four (tdd, bdd, atdd, pr-automation) were
|
|
15
|
+
# never disabled despite the identical XSPEC-095 relocation. Same category,
|
|
16
|
+
# opposite treatment. The rule is now stateable: a reference is model-invocable.
|
|
17
|
+
# pr-automation-assistant routes "the substance of the review itself" to
|
|
18
|
+
# /code-review, and that referral was unreachable while this flag was set.
|
|
13
19
|
---
|
|
14
20
|
<!-- DEPRECATION NOTICE (XSPEC-086 Phase 4, 2026-04-28):
|
|
15
21
|
Code review workflow orchestration (4-step sequence, outcome gating) relocated to adoption layer
|
package/package.json
CHANGED
package/src/commands/update.js
CHANGED
|
@@ -1933,7 +1933,26 @@ async function updateSkillsOnly(projectPath, manifest, options) {
|
|
|
1933
1933
|
Object.assign(manifest.skillHashes, result.allFileHashes);
|
|
1934
1934
|
}
|
|
1935
1935
|
|
|
1936
|
-
|
|
1936
|
+
// 🔴 Re-read before writing. `manifest` was loaded at the top of the update
|
|
1937
|
+
// command, BEFORE the reconciler ran; the reconciler writes its own copy to
|
|
1938
|
+
// disk — including the advanced `upstream.version` — and writing this stale
|
|
1939
|
+
// object back silently reverts it.
|
|
1940
|
+
//
|
|
1941
|
+
// Measured 2026-08-18 with probes inside plan-executor: results=57 failing=0,
|
|
1942
|
+
// registry version "6.7.1", "about to write upstream = {version:'6.7.1'}" —
|
|
1943
|
+
// and the value on disk afterwards was still the old one. The reconciler did
|
|
1944
|
+
// everything right and this write undid it. Both runs exited 0 and printed
|
|
1945
|
+
// "57 succeeded", so a repo could be fully upgraded while its own manifest
|
|
1946
|
+
// said otherwise, and the weekly staleness scout — which reads exactly
|
|
1947
|
+
// `upstream.version` — kept reporting it as behind. (XSPEC-382 R5)
|
|
1948
|
+
//
|
|
1949
|
+
// Only the fields this function owns are carried over: copying the whole
|
|
1950
|
+
// object back would reintroduce the same overwrite for any field a later
|
|
1951
|
+
// step adds.
|
|
1952
|
+
const freshForSkills = readManifest(projectPath) || manifest;
|
|
1953
|
+
freshForSkills.skills = manifest.skills;
|
|
1954
|
+
freshForSkills.skillHashes = manifest.skillHashes;
|
|
1955
|
+
writeManifest(freshForSkills, projectPath);
|
|
1937
1956
|
|
|
1938
1957
|
console.log();
|
|
1939
1958
|
process.exit(0);
|
|
@@ -2040,7 +2059,28 @@ async function updateCommandsOnly(projectPath, manifest, options) {
|
|
|
2040
2059
|
replaceCommandHashesForUpdatedAgents(manifest.commandHashes, result.allFileHashes);
|
|
2041
2060
|
}
|
|
2042
2061
|
|
|
2043
|
-
|
|
2062
|
+
// 🔴 Re-read before writing. `manifest` was loaded at the top of the update
|
|
2063
|
+
// command, BEFORE the reconciler ran; the reconciler writes its own copy to
|
|
2064
|
+
// disk — including the advanced `upstream.version` — and writing this stale
|
|
2065
|
+
// object back silently reverts it.
|
|
2066
|
+
//
|
|
2067
|
+
// Measured 2026-08-18 with probes inside plan-executor: results=57 failing=0,
|
|
2068
|
+
// registry version "6.7.1", "about to write upstream = {version:'6.7.1'}" —
|
|
2069
|
+
// and the value on disk afterwards was still the old one. The reconciler did
|
|
2070
|
+
// everything right and this write undid it. Both runs exited 0 and printed
|
|
2071
|
+
// "57 succeeded", so a repo could be fully upgraded while its own manifest
|
|
2072
|
+
// said otherwise, and the weekly staleness scout — which reads exactly
|
|
2073
|
+
// `upstream.version` — kept reporting it as behind. (XSPEC-382 R5)
|
|
2074
|
+
//
|
|
2075
|
+
// Only the fields this function owns are carried over: copying the whole
|
|
2076
|
+
// object back would reintroduce the same overwrite for any field a later
|
|
2077
|
+
// step adds.
|
|
2078
|
+
// Found by traversal, not by hitting it: the same shape existed here, and
|
|
2079
|
+
// fixing only the instance I ran into would have left the class open.
|
|
2080
|
+
const freshForCommands = readManifest(projectPath) || manifest;
|
|
2081
|
+
freshForCommands.commands = manifest.commands;
|
|
2082
|
+
freshForCommands.commandHashes = manifest.commandHashes;
|
|
2083
|
+
writeManifest(freshForCommands, projectPath);
|
|
2044
2084
|
|
|
2045
2085
|
console.log();
|
|
2046
2086
|
process.exit(0);
|
|
@@ -39,6 +39,17 @@
|
|
|
39
39
|
* @param {boolean} [options.force=false] - Force update even if hashes match
|
|
40
40
|
* @returns {ReconciliationPlan}
|
|
41
41
|
*/
|
|
42
|
+
/**
|
|
43
|
+
* The reason attached to every skill/command action, because no content
|
|
44
|
+
* comparison is implemented for them (XSPEC-382 R1).
|
|
45
|
+
*
|
|
46
|
+
* Exported and referenced by `formatPlan` rather than spelled out twice: two
|
|
47
|
+
* copies of a string are two things that can drift, and the drift here is
|
|
48
|
+
* silent — the collapse would just stop collapsing and the plan would go back
|
|
49
|
+
* to listing all 57 rows, which is indistinguishable from "it always did that".
|
|
50
|
+
*/
|
|
51
|
+
export const UNCONDITIONAL_REINSTALL_REASON = 'no hash available for comparison, re-installing';
|
|
52
|
+
|
|
42
53
|
export function computeDiff(desired, actual, options = {}) {
|
|
43
54
|
const { force = false } = options;
|
|
44
55
|
const actions = [];
|
|
@@ -138,7 +149,7 @@ function diffCategory(desiredMap, actualMap, category, actions, warnings, summar
|
|
|
138
149
|
type: 'update',
|
|
139
150
|
category,
|
|
140
151
|
path: desiredEntry.relativePath,
|
|
141
|
-
reason:
|
|
152
|
+
reason: UNCONDITIONAL_REINSTALL_REASON,
|
|
142
153
|
details: {
|
|
143
154
|
sourcePath: desiredEntry.sourcePath,
|
|
144
155
|
metadata: desiredEntry.metadata
|
|
@@ -339,6 +350,14 @@ export function formatPlan(plan) {
|
|
|
339
350
|
(grouped[action.type] || []).push(action);
|
|
340
351
|
}
|
|
341
352
|
|
|
353
|
+
// XSPEC-382 R3/R4 — how many updates are unconditional reinstalls rather than
|
|
354
|
+
// real changes. Computed once here because both the Update section and the
|
|
355
|
+
// Summary need it, and a reader of the Summary alone must not be left with a
|
|
356
|
+
// number that answers nothing: `Update: 57` is true and useless.
|
|
357
|
+
const unconditionalCount = grouped.update.filter(
|
|
358
|
+
(a) => a.reason === UNCONDITIONAL_REINSTALL_REASON
|
|
359
|
+
).length;
|
|
360
|
+
|
|
342
361
|
if (grouped.create.length > 0) {
|
|
343
362
|
lines.push(`+ Create (${grouped.create.length}):`);
|
|
344
363
|
for (const a of grouped.create) {
|
|
@@ -348,10 +367,30 @@ export function formatPlan(plan) {
|
|
|
348
367
|
}
|
|
349
368
|
|
|
350
369
|
if (grouped.update.length > 0) {
|
|
370
|
+
// XSPEC-382 R3 — collapse the unconditional reinstalls.
|
|
371
|
+
//
|
|
372
|
+
// Every skill is always an `update` because no content comparison exists for
|
|
373
|
+
// them (see the `hash: null` on both sides of the diff, and R1). On a real
|
|
374
|
+
// upgrade that produced `Update (57)` where 55 rows carried one identical
|
|
375
|
+
// reason and only 2 were actual changes — the two a reviewer needs to see,
|
|
376
|
+
// buried under fifty-five that say nothing about this upgrade.
|
|
377
|
+
//
|
|
378
|
+
// Collapsed, NOT hidden: the count is printed. A capped list that does not
|
|
379
|
+
// say it was capped reads as "these are all of them", which is the failure
|
|
380
|
+
// this repo keeps finding. Printing the denominator alongside the excluded
|
|
381
|
+
// count is the `class-level-fix` rule.
|
|
382
|
+
const real = grouped.update.filter((a) => a.reason !== UNCONDITIONAL_REINSTALL_REASON);
|
|
383
|
+
const collapsed = unconditionalCount;
|
|
384
|
+
|
|
351
385
|
lines.push(`~ Update (${grouped.update.length}):`);
|
|
352
|
-
for (const a of
|
|
386
|
+
for (const a of real) {
|
|
353
387
|
lines.push(` ~ ${a.path} (${a.reason})`);
|
|
354
388
|
}
|
|
389
|
+
if (collapsed > 0) {
|
|
390
|
+
lines.push(
|
|
391
|
+
` i ${collapsed} UDS-managed skill/command director${collapsed === 1 ? 'y' : 'ies'} reinstalled unconditionally — no content comparison is implemented for them (XSPEC-382)`
|
|
392
|
+
);
|
|
393
|
+
}
|
|
355
394
|
lines.push('');
|
|
356
395
|
}
|
|
357
396
|
|
|
@@ -373,7 +412,11 @@ export function formatPlan(plan) {
|
|
|
373
412
|
|
|
374
413
|
lines.push('Summary:');
|
|
375
414
|
lines.push(` Create: ${plan.summary.create}`);
|
|
376
|
-
lines.push(
|
|
415
|
+
lines.push(
|
|
416
|
+
unconditionalCount > 0
|
|
417
|
+
? ` Update: ${plan.summary.update} (${plan.summary.update - unconditionalCount} changed, ${unconditionalCount} unconditional reinstall)`
|
|
418
|
+
: ` Update: ${plan.summary.update}`
|
|
419
|
+
);
|
|
377
420
|
lines.push(` Migrate Block: ${plan.summary.migrate_block}`);
|
|
378
421
|
lines.push(` Delete: ${plan.summary.delete}`);
|
|
379
422
|
lines.push(` Unchanged: ${plan.summary.unchanged}`);
|
package/standards-registry.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
-
"version": "6.7.
|
|
3
|
+
"version": "6.7.2",
|
|
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": "6.7.
|
|
61
|
+
"version": "6.7.2"
|
|
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": "6.7.
|
|
68
|
+
"version": "6.7.2",
|
|
69
69
|
"note": "Skills are now included in the main repository under skills/"
|
|
70
70
|
}
|
|
71
71
|
},
|
|
@@ -2260,7 +2260,7 @@
|
|
|
2260
2260
|
"id": "license-compliance",
|
|
2261
2261
|
"name": "License Compliance Standards",
|
|
2262
2262
|
"nameZh": "授權合規標準",
|
|
2263
|
-
"version": "6.7.
|
|
2263
|
+
"version": "6.7.2",
|
|
2264
2264
|
"source": {
|
|
2265
2265
|
"human": "core/license-compliance.md",
|
|
2266
2266
|
"ai": "ai/standards/license-compliance.ai.yaml"
|
|
@@ -2272,7 +2272,7 @@
|
|
|
2272
2272
|
"id": "verification-oracle",
|
|
2273
2273
|
"name": "Verification Oracle Standards",
|
|
2274
2274
|
"nameZh": "驗證 Oracle 標準",
|
|
2275
|
-
"version": "6.7.
|
|
2275
|
+
"version": "6.7.2",
|
|
2276
2276
|
"source": {
|
|
2277
2277
|
"human": "core/verification-oracle.md",
|
|
2278
2278
|
"ai": "ai/standards/verification-oracle.ai.yaml"
|
|
@@ -2284,7 +2284,7 @@
|
|
|
2284
2284
|
"id": "model-provenance",
|
|
2285
2285
|
"name": "Model Provenance Policy Standards",
|
|
2286
2286
|
"nameZh": "模型來源政策標準",
|
|
2287
|
-
"version": "6.7.
|
|
2287
|
+
"version": "6.7.2",
|
|
2288
2288
|
"source": {
|
|
2289
2289
|
"human": "core/model-provenance.md",
|
|
2290
2290
|
"ai": "ai/standards/model-provenance.ai.yaml"
|
|
@@ -2296,7 +2296,7 @@
|
|
|
2296
2296
|
"id": "resource-cost-boundary",
|
|
2297
2297
|
"name": "Resource / Cost Boundary Declaration Standards",
|
|
2298
2298
|
"nameZh": "資源/成本邊界宣告標準",
|
|
2299
|
-
"version": "6.7.
|
|
2299
|
+
"version": "6.7.2",
|
|
2300
2300
|
"source": {
|
|
2301
2301
|
"human": "core/resource-cost-boundary.md",
|
|
2302
2302
|
"ai": "ai/standards/resource-cost-boundary.ai.yaml"
|