@rpamis/comet 0.1.7 → 0.1.8
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.md +20 -8
- package/assets/skills/comet/scripts/comet-archive.sh +8 -2
- package/assets/skills/comet/scripts/comet-guard.sh +32 -22
- package/assets/skills/comet/scripts/comet-state.sh +495 -0
- package/assets/skills/comet-archive/SKILL.md +5 -18
- package/assets/skills/comet-build/SKILL.md +16 -23
- package/assets/skills/comet-design/SKILL.md +7 -23
- package/assets/skills/comet-hotfix/SKILL.md +9 -43
- package/assets/skills/comet-open/SKILL.md +9 -31
- package/assets/skills/comet-tweak/SKILL.md +9 -43
- package/assets/skills/comet-verify/SKILL.md +10 -30
- package/assets/skills-zh/comet/SKILL.md +7 -1
- package/assets/skills-zh/comet-archive/SKILL.md +5 -18
- package/assets/skills-zh/comet-build/SKILL.md +16 -23
- package/assets/skills-zh/comet-design/SKILL.md +7 -23
- package/assets/skills-zh/comet-hotfix/SKILL.md +9 -43
- package/assets/skills-zh/comet-open/SKILL.md +9 -31
- package/assets/skills-zh/comet-tweak/SKILL.md +9 -43
- package/assets/skills-zh/comet-verify/SKILL.md +10 -30
- package/package.json +1 -1
|
@@ -13,28 +13,14 @@ description: "Comet 阶段 1:开启。用 /comet-open 调用。通过 OpenSpec
|
|
|
13
13
|
|
|
14
14
|
### 0. 入口状态验证(Entry Check)
|
|
15
15
|
|
|
16
|
-
|
|
16
|
+
执行入口验证:
|
|
17
17
|
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
3. `openspec/changes/<name>/proposal.md` 存在且非空
|
|
22
|
-
4. `openspec/changes/<name>/design.md` 存在且非空
|
|
23
|
-
5. `openspec/changes/<name>/tasks.md` 存在且非空
|
|
24
|
-
|
|
25
|
-
**验证方式:**
|
|
26
|
-
- 读取以上路径确认存在/不存在
|
|
27
|
-
- 如 `.comet.yaml` 已存在,读取其 `phase` 字段:如 phase 不为空,输出 `[HARD STOP]` 并提示可能已有活跃 change
|
|
28
|
-
|
|
29
|
-
**失败输出:**
|
|
30
|
-
```
|
|
31
|
-
[HARD STOP] Entry check failed for comet-open
|
|
32
|
-
Expected: .comet.yaml does not exist, proposal.md + design.md + tasks.md exist
|
|
33
|
-
Actual: phase=<实际值>, design_doc=<实际值> (或文件不存在)
|
|
34
|
-
Suggestion: Check if another change with the same name is already active.
|
|
18
|
+
```bash
|
|
19
|
+
COMET_STATE=$(find . -path '*/comet/scripts/comet-state.sh' -type f -print -quit)
|
|
20
|
+
bash "$COMET_STATE" check <name> open
|
|
35
21
|
```
|
|
36
22
|
|
|
37
|
-
|
|
23
|
+
验证通过后继续 Step 1。验证失败时脚本会输出具体失败原因。
|
|
38
24
|
|
|
39
25
|
### 1. 探索想法
|
|
40
26
|
|
|
@@ -59,18 +45,10 @@ openspec/changes/<name>/
|
|
|
59
45
|
|
|
60
46
|
### 3. 初始化 Comet 状态
|
|
61
47
|
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
```
|
|
65
|
-
|
|
66
|
-
phase: design
|
|
67
|
-
design_doc: null
|
|
68
|
-
plan: null
|
|
69
|
-
build_mode: null
|
|
70
|
-
verify_mode: null
|
|
71
|
-
verify_result: pending
|
|
72
|
-
verified_at: null
|
|
73
|
-
archived: false
|
|
48
|
+
初始化 Comet 状态文件:
|
|
49
|
+
|
|
50
|
+
```bash
|
|
51
|
+
bash "$COMET_STATE" init <name> full
|
|
74
52
|
```
|
|
75
53
|
|
|
76
54
|
### 4. 内容完整性检查
|
|
@@ -23,25 +23,14 @@ Tweak 是 Comet 五阶段能力的预设工作流,不是独立的平行流程
|
|
|
23
23
|
|
|
24
24
|
### 0. 入口状态验证(Entry Check)
|
|
25
25
|
|
|
26
|
-
|
|
26
|
+
执行入口验证:
|
|
27
27
|
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
**验证方式:**
|
|
32
|
-
- `test -d openspec/changes/<name>` 检查目录
|
|
33
|
-
- 如目录存在,`test -f openspec/changes/<name>/.comet.yaml` 检查配置文件
|
|
34
|
-
- 如 `.comet.yaml` 已存在,读取 `phase` 检查是否为未完成的 tweak
|
|
35
|
-
|
|
36
|
-
**失败输出(有冲突):**
|
|
37
|
-
```
|
|
38
|
-
[HARD STOP] Entry check failed for comet-tweak
|
|
39
|
-
Expected: openspec/changes/<name>/.comet.yaml does not exist (new change)
|
|
40
|
-
Actual: .comet.yaml exists with phase=<实际值>
|
|
41
|
-
Suggestion: Pick a different change name, or check if an existing tweak is in progress.
|
|
28
|
+
```bash
|
|
29
|
+
COMET_STATE=$(find . -path '*/comet/scripts/comet-state.sh' -type f -print -quit)
|
|
30
|
+
bash "$COMET_STATE" check <name> open
|
|
42
31
|
```
|
|
43
32
|
|
|
44
|
-
|
|
33
|
+
验证通过后继续流程步骤。验证失败时脚本会输出具体失败原因。
|
|
45
34
|
|
|
46
35
|
执行链路:open → lightweight build → light verify → archive。Tweak 为每个阶段提供默认决策:精简开启、轻量构建、轻量验证、验证通过后归档。
|
|
47
36
|
|
|
@@ -57,34 +46,11 @@ Tweak 是 Comet 五阶段能力的预设工作流,不是独立的平行流程
|
|
|
57
46
|
- `tasks.md` — 不超过 3 个任务
|
|
58
47
|
- **无需 delta spec**(除非变更改变了已有 spec 的验收场景;一旦需要 delta spec,升级为完整 `/comet`)
|
|
59
48
|
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
```yaml
|
|
63
|
-
workflow: tweak
|
|
64
|
-
phase: build
|
|
65
|
-
design_doc: null
|
|
66
|
-
plan: null
|
|
67
|
-
build_mode: direct
|
|
68
|
-
isolation: branch
|
|
69
|
-
verify_mode: light
|
|
70
|
-
verify_result: pending
|
|
71
|
-
verified_at: null
|
|
72
|
-
archived: false
|
|
73
|
-
```
|
|
49
|
+
初始化 Comet 状态文件:
|
|
74
50
|
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
确认 phase 行的值为 "build"
|
|
79
|
-
确认 design_doc 行的值为 "null"
|
|
80
|
-
确认 plan 行的值为 "null"
|
|
81
|
-
确认 build_mode 行的值为 "direct"
|
|
82
|
-
确认 isolation 行的值为 "branch"
|
|
83
|
-
确认 verify_mode 行的值为 "light"
|
|
84
|
-
确认 verify_result 行的值为 "pending"
|
|
85
|
-
确认 verified_at 行的值为 "null"
|
|
86
|
-
确认 archived 行的值为 "false"
|
|
87
|
-
如任一字段不匹配,重试写入后再次验证。最多重试 2 次,仍失败则报告错误并终止。
|
|
51
|
+
```bash
|
|
52
|
+
bash "$COMET_STATE" init <name> tweak
|
|
53
|
+
```
|
|
88
54
|
|
|
89
55
|
### 2. 轻量构建(preset build)
|
|
90
56
|
|
|
@@ -14,44 +14,24 @@ description: "Comet 阶段 4:验证与收尾。用 /comet-verify 调用。验
|
|
|
14
14
|
|
|
15
15
|
### 0. 入口状态验证(Entry Check)
|
|
16
16
|
|
|
17
|
-
|
|
17
|
+
执行入口验证:
|
|
18
18
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
3. `verify_result` 字段为 `"pending"` 或 null(尚未验证通过)
|
|
23
|
-
|
|
24
|
-
**验证方式:**
|
|
25
|
-
- `cat openspec/changes/<name>/.comet.yaml` 读取全部字段
|
|
26
|
-
- 如 `verify_result` 已是 `"pass"`,说明此 change 已验证过
|
|
27
|
-
|
|
28
|
-
**失败输出:**
|
|
29
|
-
```
|
|
30
|
-
[HARD STOP] Entry check failed for comet-verify
|
|
31
|
-
Expected: phase=verify, verify_result=pending|null
|
|
32
|
-
Actual: phase=<实际值>, verify_result=<实际值>
|
|
33
|
-
Suggestion: Run comet-build first, or this change was already verified.
|
|
19
|
+
```bash
|
|
20
|
+
COMET_STATE=$(find . -path '*/comet/scripts/comet-state.sh' -type f -print -quit)
|
|
21
|
+
bash "$COMET_STATE" check <name> verify
|
|
34
22
|
```
|
|
35
23
|
|
|
36
|
-
|
|
24
|
+
验证通过后继续 Step 1。验证失败时脚本会输出具体失败原因。
|
|
37
25
|
|
|
38
26
|
### 1. 改动规模评估
|
|
39
27
|
|
|
40
|
-
|
|
28
|
+
执行规模评估:
|
|
41
29
|
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
| 变更文件数(git diff --stat) | ≤ 5 | > 5 |
|
|
46
|
-
| 是否有 delta spec | 无 | 有 |
|
|
47
|
-
| 是否新增 capability | 否 | 是 |
|
|
48
|
-
|
|
49
|
-
**判定规则**:任一指标命中"大" → 完整验证。全部命中"小" → 轻量验证。
|
|
50
|
-
|
|
51
|
-
判定完成后,在 `openspec/changes/<name>/.comet.yaml` 中记录实际验证模式。`verify_mode` 只允许以下值之一:
|
|
30
|
+
```bash
|
|
31
|
+
bash "$COMET_STATE" scale <name>
|
|
32
|
+
```
|
|
52
33
|
|
|
53
|
-
|
|
54
|
-
- `full`
|
|
34
|
+
脚本自动统计任务数、增量规格数、变更文件数,判断使用 light 或 full 验证模式,并设置 verify_mode 字段。
|
|
55
35
|
|
|
56
36
|
### 2a. 轻量验证(小改动)
|
|
57
37
|
|