@tekyzinc/gsd-t 2.50.12 → 2.53.10
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/CHANGELOG.md +24 -0
- package/README.md +379 -372
- package/bin/component-registry.js +250 -0
- package/bin/graph-cgc.js +510 -510
- package/bin/graph-indexer.js +147 -147
- package/bin/graph-overlay.js +195 -195
- package/bin/graph-parsers.js +327 -327
- package/bin/graph-query.js +453 -452
- package/bin/graph-store.js +154 -154
- package/bin/qa-calibrator.js +194 -0
- package/bin/scan-data-collector.js +153 -153
- package/bin/scan-diagrams-generators.js +187 -187
- package/bin/scan-diagrams.js +79 -79
- package/bin/scan-renderer.js +92 -92
- package/bin/scan-report-sections.js +121 -121
- package/bin/scan-report.js +184 -184
- package/bin/scan-schema-parsers.js +199 -199
- package/bin/scan-schema.js +103 -103
- package/bin/token-budget.js +246 -0
- package/commands/Claude-md.md +10 -10
- package/commands/branch.md +15 -15
- package/commands/checkin.md +45 -45
- package/commands/global-change.md +209 -209
- package/commands/gsd-t-audit.md +199 -0
- package/commands/gsd-t-backlog-add.md +94 -94
- package/commands/gsd-t-backlog-edit.md +111 -111
- package/commands/gsd-t-backlog-list.md +63 -63
- package/commands/gsd-t-backlog-move.md +94 -94
- package/commands/gsd-t-backlog-promote.md +123 -123
- package/commands/gsd-t-backlog-remove.md +86 -86
- package/commands/gsd-t-backlog-settings.md +158 -158
- package/commands/gsd-t-complete-milestone.md +528 -515
- package/commands/gsd-t-debug.md +506 -399
- package/commands/gsd-t-discuss.md +174 -174
- package/commands/gsd-t-execute.md +758 -634
- package/commands/gsd-t-feature.md +276 -276
- package/commands/gsd-t-health.md +142 -142
- package/commands/gsd-t-help.md +465 -457
- package/commands/gsd-t-impact.md +302 -302
- package/commands/gsd-t-init.md +320 -280
- package/commands/gsd-t-integrate.md +365 -249
- package/commands/gsd-t-milestone.md +87 -87
- package/commands/gsd-t-partition.md +442 -361
- package/commands/gsd-t-pause.md +82 -82
- package/commands/gsd-t-plan.md +345 -344
- package/commands/gsd-t-populate.md +111 -111
- package/commands/gsd-t-prd.md +326 -326
- package/commands/gsd-t-project.md +211 -211
- package/commands/gsd-t-promote-debt.md +123 -123
- package/commands/gsd-t-prompt.md +137 -137
- package/commands/gsd-t-qa.md +266 -266
- package/commands/gsd-t-quick.md +357 -234
- package/commands/gsd-t-reflect.md +134 -134
- package/commands/gsd-t-resume.md +72 -72
- package/commands/gsd-t-scan.md +615 -615
- package/commands/gsd-t-setup.md +76 -0
- package/commands/gsd-t-status.md +192 -166
- package/commands/gsd-t-test-sync.md +381 -381
- package/commands/gsd-t-triage-and-merge.md +171 -171
- package/commands/gsd-t-verify.md +382 -382
- package/commands/gsd-t-visualize.md +118 -118
- package/commands/gsd-t-wave.md +401 -378
- package/docs/GSD-T-README.md +425 -422
- package/docs/architecture.md +385 -369
- package/docs/harness-design-analysis.md +371 -0
- package/docs/infrastructure.md +205 -205
- package/docs/prd-graph-engine.md +398 -398
- package/docs/prd-gsd2-hybrid.md +559 -559
- package/docs/prd-harness-evolution.md +583 -0
- package/docs/requirements.md +14 -0
- package/docs/workflows.md +226 -226
- package/examples/.gsd-t/domains/example-domain/scope.md +13 -13
- package/package.json +40 -40
- package/scripts/gsd-t-auto-route.js +39 -39
- package/scripts/gsd-t-dashboard-mockup.html +1143 -1143
- package/scripts/gsd-t-dashboard-server.js +171 -171
- package/scripts/gsd-t-dashboard.html +262 -262
- package/scripts/gsd-t-event-writer.js +128 -128
- package/scripts/gsd-t-statusline.js +94 -94
- package/scripts/gsd-t-tools.js +175 -175
- package/templates/CLAUDE-global.md +639 -614
- package/templates/CLAUDE-project.md +24 -0
- package/templates/backlog-settings.md +18 -18
- package/templates/backlog.md +1 -1
- package/templates/progress.md +40 -40
- package/templates/shared-services-contract.md +60 -60
- package/templates/stacks/desktop.ini +2 -2
- package/bin/desktop.ini +0 -2
- package/commands/desktop.ini +0 -2
- package/docs/ci-examples/desktop.ini +0 -2
- package/docs/desktop.ini +0 -2
- package/examples/.gsd-t/contracts/desktop.ini +0 -2
- package/examples/.gsd-t/desktop.ini +0 -2
- package/examples/.gsd-t/domains/desktop.ini +0 -2
- package/examples/.gsd-t/domains/example-domain/desktop.ini +0 -2
- package/examples/desktop.ini +0 -2
- package/examples/rules/desktop.ini +0 -2
- package/scripts/desktop.ini +0 -2
- package/templates/desktop.ini +0 -2
|
@@ -1,94 +1,94 @@
|
|
|
1
|
-
# GSD-T: Backlog Move — Reorder Items by Position
|
|
2
|
-
|
|
3
|
-
You are reordering a backlog item from one position to another. Position in the backlog represents priority — item 1 is highest priority.
|
|
4
|
-
|
|
5
|
-
## Step 1: Read Backlog
|
|
6
|
-
|
|
7
|
-
Read `.gsd-t/backlog.md` and parse all entries.
|
|
8
|
-
|
|
9
|
-
Each entry follows this format:
|
|
10
|
-
```
|
|
11
|
-
## {position}. {title}
|
|
12
|
-
- **Type:** {type} | **App:** {app} | **Category:** {category}
|
|
13
|
-
- **Added:** {YYYY-MM-DD}
|
|
14
|
-
- {description}
|
|
15
|
-
```
|
|
16
|
-
|
|
17
|
-
Count the total number of entries. If the backlog is empty (no entries), inform the user:
|
|
18
|
-
"Backlog is empty. Nothing to move."
|
|
19
|
-
Stop here.
|
|
20
|
-
|
|
21
|
-
## Step 2: Parse Arguments
|
|
22
|
-
|
|
23
|
-
Extract from $ARGUMENTS:
|
|
24
|
-
- `<from-position>` — the current position number of the item to move
|
|
25
|
-
- `<to-position>` — the target position number to move it to
|
|
26
|
-
|
|
27
|
-
Both arguments are required. If either is missing, show usage:
|
|
28
|
-
"Usage: /gsd-t-backlog-move <from-position> <to-position>"
|
|
29
|
-
"Example: /gsd-t-backlog-move 5 2 — moves item 5 to position 2"
|
|
30
|
-
Stop here.
|
|
31
|
-
|
|
32
|
-
## Step 3: Validate Positions
|
|
33
|
-
|
|
34
|
-
Check that:
|
|
35
|
-
1. Both `from-position` and `to-position` are positive integers
|
|
36
|
-
2. Both positions exist in the backlog (between 1 and total entry count)
|
|
37
|
-
3. `from-position` and `to-position` are different
|
|
38
|
-
|
|
39
|
-
If any check fails, inform the user:
|
|
40
|
-
- Invalid number: "Position must be a positive integer. Got: {value}"
|
|
41
|
-
- Out of range: "Position {value} is out of range. Backlog has {count} items (valid: 1-{count})."
|
|
42
|
-
- Same position: "From and to positions are the same. Nothing to move."
|
|
43
|
-
Stop here.
|
|
44
|
-
|
|
45
|
-
## Step 4: Move Item
|
|
46
|
-
|
|
47
|
-
1. Remove the entry at `from-position` from the list
|
|
48
|
-
2. Insert it at `to-position` in the list
|
|
49
|
-
3. This shifts other entries up or down accordingly
|
|
50
|
-
|
|
51
|
-
## Step 5: Renumber and Rewrite
|
|
52
|
-
|
|
53
|
-
1. Renumber ALL entries sequentially starting from 1 (update the `## {N}. {title}` heading for each)
|
|
54
|
-
2. Rewrite `.gsd-t/backlog.md` with the reordered entries
|
|
55
|
-
3. Preserve the `# Backlog` heading at the top
|
|
56
|
-
4. Preserve all entry content (metadata, date, description) — only the position number in the heading changes
|
|
57
|
-
|
|
58
|
-
## Step 6: Confirm
|
|
59
|
-
|
|
60
|
-
Show the user what happened:
|
|
61
|
-
```
|
|
62
|
-
Moved: "{title}" from position {from} to position {to}
|
|
63
|
-
|
|
64
|
-
Updated backlog order (top 5):
|
|
65
|
-
1. {title}
|
|
66
|
-
2. {title}
|
|
67
|
-
3. {title}
|
|
68
|
-
4. {title}
|
|
69
|
-
5. {title}
|
|
70
|
-
```
|
|
71
|
-
|
|
72
|
-
If the backlog has fewer than 5 items, show all of them.
|
|
73
|
-
|
|
74
|
-
## Step 7: Document Ripple
|
|
75
|
-
|
|
76
|
-
If `.gsd-t/progress.md` exists, log the move in the Decision Log:
|
|
77
|
-
- Date: today's date
|
|
78
|
-
- Entry: "Backlog reorder: moved '{title}' from position {from} to {to}"
|
|
79
|
-
|
|
80
|
-
## Step 8: Test Verification
|
|
81
|
-
|
|
82
|
-
Verify the rewritten `.gsd-t/backlog.md` is well-formed:
|
|
83
|
-
1. Re-read the file
|
|
84
|
-
2. Confirm all entries parse correctly (heading, metadata, date, description)
|
|
85
|
-
3. Confirm positions are sequential (1, 2, 3... with no gaps or duplicates)
|
|
86
|
-
4. Confirm total entry count is unchanged from before the move
|
|
87
|
-
|
|
88
|
-
If any check fails, report the issue and attempt to fix (up to 2 attempts).
|
|
89
|
-
|
|
90
|
-
$ARGUMENTS
|
|
91
|
-
|
|
92
|
-
## Auto-Clear
|
|
93
|
-
|
|
94
|
-
All work is committed to project files. Execute `/clear` to free the context window for the next command.
|
|
1
|
+
# GSD-T: Backlog Move — Reorder Items by Position
|
|
2
|
+
|
|
3
|
+
You are reordering a backlog item from one position to another. Position in the backlog represents priority — item 1 is highest priority.
|
|
4
|
+
|
|
5
|
+
## Step 1: Read Backlog
|
|
6
|
+
|
|
7
|
+
Read `.gsd-t/backlog.md` and parse all entries.
|
|
8
|
+
|
|
9
|
+
Each entry follows this format:
|
|
10
|
+
```
|
|
11
|
+
## {position}. {title}
|
|
12
|
+
- **Type:** {type} | **App:** {app} | **Category:** {category}
|
|
13
|
+
- **Added:** {YYYY-MM-DD}
|
|
14
|
+
- {description}
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
Count the total number of entries. If the backlog is empty (no entries), inform the user:
|
|
18
|
+
"Backlog is empty. Nothing to move."
|
|
19
|
+
Stop here.
|
|
20
|
+
|
|
21
|
+
## Step 2: Parse Arguments
|
|
22
|
+
|
|
23
|
+
Extract from $ARGUMENTS:
|
|
24
|
+
- `<from-position>` — the current position number of the item to move
|
|
25
|
+
- `<to-position>` — the target position number to move it to
|
|
26
|
+
|
|
27
|
+
Both arguments are required. If either is missing, show usage:
|
|
28
|
+
"Usage: /gsd-t-backlog-move <from-position> <to-position>"
|
|
29
|
+
"Example: /gsd-t-backlog-move 5 2 — moves item 5 to position 2"
|
|
30
|
+
Stop here.
|
|
31
|
+
|
|
32
|
+
## Step 3: Validate Positions
|
|
33
|
+
|
|
34
|
+
Check that:
|
|
35
|
+
1. Both `from-position` and `to-position` are positive integers
|
|
36
|
+
2. Both positions exist in the backlog (between 1 and total entry count)
|
|
37
|
+
3. `from-position` and `to-position` are different
|
|
38
|
+
|
|
39
|
+
If any check fails, inform the user:
|
|
40
|
+
- Invalid number: "Position must be a positive integer. Got: {value}"
|
|
41
|
+
- Out of range: "Position {value} is out of range. Backlog has {count} items (valid: 1-{count})."
|
|
42
|
+
- Same position: "From and to positions are the same. Nothing to move."
|
|
43
|
+
Stop here.
|
|
44
|
+
|
|
45
|
+
## Step 4: Move Item
|
|
46
|
+
|
|
47
|
+
1. Remove the entry at `from-position` from the list
|
|
48
|
+
2. Insert it at `to-position` in the list
|
|
49
|
+
3. This shifts other entries up or down accordingly
|
|
50
|
+
|
|
51
|
+
## Step 5: Renumber and Rewrite
|
|
52
|
+
|
|
53
|
+
1. Renumber ALL entries sequentially starting from 1 (update the `## {N}. {title}` heading for each)
|
|
54
|
+
2. Rewrite `.gsd-t/backlog.md` with the reordered entries
|
|
55
|
+
3. Preserve the `# Backlog` heading at the top
|
|
56
|
+
4. Preserve all entry content (metadata, date, description) — only the position number in the heading changes
|
|
57
|
+
|
|
58
|
+
## Step 6: Confirm
|
|
59
|
+
|
|
60
|
+
Show the user what happened:
|
|
61
|
+
```
|
|
62
|
+
Moved: "{title}" from position {from} to position {to}
|
|
63
|
+
|
|
64
|
+
Updated backlog order (top 5):
|
|
65
|
+
1. {title}
|
|
66
|
+
2. {title}
|
|
67
|
+
3. {title}
|
|
68
|
+
4. {title}
|
|
69
|
+
5. {title}
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
If the backlog has fewer than 5 items, show all of them.
|
|
73
|
+
|
|
74
|
+
## Step 7: Document Ripple
|
|
75
|
+
|
|
76
|
+
If `.gsd-t/progress.md` exists, log the move in the Decision Log:
|
|
77
|
+
- Date: today's date
|
|
78
|
+
- Entry: "Backlog reorder: moved '{title}' from position {from} to {to}"
|
|
79
|
+
|
|
80
|
+
## Step 8: Test Verification
|
|
81
|
+
|
|
82
|
+
Verify the rewritten `.gsd-t/backlog.md` is well-formed:
|
|
83
|
+
1. Re-read the file
|
|
84
|
+
2. Confirm all entries parse correctly (heading, metadata, date, description)
|
|
85
|
+
3. Confirm positions are sequential (1, 2, 3... with no gaps or duplicates)
|
|
86
|
+
4. Confirm total entry count is unchanged from before the move
|
|
87
|
+
|
|
88
|
+
If any check fails, report the issue and attempt to fix (up to 2 attempts).
|
|
89
|
+
|
|
90
|
+
$ARGUMENTS
|
|
91
|
+
|
|
92
|
+
## Auto-Clear
|
|
93
|
+
|
|
94
|
+
All work is committed to project files. Execute `/clear` to free the context window for the next command.
|
|
@@ -1,123 +1,123 @@
|
|
|
1
|
-
# GSD-T: Backlog Promote — Refine, Classify, and Launch GSD-T Workflow
|
|
2
|
-
|
|
3
|
-
You are promoting a backlog item into the GSD-T workflow. This is the bridge from a captured idea to actionable work: refine the description, classify the scope, remove it from the backlog, and hand off to the appropriate GSD-T command.
|
|
4
|
-
|
|
5
|
-
## Step 1: Load Context
|
|
6
|
-
|
|
7
|
-
Read:
|
|
8
|
-
1. `CLAUDE.md`
|
|
9
|
-
2. `.gsd-t/progress.md` (if exists)
|
|
10
|
-
3. `.gsd-t/backlog.md` — the backlog file
|
|
11
|
-
|
|
12
|
-
Parse $ARGUMENTS to extract:
|
|
13
|
-
- `<position>` — the entry number to promote
|
|
14
|
-
|
|
15
|
-
If no position is provided, show an error:
|
|
16
|
-
"Usage: `/user:gsd-t-backlog-promote <position>`"
|
|
17
|
-
|
|
18
|
-
## Step 2: Find and Display Entry
|
|
19
|
-
|
|
20
|
-
Find the entry at the specified position in `.gsd-t/backlog.md`.
|
|
21
|
-
|
|
22
|
-
If the position doesn't exist, show an error:
|
|
23
|
-
"No backlog entry at position {position}. Run `/user:gsd-t-backlog-list` to see available entries."
|
|
24
|
-
|
|
25
|
-
Display the entry to the user:
|
|
26
|
-
```
|
|
27
|
-
Promoting backlog item #{position}:
|
|
28
|
-
|
|
29
|
-
{title}
|
|
30
|
-
Type: {type} | App: {app} | Category: {category}
|
|
31
|
-
Added: {date}
|
|
32
|
-
{description}
|
|
33
|
-
```
|
|
34
|
-
|
|
35
|
-
## Step 3: Refine Description
|
|
36
|
-
|
|
37
|
-
The backlog entry has a 1-2 sentence description. Expand it into full context:
|
|
38
|
-
|
|
39
|
-
1. Read `CLAUDE.md` and relevant docs (`docs/requirements.md`, `docs/architecture.md`, `docs/workflows.md`) to understand the project context
|
|
40
|
-
2. Read `.gsd-t/contracts/` to understand existing domain boundaries and interfaces
|
|
41
|
-
3. Build a comprehensive refined description that includes:
|
|
42
|
-
- **What** needs to be done (concrete deliverables)
|
|
43
|
-
- **Why** it matters (business or technical motivation)
|
|
44
|
-
- **Where** in the codebase it applies (affected files, modules, or domains)
|
|
45
|
-
- **Constraints** or considerations (existing patterns to follow, things to avoid)
|
|
46
|
-
|
|
47
|
-
If the original description is ambiguous or could be interpreted multiple ways, ask the user clarifying questions before proceeding.
|
|
48
|
-
|
|
49
|
-
Present the refined description to the user for confirmation:
|
|
50
|
-
```
|
|
51
|
-
Refined description:
|
|
52
|
-
{refined description}
|
|
53
|
-
|
|
54
|
-
Does this capture the intent? (Adjust if needed, or confirm to proceed)
|
|
55
|
-
```
|
|
56
|
-
|
|
57
|
-
## Step 4: Classify
|
|
58
|
-
|
|
59
|
-
Based on the refined description, determine which GSD-T workflow to create:
|
|
60
|
-
|
|
61
|
-
| Classification | Criteria | Triggers |
|
|
62
|
-
|---------------|----------|----------|
|
|
63
|
-
| **Milestone** | Multi-file, multi-phase work that needs partitioning (complex feature, large refactor) | `gsd-t-milestone` |
|
|
64
|
-
| **Quick** | Small scope, obvious implementation, can be done in one focused session | `gsd-t-quick` |
|
|
65
|
-
| **Debug** | Specific broken behavior that needs diagnosis and fix | `gsd-t-debug` |
|
|
66
|
-
| **Feature** | Significant new capability that needs impact assessment first | `gsd-t-feature` |
|
|
67
|
-
|
|
68
|
-
Present the classification to the user with rationale:
|
|
69
|
-
```
|
|
70
|
-
Classification: {classification}
|
|
71
|
-
|
|
72
|
-
Rationale: {why this classification fits}
|
|
73
|
-
|
|
74
|
-
If you disagree, tell me the correct classification and I'll adjust.
|
|
75
|
-
```
|
|
76
|
-
|
|
77
|
-
Wait for user confirmation or override before proceeding.
|
|
78
|
-
|
|
79
|
-
## Step 5: Remove from Backlog
|
|
80
|
-
|
|
81
|
-
After classification is confirmed:
|
|
82
|
-
|
|
83
|
-
1. Remove the entry at position {position} from `.gsd-t/backlog.md`
|
|
84
|
-
2. Renumber all remaining entries sequentially (1, 2, 3...)
|
|
85
|
-
3. Preserve all other entry content exactly as-is
|
|
86
|
-
|
|
87
|
-
## Step 6: Launch Workflow
|
|
88
|
-
|
|
89
|
-
Based on the classification, present the command for the user to invoke:
|
|
90
|
-
|
|
91
|
-
- **Milestone**: "Run `/user:gsd-t-milestone {refined description}`"
|
|
92
|
-
- **Quick**: "Run `/user:gsd-t-quick {refined description}`"
|
|
93
|
-
- **Debug**: "Run `/user:gsd-t-debug {refined description}`"
|
|
94
|
-
- **Feature**: "Run `/user:gsd-t-feature {refined description}`"
|
|
95
|
-
|
|
96
|
-
Display the full command with the refined description ready to copy.
|
|
97
|
-
|
|
98
|
-
## Step 7: Document Ripple
|
|
99
|
-
|
|
100
|
-
Update affected documentation:
|
|
101
|
-
|
|
102
|
-
### Always update:
|
|
103
|
-
1. **`.gsd-t/progress.md`** — Add to Decision Log: "{date}: Promoted backlog item #{position} '{title}' as {classification}"
|
|
104
|
-
|
|
105
|
-
### Check if affected:
|
|
106
|
-
2. **`docs/requirements.md`** — If the promoted item implies a new requirement, note it
|
|
107
|
-
3. **`.gsd-t/techdebt.md`** — If this was a debt item being promoted, cross-reference it
|
|
108
|
-
|
|
109
|
-
### Skip what's not affected.
|
|
110
|
-
|
|
111
|
-
## Step 8: Test Verification
|
|
112
|
-
|
|
113
|
-
Verify the backlog file is well-formed after removal and renumbering:
|
|
114
|
-
|
|
115
|
-
1. **Check format**: Confirm `.gsd-t/backlog.md` follows the file-format-contract (sequential numbering, correct entry structure)
|
|
116
|
-
2. **Check integrity**: Verify no entries were lost or corrupted during renumbering
|
|
117
|
-
3. **Check empty state**: If all entries were removed, verify file contains only the `# Backlog` heading
|
|
118
|
-
|
|
119
|
-
$ARGUMENTS
|
|
120
|
-
|
|
121
|
-
## Auto-Clear
|
|
122
|
-
|
|
123
|
-
All work is committed to project files. Execute `/clear` to free the context window for the next command.
|
|
1
|
+
# GSD-T: Backlog Promote — Refine, Classify, and Launch GSD-T Workflow
|
|
2
|
+
|
|
3
|
+
You are promoting a backlog item into the GSD-T workflow. This is the bridge from a captured idea to actionable work: refine the description, classify the scope, remove it from the backlog, and hand off to the appropriate GSD-T command.
|
|
4
|
+
|
|
5
|
+
## Step 1: Load Context
|
|
6
|
+
|
|
7
|
+
Read:
|
|
8
|
+
1. `CLAUDE.md`
|
|
9
|
+
2. `.gsd-t/progress.md` (if exists)
|
|
10
|
+
3. `.gsd-t/backlog.md` — the backlog file
|
|
11
|
+
|
|
12
|
+
Parse $ARGUMENTS to extract:
|
|
13
|
+
- `<position>` — the entry number to promote
|
|
14
|
+
|
|
15
|
+
If no position is provided, show an error:
|
|
16
|
+
"Usage: `/user:gsd-t-backlog-promote <position>`"
|
|
17
|
+
|
|
18
|
+
## Step 2: Find and Display Entry
|
|
19
|
+
|
|
20
|
+
Find the entry at the specified position in `.gsd-t/backlog.md`.
|
|
21
|
+
|
|
22
|
+
If the position doesn't exist, show an error:
|
|
23
|
+
"No backlog entry at position {position}. Run `/user:gsd-t-backlog-list` to see available entries."
|
|
24
|
+
|
|
25
|
+
Display the entry to the user:
|
|
26
|
+
```
|
|
27
|
+
Promoting backlog item #{position}:
|
|
28
|
+
|
|
29
|
+
{title}
|
|
30
|
+
Type: {type} | App: {app} | Category: {category}
|
|
31
|
+
Added: {date}
|
|
32
|
+
{description}
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
## Step 3: Refine Description
|
|
36
|
+
|
|
37
|
+
The backlog entry has a 1-2 sentence description. Expand it into full context:
|
|
38
|
+
|
|
39
|
+
1. Read `CLAUDE.md` and relevant docs (`docs/requirements.md`, `docs/architecture.md`, `docs/workflows.md`) to understand the project context
|
|
40
|
+
2. Read `.gsd-t/contracts/` to understand existing domain boundaries and interfaces
|
|
41
|
+
3. Build a comprehensive refined description that includes:
|
|
42
|
+
- **What** needs to be done (concrete deliverables)
|
|
43
|
+
- **Why** it matters (business or technical motivation)
|
|
44
|
+
- **Where** in the codebase it applies (affected files, modules, or domains)
|
|
45
|
+
- **Constraints** or considerations (existing patterns to follow, things to avoid)
|
|
46
|
+
|
|
47
|
+
If the original description is ambiguous or could be interpreted multiple ways, ask the user clarifying questions before proceeding.
|
|
48
|
+
|
|
49
|
+
Present the refined description to the user for confirmation:
|
|
50
|
+
```
|
|
51
|
+
Refined description:
|
|
52
|
+
{refined description}
|
|
53
|
+
|
|
54
|
+
Does this capture the intent? (Adjust if needed, or confirm to proceed)
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
## Step 4: Classify
|
|
58
|
+
|
|
59
|
+
Based on the refined description, determine which GSD-T workflow to create:
|
|
60
|
+
|
|
61
|
+
| Classification | Criteria | Triggers |
|
|
62
|
+
|---------------|----------|----------|
|
|
63
|
+
| **Milestone** | Multi-file, multi-phase work that needs partitioning (complex feature, large refactor) | `gsd-t-milestone` |
|
|
64
|
+
| **Quick** | Small scope, obvious implementation, can be done in one focused session | `gsd-t-quick` |
|
|
65
|
+
| **Debug** | Specific broken behavior that needs diagnosis and fix | `gsd-t-debug` |
|
|
66
|
+
| **Feature** | Significant new capability that needs impact assessment first | `gsd-t-feature` |
|
|
67
|
+
|
|
68
|
+
Present the classification to the user with rationale:
|
|
69
|
+
```
|
|
70
|
+
Classification: {classification}
|
|
71
|
+
|
|
72
|
+
Rationale: {why this classification fits}
|
|
73
|
+
|
|
74
|
+
If you disagree, tell me the correct classification and I'll adjust.
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
Wait for user confirmation or override before proceeding.
|
|
78
|
+
|
|
79
|
+
## Step 5: Remove from Backlog
|
|
80
|
+
|
|
81
|
+
After classification is confirmed:
|
|
82
|
+
|
|
83
|
+
1. Remove the entry at position {position} from `.gsd-t/backlog.md`
|
|
84
|
+
2. Renumber all remaining entries sequentially (1, 2, 3...)
|
|
85
|
+
3. Preserve all other entry content exactly as-is
|
|
86
|
+
|
|
87
|
+
## Step 6: Launch Workflow
|
|
88
|
+
|
|
89
|
+
Based on the classification, present the command for the user to invoke:
|
|
90
|
+
|
|
91
|
+
- **Milestone**: "Run `/user:gsd-t-milestone {refined description}`"
|
|
92
|
+
- **Quick**: "Run `/user:gsd-t-quick {refined description}`"
|
|
93
|
+
- **Debug**: "Run `/user:gsd-t-debug {refined description}`"
|
|
94
|
+
- **Feature**: "Run `/user:gsd-t-feature {refined description}`"
|
|
95
|
+
|
|
96
|
+
Display the full command with the refined description ready to copy.
|
|
97
|
+
|
|
98
|
+
## Step 7: Document Ripple
|
|
99
|
+
|
|
100
|
+
Update affected documentation:
|
|
101
|
+
|
|
102
|
+
### Always update:
|
|
103
|
+
1. **`.gsd-t/progress.md`** — Add to Decision Log: "{date}: Promoted backlog item #{position} '{title}' as {classification}"
|
|
104
|
+
|
|
105
|
+
### Check if affected:
|
|
106
|
+
2. **`docs/requirements.md`** — If the promoted item implies a new requirement, note it
|
|
107
|
+
3. **`.gsd-t/techdebt.md`** — If this was a debt item being promoted, cross-reference it
|
|
108
|
+
|
|
109
|
+
### Skip what's not affected.
|
|
110
|
+
|
|
111
|
+
## Step 8: Test Verification
|
|
112
|
+
|
|
113
|
+
Verify the backlog file is well-formed after removal and renumbering:
|
|
114
|
+
|
|
115
|
+
1. **Check format**: Confirm `.gsd-t/backlog.md` follows the file-format-contract (sequential numbering, correct entry structure)
|
|
116
|
+
2. **Check integrity**: Verify no entries were lost or corrupted during renumbering
|
|
117
|
+
3. **Check empty state**: If all entries were removed, verify file contains only the `# Backlog` heading
|
|
118
|
+
|
|
119
|
+
$ARGUMENTS
|
|
120
|
+
|
|
121
|
+
## Auto-Clear
|
|
122
|
+
|
|
123
|
+
All work is committed to project files. Execute `/clear` to free the context window for the next command.
|
|
@@ -1,86 +1,86 @@
|
|
|
1
|
-
# GSD-T: Backlog Remove — Drop Item with Optional Reason
|
|
2
|
-
|
|
3
|
-
You are removing an entry from the backlog. This deletes the item, renumbers remaining entries, and logs the removal.
|
|
4
|
-
|
|
5
|
-
## Step 1: Read Backlog
|
|
6
|
-
|
|
7
|
-
Read `.gsd-t/backlog.md` and parse all entries.
|
|
8
|
-
|
|
9
|
-
Find the entry at the specified position from $ARGUMENTS.
|
|
10
|
-
|
|
11
|
-
If the file doesn't exist or has no entries:
|
|
12
|
-
- "No backlog found. Nothing to remove."
|
|
13
|
-
- Stop.
|
|
14
|
-
|
|
15
|
-
If the position doesn't exist (out of range or invalid):
|
|
16
|
-
- "Position {N} not found. The backlog has {count} entries."
|
|
17
|
-
- Stop.
|
|
18
|
-
|
|
19
|
-
## Step 2: Confirm Removal
|
|
20
|
-
|
|
21
|
-
Display the entry details to the user:
|
|
22
|
-
|
|
23
|
-
```
|
|
24
|
-
Remove this backlog item?
|
|
25
|
-
|
|
26
|
-
## {position}. {title}
|
|
27
|
-
- Type: {type} | App: {app} | Category: {category}
|
|
28
|
-
- Added: {date}
|
|
29
|
-
- {description}
|
|
30
|
-
|
|
31
|
-
Confirm removal? (y/n)
|
|
32
|
-
```
|
|
33
|
-
|
|
34
|
-
Wait for user confirmation before proceeding. If the user declines, stop.
|
|
35
|
-
|
|
36
|
-
## Step 3: Remove Entry
|
|
37
|
-
|
|
38
|
-
Delete the entry from `.gsd-t/backlog.md`.
|
|
39
|
-
|
|
40
|
-
## Step 4: Renumber Entries
|
|
41
|
-
|
|
42
|
-
Renumber ALL remaining entries sequentially starting from 1.
|
|
43
|
-
|
|
44
|
-
Each entry heading must follow the format: `## {position}. {title}`
|
|
45
|
-
|
|
46
|
-
Rewrite `.gsd-t/backlog.md` with the updated entries. If no entries remain, the file should contain only the `# Backlog` heading.
|
|
47
|
-
|
|
48
|
-
## Step 5: Log Removal
|
|
49
|
-
|
|
50
|
-
Parse $ARGUMENTS for the optional `--reason "..."` flag.
|
|
51
|
-
|
|
52
|
-
Add a Decision Log entry in `.gsd-t/progress.md`:
|
|
53
|
-
|
|
54
|
-
```
|
|
55
|
-
| {YYYY-MM-DD} | Removed backlog item "{title}"{reason_suffix} |
|
|
56
|
-
```
|
|
57
|
-
|
|
58
|
-
Where `{reason_suffix}` is ` — Reason: {reason}` if `--reason` was provided, or empty if not.
|
|
59
|
-
|
|
60
|
-
## Step 6: Document Ripple
|
|
61
|
-
|
|
62
|
-
If `.gsd-t/progress.md` exists, update:
|
|
63
|
-
|
|
64
|
-
### Always update:
|
|
65
|
-
1. **`.gsd-t/progress.md`** — Decision Log entry for the removal (done in Step 5)
|
|
66
|
-
|
|
67
|
-
### Check if affected:
|
|
68
|
-
2. **`.gsd-t/techdebt.md`** — If the removed item was related to tracked debt, note its removal
|
|
69
|
-
|
|
70
|
-
### Skip what's not affected — most removals only touch progress.md.
|
|
71
|
-
|
|
72
|
-
## Step 7: Test Verification
|
|
73
|
-
|
|
74
|
-
Verify the backlog file is well-formed after removal:
|
|
75
|
-
|
|
76
|
-
1. Read `.gsd-t/backlog.md` and confirm:
|
|
77
|
-
- Entries are numbered sequentially (1, 2, 3...) with no gaps
|
|
78
|
-
- Each entry follows the format: `## {N}. {title}` + metadata line + date line + description
|
|
79
|
-
- No orphaned content or broken formatting
|
|
80
|
-
2. If any issues found, fix them before finishing
|
|
81
|
-
|
|
82
|
-
$ARGUMENTS
|
|
83
|
-
|
|
84
|
-
## Auto-Clear
|
|
85
|
-
|
|
86
|
-
All work is committed to project files. Execute `/clear` to free the context window for the next command.
|
|
1
|
+
# GSD-T: Backlog Remove — Drop Item with Optional Reason
|
|
2
|
+
|
|
3
|
+
You are removing an entry from the backlog. This deletes the item, renumbers remaining entries, and logs the removal.
|
|
4
|
+
|
|
5
|
+
## Step 1: Read Backlog
|
|
6
|
+
|
|
7
|
+
Read `.gsd-t/backlog.md` and parse all entries.
|
|
8
|
+
|
|
9
|
+
Find the entry at the specified position from $ARGUMENTS.
|
|
10
|
+
|
|
11
|
+
If the file doesn't exist or has no entries:
|
|
12
|
+
- "No backlog found. Nothing to remove."
|
|
13
|
+
- Stop.
|
|
14
|
+
|
|
15
|
+
If the position doesn't exist (out of range or invalid):
|
|
16
|
+
- "Position {N} not found. The backlog has {count} entries."
|
|
17
|
+
- Stop.
|
|
18
|
+
|
|
19
|
+
## Step 2: Confirm Removal
|
|
20
|
+
|
|
21
|
+
Display the entry details to the user:
|
|
22
|
+
|
|
23
|
+
```
|
|
24
|
+
Remove this backlog item?
|
|
25
|
+
|
|
26
|
+
## {position}. {title}
|
|
27
|
+
- Type: {type} | App: {app} | Category: {category}
|
|
28
|
+
- Added: {date}
|
|
29
|
+
- {description}
|
|
30
|
+
|
|
31
|
+
Confirm removal? (y/n)
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
Wait for user confirmation before proceeding. If the user declines, stop.
|
|
35
|
+
|
|
36
|
+
## Step 3: Remove Entry
|
|
37
|
+
|
|
38
|
+
Delete the entry from `.gsd-t/backlog.md`.
|
|
39
|
+
|
|
40
|
+
## Step 4: Renumber Entries
|
|
41
|
+
|
|
42
|
+
Renumber ALL remaining entries sequentially starting from 1.
|
|
43
|
+
|
|
44
|
+
Each entry heading must follow the format: `## {position}. {title}`
|
|
45
|
+
|
|
46
|
+
Rewrite `.gsd-t/backlog.md` with the updated entries. If no entries remain, the file should contain only the `# Backlog` heading.
|
|
47
|
+
|
|
48
|
+
## Step 5: Log Removal
|
|
49
|
+
|
|
50
|
+
Parse $ARGUMENTS for the optional `--reason "..."` flag.
|
|
51
|
+
|
|
52
|
+
Add a Decision Log entry in `.gsd-t/progress.md`:
|
|
53
|
+
|
|
54
|
+
```
|
|
55
|
+
| {YYYY-MM-DD} | Removed backlog item "{title}"{reason_suffix} |
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
Where `{reason_suffix}` is ` — Reason: {reason}` if `--reason` was provided, or empty if not.
|
|
59
|
+
|
|
60
|
+
## Step 6: Document Ripple
|
|
61
|
+
|
|
62
|
+
If `.gsd-t/progress.md` exists, update:
|
|
63
|
+
|
|
64
|
+
### Always update:
|
|
65
|
+
1. **`.gsd-t/progress.md`** — Decision Log entry for the removal (done in Step 5)
|
|
66
|
+
|
|
67
|
+
### Check if affected:
|
|
68
|
+
2. **`.gsd-t/techdebt.md`** — If the removed item was related to tracked debt, note its removal
|
|
69
|
+
|
|
70
|
+
### Skip what's not affected — most removals only touch progress.md.
|
|
71
|
+
|
|
72
|
+
## Step 7: Test Verification
|
|
73
|
+
|
|
74
|
+
Verify the backlog file is well-formed after removal:
|
|
75
|
+
|
|
76
|
+
1. Read `.gsd-t/backlog.md` and confirm:
|
|
77
|
+
- Entries are numbered sequentially (1, 2, 3...) with no gaps
|
|
78
|
+
- Each entry follows the format: `## {N}. {title}` + metadata line + date line + description
|
|
79
|
+
- No orphaned content or broken formatting
|
|
80
|
+
2. If any issues found, fix them before finishing
|
|
81
|
+
|
|
82
|
+
$ARGUMENTS
|
|
83
|
+
|
|
84
|
+
## Auto-Clear
|
|
85
|
+
|
|
86
|
+
All work is committed to project files. Execute `/clear` to free the context window for the next command.
|