@oevery/rsp 3.1.0-beta.1 → 3.1.0-beta.3

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/README.zh-CN.md CHANGED
@@ -4,7 +4,7 @@
4
4
 
5
5
  **面向人类与 AI Agent 的仓库原生工程工作流。**
6
6
 
7
- RSP 将模糊意图逐步转化为边界明确、经过实现、审查和验证的软件变更,同时让项目知识可以长期维护、让未完成工作可以可靠恢复。十个可组合 Skills 共同覆盖工程旅程,但不引入隐藏 workflow state,也不取代项目自己的文件、工具和权限边界。
7
+ RSP 将模糊意图逐步转化为边界明确、经过实现、审查和验证的软件变更,同时让项目知识可以长期维护、让未完成工作可以可靠恢复。十一个可组合 Skills 共同覆盖工程旅程,但不引入隐藏 workflow state,也不取代项目自己的文件、工具和权限边界。
8
8
 
9
9
  这套工作流建立在轻量的 **Rules、Specs、Plans** artifact foundation 之上。
10
10
 
@@ -15,7 +15,7 @@ RSP 将模糊意图逐步转化为边界明确、经过实现、审查和验证
15
15
  - 将原因不明的失败交给 diagnosis,将普通且证据充分的修改交给 implementation,仅将明确要求或具有具体风险的 test-first 工作交给 TDD。
16
16
  - 按明确范围审查变更、处理已接受的 findings,并重新运行 fresh verification。
17
17
  - 将稳定事实、作用域指令、长期理由和完成历史分别保存在正确的 owner 中。
18
- - 当 Change 明确拥有已确认的 release 时,准备对应的发布文档。
18
+ - 为显式且已确认的 release operation 准备或校准发布文档;只有重大协调需要持久 owner 时才使用 Release Change。
19
19
 
20
20
  ## 工作流如何组合
21
21
 
@@ -25,7 +25,7 @@ RSP 将模糊意图逐步转化为边界明确、经过实现、审查和验证
25
25
  → 按需 Design
26
26
  → Diagnose | TDD | Implement
27
27
  → Review → Address accepted findings
28
- → 按需准备 Release Docs
28
+ → 显式且确认后的 Release Docs
29
29
  → Durable Review → Archive
30
30
  ```
31
31
 
@@ -34,17 +34,17 @@ RSP 根据 selected Change、仓库证据、验证结果和 blockers 推导下
34
34
  ## 快速开始
35
35
 
36
36
  ```bash
37
- npx -y @oevery/rsp@3.1.0-beta.1 init
38
- npx -y @oevery/rsp@3.1.0-beta.1 doctor
37
+ npx -y @oevery/rsp@3.1.0-beta.3 init
38
+ npx -y @oevery/rsp@3.1.0-beta.3 doctor
39
39
  ```
40
40
 
41
41
  推荐启动流程:
42
42
 
43
43
  ```bash
44
- npx -y @oevery/rsp@3.1.0-beta.1 init --with-project-setup
44
+ npx -y @oevery/rsp@3.1.0-beta.3 init --with-project-setup
45
45
  # 填写 .rsp/changes/project-setup.md
46
46
  # 填写 .rsp/specs/design.md
47
- npx -y @oevery/rsp@3.1.0-beta.1 doctor
47
+ npx -y @oevery/rsp@3.1.0-beta.3 doctor
48
48
  ```
49
49
 
50
50
  ## Artifact foundation
@@ -62,9 +62,12 @@ npx -y @oevery/rsp@3.1.0-beta.1 doctor
62
62
  .rsp/
63
63
  ├── rsp-rules.md # 最小 fallback protocol
64
64
  ├── specs/
65
- │ ├── INDEX.md # 自动生成
65
+ │ ├── 00-index.md # 自动生成的直接子项导航
66
66
  │ ├── design.md
67
- │ └── decisions/ # 默认的权威 Decision Records
67
+ │ ├── decisions/ # 默认的权威 Decision Records;不进入 Specs 索引
68
+ │ └── <domain>/
69
+ │ ├── 00-index.md # 自动生成的直接子项导航
70
+ │ └── <spec>.md
68
71
  ├── changes/
69
72
  │ ├── <name>.md
70
73
  │ └── <group>/
@@ -73,7 +76,7 @@ npx -y @oevery/rsp@3.1.0-beta.1 doctor
73
76
  ├── focus.d/
74
77
  │ └── <name>
75
78
  └── archives/
76
- └── INDEX.md # 自动生成
79
+ └── YYYY-MM-DD_<change>.md
77
80
  ```
78
81
 
79
82
  ## 概念
@@ -100,13 +103,12 @@ npx -y @oevery/rsp@3.1.0-beta.1 doctor
100
103
  ## 文件所有权
101
104
 
102
105
  - `AGENTS.md`:只有 `<!-- rsp:begin --> ... <!-- rsp:end -->` 受管块由 RSP 维护。
103
- - `.rsp/specs/INDEX.md`:自动生成,用于索引 `design.md` 之外的附加 spec 文件;使用 `rsp update` 重建。
104
- - `.rsp/archives/INDEX.md`:自动生成,使用 `rsp update` 重建。
106
+ - `.rsp/specs/**/00-index.md`:为根目录及含内容的 Spec 目录生成直接子项导航。使用 `rsp update` 对齐全部本地索引;`rsp add spec` 只刷新受影响的目录链。
105
107
  - `.rsp/specs/design.md`:由 `rsp init` 创建,之后由项目维护。
106
108
  - `.rsp/specs/decisions/`:默认的权威 Decision Record 目录;只有 Host Project 已有外部 ADR 目录时才配置 `decisions.path`。
107
109
  - `.rsp/rsp-rules.md`:生成的最小 fallback protocol;可用时优先加载 `rsp` skill。
108
- - 将长期架构、边界和跨模块技术约束放在 `.rsp/specs/design.md`。
109
- - 将 `.rsp/specs/INDEX.md` 视为附加 spec 的目录;它不列出 `design.md`。
110
+ - 将项目级边界放在 `.rsp/specs/design.md`;通过最近的 `00-index.md` 发现归属于最小领域 Spec 的成组、可复用事实。
111
+ - 所有 `00-index.md` 都只是生成导航,不能作为可编辑的当前事实或理由 owner。每个索引只列直接子 Spec 与含内容的直接子目录,并排除 Decision Records。
110
112
  - 将稳定且有作用域的工作流、验证和本地运行指令放在 nearest project-owned `AGENTS.md` 的非受管区域。
111
113
 
112
114
  ## Decision Record 路径
@@ -149,61 +151,81 @@ Do not treat `.rsp/specs/` or `.rsp/changes/` as replacements for nearest `AGENT
149
151
 
150
152
  ## Skills
151
153
 
152
- RSP 发布十个宿主无关、按需加载的 Skills:
154
+ RSP 发布十一个默认、宿主无关、按需加载的生命周期 Skills,以及一个需要显式安装的项目级审计 Skill:
155
+
156
+ | Skill | 职责 |
157
+ |---|---|
158
+ | `rsp` | 派生下一动作,指导 setup、durable review 与 archive 判断。 |
159
+ | `rsp-shape` | 在不实现的前提下塑造一个可执行 Change 或合理的 shallow Group。 |
160
+ | `rsp-design` | 解决一个受跟踪的 domain、module/seam 或 reversible-exploration 问题。 |
161
+ | `rsp-implement` | 实现一个 selected ready Change,并提供 fresh verification。 |
162
+ | `rsp-diagnose` | 修正前确认原因,或如实返回 unresolved diagnosis。 |
163
+ | `rsp-tdd` | 让一个清晰行为经过 RED、GREEN 与安全的 REFACTOR。 |
164
+ | `rsp-review` | 对固定的 Code、Document 或 mixed comparison 做只读审查。 |
165
+ | `rsp-resolve-findings` | 处置固定 findings,修正 accepted 项,验证并请求复审。 |
166
+ | `rsp-commit` | 使用与仓库一致的结构化消息创建一个已授权、精确范围的本地提交。 |
167
+ | `rsp-release-docs` | 起草、审计、定稿或校准基于证据的发布表面。 |
168
+ | `rsp-manage` | 继续一个显式请求或项目启用且符合条件的 ready Change 或 shallow Group。 |
169
+ | `rsp-structural-audit`(可选) | 只读审计一个有界仓库或子树,发现有证据支撑的结构风险。 |
170
+
171
+ 每个生命周期 Skill 都把结果返回现有项目或 RSP owner。只读的 Pre-Change Design 与 `rsp-structural-audit` 可以把一个有界结果直接返回用户,而不虚构 artifact owner。套件不引入隐藏 workflow state 或递归 Skill 编排。任何 Skill 都不会推断 commit、push、publication、deployment、approval 或 human-acceptance 权限。
153
172
 
154
- - `rsp`:setup、workflow、durable review 和 archive 指导。
155
- - `rsp-shape`:在不实现代码的前提下,将不清晰的非平凡工作塑造成一个 ready Change 或合理的 shallow Group;当用户明确要求严格质询或高风险决策仍未解决时,渐进加载 deep clarification,并让关键设计问题通过同一个 WorkRef 返回。
156
- - `rsp-design`:根据项目证据解决一个受跟踪的 domain model、module/seam 或 reversible exploration 问题,只把已授权的 planned design 写回 selected Change。
157
- - `rsp-implement`:在显式 mutation authority 内实现一个 selected、ready Change,并如实回写 Tasks、Blockers 和 fresh verification evidence。
158
- - `rsp-diagnose`:在生产修复前确认原因,或如实返回 unresolved diagnosis。
159
- - `rsp-tdd`:让一个清晰行为经过 observed RED、minimal GREEN、可选 safe REFACTOR 与 fresh verification。
160
- - `rsp-review`:基于固定范围与项目权威,对 Code、Document 或 mixed Change 进行只读审查。
161
- - `rsp-address-review`:处置固定 review findings,仅修复已授权且 accepted 的 finding,并要求 fresh verification 与 report-only re-review。
162
- - `rsp-release-docs`:根据证据准备或审计 Changelog、Release Notes 和 Migration Notes,并适配用户要求与仓库现有约定。
163
- - `rsp-manage`:仅在用户显式请求后,跨真正独立的 slices 或中断恢复继续一个 focused Change;普通工作保持直接执行,编排状态保持临时。
173
+ 响应语言与产物语言相互独立。面向人的响应标题、标签、解释和结论依次遵循明确指定的响应语言、项目中针对响应的指令和会话语言;已授权写入的产物正文依次遵循明确指定的产物语言、项目中针对产物的指令、目标产物的现有语言,最后才回退到会话语言。RSP 的 canonical artifact headings、WorkRef 值、路径、命令、标识符和机器消费值保持不变;响应标签可以在括号中保留技术 token,但不能直接使用未翻译的 token 作为标签。
164
174
 
165
- 每个 Skill 都可以独立调用,并把结果返回现有项目或 RSP artifact owner。套件不引入隐藏 workflow state 或递归 Skill 编排,也不会由任何 Skill 推断 commit、push 或 publication 权限。
175
+ 按证据组合套件:Shape 确定 owner;Design 返回一个关键问题;Core 在 Diagnose、TDD 与 Implement 之间选择;Review 保持只读;Resolve Findings 修正 accepted findings 并请求复审;Core 在 archive 前执行 durable decision。显式 release operation 在 identity 或 range 已确认时,可以不创建 Release Change 就进入 Release Docs;只有重大决策、协调、恢复、blocker 或 acceptance 需要持久 owner 时才创建。Manage 是可选能力:它接受一个 selected ready Change 或 shallow Group,并要求独立调度、长时 continuation 或恢复需求;小型或紧耦合工作保持直接执行。项目可以保持显式启用,也可以让 Core 自动选择符合条件的 managed work。
166
176
 
167
- 响应语言与产物语言相互独立。面向人的响应标题、标签、解释和结论依次遵循明确指定的响应语言、项目中针对响应的指令和会话语言;已授权写入的产物正文依次遵循明确指定的产物语言、项目中针对产物的指令、目标产物的现有语言,最后才回退到会话语言。RSP 的 canonical artifact headings、WorkRef 值、路径、命令、标识符和机器消费值保持不变;响应标签可以在括号中保留技术 token,但不能直接使用未翻译的 token 作为标签。
177
+ ### Managed automation policy
178
+
179
+ 在 `.rsp/config.yaml` 中分别配置自动选择与本地收尾:
180
+
181
+ ```yaml
182
+ manage:
183
+ activation: auto
184
+ closeout: lifecycle
185
+ ```
168
186
 
169
- 3.1 beta 产品面包含这十个 Skills。可选的 `rsp-manage` 仅在显式请求后启用,并要求 focused ready Change 具有真正独立的 slices、长时 continuation 或中断恢复需求。小型或紧耦合工作直接返回 Core 或对应 Discipline,不产生 dispatch envelope。managed run 以当前项目和 RSP artifacts 为 authority,过程 chronology 不持久化,验证保持有界,并在 mutation、lifecycle、Git、publication、environment 或 human-decision authority 边界停止。
187
+ `activation` 可取 `explicit` 或 `auto`。`auto` 只授权 Core 为符合条件且已经请求完成或继续的工作选择 Manage;它不授予 planning、product mutation、lifecycle、Git 或外部权限。`closeout` 可取:
170
188
 
171
- 完成一个 tracked Change 时,应按证据组合套件:`rsp-shape` 返回可执行 Change,并把一个关键设计问题交给 `rsp-design`;`rsp-design` 把证据、建议、备选方案和已授权的 planned-design 更新返回同一个 WorkRef;Core 把 unexplained failure 路由到 `rsp-diagnose`,仅把明确要求或具有具体风险的 test-first 工作路由到 `rsp-tdd`,把普通且证据充分的修改路由到 `rsp-implement`;`rsp-review` 返回只读报告;`rsp-address-review` 处置 finding;当 selected Change 明确拥有已确认的 release identity 或 range,且发布文档尚未完成时,Core 才把工作路由到 `rsp-release-docs`;最后由 `rsp` 在 archive 前把 stable facts、lasting rationale 与 temporary continuation 路由到各自 owner。只有用户显式要求 managed continuation 且工作满足有界独立调度条件时才使用 `rsp-manage`。遇到歧义、失败门禁、缺失权限或越界 Git conflict 时停止;任何 Skill 都不会推断 Git continuation、commit、delivery 权限或自动重试。
189
+ - `manual`:archive 与 commit 都不会自动执行。
190
+ - `lifecycle`:durable review 后可以 archive,但 commit 仍需要独立权限。
191
+ - `local`:允许 lifecycle closeout 和有独立依据的 recovery checkpoint;lifecycle closeout 后,符合条件且 clean、已验证的非小型终态边界会调用一次 `rsp-commit`,小型终态仍不提交。
172
192
 
173
- 文档分层矩阵:
193
+ Change 粒度由一个可观察结果及其共享的 acceptance、verification、review、archive 和 rollback 边界决定,不规定 Git commit 数量。每次 `rsp-commit` 调用仍只创建一个本地 commit。
174
194
 
175
- | Surface | 主要受众 | 职责 |
176
- |---|---|---|
177
- | `README.md` | 人类 | 概览、入门、示例 |
178
- | `.rsp/rsp-rules.md` | 未安装 skill 的 agent | 最小 tool-agnostic fallback protocol |
179
- | `skills/rsp/SKILL.md` | agent | 首选操作指南 |
180
- | `skills/rsp-shape/SKILL.md` | agent | 塑造一个可执行 Change 或合理的 shallow Group |
181
- | `skills/rsp-design/SKILL.md` | agent | 解决一个受跟踪的设计问题并返回同一个 WorkRef |
182
- | `skills/rsp-implement/SKILL.md` | agent | 用 fresh verification evidence 实现一个 ready Change |
183
- | `skills/rsp-diagnose/SKILL.md` | agent | 在生产修复前确认原因 |
184
- | `skills/rsp-tdd/SKILL.md` | agent | 以 test-first 方式实现一个清晰行为 |
185
- | `skills/rsp-review/SKILL.md` | agent | Code 与 Document 只读审查 |
186
- | `skills/rsp-address-review/SKILL.md` | agent | 处置 review findings 并返回可恢复 continuation |
187
- | `skills/rsp-release-docs/SKILL.md` | agent | 准备或审计符合项目约定的发布文档 |
188
- | `skills/rsp-manage/SKILL.md` | agent | 仅在显式调用后继续符合条件的独立 slices |
189
- | `AGENTS.md` | 人类与 agent | 有作用域的项目指令与 RSP 导航入口 |
195
+ 新的 `rsp init` config template 使用上面的 `auto` 加 `lifecycle` policy。如果省略 `manage`,RSP 则为兼容既有显式 Manage 行为解析为 `activation: explicit` 与 `closeout: local`。普通 `rsp status` 和 `rsp status --json` 顶层的 `manage` 对象都会显示解析后的值。nearest scoped restriction 与 host enforcement 可以缩小该配置上限。RSP 有意不提供 `full` preset:push、tag、publication、deployment、approval 与 human acceptance 始终保持显式且属于外部边界。
190
196
 
191
- 通常应由人先读 `README.md`;agent 应遵循 nearest `AGENTS.md`,可用时加载 `rsp` skill,仅在 skill 不可用时读取 `.rsp/rsp-rules.md`。
197
+ 人类应从本 README 开始;agent 应遵循 nearest `AGENTS.md`,优先加载 `skills/rsp/SKILL.md`,仅在 Skill 不可用时读取 `.rsp/rsp-rules.md`。
192
198
 
193
- 如果文档中写的是 `rsp <command>`,默认前提是你的环境里已经能直接运行 `rsp`。进行 opt-in beta 评估时,应固定精确 prerelease 身份,例如 `npx -y @oevery/rsp@3.1.0-beta.1 <command>`;stable 用户仍可使用不带版本的入口获取 npm `latest`。
199
+ 如果文档中写的是 `rsp <command>`,默认前提是你的环境里已经能直接运行 `rsp`。进行 opt-in beta 评估时,应固定精确 prerelease 身份,例如 `npx -y @oevery/rsp@3.1.0-beta.3 <command>`;stable 用户仍可使用不带版本的入口获取 npm `latest`。
194
200
 
195
- 将当前精确包内置的完整 Skill 套件安装到当前项目:
201
+ 将当前精确包内置的默认生命周期 Skill 套件安装到当前项目:
196
202
 
197
203
  ```bash
198
204
  rsp skills install --dry-run
199
205
  rsp skills install
200
206
  ```
201
207
 
202
- 该命令会预检全部十个 package-owned targets,保留无关的 `.agents/skills` 条目,并且只有显式传入 `--force` 才会替换内容不同的 package-owned 目录。它从调用 `rsp` 的同一个包安装,因此 beta 评估可以固定精确 npm 身份:
208
+ 在 dual TTY 中,`rsp skills` 会打开交互式管理器:默认套件保持选中并锁定,可在确认一次原子安装前选择可选的项目级 Skill。脚本、重定向终端和 CI 使用确定性的发现与安装命令:
209
+
210
+ ```bash
211
+ rsp skills list
212
+ rsp skills list --json
213
+ ```
214
+
215
+ 该命令会预检十一个默认 package-owned targets,保留无关的 `.agents/skills` 条目(包括可选 Skills),并且只有显式传入 `--force` 才会替换内容不同的已选目录。按精确名称安装可选的项目级审计 Skill:
216
+
217
+ 升级仍包含 `rsp-address-review` 或 `rsp-codebase-audit` 的安装时,其替代项分别是 `rsp-resolve-findings` 和 `rsp-structural-audit`。安装器会在变更前停止,直到 `--force` 显式授权事务性移除这个过时的 package-owned 目录;`--dry-run --force` 可同时预览移除与安装。
218
+
219
+ ```bash
220
+ rsp skills install rsp-structural-audit --dry-run
221
+ rsp skills install rsp-structural-audit
222
+ ```
223
+
224
+ 两种形式都从调用 `rsp` 的同一个包安装,因此 beta 评估可以固定精确 npm 身份:
203
225
 
204
226
  ```bash
205
- npx -y @oevery/rsp@3.1.0-beta.1 skills install --dry-run
206
- npx -y @oevery/rsp@3.1.0-beta.1 skills install
227
+ npx -y @oevery/rsp@3.1.0-beta.3 skills install --dry-run
228
+ npx -y @oevery/rsp@3.1.0-beta.3 skills install
207
229
  ```
208
230
 
209
231
  精确 prerelease 身份可以避免依赖持续移动的 dist-tag。`rsp update` 只刷新由 RSP 管理的项目文件;刷新 package-owned Skill 套件需要单独运行 `rsp skills install`。
@@ -257,8 +279,8 @@ durable review 包含两个独立语义判断:是否更新当前事实或作
257
279
 
258
280
  新项目:
259
281
 
260
- 1. `npx -y @oevery/rsp@3.1.0-beta.1 init`
261
- 2. 优先使用 `npx -y @oevery/rsp@3.1.0-beta.1 init --with-project-setup`,或手动执行 `rsp create project-setup`
282
+ 1. `npx -y @oevery/rsp@3.1.0-beta.3 init`
283
+ 2. 优先使用 `npx -y @oevery/rsp@3.1.0-beta.3 init --with-project-setup`,或手动执行 `rsp create project-setup`
262
284
  3. 填写 `.rsp/specs/design.md`
263
285
  4. 仅在需要新的长期项目文档时使用 `rsp add spec <name>`
264
286
  5. 将长期理由写入配置的 Decision Record 目录,将稳定的作用域操作指令写入 nearest project-owned `AGENTS.md`
@@ -271,14 +293,14 @@ durable review 包含两个独立语义判断:是否更新当前事实或作
271
293
 
272
294
  已有复杂 `AGENTS.md` 的项目:
273
295
 
274
- 1. `npx -y @oevery/rsp@3.1.0-beta.1 init`
296
+ 1. `npx -y @oevery/rsp@3.1.0-beta.3 init`
275
297
  2. 保持受管块尽量薄
276
- 3. 将长期设计收敛到 `.rsp/specs/design.md`
298
+ 3. 将项目级边界与导航放在 `.rsp/specs/design.md`,把成组的长期事实放入最小领域 Spec
277
299
  4. 只有需要额外的 durable current-fact 文档时才使用 `rsp add spec <name>`
278
300
 
279
301
  AI 协助接入:
280
302
 
281
- 1. `npx -y @oevery/rsp@3.1.0-beta.1 init --agents-mode print --with-project-setup`
303
+ 1. `npx -y @oevery/rsp@3.1.0-beta.3 init --agents-mode print --with-project-setup`
282
304
  2. 保持受管块原样,只在需要时调整周围由人维护的内容
283
305
  3. 让 AI 审阅并填写 `.rsp/changes/project-setup.md`
284
306
  4. 让 AI 填写 `.rsp/specs/design.md`
@@ -289,23 +311,25 @@ AI 协助接入:
289
311
  ```text
290
312
  rsp init --agents-mode <mode> 搭建 .rsp/,并确保 AGENTS.md 含有 RSP 入口块
291
313
  rsp init --with-project-setup 同时创建 .rsp/changes/project-setup.md
292
- rsp update 刷新 fallback protocol、修复 AGENTS 受管块并重建索引
314
+ rsp update 刷新受管项目文件,不更新 packaged Skills
293
315
  rsp ui [--lang auto|en|zh-CN] 打开只读交互式仪表盘
294
- rsp skills install [--dry-run] [--force]
295
- 将当前包的十个 Skills 安装到 .agents/skills
316
+ rsp skills 在 dual TTY 中打开交互式项目 Skill 管理器
317
+ rsp skills list [--json] 列出内置 Skills 及其精确项目安装状态
318
+ rsp skills install [name] [--dry-run] [--force]
319
+ 将默认十一个 Skills 或一个精确可选 Skill 安装到 .agents/skills
296
320
  rsp add spec <name> 创建 .rsp/specs/<name>.md 并重建 specs 索引
297
321
  rsp create <name> [summary] 创建 .rsp/changes/<name>.md;可加 --lite 使用更短模板
298
322
  rsp group create <name> [goal] 创建不进入 focus 的 .rsp/changes/<name>/00-brief.md
299
323
  rsp group close <name> 所有子 Change 归档后关闭并归档 Group Brief
300
324
  rsp focus <name> 将一个 open change 标记为当前聚焦
301
325
  rsp unfocus <name> 将一个 open change 移出当前聚焦集合
302
- rsp archive <name> 归档到 .rsp/archives/ 并更新 archive index
303
- rsp archive --dry-run <name> 预览归档就绪状态,不移动 change
326
+ rsp archive <name> 归档到 .rsp/archives/
327
+ rsp archive --dry-run <name> 已弃用的 rsp ready 兼容入口;不会移动 change
304
328
  rsp ready <name> [--json [--compact]] [--verbose]
305
- 预览归档就绪状态(与 archive --dry-run 相同)
329
+ canonical 只读归档就绪投影
306
330
  rsp show <name|--focused> [--json [--compact]] [--verbose]
307
331
  显示 change 上下文,带就绪信号和上下文路径
308
- rsp history [--limit <n>] [--since <date>] [--until <date>] [--kind <kind>] [--group <group>] [--json [--compact]]
332
+ rsp history [--limit <n>] [--since <date>] [--until <date>] [--kind <kind>] [--group <group>] [--search <text>] [--json [--compact]]
309
333
  列出有界的已归档 Change 摘要(默认 20,最大 100)
310
334
  rsp history <work-ref> [--json [--compact]]
311
335
  显示一个精确已归档 Change 的有界证据详情
@@ -329,7 +353,7 @@ rsp doctor [--fix] [--json [--compact]] [--verbose]
329
353
 
330
354
  `rsp status --json` 会在 `plan.nodes`、`plan.ready`、`plan.edges`、`plan.blocked` 和 `plan.waves` 中返回同一份依赖图。节点会区分过滤器选中的 Change 与仅用于解释的前置依赖上下文;过滤后的计划会保留解释结果所需的传递前置依赖闭包。由于同一个前置依赖可能被多个 Change 共享,JSON 保持扁平图结构而不嵌套 children。每条边都读作“`change` requires `requires`”。这些内容是派生的导航事实,不是执行授权或持久化 workflow state。
331
355
 
332
- `rsp history` 直接检查权威 archive 文件,而不信任生成的 archive index。列表按 archive date 降序、WorkRef、source path 排序,在 1–100 的结果上限前应用 inclusive date、精确 kind 和精确 Group 过滤。详情只返回有界 summary、scenario/checkbox counts 与结构化 Tasks/Verify/Blockers evidence,不返回 raw Markdown;重复 WorkRef、不可读或格式错误的 archive 会 fail closed。
356
+ `rsp history` 直接检查权威 archive 文件;系统不再生成或读取 Archive Index。列表按 archive date 降序、WorkRef、source path 排序,在 1–100 的结果上限前应用 inclusive date、精确 kind、精确 Group 以及 WorkRef/summary 的大小写不敏感字面搜索。详情只返回有界 summary、scenario/checkbox counts 与结构化 Tasks/Verify/Blockers evidence,不返回 raw Markdown;重复 WorkRef、不可读或格式错误的 archive 会 fail closed。`status` archive trend 与 TUI History 使用同一份已验证 inspection。
333
357
 
334
358
  产生 JSON 的 `status`、`show`、`ready`、`check`、`doctor` 和 `history` 都支持 `--json --compact`:内容与普通 `--json` 解析结果相同,但序列化为一行并以 LF 结尾。`--compact` 必须与 `--json` 同时使用,其他命令会在执行行为前拒绝它。
335
359