specweave 1.0.46 → 1.0.48
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/CLAUDE.md +47 -23
- package/dist/plugins/specweave-github/lib/github-feature-sync-cli.js +14 -0
- package/dist/plugins/specweave-github/lib/github-feature-sync-cli.js.map +1 -1
- package/dist/src/cli/workers/codebase-rescan-worker.d.ts +21 -0
- package/dist/src/cli/workers/codebase-rescan-worker.d.ts.map +1 -0
- package/dist/src/cli/workers/codebase-rescan-worker.js +738 -0
- package/dist/src/cli/workers/codebase-rescan-worker.js.map +1 -0
- package/dist/src/core/background/job-launcher.d.ts +24 -0
- package/dist/src/core/background/job-launcher.d.ts.map +1 -1
- package/dist/src/core/background/job-launcher.js +87 -0
- package/dist/src/core/background/job-launcher.js.map +1 -1
- package/dist/src/core/background/types.d.ts +32 -2
- package/dist/src/core/background/types.d.ts.map +1 -1
- package/dist/src/core/sync/external-tool-resolver.d.ts.map +1 -1
- package/dist/src/core/sync/external-tool-resolver.js +22 -0
- package/dist/src/core/sync/external-tool-resolver.js.map +1 -1
- package/dist/src/core/types/increment-metadata.d.ts +1 -1
- package/dist/src/core/types/increment-metadata.d.ts.map +1 -1
- package/dist/src/sync/sync-coordinator.d.ts +12 -0
- package/dist/src/sync/sync-coordinator.d.ts.map +1 -1
- package/dist/src/sync/sync-coordinator.js +45 -13
- package/dist/src/sync/sync-coordinator.js.map +1 -1
- package/dist/src/utils/docs-validator.d.ts +9 -0
- package/dist/src/utils/docs-validator.d.ts.map +1 -1
- package/dist/src/utils/docs-validator.js +35 -3
- package/dist/src/utils/docs-validator.js.map +1 -1
- package/package.json +1 -1
- package/plugins/specweave/COMMANDS.md +133 -69
- package/plugins/specweave/commands/context.md +381 -0
- package/plugins/specweave/commands/discrepancies.md +5 -0
- package/plugins/specweave/commands/discrepancy-to-increment.md +5 -0
- package/plugins/specweave/commands/do.md +37 -3
- package/plugins/specweave/commands/notifications.md +5 -0
- package/plugins/specweave/commands/sync-logs.md +5 -0
- package/plugins/specweave/commands/sync-monitor.md +5 -0
- package/plugins/specweave/hooks/v2/handlers/github-sync-handler.sh +196 -14
- package/plugins/specweave/hooks/v2/handlers/living-specs-handler.sh +35 -0
- package/plugins/specweave/lib/hooks/launch-codebase-rescan.js +91 -0
- package/plugins/specweave/lib/hooks/launch-codebase-rescan.ts +132 -0
- package/plugins/specweave/lib/vendor/core/types/increment-metadata.d.ts +1 -1
- package/plugins/specweave/skills/living-docs-navigator/SKILL.md +139 -0
- package/plugins/specweave-github/lib/github-feature-sync-cli.js +11 -0
- package/plugins/specweave-github/lib/github-feature-sync-cli.ts +14 -0
- package/src/templates/CLAUDE.md.template +35 -5
- package/src/templates/config.json.template +10 -3
- package/plugins/specweave/commands/costs.md +0 -261
package/CLAUDE.md
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
<!-- SW:META template="claude" version="1.0.
|
|
1
|
+
<!-- SW:META template="claude" version="1.0.47" sections="header,start,autodetect,metarule,rules,workflow,context,structure,taskformat,secrets,syncing,mapping,testing,limits,troubleshooting,principles,linking,docs" -->
|
|
2
2
|
|
|
3
|
-
<!-- SW:SECTION:header version="1.0.
|
|
3
|
+
<!-- SW:SECTION:header version="1.0.46" -->
|
|
4
4
|
**Framework**: SpecWeave | **Truth**: `spec.md` + `tasks.md`
|
|
5
5
|
<!-- SW:END:header -->
|
|
6
6
|
|
|
7
|
-
<!-- SW:SECTION:start version="1.0.
|
|
7
|
+
<!-- SW:SECTION:start version="1.0.46" -->
|
|
8
8
|
## Getting Started
|
|
9
9
|
|
|
10
10
|
**Initial increment**: `0001-project-setup` (auto-created by `specweave init`)
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
2. **Customize**: Edit spec.md and use for setup tasks
|
|
15
15
|
<!-- SW:END:start -->
|
|
16
16
|
|
|
17
|
-
<!-- SW:SECTION:autodetect version="1.0.
|
|
17
|
+
<!-- SW:SECTION:autodetect version="1.0.46" -->
|
|
18
18
|
## Auto-Detection
|
|
19
19
|
|
|
20
20
|
SpecWeave auto-detects product descriptions and routes to `/sw:increment`:
|
|
@@ -24,7 +24,7 @@ SpecWeave auto-detects product descriptions and routes to `/sw:increment`:
|
|
|
24
24
|
**Opt-out phrases**: "Just brainstorm first" | "Don't plan yet" | "Quick discussion" | "Let's explore ideas"
|
|
25
25
|
<!-- SW:END:autodetect -->
|
|
26
26
|
|
|
27
|
-
<!-- SW:SECTION:metarule version="1.0.
|
|
27
|
+
<!-- SW:SECTION:metarule version="1.0.46" -->
|
|
28
28
|
## Meta-Rule: Think-Before-Act
|
|
29
29
|
|
|
30
30
|
**Satisfy dependencies BEFORE dependent operations.**
|
|
@@ -35,7 +35,7 @@ SpecWeave auto-detects product descriptions and routes to `/sw:increment`:
|
|
|
35
35
|
```
|
|
36
36
|
<!-- SW:END:metarule -->
|
|
37
37
|
|
|
38
|
-
<!-- SW:SECTION:rules version="1.0.
|
|
38
|
+
<!-- SW:SECTION:rules version="1.0.46" -->
|
|
39
39
|
## Rules
|
|
40
40
|
|
|
41
41
|
1. **Files** → `.specweave/increments/####-name/` (spec.md, plan.md, tasks.md at root; reports/, scripts/, logs/ subfolders)
|
|
@@ -45,7 +45,7 @@ SpecWeave auto-detects product descriptions and routes to `/sw:increment`:
|
|
|
45
45
|
5. **Root clean**: NEVER create .md/reports/scripts in project root → use increment folders
|
|
46
46
|
<!-- SW:END:rules -->
|
|
47
47
|
|
|
48
|
-
<!-- SW:SECTION:workflow version="1.0.
|
|
48
|
+
<!-- SW:SECTION:workflow version="1.0.46" -->
|
|
49
49
|
## Workflow
|
|
50
50
|
|
|
51
51
|
`/sw:increment "X"` → `/sw:do` → `/sw:progress` → `/sw:done 0001`
|
|
@@ -62,15 +62,29 @@ SpecWeave auto-detects product descriptions and routes to `/sw:increment`:
|
|
|
62
62
|
**Natural language**: "Let's build X" → `/sw:increment` | "What's status?" → `/sw:progress` | "We're done" → `/sw:done`
|
|
63
63
|
<!-- SW:END:workflow -->
|
|
64
64
|
|
|
65
|
-
<!-- SW:SECTION:
|
|
65
|
+
<!-- SW:SECTION:context version="1.0.47" -->
|
|
66
|
+
## Living Docs Context
|
|
67
|
+
|
|
68
|
+
**Before implementing**: Check existing docs for patterns and decisions.
|
|
69
|
+
|
|
70
|
+
```bash
|
|
71
|
+
grep -ril "keyword" .specweave/docs/internal/ # Search for related docs
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
**Key locations**: `specs/` (features) | `architecture/adr/` (decisions) | `architecture/` (design)
|
|
75
|
+
|
|
76
|
+
**Always check ADRs** before design decisions. Use `/sw:context <topic>` to load context.
|
|
77
|
+
<!-- SW:END:context -->
|
|
78
|
+
|
|
79
|
+
<!-- SW:SECTION:structure version="1.0.46" -->
|
|
66
80
|
## Structure
|
|
67
81
|
|
|
68
82
|
```
|
|
69
83
|
.specweave/
|
|
70
84
|
├── increments/####-name/ # metadata.json, spec.md, tasks.md
|
|
71
85
|
├── docs/internal/
|
|
72
|
-
│ ├── specs/{project}/ # Living docs
|
|
73
|
-
│ ├── architecture/adr/ # ADRs
|
|
86
|
+
│ ├── specs/{project}/ # Living docs (check before implementing!)
|
|
87
|
+
│ ├── architecture/adr/ # ADRs (check before design decisions!)
|
|
74
88
|
│ └── operations/ # Runbooks
|
|
75
89
|
└── config.json
|
|
76
90
|
```
|
|
@@ -84,7 +98,7 @@ SpecWeave auto-detects product descriptions and routes to `/sw:increment`:
|
|
|
84
98
|
**Path syntax**: `//path` = absolute | `/path` = relative to settings file | `**` = recursive | `additionalDirectories` = explicit working dirs
|
|
85
99
|
<!-- SW:END:structure -->
|
|
86
100
|
|
|
87
|
-
<!-- SW:SECTION:taskformat version="1.0.
|
|
101
|
+
<!-- SW:SECTION:taskformat version="1.0.46" -->
|
|
88
102
|
## Task Format
|
|
89
103
|
|
|
90
104
|
```markdown
|
|
@@ -94,7 +108,7 @@ SpecWeave auto-detects product descriptions and routes to `/sw:increment`:
|
|
|
94
108
|
```
|
|
95
109
|
<!-- SW:END:taskformat -->
|
|
96
110
|
|
|
97
|
-
<!-- SW:SECTION:secrets version="1.0.
|
|
111
|
+
<!-- SW:SECTION:secrets version="1.0.46" -->
|
|
98
112
|
## Secrets Check
|
|
99
113
|
|
|
100
114
|
**BEFORE CLI tools**: Check existing config first!
|
|
@@ -105,7 +119,7 @@ gh auth status
|
|
|
105
119
|
```
|
|
106
120
|
<!-- SW:END:secrets -->
|
|
107
121
|
|
|
108
|
-
<!-- SW:SECTION:syncing version="1.0.
|
|
122
|
+
<!-- SW:SECTION:syncing version="1.0.46" -->
|
|
109
123
|
## External Sync (GitHub/JIRA/ADO)
|
|
110
124
|
|
|
111
125
|
**After increment creation**: Run `/sw-github:sync {id}` to create issues!
|
|
@@ -117,14 +131,23 @@ Living docs sync ≠ External sync. They are separate:
|
|
|
117
131
|
**Required config** (`.specweave/config.json`):
|
|
118
132
|
```json
|
|
119
133
|
"sync": {
|
|
120
|
-
"settings": {
|
|
134
|
+
"settings": {
|
|
135
|
+
"canUpsertInternalItems": true,
|
|
136
|
+
"canUpdateExternalItems": true,
|
|
137
|
+
"autoSyncOnCompletion": true
|
|
138
|
+
},
|
|
139
|
+
"github": {
|
|
140
|
+
"enabled": true,
|
|
141
|
+
"owner": "your-org",
|
|
142
|
+
"repo": "your-repo"
|
|
143
|
+
}
|
|
121
144
|
}
|
|
122
145
|
```
|
|
123
146
|
|
|
124
147
|
**Verify tokens**: `grep GITHUB_TOKEN .env` | `gh auth status`
|
|
125
148
|
<!-- SW:END:syncing -->
|
|
126
149
|
|
|
127
|
-
<!-- SW:SECTION:mapping version="1.0.
|
|
150
|
+
<!-- SW:SECTION:mapping version="1.0.46" -->
|
|
128
151
|
## GitHub Mapping
|
|
129
152
|
|
|
130
153
|
| SpecWeave | GitHub |
|
|
@@ -134,7 +157,7 @@ Living docs sync ≠ External sync. They are separate:
|
|
|
134
157
|
| Task T-XXX | Checkbox |
|
|
135
158
|
<!-- SW:END:mapping -->
|
|
136
159
|
|
|
137
|
-
<!-- SW:SECTION:testing version="1.0.
|
|
160
|
+
<!-- SW:SECTION:testing version="1.0.46" -->
|
|
138
161
|
## Testing
|
|
139
162
|
|
|
140
163
|
BDD in tasks.md | Unit >80% | `.test.ts` (Vitest)
|
|
@@ -146,13 +169,13 @@ vi.mock('fs', () => ({ readFile: vi.fn() }));
|
|
|
146
169
|
```
|
|
147
170
|
<!-- SW:END:testing -->
|
|
148
171
|
|
|
149
|
-
<!-- SW:SECTION:limits version="1.0.
|
|
172
|
+
<!-- SW:SECTION:limits version="1.0.46" -->
|
|
150
173
|
## Limits
|
|
151
174
|
|
|
152
175
|
**Max 1500 lines/file** — extract before adding
|
|
153
176
|
<!-- SW:END:limits -->
|
|
154
177
|
|
|
155
|
-
<!-- SW:SECTION:troubleshooting version="1.0.
|
|
178
|
+
<!-- SW:SECTION:troubleshooting version="1.0.46" -->
|
|
156
179
|
## Troubleshooting
|
|
157
180
|
|
|
158
181
|
| Issue | Fix |
|
|
@@ -163,14 +186,15 @@ vi.mock('fs', () => ({ readFile: vi.fn() }));
|
|
|
163
186
|
| Find increment | `/sw:status` |
|
|
164
187
|
| Root polluted | Move files to `.specweave/increments/####/reports/` |
|
|
165
188
|
| Duplicate IDs | `/sw:fix-duplicates` |
|
|
166
|
-
| GitHub not syncing |
|
|
167
|
-
|
|
|
189
|
+
| GitHub not syncing | Check `sync.github.enabled: true` AND `canUpdateExternalItems: true` in config.json |
|
|
190
|
+
| GitHub issues not updating | Run `/sw-github:sync {id}` explicitly; check `.specweave/logs/throttle.log` |
|
|
191
|
+
| Permission denied | Set `canUpsertInternalItems: true` AND `canUpdateExternalItems: true` in config.json |
|
|
168
192
|
| No GITHUB_TOKEN | Check `.env` file or run `gh auth login` |
|
|
169
193
|
| Edits blocked in repositories/ | Add `"additionalDirectories":["repositories"]` + `Write(//**)`, `Edit(//**)` to `.claude/settings.json` |
|
|
170
194
|
| Path patterns not working | `//path` = absolute, `/path` = relative to settings file, `additionalDirectories` for explicit working dirs |
|
|
171
195
|
<!-- SW:END:troubleshooting -->
|
|
172
196
|
|
|
173
|
-
<!-- SW:SECTION:principles version="1.0.
|
|
197
|
+
<!-- SW:SECTION:principles version="1.0.46" -->
|
|
174
198
|
## Principles
|
|
175
199
|
|
|
176
200
|
1. **Spec-first**: `/sw:increment` before coding
|
|
@@ -180,7 +204,7 @@ vi.mock('fs', () => ({ readFile: vi.fn() }));
|
|
|
180
204
|
5. **Clean**: All files in increment folders
|
|
181
205
|
<!-- SW:END:principles -->
|
|
182
206
|
|
|
183
|
-
<!-- SW:SECTION:linking version="1.0.
|
|
207
|
+
<!-- SW:SECTION:linking version="1.0.46" -->
|
|
184
208
|
## Bidirectional Linking
|
|
185
209
|
|
|
186
210
|
Tasks ↔ User Stories auto-linked via AC-IDs: `AC-US1-01` → `US-001`
|
|
@@ -188,7 +212,7 @@ Tasks ↔ User Stories auto-linked via AC-IDs: `AC-US1-01` → `US-001`
|
|
|
188
212
|
Task format: `**AC**: AC-US1-01, AC-US1-02` (CRITICAL for linking)
|
|
189
213
|
<!-- SW:END:linking -->
|
|
190
214
|
|
|
191
|
-
<!-- SW:SECTION:docs version="1.0.
|
|
215
|
+
<!-- SW:SECTION:docs version="1.0.46" -->
|
|
192
216
|
## Docs
|
|
193
217
|
|
|
194
218
|
[spec-weave.com](https://spec-weave.com) | `.specweave/docs/internal/`
|
|
@@ -56,6 +56,20 @@ async function loadGitHubConfig() {
|
|
|
56
56
|
repo = profile.config.repo;
|
|
57
57
|
}
|
|
58
58
|
}
|
|
59
|
+
// Method 4 (v1.0.46): First GitHub profile if no defaultProfile is set
|
|
60
|
+
// This handles the common case where user has profiles but forgot to set defaultProfile
|
|
61
|
+
else if (config.sync?.profiles) {
|
|
62
|
+
const profileNames = Object.keys(config.sync.profiles);
|
|
63
|
+
for (const name of profileNames) {
|
|
64
|
+
const profile = config.sync.profiles[name];
|
|
65
|
+
if (profile?.provider === 'github' && profile?.config?.owner && profile?.config?.repo) {
|
|
66
|
+
owner = profile.config.owner;
|
|
67
|
+
repo = profile.config.repo;
|
|
68
|
+
console.log(`ℹ️ Using first GitHub profile: ${name}`);
|
|
69
|
+
break;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
}
|
|
59
73
|
}
|
|
60
74
|
catch (error) {
|
|
61
75
|
console.error('⚠️ Failed to parse config.json:', error);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"github-feature-sync-cli.js","sourceRoot":"","sources":["../../../../plugins/specweave-github/lib/github-feature-sync-cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"github-feature-sync-cli.js","sourceRoot":"","sources":["../../../../plugins/specweave-github/lib/github-feature-sync-cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* Codebase Rescan Worker
|
|
4
|
+
*
|
|
5
|
+
* Background worker that rescans the actual source code after an increment closes
|
|
6
|
+
* to ensure living docs reflect implementation reality (code as source of truth).
|
|
7
|
+
*
|
|
8
|
+
* Triggered automatically by the living-specs-handler when increment.done event fires.
|
|
9
|
+
*
|
|
10
|
+
* Phases:
|
|
11
|
+
* 1. Discovery - Scan codebase structure for files affected by the increment
|
|
12
|
+
* 2. Code Analysis - Extract actual implementation details from source files
|
|
13
|
+
* 3. Doc Reconciliation - Compare code reality with living docs
|
|
14
|
+
* 4. Update - Update living docs based on actual code
|
|
15
|
+
* 5. Reporting - Generate sync report
|
|
16
|
+
*
|
|
17
|
+
* Usage:
|
|
18
|
+
* node codebase-rescan-worker.js <jobId> <projectPath>
|
|
19
|
+
*/
|
|
20
|
+
export {};
|
|
21
|
+
//# sourceMappingURL=codebase-rescan-worker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codebase-rescan-worker.d.ts","sourceRoot":"","sources":["../../../../src/cli/workers/codebase-rescan-worker.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;;;;GAiBG"}
|