@rpamis/comet 0.1.4 → 0.1.6
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 +5 -4
- package/assets/manifest.json +19 -15
- package/assets/skills/comet/SKILL.md +206 -204
- package/assets/skills/comet/scripts/comet-yaml-validate.sh +4 -2
- package/assets/skills/comet-archive/SKILL.md +151 -151
- package/assets/skills/comet-build/SKILL.md +203 -161
- package/assets/skills/comet-design/SKILL.md +108 -108
- package/assets/skills/comet-hotfix/SKILL.md +167 -165
- package/assets/skills/comet-open/SKILL.md +123 -123
- package/assets/skills/comet-tweak/SKILL.md +154 -152
- package/assets/skills/comet-verify/SKILL.md +164 -164
- package/assets/skills-zh/comet/SKILL.md +206 -0
- package/assets/skills-zh/comet-archive/SKILL.md +151 -0
- package/assets/skills-zh/comet-build/SKILL.md +203 -0
- package/assets/skills-zh/comet-design/SKILL.md +108 -0
- package/assets/skills-zh/comet-hotfix/SKILL.md +167 -0
- package/assets/skills-zh/comet-open/SKILL.md +123 -0
- package/assets/skills-zh/comet-tweak/SKILL.md +154 -0
- package/assets/skills-zh/comet-verify/SKILL.md +164 -0
- package/dist/core/init.d.ts.map +1 -1
- package/dist/core/init.js +32 -3
- package/dist/core/init.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,161 +1,203 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: comet-build
|
|
3
|
-
description: "Comet
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Comet
|
|
7
|
-
|
|
8
|
-
##
|
|
9
|
-
|
|
10
|
-
- Design Doc
|
|
11
|
-
-
|
|
12
|
-
|
|
13
|
-
##
|
|
14
|
-
|
|
15
|
-
### 0.
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
1. `openspec/changes/<name>/.comet.yaml`
|
|
21
|
-
2. `phase`
|
|
22
|
-
3. `design_doc`
|
|
23
|
-
4. `design_doc`
|
|
24
|
-
5. `openspec/changes/<name>/proposal.md`
|
|
25
|
-
6. `openspec/changes/<name>/tasks.md`
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
- `cat openspec/changes/<name>/.comet.yaml`
|
|
29
|
-
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
```
|
|
33
|
-
[HARD STOP] Entry check failed for comet-build
|
|
34
|
-
Expected: phase=build, design_doc=<path> exists
|
|
35
|
-
Actual: phase
|
|
36
|
-
Suggestion: Run comet-design first, or verify design_doc file exists.
|
|
37
|
-
```
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
### 1.
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
-
|
|
47
|
-
-
|
|
48
|
-
- **Plan
|
|
49
|
-
|
|
50
|
-
```yaml
|
|
51
|
-
---
|
|
52
|
-
change: <openspec-change-name>
|
|
53
|
-
design-doc: docs/superpowers/specs/YYYY-MM-DD-<topic>-design.md
|
|
54
|
-
---
|
|
55
|
-
```
|
|
56
|
-
|
|
57
|
-
### 2.
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
```yaml
|
|
62
|
-
phase: build
|
|
63
|
-
plan: docs/superpowers/plans/YYYY-MM-DD-feature.md
|
|
64
|
-
```
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
cat openspec/changes/<name>/.comet.yaml
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
### 3.
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
|
76
|
-
|
|
77
|
-
| A |
|
|
78
|
-
| B |
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
-
|
|
82
|
-
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
- `
|
|
88
|
-
|
|
89
|
-
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
```
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
-
|
|
131
|
-
-
|
|
132
|
-
|
|
133
|
-
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
1
|
+
---
|
|
2
|
+
name: comet-build
|
|
3
|
+
description: "Comet Phase 3: Plan and Build. Invoke with /comet-build. Create plans and execute implementation through subagent-driven-development."
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Comet Phase 3: Plan and Build (Build)
|
|
7
|
+
|
|
8
|
+
## Prerequisites
|
|
9
|
+
|
|
10
|
+
- Design Doc has been created (Phase 2 complete)
|
|
11
|
+
- Active change exists
|
|
12
|
+
|
|
13
|
+
## Steps
|
|
14
|
+
|
|
15
|
+
### 0. Entry State Verification (Entry Check)
|
|
16
|
+
|
|
17
|
+
Before performing any operations, read and verify the current state:
|
|
18
|
+
|
|
19
|
+
**Checklist:**
|
|
20
|
+
1. `openspec/changes/<name>/.comet.yaml` exists
|
|
21
|
+
2. `phase` field value is `"build"`
|
|
22
|
+
3. `design_doc` field is non-null and non-empty
|
|
23
|
+
4. File referenced by `design_doc` exists (e.g., `docs/superpowers/specs/YYYY-MM-DD-topic-design.md`)
|
|
24
|
+
5. `openspec/changes/<name>/proposal.md` exists and is non-empty
|
|
25
|
+
6. `openspec/changes/<name>/tasks.md` exists and is non-empty
|
|
26
|
+
|
|
27
|
+
**Verification method:**
|
|
28
|
+
- `cat openspec/changes/<name>/.comet.yaml` to read all fields
|
|
29
|
+
- Use `ls` or `test -f` to confirm design_doc file exists
|
|
30
|
+
|
|
31
|
+
**Failure output:**
|
|
32
|
+
```
|
|
33
|
+
[HARD STOP] Entry check failed for comet-build
|
|
34
|
+
Expected: phase=build, design_doc=<path> exists
|
|
35
|
+
Actual: phase=<actual-value>, design_doc=<actual-value or file does not exist>
|
|
36
|
+
Suggestion: Run comet-design first, or verify design_doc file exists.
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
Proceed to Step 1 only after verification passes.
|
|
40
|
+
|
|
41
|
+
### 1. Create Plan
|
|
42
|
+
|
|
43
|
+
**Immediately execute:** Use the Skill tool to load the `superpowers:writing-plans` skill. Skipping this step is prohibited.
|
|
44
|
+
|
|
45
|
+
After the skill loads, follow its guidance to create a plan. Plan requirements:
|
|
46
|
+
- Save to `docs/superpowers/plans/YYYY-MM-DD-<feature>.md`
|
|
47
|
+
- Reference design document, break down into executable tasks
|
|
48
|
+
- **Plan file header must contain associated metadata**:
|
|
49
|
+
|
|
50
|
+
```yaml
|
|
51
|
+
---
|
|
52
|
+
change: <openspec-change-name>
|
|
53
|
+
design-doc: docs/superpowers/specs/YYYY-MM-DD-<topic>-design.md
|
|
54
|
+
---
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
### 2. Update Plan Status
|
|
58
|
+
|
|
59
|
+
Merge and update the following fields in `openspec/changes/<name>/.comet.yaml` (keep other fields unchanged):
|
|
60
|
+
|
|
61
|
+
```yaml
|
|
62
|
+
phase: build
|
|
63
|
+
plan: docs/superpowers/plans/YYYY-MM-DD-feature.md
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
【Write verification】After update completion, must verify:
|
|
67
|
+
cat openspec/changes/<name>/.comet.yaml
|
|
68
|
+
Confirm plan line value is "docs/superpowers/plans/YYYY-MM-DD-feature.md"
|
|
69
|
+
If not matching, retry write then verify again. Maximum 2 retries, report error and terminate if still fails.
|
|
70
|
+
|
|
71
|
+
### 3. Workspace Isolation
|
|
72
|
+
|
|
73
|
+
Plan has been written to the current branch. Before starting execution, choose workspace isolation method:
|
|
74
|
+
|
|
75
|
+
| Option | Method | Description |
|
|
76
|
+
|--------|--------|-------------|
|
|
77
|
+
| A | Create branch | Create a new branch in the current repo, simple and fast |
|
|
78
|
+
| B | Create Worktree | Isolated workspace, fully independent, suitable for parallel development |
|
|
79
|
+
|
|
80
|
+
**Recommendation rules**:
|
|
81
|
+
- Change involves ≤ 3 files → Recommend A
|
|
82
|
+
- Need parallel development, current branch has uncommitted work → Recommend B
|
|
83
|
+
|
|
84
|
+
After user selection, merge and update `isolation` in `openspec/changes/<name>/.comet.yaml` (keep other fields unchanged). `isolation` only allows one of the following values:
|
|
85
|
+
|
|
86
|
+
- `branch`
|
|
87
|
+
- `worktree`
|
|
88
|
+
|
|
89
|
+
Few-shot examples:
|
|
90
|
+
|
|
91
|
+
```yaml
|
|
92
|
+
# User selects create branch / A
|
|
93
|
+
isolation: branch
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
```yaml
|
|
97
|
+
# User selects create worktree / B
|
|
98
|
+
isolation: worktree
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
【Write verification】After update completion, must verify:
|
|
102
|
+
cat openspec/changes/<name>/.comet.yaml
|
|
103
|
+
Confirm isolation line value is "<branch or worktree>"
|
|
104
|
+
If not matching, retry write then verify again. Maximum 2 retries, report error and terminate if still fails.
|
|
105
|
+
|
|
106
|
+
**Execute isolation**:
|
|
107
|
+
|
|
108
|
+
- **branch**: Run `git checkout -b <change-name>`, subsequent work on the new branch
|
|
109
|
+
- **worktree**: Invoke `superpowers:using-git-worktrees` skill or use native `EnterWorktree` tool to create isolated workspace
|
|
110
|
+
|
|
111
|
+
After creating isolation, confirm plan file is accessible (naturally accessible with branch method; for worktree method, confirm plan has been committed).
|
|
112
|
+
|
|
113
|
+
### 4. Select Execution Method
|
|
114
|
+
|
|
115
|
+
Present plan summary to user (task count, involved modules), then ask for execution method:
|
|
116
|
+
|
|
117
|
+
| Option | Skill | Applicable Scenario |
|
|
118
|
+
|------|------|-------------------|
|
|
119
|
+
| A | `superpowers:subagent-driven-development` | Independent tasks, high complexity, requires two-phase review |
|
|
120
|
+
| B | `superpowers:executing-plans` | Simple tasks, no subagent environment, lightweight and fast |
|
|
121
|
+
|
|
122
|
+
**Recommendation rules**:
|
|
123
|
+
- Task count ≥ 3 → Recommend A
|
|
124
|
+
- Task count ≤ 2 and no cross-module dependencies → Recommend B
|
|
125
|
+
- From hotfix path → Recommend B
|
|
126
|
+
|
|
127
|
+
After user selection, merge and update `build_mode` in `openspec/changes/<name>/.comet.yaml` (keep other fields unchanged). `build_mode` only allows one of the following values:
|
|
128
|
+
|
|
129
|
+
- `subagent-driven-development`
|
|
130
|
+
- `executing-plans`
|
|
131
|
+
- `direct` (only for hotfix preset use)
|
|
132
|
+
|
|
133
|
+
Few-shot examples:
|
|
134
|
+
|
|
135
|
+
```yaml
|
|
136
|
+
# User selects robust mode / A
|
|
137
|
+
build_mode: subagent-driven-development
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
```yaml
|
|
141
|
+
# User selects fast mode / B
|
|
142
|
+
build_mode: executing-plans
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
【Write verification】After update completion, must verify:
|
|
146
|
+
cat openspec/changes/<name>/.comet.yaml
|
|
147
|
+
Confirm build_mode line value is "<subagent-driven-development or executing-plans or direct>"
|
|
148
|
+
If not matching, retry write then verify again. Maximum 2 retries, report error and terminate if still fails.
|
|
149
|
+
|
|
150
|
+
Then, **immediately execute:** Use the Skill tool to load the corresponding skill. Skipping this step is prohibited.
|
|
151
|
+
|
|
152
|
+
If the selected Superpowers skill is unavailable, stop the process and prompt to install or enable the corresponding skill. Do not substitute this step with normal conversation.
|
|
153
|
+
|
|
154
|
+
After the skill loads, follow its guidance to execute:
|
|
155
|
+
- Execute tasks according to plan
|
|
156
|
+
- Complete tasks.md check (`- [ ]` → `- [x]`)
|
|
157
|
+
- Commit code after each task completion
|
|
158
|
+
|
|
159
|
+
### 5. Spec Incremental Updates
|
|
160
|
+
|
|
161
|
+
When the initial spec is found incomplete during implementation, handle by scale:
|
|
162
|
+
|
|
163
|
+
| Scale | Trigger Conditions | Approach |
|
|
164
|
+
|------|-------------------|----------|
|
|
165
|
+
| Small | Missing acceptance scenarios, edge cases | Directly edit delta spec + design.md, append tasks.md tasks |
|
|
166
|
+
| Medium | Interface changes, new components, data flow changes | Re-run `superpowers:brainstorming` to update Design Doc + delta spec |
|
|
167
|
+
| Large | Brand-new capability requirements | `/opsx:new` to create independent change |
|
|
168
|
+
|
|
169
|
+
**50% Threshold Determination**: Using initial task count in tasks.md as baseline, if new tasks exceed half of that total, it's considered outside original plan scope, should consider splitting into new change.
|
|
170
|
+
|
|
171
|
+
**Principles**:
|
|
172
|
+
- Delta spec is a living document, can be modified at any time during this phase
|
|
173
|
+
- Each update should be committed with commit message explaining the change reason
|
|
174
|
+
- Do not sync to main spec in advance, sync uniformly during archiving
|
|
175
|
+
- If incremental tasks exceed 50% of initial tasks.md total task count, consider splitting into new change
|
|
176
|
+
- For small-scale incremental direct delta spec edits, note in commit message to facilitate design doc drift assessment during archiving
|
|
177
|
+
|
|
178
|
+
## Exit Conditions
|
|
179
|
+
|
|
180
|
+
- All tasks.md checked
|
|
181
|
+
- Code committed
|
|
182
|
+
- Tests pass
|
|
183
|
+
- `.comet.yaml` `phase` updated to `verify`
|
|
184
|
+
- **Phase guard**: Run `bash $COMET_GUARD <change-name> build`, allow transition only after all PASS
|
|
185
|
+
|
|
186
|
+
Before exit, merge and update the following fields in `.comet.yaml` (keep other fields unchanged):
|
|
187
|
+
|
|
188
|
+
```yaml
|
|
189
|
+
phase: verify
|
|
190
|
+
verify_result: pending
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
【Write verification】After update completion, must verify:
|
|
194
|
+
cat openspec/changes/<name>/.comet.yaml
|
|
195
|
+
Confirm phase line value is "verify"
|
|
196
|
+
Confirm verify_result line value is "pending"
|
|
197
|
+
If any field does not match, retry write then verify again. Maximum 2 retries, report error and terminate if still fails.
|
|
198
|
+
|
|
199
|
+
## Automatic Transition
|
|
200
|
+
|
|
201
|
+
After exit conditions are met, **proceed immediately to the next phase without waiting for user input**:
|
|
202
|
+
|
|
203
|
+
> **REQUIRED NEXT SKILL:** Invoke `comet-verify` skill to enter the verification and completion phase.
|
|
@@ -1,108 +1,108 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: comet-design
|
|
3
|
-
description: "Comet
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Comet
|
|
7
|
-
|
|
8
|
-
##
|
|
9
|
-
|
|
10
|
-
-
|
|
11
|
-
-
|
|
12
|
-
|
|
13
|
-
##
|
|
14
|
-
|
|
15
|
-
### 0.
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
1. `openspec/changes/<name>/.comet.yaml`
|
|
21
|
-
2. `phase`
|
|
22
|
-
3. `workflow`
|
|
23
|
-
4. `design_doc`
|
|
24
|
-
5. `openspec/changes/<name>/proposal.md`
|
|
25
|
-
6. `openspec/changes/<name>/design.md`
|
|
26
|
-
7. `openspec/changes/<name>/tasks.md`
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
- `cat openspec/changes/<name>/.comet.yaml`
|
|
30
|
-
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
```
|
|
34
|
-
[HARD STOP] Entry check failed for comet-design
|
|
35
|
-
Expected: phase=design, design_doc=<empty/null>, workflow=full
|
|
36
|
-
Actual: phase
|
|
37
|
-
Suggestion: Run comet-open first, or check if .comet.yaml was modified out of sequence.
|
|
38
|
-
```
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
### 1a.
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
- **
|
|
46
|
-
- **design
|
|
47
|
-
|
|
48
|
-
### 1b.
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
```
|
|
53
|
-
Change: <change-name>
|
|
54
|
-
Proposal
|
|
55
|
-
Design
|
|
56
|
-
|
|
57
|
-
```
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
- `docs/superpowers/specs/YYYY-MM-DD-<topic>-design.md` —
|
|
65
|
-
- `openspec/changes/<name>/specs/<capability>/spec.md` —
|
|
66
|
-
|
|
67
|
-
### 2.
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
```yaml
|
|
72
|
-
phase: build
|
|
73
|
-
design_doc: docs/superpowers/specs/YYYY-MM-DD-topic-design.md
|
|
74
|
-
```
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
cat openspec/changes/<name>/.comet.yaml
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
### 3.
|
|
83
|
-
|
|
84
|
-
| Spec
|
|
85
|
-
|
|
86
|
-
|
|
|
87
|
-
|
|
|
88
|
-
|
|
89
|
-
### 4.
|
|
90
|
-
|
|
91
|
-
```
|
|
92
|
-
proposal.md
|
|
93
|
-
design.md
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
```
|
|
97
|
-
|
|
98
|
-
##
|
|
99
|
-
|
|
100
|
-
- Design Doc
|
|
101
|
-
-
|
|
102
|
-
-
|
|
103
|
-
|
|
104
|
-
##
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
> **REQUIRED NEXT SKILL:**
|
|
1
|
+
---
|
|
2
|
+
name: comet-design
|
|
3
|
+
description: "Comet Phase 2: Deep Design. Invoke with /comet-design. Produce Design Doc and delta spec through brainstorming."
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Comet Phase 2: Deep Design (Design)
|
|
7
|
+
|
|
8
|
+
## Prerequisites
|
|
9
|
+
|
|
10
|
+
- Active change exists (proposal.md, design.md, tasks.md)
|
|
11
|
+
- No Design Doc (no corresponding file under `docs/superpowers/specs/`)
|
|
12
|
+
|
|
13
|
+
## Steps
|
|
14
|
+
|
|
15
|
+
### 0. Entry State Verification (Entry Check)
|
|
16
|
+
|
|
17
|
+
Before performing any operations, read and verify the current state:
|
|
18
|
+
|
|
19
|
+
**Checklist:**
|
|
20
|
+
1. `openspec/changes/<name>/.comet.yaml` exists
|
|
21
|
+
2. `phase` field value is `"design"`
|
|
22
|
+
3. `workflow` field value is `"full"`
|
|
23
|
+
4. `design_doc` field is `null` or empty
|
|
24
|
+
5. `openspec/changes/<name>/proposal.md` exists and is non-empty
|
|
25
|
+
6. `openspec/changes/<name>/design.md` exists and is non-empty
|
|
26
|
+
7. `openspec/changes/<name>/tasks.md` exists and is non-empty
|
|
27
|
+
|
|
28
|
+
**Verification method:**
|
|
29
|
+
- `cat openspec/changes/<name>/.comet.yaml` to read all fields
|
|
30
|
+
- Check checklist items one by one
|
|
31
|
+
|
|
32
|
+
**Failure output:**
|
|
33
|
+
```
|
|
34
|
+
[HARD STOP] Entry check failed for comet-design
|
|
35
|
+
Expected: phase=design, design_doc=<empty/null>, workflow=full
|
|
36
|
+
Actual: phase=<actual-value>, design_doc=<actual-value>, workflow=<actual-value>
|
|
37
|
+
Suggestion: Run comet-open first, or check if .comet.yaml was modified out of sequence.
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
Proceed to Step 1 only after verification passes.
|
|
41
|
+
|
|
42
|
+
### 1a. Read Existing Context
|
|
43
|
+
|
|
44
|
+
Read `proposal.md` and `design.md` under the active change, organize core content into summaries:
|
|
45
|
+
- **Proposal summary**: goals, motivation, scope
|
|
46
|
+
- **Design summary**: architectural decisions, high-level design
|
|
47
|
+
|
|
48
|
+
### 1b. Execute Brainstorming (With Context)
|
|
49
|
+
|
|
50
|
+
**Immediately execute:** Use the Skill tool to load the `superpowers:brainstorming` skill, ARGUMENTS contains:
|
|
51
|
+
|
|
52
|
+
```
|
|
53
|
+
Change: <change-name>
|
|
54
|
+
Proposal summary: <proposal core content>
|
|
55
|
+
Design summary: <design.md architectural decisions>
|
|
56
|
+
Skip context exploration, proceed directly to design questioning.
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
Skipping this step is prohibited, and continuing without loading this skill is prohibited.
|
|
60
|
+
|
|
61
|
+
If `superpowers:brainstorming` is unavailable, stop the process and prompt to install or enable Superpowers skills. Do not substitute this step with normal conversation.
|
|
62
|
+
|
|
63
|
+
After the skill loads, follow its guidance to produce:
|
|
64
|
+
- `docs/superpowers/specs/YYYY-MM-DD-<topic>-design.md` — design document (technical RFC)
|
|
65
|
+
- `openspec/changes/<name>/specs/<capability>/spec.md` — capability specification (delta)
|
|
66
|
+
|
|
67
|
+
### 2. Update Comet State
|
|
68
|
+
|
|
69
|
+
Merge and update the following fields in `openspec/changes/<name>/.comet.yaml` (keep other fields unchanged):
|
|
70
|
+
|
|
71
|
+
```yaml
|
|
72
|
+
phase: build
|
|
73
|
+
design_doc: docs/superpowers/specs/YYYY-MM-DD-topic-design.md
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
【Write verification】After update completion, must verify:
|
|
77
|
+
cat openspec/changes/<name>/.comet.yaml
|
|
78
|
+
Confirm phase line value is "build"
|
|
79
|
+
Confirm design_doc line value is "docs/superpowers/specs/YYYY-MM-DD-topic-design.md"
|
|
80
|
+
If any field does not match, retry write then verify again. Maximum 2 retries, report error and terminate if still fails.
|
|
81
|
+
|
|
82
|
+
### 3. Dual Spec Division of Labor
|
|
83
|
+
|
|
84
|
+
| Spec Type | Belongs To | Location | Definition |
|
|
85
|
+
|-----------|-----------|----------|------------|
|
|
86
|
+
| Capability specification | OpenSpec | `openspec/changes/<name>/specs/` | What the system should do (requirements + acceptance scenarios) |
|
|
87
|
+
| Design document | Superpowers | `docs/superpowers/specs/` | How to build (technical architecture + implementation details) |
|
|
88
|
+
|
|
89
|
+
### 4. Document Hierarchy Confirmation
|
|
90
|
+
|
|
91
|
+
```
|
|
92
|
+
proposal.md (Phase 1) → Why + What
|
|
93
|
+
design.md (Phase 1, OpenSpec) → High-level architectural decisions
|
|
94
|
+
Design document (Phase 2, Superpowers) → Deep technical design
|
|
95
|
+
Capability specification (Phase 2, delta) → Requirements + acceptance scenarios
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
## Exit Conditions
|
|
99
|
+
|
|
100
|
+
- Design Doc has been created and saved
|
|
101
|
+
- Delta spec has been created if there are new capabilities
|
|
102
|
+
- **Phase guard**: Run `bash $COMET_GUARD <change-name> design`, allow transition only after all PASS
|
|
103
|
+
|
|
104
|
+
## Automatic Transition
|
|
105
|
+
|
|
106
|
+
After exit conditions are met, **proceed immediately to the next phase without waiting for user input**:
|
|
107
|
+
|
|
108
|
+
> **REQUIRED NEXT SKILL:** Invoke `comet-build` skill to enter the planning and build phase.
|