@peterxiaoyang/superspec 0.1.24 → 0.1.26

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.
@@ -20,7 +20,7 @@ argument-hint: "本次测试审查说明"
20
20
 
21
21
  在 SuperSpec review/propose 阶段中,先读取主流程提供的本次任务说明。以本次任务说明中的审查范围、绑定文件、输出格式、字段要求和停止条件为准;不要依赖本 prompt 记忆输出 schema。
22
22
 
23
- 当本次任务说明要求提交 `job_report_json` 报告时,提交给 `superspec record job-submit` 的报告文件必须是 JSON
23
+ 当本次任务说明要求提交 `job_report_json` 报告时,提交给 `superspec record job-submit` 的报告内容必须是 JSON,并优先通过 `--report -` 从 stdin 登记:
24
24
 
25
25
  ```json
26
26
  {
@@ -19,15 +19,17 @@ metadata:
19
19
  3. 登记结果
20
20
  4. 回到 1
21
21
 
22
+ 如果下一步提示当前阶段还有用户确认、审查或验证事项,先完成这些事项。完成前不要继续下一个任务、不要进入下一阶段;对用户说明时使用自然语言,不默认复述内部 JSON 字段或完整 packet。
23
+
22
24
  ## 本阶段做什么
23
25
 
24
26
  每个任务的循环:
25
27
 
26
28
  1. **任务开始**:`superspec transition task-start --change "<change>" --task <task_id>`
27
29
  2. **拿到执行尝试 ID**:从 task-start 的返回结果或 `superspec status` 中读取当前活跃 attempt 的 `attempt_id`
28
- 3. **红灯验证**:写测试,跑测试确认失败,`superspec record test-run --change "<change>" --input <FILE>`
30
+ 3. **红灯验证**:写测试,跑测试确认失败,优先用 `superspec record test-run --change "<change>" --input -` 从 stdin 登记 JSON 内容;文件路径模式仍可作为 fallback
29
31
  4. **代码实现**:根据任务写代码实现,保证代码不出现过渡设计以及代码质量
30
- 5. **绿灯验证**:跑测试确认通过,`superspec record test-run --change "<change>" --input <FILE>`
32
+ 5. **绿灯验证**:跑测试确认通过,优先用 `superspec record test-run --change "<change>" --input -` 从 stdin 登记 JSON 内容;文件路径模式仍可作为 fallback
31
33
  6. **任务结束标记完成**:`superspec transition task-complete --change "<change>" --task <task_id>`
32
34
 
33
35
  no-TDD 任务(tdd_required:false + no_tdd_reason)跳过 RED/GREEN。
@@ -18,6 +18,8 @@ metadata:
18
18
  2. 执行返回的命令
19
19
  3. 回到 1
20
20
 
21
+ 如果下一步提示还有用户确认、审查或验证事项,先完成这些事项。完成前不要归档或宣布流程完成;对用户说明时使用自然语言,不默认复述内部 JSON 字段或完整 packet。
22
+
21
23
  ## 本阶段做什么
22
24
 
23
25
  1. **确认状态为 accepted**:next 会检查
@@ -19,14 +19,16 @@ metadata:
19
19
  3. 登记结果
20
20
  4. 回到 1
21
21
 
22
- next 返回 `ask_user` 说明 discovery 不完整或有未确认问题——向用户提问,收到回答后 `superspec record user-decision --change "<change>" --input <FILE>`。
22
+ 如果下一步提示当前阶段还有用户确认、审查或验证事项,先完成这些事项。完成前不要进入下一阶段,也不要修改业务代码;对用户说明时使用自然语言,不默认复述内部 JSON 字段或完整 packet。
23
23
 
24
- 本技能默认走完整审查路径。探索完成后,`explore propose` 会先创建 `critic` 工作项,由 Critic 角色审查需求澄清记录。审查完成后通过 `superspec record job-submit --change "<change>" --job <JOB> --report <FILE>` 登记报告。
24
+ 如果下一步说明 discovery 不完整或有未确认问题,先检查并填写 discovery 草稿,不要把草稿占位内容直接转问用户;只有真实阻塞问题才向用户提问,收到回答后优先用 `superspec record user-decision --change "<change>" --input -` stdin 登记 JSON 内容;文件路径模式仍可作为 fallback。
25
+
26
+ 本技能默认走完整审查路径。探索完成后,`explore → propose` 会先创建 `critic` 工作项,由 Critic 角色审查需求澄清记录。审查完成后优先通过 `superspec record job-submit --change "<change>" --job <JOB> --report -` 从 stdin 登记 JSON 报告内容;文件路径模式仍可作为 fallback。
25
27
 
26
28
  ## 本阶段做什么
27
29
 
28
30
  1. **建立事实基线**:读代码、查架构、理解当前系统行为(只读)
29
- 2. **写 discovery.md**:
31
+ 2. **写 discovery.md**:首次进入 explore 时引擎可能已创建草稿;必须用真实事实替换草稿标记和占位内容
30
32
  3. **澄清歧义**:有阻塞歧义时向用户提问
31
33
 
32
34
  ## 探索分工
@@ -55,17 +57,17 @@ next 返回 `ask_user` 说明 discovery 不完整或有未确认问题——向
55
57
  ```markdown
56
58
  # Discovery
57
59
 
58
- ## 当前代码事实
59
- - src/path.ts:10 当前系统怎么工作
60
-
61
60
  ## 需求理解
62
- (用户目标和当前实现之间的差异)
61
+ - 用户目标
62
+
63
+ ## 现状
64
+ - 当前系统怎么工作 src/path.ts:10
63
65
 
64
- ## 影响范围候选
65
- - src/path.ts:10 可能受影响的代码表面和相邻风险
66
+ ## 影响范围
67
+ - 可能受影响的代码表面和相邻风险
66
68
 
67
69
  ## 风险和边界
68
- (技术风险、依赖、兼容性;尽量绑定代码或文档锚点)
70
+ - 技术风险、依赖、兼容性;尽量绑定代码或文档锚点
69
71
 
70
72
  ## 待确认问题
71
73
  - [ ] 问题1的描述
@@ -19,7 +19,9 @@ metadata:
19
19
  3. 登记结果
20
20
  4. 回到 1
21
21
 
22
- next 返回需要审查时,先按返回的审查说明完成对应审查,再用 `superspec record job-submit --change "<change>" --job <JOB> --report <FILE>` 提交审查报告。
22
+ 如果下一步提示当前阶段还有用户确认、审查或验证事项,先完成这些事项。完成前不要进入下一阶段,也不要修改业务代码;对用户说明时使用自然语言,不默认复述内部 JSON 字段或完整 packet。
23
+
24
+ 如果下一步需要审查,先按返回的审查说明完成对应审查,再优先用 `superspec record job-submit --change "<change>" --job <JOB> --report -` 从 stdin 提交 JSON 审查报告内容;文件路径模式仍可作为 fallback。
23
25
 
24
26
  人类可读正文默认使用简体中文;OpenSpec 结构标题、规范关键字、命令、路径、JSON 字段、代码标识符保留原文。
25
27
  如果 OpenSpec 生成文档语言不符合预期,先检查 `openspec/config.yaml` 的官方 `context` 设置;不要在变更文档里添加自定义 `language` 字段。
@@ -120,12 +122,14 @@ OpenSpec 能力规范增量(`openspec instructions specs` 格式)。
120
122
  - [ ] DEC-001 是否需要兼容历史行为?
121
123
  ```
122
124
 
123
- `next` 会在 propose 阶段检查 `proposal.md`、`design.md` 和 `test-contract.md` 的该段落。存在未确认项时,先向用户提问;收到回答后写入 JSON 文件并执行:
125
+ `next` 会在 propose 阶段检查 `proposal.md`、`design.md` 和 `test-contract.md` 的该段落。存在未确认项时,先向用户提问;收到回答后将 JSON 内容通过 stdin 登记:
124
126
 
125
127
  ```bash
126
- superspec record user-decision --change "<change>" --input <FILE>
128
+ superspec record user-decision --change "<change>" --input -
127
129
  ```
128
130
 
131
+ 文件路径模式仍可作为 fallback。
132
+
129
133
  然后把用户决定反映到 proposal/design/test-contract,并将对应确认项改为 `[x]` 或移出未确认列表。局部实现细节、命名、普通文件组织和不影响需求/验收/风险的技术微调不要升级为用户确认。
130
134
 
131
135
  ## 完成条件
@@ -19,7 +19,9 @@ metadata:
19
19
  3. 登记结果
20
20
  4. 回到 1
21
21
 
22
- next 返回需要 verifier 工作项时,先按返回的验证说明执行核对,再用 `superspec record job-submit --change "<change>" --job <JOB> --report <FILE>` 提交验证报告。
22
+ 如果下一步提示当前阶段还有用户确认、审查或验证事项,先完成这些事项。完成前不要 accept archive;对用户说明时使用自然语言,不默认复述内部 JSON 字段或完整 packet。
23
+
24
+ 如果下一步需要 verifier 工作项,先按返回的验证说明执行核对,再优先用 `superspec record job-submit --change "<change>" --job <JOB> --report -` 从 stdin 提交 JSON 验证报告内容;文件路径模式仍可作为 fallback。
23
25
 
24
26
  `record job-submit` 沿用现有 raw 归档:报告追加到 `raw/review-reports.jsonl`,不会为 review gate 新增 raw 文件类型。
25
27