specweave 0.28.22 → 0.28.24
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/dist/src/cli/helpers/init/initial-increment-generator.d.ts.map +1 -1
- package/dist/src/cli/helpers/init/initial-increment-generator.js +123 -35
- package/dist/src/cli/helpers/init/initial-increment-generator.js.map +1 -1
- package/dist/src/cli/helpers/init/next-steps.d.ts.map +1 -1
- package/dist/src/cli/helpers/init/next-steps.js +16 -47
- package/dist/src/cli/helpers/init/next-steps.js.map +1 -1
- package/dist/src/core/sync/bidirectional-engine.d.ts.map +1 -1
- package/dist/src/core/sync/bidirectional-engine.js +3 -1
- package/dist/src/core/sync/bidirectional-engine.js.map +1 -1
- package/dist/src/importers/import-coordinator.d.ts.map +1 -1
- package/dist/src/importers/import-coordinator.js +17 -0
- package/dist/src/importers/import-coordinator.js.map +1 -1
- package/dist/src/init/repo/types.d.ts +1 -1
- package/dist/src/utils/multi-project-detector.d.ts +92 -0
- package/dist/src/utils/multi-project-detector.d.ts.map +1 -0
- package/dist/src/utils/multi-project-detector.js +369 -0
- package/dist/src/utils/multi-project-detector.js.map +1 -0
- package/package.json +1 -1
- package/plugins/specweave/agents/pm/AGENT.md +33 -12
- package/plugins/specweave/commands/specweave-import-external.md +1 -1
- package/plugins/specweave/commands/specweave.md +1 -1
- package/plugins/specweave/skills/increment-planner/SKILL.md +6 -13
- package/plugins/specweave/skills/spec-generator/SKILL.md +6 -11
- package/plugins/specweave-ado/commands/specweave-ado-sync.md +12 -12
- package/plugins/specweave-github/agents/github-manager/AGENT.md +5 -5
- package/plugins/specweave-github/commands/specweave-github-sync.md +12 -12
- package/plugins/specweave-github/commands/specweave-github-update-user-story.md +1 -1
- package/plugins/specweave-github/skills/github-sync/SKILL.md +4 -4
- package/plugins/specweave-jira/commands/specweave-jira-sync.md +11 -11
- package/plugins/specweave-jira/skills/specweave-jira-mapper/SKILL.md +2 -2
|
@@ -1,29 +1,29 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: specweave-ado:sync
|
|
3
|
-
description:
|
|
3
|
+
description: Two-way sync between SpecWeave increment and Azure DevOps work item (push & pull by default)
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Sync ADO Work Item Command
|
|
7
7
|
|
|
8
8
|
**Usage**: `/specweave-ado:sync <increment-id> [options]`
|
|
9
9
|
|
|
10
|
-
**Purpose**:
|
|
10
|
+
**Purpose**: Two-way synchronization between SpecWeave increment and Azure DevOps work item
|
|
11
11
|
|
|
12
|
-
**Default**: Two-way sync (
|
|
12
|
+
**Default**: Two-way sync (push & pull)
|
|
13
13
|
|
|
14
14
|
---
|
|
15
15
|
|
|
16
16
|
## Options
|
|
17
17
|
|
|
18
|
-
- `--direction <mode>`: Sync direction (default: `
|
|
19
|
-
- `
|
|
18
|
+
- `--direction <mode>`: Sync direction (default: `two-way`)
|
|
19
|
+
- `two-way`: SpecWeave ↔ ADO (default - recommended)
|
|
20
20
|
- `to-ado`: SpecWeave → ADO only (push progress)
|
|
21
21
|
- `from-ado`: ADO → SpecWeave only (pull updates)
|
|
22
22
|
|
|
23
23
|
## Examples
|
|
24
24
|
|
|
25
25
|
```bash
|
|
26
|
-
#
|
|
26
|
+
# Two-way sync (default - both directions)
|
|
27
27
|
/specweave-ado:sync 0005
|
|
28
28
|
|
|
29
29
|
# Push only (one-way to ADO)
|
|
@@ -37,7 +37,7 @@ description: Bidirectional sync between SpecWeave increment and Azure DevOps wor
|
|
|
37
37
|
|
|
38
38
|
## Command Behavior
|
|
39
39
|
|
|
40
|
-
When user runs this command, invoke `ado-manager` agent to perform
|
|
40
|
+
When user runs this command, invoke `ado-manager` agent to perform two-way sync:
|
|
41
41
|
|
|
42
42
|
### Phase 1: Pull FROM ADO (default behavior)
|
|
43
43
|
1. Fetch work item state from ADO API
|
|
@@ -66,7 +66,7 @@ When user runs this command, invoke `ado-manager` agent to perform bidirectional
|
|
|
66
66
|
```
|
|
67
67
|
Use Task tool with subagent_type: "specweave-ado:ado-manager:ado-manager"
|
|
68
68
|
|
|
69
|
-
Prompt: "
|
|
69
|
+
Prompt: "Two-way sync for increment 0005-payment-integration with ADO.
|
|
70
70
|
|
|
71
71
|
Phase 1 - Pull FROM ADO:
|
|
72
72
|
1. Fetch work item #12345 from ADO API
|
|
@@ -83,20 +83,20 @@ Phase 2 - Push TO ADO:
|
|
|
83
83
|
6. POST comment to ADO API
|
|
84
84
|
7. Update work item state/fields
|
|
85
85
|
|
|
86
|
-
Display:
|
|
86
|
+
Display: Two-way sync summary"
|
|
87
87
|
```
|
|
88
88
|
|
|
89
89
|
---
|
|
90
90
|
|
|
91
91
|
## Example Output
|
|
92
92
|
|
|
93
|
-
###
|
|
93
|
+
### Two-way Sync (Default)
|
|
94
94
|
|
|
95
95
|
```
|
|
96
|
-
🔄
|
|
96
|
+
🔄 Two-way sync for increment 0005...
|
|
97
97
|
|
|
98
98
|
✓ Azure DevOps work item: #12345
|
|
99
|
-
✓ Sync direction:
|
|
99
|
+
✓ Sync direction: Two-way (push & pull)
|
|
100
100
|
|
|
101
101
|
Detecting changes (both directions)...
|
|
102
102
|
|
|
@@ -38,7 +38,7 @@ GitHub issues MUST use living docs format:
|
|
|
38
38
|
|
|
39
39
|
**Tools**: Read, Write, Edit, Bash (GitHub CLI)
|
|
40
40
|
|
|
41
|
-
**Default Behavior**: **
|
|
41
|
+
**Default Behavior**: **Two-way sync** (push & pull) - Synchronizes changes in both directions automatically
|
|
42
42
|
|
|
43
43
|
---
|
|
44
44
|
|
|
@@ -69,8 +69,8 @@ Task({
|
|
|
69
69
|
|
|
70
70
|
As the GitHub Manager agent, I specialize in:
|
|
71
71
|
|
|
72
|
-
### 1.
|
|
73
|
-
- **Two-
|
|
72
|
+
### 1. Two-way Synchronization (Default)
|
|
73
|
+
- **Two-way Sync**: Keep SpecWeave and GitHub synchronized automatically
|
|
74
74
|
- **FROM GitHub**: Pull status changes, labels, comments, state updates
|
|
75
75
|
- **TO GitHub**: Push task completion, progress updates, metadata
|
|
76
76
|
- **Conflict Resolution**: Detect and resolve conflicts between systems
|
|
@@ -79,7 +79,7 @@ As the GitHub Manager agent, I specialize in:
|
|
|
79
79
|
|
|
80
80
|
### 2. Issue Management
|
|
81
81
|
- **Create Issues**: Generate well-formatted GitHub issues from increment specs
|
|
82
|
-
- **Update Issues**: Sync progress, add comments, update labels (
|
|
82
|
+
- **Update Issues**: Sync progress, add comments, update labels (two-way)
|
|
83
83
|
- **Close Issues**: Close issues with completion summaries
|
|
84
84
|
- **Link Issues**: Connect related issues, PRs, and increments
|
|
85
85
|
- **Bulk Operations**: Batch create/update/close issues
|
|
@@ -87,7 +87,7 @@ As the GitHub Manager agent, I specialize in:
|
|
|
87
87
|
### 3. Progress Tracking
|
|
88
88
|
- **Task Checklists**: Generate and update task checklists in issues
|
|
89
89
|
- **Progress Comments**: Post detailed task completion comments
|
|
90
|
-
- **Status Updates**:
|
|
90
|
+
- **Status Updates**: Two-way sync of increment status ↔ GitHub issue state
|
|
91
91
|
- **Time Tracking**: Track estimated vs actual time per task
|
|
92
92
|
- **Milestone Progress**: Update milestone completion percentages
|
|
93
93
|
|
|
@@ -83,7 +83,7 @@ Synchronize the current state of a SpecWeave increment with its GitHub issue acr
|
|
|
83
83
|
- `--comment`: Post progress comment (default)
|
|
84
84
|
- `--labels`: Update issue labels based on status
|
|
85
85
|
- `--force`: Force sync even if up-to-date
|
|
86
|
-
- `--direction`: Sync direction (`to-github`, `from-github`, `
|
|
86
|
+
- `--direction`: Sync direction (`to-github`, `from-github`, `two-way` - **default: two-way**)
|
|
87
87
|
- `--all`: Sync all active increments
|
|
88
88
|
|
|
89
89
|
### Safety Options
|
|
@@ -92,17 +92,17 @@ Synchronize the current state of a SpecWeave increment with its GitHub issue acr
|
|
|
92
92
|
|
|
93
93
|
## Sync Direction
|
|
94
94
|
|
|
95
|
-
**Default:
|
|
95
|
+
**Default: Two-way** (both directions)
|
|
96
96
|
|
|
97
97
|
SpecWeave syncs changes in **both directions** by default:
|
|
98
98
|
|
|
99
99
|
| Direction | What It Does | Use When |
|
|
100
100
|
|-----------|-------------|----------|
|
|
101
|
-
| **`
|
|
101
|
+
| **`two-way`** (default) | SpecWeave ↔ GitHub<br>• Pull changes FROM GitHub (status, labels, comments)<br>• Push changes TO GitHub (tasks, progress, metadata) | **Always** (recommended for keeping both systems in sync) |
|
|
102
102
|
| `to-github` | SpecWeave → GitHub only<br>• Push increment progress to GitHub<br>• Don't pull GitHub changes back | Read-only GitHub usage, or when GitHub is downstream |
|
|
103
103
|
| `from-github` | GitHub → SpecWeave only<br>• Pull GitHub issue updates<br>• Don't push SpecWeave changes | Importing GitHub issues, or when SpecWeave is downstream |
|
|
104
104
|
|
|
105
|
-
**Why
|
|
105
|
+
**Why Two-way?**
|
|
106
106
|
- ✅ Keep both systems synchronized automatically
|
|
107
107
|
- ✅ GitHub status changes update SpecWeave (closed issue → completed increment)
|
|
108
108
|
- ✅ SpecWeave task completion updates GitHub (task done → checklist updated)
|
|
@@ -121,16 +121,16 @@ SpecWeave syncs changes in **both directions** by default:
|
|
|
121
121
|
## Examples
|
|
122
122
|
|
|
123
123
|
```bash
|
|
124
|
-
# Interactive
|
|
124
|
+
# Interactive two-way sync (default - both directions)
|
|
125
125
|
/specweave-github:sync 0004
|
|
126
126
|
|
|
127
|
-
# Use specific profile (still
|
|
127
|
+
# Use specific profile (still two-way by default)
|
|
128
128
|
/specweave-github:sync 0004 --profile specweave-dev
|
|
129
129
|
|
|
130
|
-
# Specify time range (
|
|
130
|
+
# Specify time range (two-way)
|
|
131
131
|
/specweave-github:sync 0004 --time-range 1M
|
|
132
132
|
|
|
133
|
-
# Full
|
|
133
|
+
# Full two-way sync with all options
|
|
134
134
|
/specweave-github:sync 0004 --profile main --time-range 1M --tasks --labels
|
|
135
135
|
|
|
136
136
|
# One-way sync examples (override default)
|
|
@@ -140,7 +140,7 @@ SpecWeave syncs changes in **both directions** by default:
|
|
|
140
140
|
# Dry run to preview changes
|
|
141
141
|
/specweave-github:sync 0004 --dry-run
|
|
142
142
|
|
|
143
|
-
# Force sync all increments (
|
|
143
|
+
# Force sync all increments (two-way)
|
|
144
144
|
/specweave-github:sync --all --force
|
|
145
145
|
```
|
|
146
146
|
|
|
@@ -240,12 +240,12 @@ Continue with sync? [Y/n]:
|
|
|
240
240
|
If confirmed, sync proceeds with progress updates:
|
|
241
241
|
|
|
242
242
|
```
|
|
243
|
-
🔄
|
|
243
|
+
🔄 Two-way sync for increment 0004...
|
|
244
244
|
|
|
245
245
|
✓ Profile loaded: specweave-dev
|
|
246
246
|
✓ GitHub repository: anton-abyzov/specweave
|
|
247
247
|
✓ Rate limit check: PASSED (4,850/5,000 remaining)
|
|
248
|
-
✓ Sync direction:
|
|
248
|
+
✓ Sync direction: Two-way (push & pull)
|
|
249
249
|
|
|
250
250
|
Fetching increment state...
|
|
251
251
|
✓ Increment loaded: 0004-plugin-architecture
|
|
@@ -277,7 +277,7 @@ Syncing FROM GitHub...
|
|
|
277
277
|
|
|
278
278
|
Rate limit after sync: 4,570/5,000 (91% available)
|
|
279
279
|
|
|
280
|
-
✅
|
|
280
|
+
✅ Two-way Sync Complete!
|
|
281
281
|
|
|
282
282
|
SpecWeave ↔ GitHub synchronized
|
|
283
283
|
• Pushed: 3 task updates, progress comment
|
|
@@ -111,7 +111,7 @@ Progress: 3/6 tasks complete (50%)
|
|
|
111
111
|
**Related Commands**:
|
|
112
112
|
- `/specweave-github:sync-epic FS-031` - Sync entire epic (all user stories)
|
|
113
113
|
- `/specweave-github:create-issue 0031` - Create issue for increment
|
|
114
|
-
- `/specweave-github:sync 0031` -
|
|
114
|
+
- `/specweave-github:sync 0031` - Two-way sync for increment
|
|
115
115
|
|
|
116
116
|
---
|
|
117
117
|
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: github-sync
|
|
3
|
-
description:
|
|
3
|
+
description: Two-way synchronization between SpecWeave specs and GitHub Projects (push & pull by default). Activates ONLY when user asks questions about GitHub integration or needs help configuring GitHub sync. Does NOT activate for slash commands. For syncing, use /specweave-github:sync-spec command instead.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
# GitHub Sync -
|
|
6
|
+
# GitHub Sync - Two-way Spec ↔ Project Synchronization
|
|
7
7
|
|
|
8
8
|
**Purpose**: Seamlessly synchronize SpecWeave specs with GitHub Projects for team visibility and project management.
|
|
9
9
|
|
|
10
|
-
**Default Behavior**: **
|
|
10
|
+
**Default Behavior**: **Two-way sync** (push & pull) - Changes in either system are automatically synchronized
|
|
11
11
|
|
|
12
12
|
**⚠️ IMPORTANT**: This skill provides HELP and GUIDANCE about GitHub sync. For actual syncing, users should use the `/specweave-github:sync-spec` command directly. This skill should NOT auto-activate when the command is being invoked.
|
|
13
13
|
|
|
@@ -203,7 +203,7 @@ Configure GitHub sync in `.specweave/config.json`:
|
|
|
203
203
|
"specweave-github": {
|
|
204
204
|
"repo": "owner/repo",
|
|
205
205
|
"autoSyncSpecs": true,
|
|
206
|
-
"syncDirection": "
|
|
206
|
+
"syncDirection": "two-way",
|
|
207
207
|
"defaultLabels": ["specweave", "spec"],
|
|
208
208
|
"syncFrequency": "on-change"
|
|
209
209
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: specweave-jira:sync
|
|
3
|
-
description: Sync SpecWeave increments with JIRA epics/stories. Supports import, export,
|
|
3
|
+
description: Sync SpecWeave increments with JIRA epics/stories. Supports import, export, two-way sync, and granular item operations
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Sync Jira Command
|
|
@@ -11,10 +11,10 @@ You are a Jira synchronization expert. Help the user sync between Jira and SpecW
|
|
|
11
11
|
|
|
12
12
|
### Epic-Level Operations
|
|
13
13
|
|
|
14
|
-
**1.
|
|
14
|
+
**1. Two-way Sync (Default - Recommended)**
|
|
15
15
|
```
|
|
16
16
|
/specweave-jira:sync 0003 # Two-way sync (default)
|
|
17
|
-
/specweave-jira:sync 0003 --direction
|
|
17
|
+
/specweave-jira:sync 0003 --direction two-way # Explicit
|
|
18
18
|
```
|
|
19
19
|
|
|
20
20
|
**2. Import Jira Epic as SpecWeave Increment**
|
|
@@ -31,9 +31,9 @@ You are a Jira synchronization expert. Help the user sync between Jira and SpecW
|
|
|
31
31
|
|
|
32
32
|
### Sync Direction Options
|
|
33
33
|
|
|
34
|
-
**Default: `
|
|
34
|
+
**Default: `two-way`** (both directions - recommended)
|
|
35
35
|
|
|
36
|
-
- `--direction
|
|
36
|
+
- `--direction two-way`: SpecWeave ↔ Jira (default)
|
|
37
37
|
- Pull changes FROM Jira (status, priority, comments)
|
|
38
38
|
- Push changes TO Jira (tasks, progress, metadata)
|
|
39
39
|
|
|
@@ -175,7 +175,7 @@ When the user runs this command:
|
|
|
175
175
|
| Task | SCRUM-7 | Setup provider |
|
|
176
176
|
```
|
|
177
177
|
|
|
178
|
-
### Example 5:
|
|
178
|
+
### Example 5: Two-way Sync (Default)
|
|
179
179
|
**User**: `/specweave-jira:sync 0003`
|
|
180
180
|
**You**:
|
|
181
181
|
- Read increment 0003
|
|
@@ -186,9 +186,9 @@ When the user runs this command:
|
|
|
186
186
|
- FROM Jira: Status changes, priority updates, comments
|
|
187
187
|
- FROM SpecWeave: Task completion, progress updates
|
|
188
188
|
|
|
189
|
-
**Show
|
|
189
|
+
**Show two-way sync summary**:
|
|
190
190
|
```
|
|
191
|
-
✅
|
|
191
|
+
✅ Two-way Sync Complete: 0003 ↔ Jira
|
|
192
192
|
|
|
193
193
|
FROM Jira:
|
|
194
194
|
• SCRUM-1: Status changed to In Progress
|
|
@@ -204,7 +204,7 @@ Conflicts: None
|
|
|
204
204
|
**Handle conflicts if any**:
|
|
205
205
|
- Show both versions (Jira vs SpecWeave)
|
|
206
206
|
- Ask user which to keep or how to merge
|
|
207
|
-
- Apply resolution
|
|
207
|
+
- Apply resolution in both directions
|
|
208
208
|
|
|
209
209
|
### Example 6: Status Overview
|
|
210
210
|
**User**: `/specweave-jira:sync status`
|
|
@@ -229,12 +229,12 @@ Conflicts: None
|
|
|
229
229
|
|
|
230
230
|
## Related Commands
|
|
231
231
|
|
|
232
|
-
- `/specweave-github:sync` - Sync to GitHub issues (also
|
|
232
|
+
- `/specweave-github:sync` - Sync to GitHub issues (also two-way by default)
|
|
233
233
|
- `/specweave:increment` - Create new increment
|
|
234
234
|
- `/specweave:validate` - Validate increment quality
|
|
235
235
|
|
|
236
236
|
---
|
|
237
237
|
|
|
238
|
-
**
|
|
238
|
+
**Two-way by Default**: All sync operations are two-way unless you explicitly specify `--direction to-jira` or `--direction from-jira`. This keeps both systems synchronized automatically.
|
|
239
239
|
|
|
240
240
|
**Granular Control**: Unlike simple epic import/export, this command supports cherry-picking individual stories, bugs, and tasks for maximum flexibility.
|
|
@@ -328,7 +328,7 @@ JIRA Epic: PROJ-123
|
|
|
328
328
|
```yaml
|
|
329
329
|
jira:
|
|
330
330
|
last_sync: "2025-10-26T16:30:00Z"
|
|
331
|
-
sync_direction: "
|
|
331
|
+
sync_direction: "two-way"
|
|
332
332
|
conflicts_resolved: 2
|
|
333
333
|
```
|
|
334
334
|
|
|
@@ -336,7 +336,7 @@ JIRA Epic: PROJ-123
|
|
|
336
336
|
```
|
|
337
337
|
✅ Synced with JIRA!
|
|
338
338
|
|
|
339
|
-
Direction:
|
|
339
|
+
Direction: Two-way
|
|
340
340
|
Changes Applied:
|
|
341
341
|
- SpecWeave → JIRA: 3 updates
|
|
342
342
|
- JIRA → SpecWeave: 5 updates
|