@leeovery/claude-technical-workflows 2.1.19 → 2.1.20
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/agents/implementation-analysis-architecture.md +1 -0
- package/agents/review-product-assessor.md +112 -0
- package/agents/review-task-verifier.md +2 -1
- package/package.json +1 -1
- package/skills/start-discussion/SKILL.md +21 -246
- package/skills/start-discussion/references/display-options.md +71 -0
- package/skills/start-discussion/references/gather-context-continue.md +17 -0
- package/skills/start-discussion/references/gather-context-fresh.md +41 -0
- package/skills/start-discussion/references/gather-context-research.md +25 -0
- package/skills/start-discussion/references/gather-context.md +31 -0
- package/skills/start-discussion/references/handle-selection.md +54 -0
- package/skills/start-discussion/references/invoke-skill.md +30 -0
- package/skills/start-discussion/references/research-analysis.md +72 -0
- package/skills/start-implementation/SKILL.md +2 -0
- package/skills/start-planning/SKILL.md +2 -0
- package/skills/start-review/SKILL.md +88 -21
- package/skills/start-review/scripts/discovery.sh +19 -0
- package/skills/start-specification/SKILL.md +2 -0
- package/skills/start-specification/references/display-analyze.md +2 -3
- package/skills/start-specification/references/display-groupings.md +19 -16
- package/skills/start-specification/references/display-single-grouped.md +7 -8
- package/skills/start-specification/references/display-single-has-spec.md +7 -6
- package/skills/start-specification/references/display-single-no-spec.md +7 -6
- package/skills/start-specification/references/display-specs-menu.md +14 -12
- package/skills/technical-review/SKILL.md +72 -70
- package/skills/technical-review/references/invoke-product-assessor.md +57 -0
- package/skills/technical-review/references/invoke-task-verifiers.md +104 -0
- package/skills/technical-review/references/review-checklist.md +1 -55
- package/skills/technical-review/references/template.md +34 -12
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
# Handle Selection
|
|
2
|
+
|
|
3
|
+
*Reference for **[start-discussion](../SKILL.md)***
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
Route based on the user's choice from the options display.
|
|
8
|
+
|
|
9
|
+
#### If user chose "From research"
|
|
10
|
+
|
|
11
|
+
User chose to start from research (e.g., "research 1", "1", "from research", or a topic name).
|
|
12
|
+
|
|
13
|
+
**If user specified a topic inline** (e.g., "research 2", "2", or topic name):
|
|
14
|
+
- Identify the selected topic from the numbered list
|
|
15
|
+
- Control returns to the backbone
|
|
16
|
+
|
|
17
|
+
**If user just said "from research" without specifying:**
|
|
18
|
+
```
|
|
19
|
+
Which research topic would you like to discuss? (Enter a number or topic name)
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
**STOP.** Wait for response.
|
|
23
|
+
|
|
24
|
+
#### If user chose "Continue discussion"
|
|
25
|
+
|
|
26
|
+
User chose to continue a discussion (e.g., "continue auth-flow" or "continue discussion").
|
|
27
|
+
|
|
28
|
+
**If user specified a discussion inline** (e.g., "continue auth-flow"):
|
|
29
|
+
- Identify the selected discussion from the list
|
|
30
|
+
- Control returns to the backbone
|
|
31
|
+
|
|
32
|
+
**If user just said "continue discussion" without specifying:**
|
|
33
|
+
```
|
|
34
|
+
Which discussion would you like to continue?
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
**STOP.** Wait for response.
|
|
38
|
+
|
|
39
|
+
#### If user chose "Fresh topic"
|
|
40
|
+
|
|
41
|
+
User wants to start a fresh discussion. Control returns to the backbone.
|
|
42
|
+
|
|
43
|
+
#### If user chose "refresh"
|
|
44
|
+
|
|
45
|
+
```
|
|
46
|
+
Refreshing analysis...
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
Delete the cache file:
|
|
50
|
+
```bash
|
|
51
|
+
rm docs/workflow/.cache/research-analysis.md
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
→ Return to **Step 3** to re-analyze.
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# Invoke the Skill
|
|
2
|
+
|
|
3
|
+
*Reference for **[start-discussion](../SKILL.md)***
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
This skill's purpose is now fulfilled.
|
|
8
|
+
|
|
9
|
+
Invoke the [technical-discussion](../../technical-discussion/SKILL.md) skill for your next instructions. Do not act on the gathered information until the skill is loaded - it contains the instructions for how to proceed.
|
|
10
|
+
|
|
11
|
+
**Example handoff (from research):**
|
|
12
|
+
```
|
|
13
|
+
Discussion session for: {topic}
|
|
14
|
+
Output: docs/workflow/discussion/{topic}.md
|
|
15
|
+
|
|
16
|
+
Research reference:
|
|
17
|
+
Source: docs/workflow/research/{filename}.md (lines {start}-{end})
|
|
18
|
+
Summary: {the 1-2 sentence summary from the research analysis}
|
|
19
|
+
|
|
20
|
+
Invoke the technical-discussion skill.
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
**Example handoff (continuing or fresh):**
|
|
24
|
+
```
|
|
25
|
+
Discussion session for: {topic}
|
|
26
|
+
Source: {existing discussion | fresh}
|
|
27
|
+
Output: docs/workflow/discussion/{topic}.md
|
|
28
|
+
|
|
29
|
+
Invoke the technical-discussion skill.
|
|
30
|
+
```
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
# Research Analysis
|
|
2
|
+
|
|
3
|
+
*Reference for **[start-discussion](../SKILL.md)***
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
This step only runs when research files exist.
|
|
8
|
+
|
|
9
|
+
Use `cache.status` from discovery to determine the approach:
|
|
10
|
+
|
|
11
|
+
#### If cache.status is "valid"
|
|
12
|
+
|
|
13
|
+
```
|
|
14
|
+
Using cached research analysis (unchanged since {cache.generated})
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
Load the topics from `docs/workflow/.cache/research-analysis.md` and proceed.
|
|
18
|
+
|
|
19
|
+
#### If cache.status is "stale" or "none"
|
|
20
|
+
|
|
21
|
+
```
|
|
22
|
+
Analyzing research documents...
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
Read each research file and extract key themes and potential discussion topics. For each theme:
|
|
26
|
+
- Note the source file and relevant line numbers
|
|
27
|
+
- Summarize what the theme is about in 1-2 sentences
|
|
28
|
+
- Identify key questions or decisions that need discussion
|
|
29
|
+
|
|
30
|
+
**Be thorough**: This analysis will be cached, so identify ALL potential topics:
|
|
31
|
+
- Major architectural decisions
|
|
32
|
+
- Technical trade-offs mentioned
|
|
33
|
+
- Open questions or concerns raised
|
|
34
|
+
- Implementation approaches discussed
|
|
35
|
+
- Integration points with external systems
|
|
36
|
+
- Security or performance considerations
|
|
37
|
+
- Edge cases or error handling mentioned
|
|
38
|
+
|
|
39
|
+
**Save to cache:**
|
|
40
|
+
|
|
41
|
+
Ensure the cache directory exists:
|
|
42
|
+
```bash
|
|
43
|
+
mkdir -p docs/workflow/.cache
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
Create/update `docs/workflow/.cache/research-analysis.md`:
|
|
47
|
+
|
|
48
|
+
```markdown
|
|
49
|
+
---
|
|
50
|
+
checksum: {research.checksum from discovery}
|
|
51
|
+
generated: YYYY-MM-DDTHH:MM:SS # Use current ISO timestamp
|
|
52
|
+
research_files:
|
|
53
|
+
- {filename1}.md
|
|
54
|
+
- {filename2}.md
|
|
55
|
+
---
|
|
56
|
+
|
|
57
|
+
# Research Analysis Cache
|
|
58
|
+
|
|
59
|
+
## Topics
|
|
60
|
+
|
|
61
|
+
### {Theme name}
|
|
62
|
+
- **Source**: {filename}.md (lines {start}-{end})
|
|
63
|
+
- **Summary**: {1-2 sentence summary}
|
|
64
|
+
- **Key questions**: {what needs deciding}
|
|
65
|
+
|
|
66
|
+
### {Another theme}
|
|
67
|
+
- **Source**: {filename}.md (lines {start}-{end})
|
|
68
|
+
- **Summary**: {1-2 sentence summary}
|
|
69
|
+
- **Key questions**: {what needs deciding}
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
**Cross-reference**: For each topic, note if a discussion already exists (from `discussions.files` in discovery).
|
|
@@ -94,6 +94,8 @@ Parse the discovery output to understand:
|
|
|
94
94
|
|
|
95
95
|
**IMPORTANT**: Use ONLY this script for discovery. Do NOT run additional bash commands (ls, head, cat, etc.) to gather state - the script provides everything needed.
|
|
96
96
|
|
|
97
|
+
**Silent processing**: Do NOT output your assessment of the discovery state. Parse it internally and proceed to the next step without narrating field values, routing decisions, or prerequisites. The first user-visible output should be the display content itself.
|
|
98
|
+
|
|
97
99
|
→ Proceed to **Step 2**.
|
|
98
100
|
|
|
99
101
|
---
|
|
@@ -83,6 +83,8 @@ Parse the discovery output to understand:
|
|
|
83
83
|
|
|
84
84
|
**IMPORTANT**: Use ONLY this script for discovery. Do NOT run additional bash commands (ls, head, cat, etc.) to gather state - the script provides everything needed.
|
|
85
85
|
|
|
86
|
+
**Silent processing**: Do NOT output your assessment of the discovery state. Parse it internally and proceed to the next step without narrating field values, routing decisions, or prerequisites. The first user-visible output should be the display content itself.
|
|
87
|
+
|
|
86
88
|
→ Proceed to **Step 2**.
|
|
87
89
|
|
|
88
90
|
---
|
|
@@ -71,9 +71,13 @@ Parse the discovery output to understand:
|
|
|
71
71
|
|
|
72
72
|
**From `state` section:**
|
|
73
73
|
- `scenario` - one of: `"no_plans"`, `"single_plan"`, `"multiple_plans"`
|
|
74
|
+
- `implemented_count` - plans with implementation_status != "none"
|
|
75
|
+
- `completed_count` - plans with implementation_status == "completed"
|
|
74
76
|
|
|
75
77
|
**IMPORTANT**: Use ONLY this script for discovery. Do NOT run additional bash commands (ls, head, cat, etc.) to gather state - the script provides everything needed.
|
|
76
78
|
|
|
79
|
+
**Silent processing**: Do NOT output your assessment of the discovery state. Parse it internally and proceed to the next step without narrating field values, routing decisions, or prerequisites. The first user-visible output should be the display content itself.
|
|
80
|
+
|
|
77
81
|
→ Proceed to **Step 2**.
|
|
78
82
|
|
|
79
83
|
---
|
|
@@ -102,29 +106,67 @@ Plans exist.
|
|
|
102
106
|
|
|
103
107
|
---
|
|
104
108
|
|
|
105
|
-
## Step 3: Present Plans and Select
|
|
109
|
+
## Step 3: Present Plans and Select Scope
|
|
106
110
|
|
|
107
|
-
Present all discovered plans to help the user
|
|
111
|
+
Present all discovered plans with implementation status to help the user understand what's reviewable.
|
|
108
112
|
|
|
109
113
|
**Present the full state:**
|
|
110
114
|
|
|
111
115
|
```
|
|
112
|
-
|
|
116
|
+
Review Phase
|
|
113
117
|
|
|
114
|
-
|
|
115
|
-
|
|
118
|
+
Reviewable:
|
|
119
|
+
1. ✓ {topic-1} (completed) - format: {format}, spec: {exists|missing}
|
|
120
|
+
2. ▶ {topic-2} (in-progress) - format: {format}, spec: {exists|missing}
|
|
116
121
|
|
|
117
|
-
|
|
118
|
-
|
|
122
|
+
Not reviewable:
|
|
123
|
+
· {topic-3} [no implementation]
|
|
119
124
|
```
|
|
120
125
|
|
|
121
|
-
**
|
|
126
|
+
**Formatting rules:**
|
|
127
|
+
|
|
128
|
+
Reviewable (numbered, selectable):
|
|
129
|
+
- **`✓`** — implementation_status: completed
|
|
130
|
+
- **`▶`** — implementation_status: in-progress
|
|
131
|
+
|
|
132
|
+
Not reviewable (not numbered, not selectable):
|
|
133
|
+
- **`·`** — implementation_status: none
|
|
134
|
+
|
|
135
|
+
Omit either section entirely if it has no entries.
|
|
136
|
+
|
|
137
|
+
**Then route based on what's reviewable:**
|
|
138
|
+
|
|
139
|
+
#### If no reviewable plans
|
|
140
|
+
|
|
122
141
|
```
|
|
123
|
-
|
|
142
|
+
No implemented plans found.
|
|
143
|
+
|
|
144
|
+
The review phase requires at least one plan with an implementation.
|
|
145
|
+
Please run /start-implementation first.
|
|
124
146
|
```
|
|
125
|
-
→ Proceed directly to **Step 4**.
|
|
126
147
|
|
|
127
|
-
**
|
|
148
|
+
**STOP.** Wait for user to acknowledge before ending.
|
|
149
|
+
|
|
150
|
+
#### If single reviewable plan
|
|
151
|
+
|
|
152
|
+
```
|
|
153
|
+
Auto-selecting: {topic} (only reviewable plan)
|
|
154
|
+
Scope: single
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
→ Proceed directly to **Step 5**.
|
|
158
|
+
|
|
159
|
+
#### If multiple reviewable plans
|
|
160
|
+
|
|
161
|
+
```
|
|
162
|
+
· · · · · · · · · · · ·
|
|
163
|
+
What scope would you like to review?
|
|
164
|
+
|
|
165
|
+
- **`s`/`single`** — Review one plan's implementation
|
|
166
|
+
- **`m`/`multi`** — Review selected plans together (cross-cutting)
|
|
167
|
+
- **`a`/`all`** — Review all implemented plans (full product)
|
|
168
|
+
· · · · · · · · · · · ·
|
|
169
|
+
```
|
|
128
170
|
|
|
129
171
|
**STOP.** Wait for user response.
|
|
130
172
|
|
|
@@ -132,23 +174,37 @@ Auto-selecting: {topic} (only available plan)
|
|
|
132
174
|
|
|
133
175
|
---
|
|
134
176
|
|
|
135
|
-
## Step 4:
|
|
177
|
+
## Step 4: Plan Selection
|
|
178
|
+
|
|
179
|
+
This step only applies for `single` or `multi` scope chosen in Step 3.
|
|
180
|
+
|
|
181
|
+
#### If scope is "all"
|
|
182
|
+
|
|
183
|
+
All reviewable plans are included. No selection needed.
|
|
184
|
+
|
|
185
|
+
→ Proceed directly to **Step 5**.
|
|
136
186
|
|
|
137
|
-
|
|
187
|
+
#### If scope is "single"
|
|
138
188
|
|
|
139
189
|
```
|
|
140
190
|
· · · · · · · · · · · ·
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
- **`a`/`all`** — All changes since the plan was created
|
|
144
|
-
- **`g`/`git`** — Identify from git status
|
|
145
|
-
- Specific directories or files — tell me which
|
|
191
|
+
Which plan would you like to review? (Enter a number from Step 3)
|
|
146
192
|
· · · · · · · · · · · ·
|
|
147
193
|
```
|
|
148
194
|
|
|
149
195
|
**STOP.** Wait for user response.
|
|
150
196
|
|
|
151
|
-
|
|
197
|
+
→ Proceed to **Step 5**.
|
|
198
|
+
|
|
199
|
+
#### If scope is "multi"
|
|
200
|
+
|
|
201
|
+
```
|
|
202
|
+
· · · · · · · · · · · ·
|
|
203
|
+
Which plans to include? (Enter numbers separated by commas, e.g. 1,3)
|
|
204
|
+
· · · · · · · · · · · ·
|
|
205
|
+
```
|
|
206
|
+
|
|
207
|
+
**STOP.** Wait for user response.
|
|
152
208
|
|
|
153
209
|
→ Proceed to **Step 5**.
|
|
154
210
|
|
|
@@ -160,14 +216,25 @@ After completing the steps above, this skill's purpose is fulfilled.
|
|
|
160
216
|
|
|
161
217
|
Invoke the [technical-review](../technical-review/SKILL.md) skill for your next instructions. Do not act on the gathered information until the skill is loaded - it contains the instructions for how to proceed.
|
|
162
218
|
|
|
163
|
-
**Example handoff:**
|
|
219
|
+
**Example handoff (single):**
|
|
164
220
|
```
|
|
165
221
|
Review session for: {topic}
|
|
222
|
+
Review scope: single
|
|
166
223
|
Plan: docs/workflow/planning/{topic}.md
|
|
167
224
|
Format: {format}
|
|
168
225
|
Plan ID: {plan_id} (if applicable)
|
|
169
226
|
Specification: {specification} (exists: {true|false})
|
|
170
|
-
|
|
227
|
+
|
|
228
|
+
Invoke the technical-review skill.
|
|
229
|
+
```
|
|
230
|
+
|
|
231
|
+
**Example handoff (multi/all):**
|
|
232
|
+
```
|
|
233
|
+
Review session for: {scope description}
|
|
234
|
+
Review scope: {multi | all}
|
|
235
|
+
Plans:
|
|
236
|
+
- docs/workflow/planning/{topic-1}.md (format: {format}, spec: {spec})
|
|
237
|
+
- docs/workflow/planning/{topic-2}.md (format: {format}, spec: {spec})
|
|
171
238
|
|
|
172
239
|
Invoke the technical-review skill.
|
|
173
240
|
```
|
|
@@ -45,6 +45,8 @@ echo ""
|
|
|
45
45
|
echo "plans:"
|
|
46
46
|
|
|
47
47
|
plan_count=0
|
|
48
|
+
implemented_count=0
|
|
49
|
+
completed_count=0
|
|
48
50
|
|
|
49
51
|
if [ -d "$PLAN_DIR" ] && [ -n "$(ls -A "$PLAN_DIR" 2>/dev/null)" ]; then
|
|
50
52
|
echo " exists: true"
|
|
@@ -73,6 +75,14 @@ if [ -d "$PLAN_DIR" ] && [ -n "$(ls -A "$PLAN_DIR" 2>/dev/null)" ]; then
|
|
|
73
75
|
spec_exists="true"
|
|
74
76
|
fi
|
|
75
77
|
|
|
78
|
+
# Check implementation status
|
|
79
|
+
impl_tracking="docs/workflow/implementation/${name}/tracking.md"
|
|
80
|
+
impl_status="none"
|
|
81
|
+
if [ -f "$impl_tracking" ]; then
|
|
82
|
+
impl_status_val=$(extract_field "$impl_tracking" "status")
|
|
83
|
+
impl_status=${impl_status_val:-"in-progress"}
|
|
84
|
+
fi
|
|
85
|
+
|
|
76
86
|
echo " - name: \"$name\""
|
|
77
87
|
echo " topic: \"$topic\""
|
|
78
88
|
echo " status: \"$status\""
|
|
@@ -83,8 +93,15 @@ if [ -d "$PLAN_DIR" ] && [ -n "$(ls -A "$PLAN_DIR" 2>/dev/null)" ]; then
|
|
|
83
93
|
if [ -n "$plan_id" ]; then
|
|
84
94
|
echo " plan_id: \"$plan_id\""
|
|
85
95
|
fi
|
|
96
|
+
echo " implementation_status: \"$impl_status\""
|
|
86
97
|
|
|
87
98
|
plan_count=$((plan_count + 1))
|
|
99
|
+
if [ "$impl_status" != "none" ]; then
|
|
100
|
+
implemented_count=$((implemented_count + 1))
|
|
101
|
+
fi
|
|
102
|
+
if [ "$impl_status" = "completed" ]; then
|
|
103
|
+
completed_count=$((completed_count + 1))
|
|
104
|
+
fi
|
|
88
105
|
done
|
|
89
106
|
|
|
90
107
|
echo " count: $plan_count"
|
|
@@ -103,6 +120,8 @@ echo "state:"
|
|
|
103
120
|
|
|
104
121
|
echo " has_plans: $([ "$plan_count" -gt 0 ] && echo "true" || echo "false")"
|
|
105
122
|
echo " plan_count: $plan_count"
|
|
123
|
+
echo " implemented_count: $implemented_count"
|
|
124
|
+
echo " completed_count: $completed_count"
|
|
106
125
|
|
|
107
126
|
# Determine workflow state for routing
|
|
108
127
|
if [ "$plan_count" -eq 0 ]; then
|
|
@@ -74,6 +74,8 @@ Parse the discovery output to understand:
|
|
|
74
74
|
|
|
75
75
|
**IMPORTANT**: Use ONLY this script for discovery. Do NOT run additional bash commands (ls, head, cat, etc.) to gather state - the script provides everything needed.
|
|
76
76
|
|
|
77
|
+
**Silent processing**: Do NOT output your assessment of the discovery state. Parse it internally and proceed to the next step without narrating field values, routing decisions, or prerequisites. The first user-visible output should be the display content itself.
|
|
78
|
+
|
|
77
79
|
→ Proceed to **Step 2**.
|
|
78
80
|
|
|
79
81
|
---
|
|
@@ -24,7 +24,6 @@ List all concluded discussions from discovery output.
|
|
|
24
24
|
### If in-progress discussions exist
|
|
25
25
|
|
|
26
26
|
```
|
|
27
|
-
---
|
|
28
27
|
Discussions not ready for specification:
|
|
29
28
|
These discussions are still in progress and must be concluded
|
|
30
29
|
before they can be included in a specification.
|
|
@@ -33,10 +32,11 @@ before they can be included in a specification.
|
|
|
33
32
|
|
|
34
33
|
### Cache-Aware Message
|
|
35
34
|
|
|
35
|
+
No `---` separator before these messages.
|
|
36
|
+
|
|
36
37
|
#### If cache status is "none"
|
|
37
38
|
|
|
38
39
|
```
|
|
39
|
-
---
|
|
40
40
|
These discussions will be analyzed for natural groupings to determine
|
|
41
41
|
how they should be organized into specifications. Results are cached
|
|
42
42
|
and reused until discussions change.
|
|
@@ -51,7 +51,6 @@ Proceed with analysis?
|
|
|
51
51
|
#### If cache status is "stale"
|
|
52
52
|
|
|
53
53
|
```
|
|
54
|
-
---
|
|
55
54
|
A previous grouping analysis exists but is outdated — discussions
|
|
56
55
|
have changed since it was created.
|
|
57
56
|
|
|
@@ -56,23 +56,24 @@ Specification Overview
|
|
|
56
56
|
Recommended breakdown for specifications with their source discussions.
|
|
57
57
|
|
|
58
58
|
1. {Grouping Name}
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
59
|
+
└─ Spec: {status} {(X of Y sources extracted) if applicable}
|
|
60
|
+
└─ Discussions:
|
|
61
|
+
├─ {discussion-name} ({status})
|
|
62
|
+
└─ {discussion-name} ({status})
|
|
63
63
|
|
|
64
64
|
2. {Grouping Name}
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
65
|
+
└─ Spec: none
|
|
66
|
+
└─ Discussions:
|
|
67
|
+
└─ {discussion-name} (ready)
|
|
68
68
|
```
|
|
69
69
|
|
|
70
|
+
Indentation: `└─` starts at column 4 (under the grouping name text, not the number). Discussion entries start at column 7.
|
|
71
|
+
|
|
70
72
|
Use `├─` for all but the last discussion, `└─` for the last.
|
|
71
73
|
|
|
72
74
|
### If in-progress discussions exist
|
|
73
75
|
|
|
74
76
|
```
|
|
75
|
-
---
|
|
76
77
|
Discussions not ready for specification:
|
|
77
78
|
These discussions are still in progress and must be concluded
|
|
78
79
|
before they can be included in a specification.
|
|
@@ -81,10 +82,9 @@ before they can be included in a specification.
|
|
|
81
82
|
|
|
82
83
|
### Key/Legend
|
|
83
84
|
|
|
84
|
-
Show only the statuses that appear in the current display.
|
|
85
|
+
Show only the statuses that appear in the current display. No `---` separator before this section.
|
|
85
86
|
|
|
86
87
|
```
|
|
87
|
-
---
|
|
88
88
|
Key:
|
|
89
89
|
|
|
90
90
|
Discussion status:
|
|
@@ -101,8 +101,9 @@ Key:
|
|
|
101
101
|
|
|
102
102
|
### Tip (show when 2+ groupings)
|
|
103
103
|
|
|
104
|
+
No `---` separator before this section.
|
|
105
|
+
|
|
104
106
|
```
|
|
105
|
-
---
|
|
106
107
|
Tip: To restructure groupings or pull a discussion into its own
|
|
107
108
|
specification, choose "Re-analyze" and provide guidance.
|
|
108
109
|
```
|
|
@@ -133,17 +134,19 @@ After all grouping entries, append meta options:
|
|
|
133
134
|
1. Start "Auth Flow" — 2 ready discussions
|
|
134
135
|
2. Continue "Data Model" — 1 source(s) pending extraction
|
|
135
136
|
3. Unify all into single specification
|
|
136
|
-
All discussions are combined into one specification. Existing
|
|
137
|
-
specifications are incorporated and superseded
|
|
137
|
+
`All discussions are combined into one specification. Existing`
|
|
138
|
+
`specifications are incorporated and superseded.`
|
|
138
139
|
4. Re-analyze groupings
|
|
139
|
-
Current groupings are discarded and rebuilt. Existing
|
|
140
|
-
specification names are preserved. You can provide guidance
|
|
141
|
-
in the next step
|
|
140
|
+
`Current groupings are discarded and rebuilt. Existing`
|
|
141
|
+
`specification names are preserved. You can provide guidance`
|
|
142
|
+
`in the next step.`
|
|
142
143
|
|
|
143
144
|
Select an option (enter number):
|
|
144
145
|
· · · · · · · · · · · ·
|
|
145
146
|
```
|
|
146
147
|
|
|
148
|
+
Menu descriptions are wrapped in backticks to visually distinguish them from the choice labels.
|
|
149
|
+
|
|
147
150
|
**STOP.** Wait for user response.
|
|
148
151
|
|
|
149
152
|
#### If user picks a grouping
|
|
@@ -21,16 +21,17 @@ Specification Overview
|
|
|
21
21
|
Single concluded discussion found with existing multi-source specification.
|
|
22
22
|
|
|
23
23
|
1. {Spec Title Case Name}
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
24
|
+
└─ Spec: {spec_status} ({X} of {Y} sources extracted)
|
|
25
|
+
└─ Discussions:
|
|
26
|
+
├─ {source-name} (extracted)
|
|
27
|
+
└─ {source-name} (extracted, reopened)
|
|
28
28
|
```
|
|
29
29
|
|
|
30
|
+
Indentation: `└─` starts at column 4 (under the name text, not the number). Discussion entries start at column 7.
|
|
31
|
+
|
|
30
32
|
### If in-progress discussions exist
|
|
31
33
|
|
|
32
34
|
```
|
|
33
|
-
---
|
|
34
35
|
Discussions not ready for specification:
|
|
35
36
|
These discussions are still in progress and must be concluded
|
|
36
37
|
before they can be included in a specification.
|
|
@@ -39,10 +40,9 @@ before they can be included in a specification.
|
|
|
39
40
|
|
|
40
41
|
### Key/Legend
|
|
41
42
|
|
|
42
|
-
Show only the statuses that appear in the current display.
|
|
43
|
+
Show only the statuses that appear in the current display. No `---` separator before this section.
|
|
43
44
|
|
|
44
45
|
```
|
|
45
|
-
---
|
|
46
46
|
Key:
|
|
47
47
|
|
|
48
48
|
Discussion status:
|
|
@@ -58,7 +58,6 @@ Key:
|
|
|
58
58
|
## After Display
|
|
59
59
|
|
|
60
60
|
```
|
|
61
|
-
---
|
|
62
61
|
Automatically proceeding with "{Spec Title Case Name}".
|
|
63
62
|
```
|
|
64
63
|
|
|
@@ -16,15 +16,16 @@ Specification Overview
|
|
|
16
16
|
Single concluded discussion found with existing specification.
|
|
17
17
|
|
|
18
18
|
1. {Title Case Name}
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
19
|
+
└─ Spec: {spec_status} ({X} of {Y} sources extracted)
|
|
20
|
+
└─ Discussions:
|
|
21
|
+
└─ {discussion-name} (extracted)
|
|
22
22
|
```
|
|
23
23
|
|
|
24
|
+
Indentation: `└─` starts at column 4 (under the name text, not the number). Discussion entries start at column 7.
|
|
25
|
+
|
|
24
26
|
### If in-progress discussions exist
|
|
25
27
|
|
|
26
28
|
```
|
|
27
|
-
---
|
|
28
29
|
Discussions not ready for specification:
|
|
29
30
|
These discussions are still in progress and must be concluded
|
|
30
31
|
before they can be included in a specification.
|
|
@@ -33,8 +34,9 @@ before they can be included in a specification.
|
|
|
33
34
|
|
|
34
35
|
### Key/Legend
|
|
35
36
|
|
|
37
|
+
No `---` separator before this section.
|
|
38
|
+
|
|
36
39
|
```
|
|
37
|
-
---
|
|
38
40
|
Key:
|
|
39
41
|
|
|
40
42
|
Discussion status:
|
|
@@ -47,7 +49,6 @@ Key:
|
|
|
47
49
|
## After Display
|
|
48
50
|
|
|
49
51
|
```
|
|
50
|
-
---
|
|
51
52
|
Automatically proceeding with "{Title Case Name}".
|
|
52
53
|
```
|
|
53
54
|
|
|
@@ -14,15 +14,16 @@ Specification Overview
|
|
|
14
14
|
Single concluded discussion found.
|
|
15
15
|
|
|
16
16
|
1. {Title Case Name}
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
17
|
+
└─ Spec: none
|
|
18
|
+
└─ Discussions:
|
|
19
|
+
└─ {discussion-name} (ready)
|
|
20
20
|
```
|
|
21
21
|
|
|
22
|
+
Indentation: `└─` starts at column 4 (under the name text, not the number). Discussion entries start at column 7.
|
|
23
|
+
|
|
22
24
|
### If in-progress discussions exist
|
|
23
25
|
|
|
24
26
|
```
|
|
25
|
-
---
|
|
26
27
|
Discussions not ready for specification:
|
|
27
28
|
These discussions are still in progress and must be concluded
|
|
28
29
|
before they can be included in a specification.
|
|
@@ -31,8 +32,9 @@ before they can be included in a specification.
|
|
|
31
32
|
|
|
32
33
|
### Key/Legend
|
|
33
34
|
|
|
35
|
+
No `---` separator before this section.
|
|
36
|
+
|
|
34
37
|
```
|
|
35
|
-
---
|
|
36
38
|
Key:
|
|
37
39
|
|
|
38
40
|
Discussion status:
|
|
@@ -45,7 +47,6 @@ Key:
|
|
|
45
47
|
## After Display
|
|
46
48
|
|
|
47
49
|
```
|
|
48
|
-
---
|
|
49
50
|
Automatically proceeding with "{Title Case Name}".
|
|
50
51
|
```
|
|
51
52
|
|