specweave 1.0.144 → 1.0.145
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 +50 -23
- package/dist/src/cli/helpers/init/gitignore-generator.d.ts.map +1 -1
- package/dist/src/cli/helpers/init/gitignore-generator.js +3 -0
- package/dist/src/cli/helpers/init/gitignore-generator.js.map +1 -1
- package/package.json +1 -1
- package/plugins/specweave/hooks/user-prompt-submit.sh +97 -5
- package/src/templates/CLAUDE.md.template +66 -0
package/CLAUDE.md
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
<!-- SW:META template="claude" version="1.0.
|
|
1
|
+
<!-- SW:META template="claude" version="1.0.144" sections="header,start,autodetect,metarule,rules,workflow,reflect,context,structure,taskformat,secrets,syncing,testing,api,limits,troubleshooting,lazyloading,principles,linking,mcp,auto,docs" -->
|
|
2
2
|
|
|
3
|
-
<!-- SW:SECTION:header version="1.0.
|
|
3
|
+
<!-- SW:SECTION:header version="1.0.144" -->
|
|
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.144" -->
|
|
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.144" -->
|
|
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.144" -->
|
|
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.144" -->
|
|
39
39
|
## Rules
|
|
40
40
|
|
|
41
41
|
1. **Files** → `.specweave/increments/####-name/` (see Structure section for details)
|
|
@@ -46,7 +46,7 @@ SpecWeave auto-detects product descriptions and routes to `/sw:increment`:
|
|
|
46
46
|
6. **⛔ Marketplace refresh**: Use `specweave refresh-marketplace` CLI (not `scripts/refresh-marketplace.sh`)
|
|
47
47
|
<!-- SW:END:rules -->
|
|
48
48
|
|
|
49
|
-
<!-- SW:SECTION:workflow version="1.0.
|
|
49
|
+
<!-- SW:SECTION:workflow version="1.0.144" -->
|
|
50
50
|
## Workflow
|
|
51
51
|
|
|
52
52
|
`/sw:increment "X"` → `/sw:do` → `/sw:progress` → `/sw:done 0001`
|
|
@@ -66,7 +66,7 @@ SpecWeave auto-detects product descriptions and routes to `/sw:increment`:
|
|
|
66
66
|
**Natural language**: "Let's build X" → `/sw:increment` | "What's status?" → `/sw:progress` | "We're done" → `/sw:done` | "Ship while sleeping" → `/sw:auto`
|
|
67
67
|
<!-- SW:END:workflow -->
|
|
68
68
|
|
|
69
|
-
<!-- SW:SECTION:reflect version="1.0.
|
|
69
|
+
<!-- SW:SECTION:reflect version="1.0.144" -->
|
|
70
70
|
## Skill Memories
|
|
71
71
|
|
|
72
72
|
SpecWeave learns from corrections. Learnings saved here automatically. Edit or delete as needed.
|
|
@@ -79,7 +79,7 @@ SpecWeave learns from corrections. Learnings saved here automatically. Edit or d
|
|
|
79
79
|
<!-- Auto-captured by SpecWeave reflect. Edit or delete as needed. -->
|
|
80
80
|
<!-- Learnings are organized by skill name. User edits override SpecWeave defaults. -->
|
|
81
81
|
|
|
82
|
-
<!-- SW:SECTION:context version="1.0.
|
|
82
|
+
<!-- SW:SECTION:context version="1.0.144" -->
|
|
83
83
|
## Context
|
|
84
84
|
|
|
85
85
|
**Before implementing**: Check ADRs at `.specweave/docs/internal/architecture/adr/`
|
|
@@ -87,7 +87,7 @@ SpecWeave learns from corrections. Learnings saved here automatically. Edit or d
|
|
|
87
87
|
**Load context**: `/sw:context <topic>` loads relevant living docs into conversation
|
|
88
88
|
<!-- SW:END:context -->
|
|
89
89
|
|
|
90
|
-
<!-- SW:SECTION:structure version="1.0.
|
|
90
|
+
<!-- SW:SECTION:structure version="1.0.144" -->
|
|
91
91
|
## Structure
|
|
92
92
|
|
|
93
93
|
```
|
|
@@ -102,7 +102,7 @@ SpecWeave learns from corrections. Learnings saved here automatically. Edit or d
|
|
|
102
102
|
**Everything else → subfolders**: `reports/` | `logs/` | `scripts/` | `backups/`
|
|
103
103
|
<!-- SW:END:structure -->
|
|
104
104
|
|
|
105
|
-
<!-- SW:SECTION:taskformat version="1.0.
|
|
105
|
+
<!-- SW:SECTION:taskformat version="1.0.144" -->
|
|
106
106
|
## Task Format
|
|
107
107
|
|
|
108
108
|
```markdown
|
|
@@ -112,7 +112,7 @@ SpecWeave learns from corrections. Learnings saved here automatically. Edit or d
|
|
|
112
112
|
```
|
|
113
113
|
<!-- SW:END:taskformat -->
|
|
114
114
|
|
|
115
|
-
<!-- SW:SECTION:secrets version="1.0.
|
|
115
|
+
<!-- SW:SECTION:secrets version="1.0.144" -->
|
|
116
116
|
## Secrets Check
|
|
117
117
|
|
|
118
118
|
**BEFORE CLI tools**: Check existing config first!
|
|
@@ -126,7 +126,7 @@ gh auth status
|
|
|
126
126
|
**SECURITY**: NEVER use `grep TOKEN .env` without `-q` flag - it exposes credentials in terminal!
|
|
127
127
|
<!-- SW:END:secrets -->
|
|
128
128
|
|
|
129
|
-
<!-- SW:SECTION:syncing version="1.0.
|
|
129
|
+
<!-- SW:SECTION:syncing version="1.0.144" -->
|
|
130
130
|
## External Sync (GitHub/JIRA/ADO)
|
|
131
131
|
|
|
132
132
|
**Commands**: `/sw-github:sync {id}` (issues) | `/sw:sync-specs` (living docs only)
|
|
@@ -136,7 +136,7 @@ gh auth status
|
|
|
136
136
|
**Config**: Set `sync.github.enabled: true` + `canUpdateExternalItems: true` in config.json
|
|
137
137
|
<!-- SW:END:syncing -->
|
|
138
138
|
|
|
139
|
-
<!-- SW:SECTION:testing version="1.0.
|
|
139
|
+
<!-- SW:SECTION:testing version="1.0.144" -->
|
|
140
140
|
## Testing
|
|
141
141
|
|
|
142
142
|
BDD in tasks.md | Unit >80% | `.test.ts` (Vitest)
|
|
@@ -148,7 +148,34 @@ vi.mock('./module', () => ({ func: mockFn }));
|
|
|
148
148
|
```
|
|
149
149
|
<!-- SW:END:testing -->
|
|
150
150
|
|
|
151
|
-
<!-- SW:SECTION:
|
|
151
|
+
<!-- SW:SECTION:tdd version="1.0.145" -->
|
|
152
|
+
## TDD Mode (Test-Driven Development)
|
|
153
|
+
|
|
154
|
+
**⚠️ MANDATORY CHECK**: Before ANY implementation, check TDD config:
|
|
155
|
+
|
|
156
|
+
```bash
|
|
157
|
+
jq -r '.testing.defaultTestMode // "test-after"' .specweave/config.json
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
**If result is "TDD"** → MUST follow RED-GREEN-REFACTOR:
|
|
161
|
+
|
|
162
|
+
| Phase | Action | Rule |
|
|
163
|
+
|-------|--------|------|
|
|
164
|
+
| 🔴 RED | Write FAILING test | Test MUST fail initially |
|
|
165
|
+
| 🟢 GREEN | MINIMAL implementation | Only code needed to pass |
|
|
166
|
+
| 🔵 REFACTOR | Improve quality | Keep tests green |
|
|
167
|
+
|
|
168
|
+
**TDD Commands**: `/sw:tdd-red` | `/sw:tdd-green` | `/sw:tdd-refactor` | `/sw:tdd-cycle`
|
|
169
|
+
|
|
170
|
+
**Auto Mode + TDD**: Use `/sw:auto --tdd` for strict enforcement
|
|
171
|
+
|
|
172
|
+
**Enforcement** (set `testing.tddEnforcement` in config.json):
|
|
173
|
+
- `strict`: BLOCKS if RED not done before GREEN
|
|
174
|
+
- `warn`: Warning only (default)
|
|
175
|
+
- `off`: No enforcement
|
|
176
|
+
<!-- SW:END:tdd -->
|
|
177
|
+
|
|
178
|
+
<!-- SW:SECTION:api version="1.0.144" -->
|
|
152
179
|
## API Development (OpenAPI-First)
|
|
153
180
|
|
|
154
181
|
**For API projects only.** Commands: `/sw:api-docs --all` | `--openapi` | `--postman` | `--validate`
|
|
@@ -156,13 +183,13 @@ vi.mock('./module', () => ({ func: mockFn }));
|
|
|
156
183
|
Enable in config: `{"apiDocs":{"enabled":true,"openApiPath":"openapi.yaml"}}`
|
|
157
184
|
<!-- SW:END:api -->
|
|
158
185
|
|
|
159
|
-
<!-- SW:SECTION:limits version="1.0.
|
|
186
|
+
<!-- SW:SECTION:limits version="1.0.144" -->
|
|
160
187
|
## Limits
|
|
161
188
|
|
|
162
189
|
**Max 1500 lines/file** — extract before adding
|
|
163
190
|
<!-- SW:END:limits -->
|
|
164
191
|
|
|
165
|
-
<!-- SW:SECTION:troubleshooting version="1.0.
|
|
192
|
+
<!-- SW:SECTION:troubleshooting version="1.0.144" -->
|
|
166
193
|
## Troubleshooting
|
|
167
194
|
|
|
168
195
|
| Issue | Fix |
|
|
@@ -178,7 +205,7 @@ Enable in config: `{"apiDocs":{"enabled":true,"openApiPath":"openapi.yaml"}}`
|
|
|
178
205
|
| Marketplace shows 0 | Normal with auto-load; `/plugin list` shows actual |
|
|
179
206
|
<!-- SW:END:troubleshooting -->
|
|
180
207
|
|
|
181
|
-
<!-- SW:SECTION:lazyloading version="1.0.
|
|
208
|
+
<!-- SW:SECTION:lazyloading version="1.0.144" -->
|
|
182
209
|
## Plugin Auto-Loading
|
|
183
210
|
|
|
184
211
|
Plugins load automatically based on project type and keywords. Manual install if needed:
|
|
@@ -192,7 +219,7 @@ export SPECWEAVE_DISABLE_AUTO_LOAD=1 # Disable auto-load
|
|
|
192
219
|
**Token savings**: Core ~3-5K tokens vs all plugins ~60K+
|
|
193
220
|
<!-- SW:END:lazyloading -->
|
|
194
221
|
|
|
195
|
-
<!-- SW:SECTION:principles version="1.0.
|
|
222
|
+
<!-- SW:SECTION:principles version="1.0.144" -->
|
|
196
223
|
## Principles
|
|
197
224
|
|
|
198
225
|
1. **Spec-first**: `/sw:increment` before coding
|
|
@@ -201,7 +228,7 @@ export SPECWEAVE_DISABLE_AUTO_LOAD=1 # Disable auto-load
|
|
|
201
228
|
4. **Traceable**: All work → specs → ACs
|
|
202
229
|
<!-- SW:END:principles -->
|
|
203
230
|
|
|
204
|
-
<!-- SW:SECTION:linking version="1.0.
|
|
231
|
+
<!-- SW:SECTION:linking version="1.0.144" -->
|
|
205
232
|
## Bidirectional Linking
|
|
206
233
|
|
|
207
234
|
Tasks ↔ User Stories auto-linked via AC-IDs: `AC-US1-01` → `US-001`
|
|
@@ -209,7 +236,7 @@ Tasks ↔ User Stories auto-linked via AC-IDs: `AC-US1-01` → `US-001`
|
|
|
209
236
|
Task format: `**AC**: AC-US1-01, AC-US1-02` (CRITICAL for linking)
|
|
210
237
|
<!-- SW:END:linking -->
|
|
211
238
|
|
|
212
|
-
<!-- SW:SECTION:mcp version="1.0.
|
|
239
|
+
<!-- SW:SECTION:mcp version="1.0.144" -->
|
|
213
240
|
## External Services
|
|
214
241
|
|
|
215
242
|
**Priority**: CLI tools first (simpler) → MCP for complex integrations
|
|
@@ -231,7 +258,7 @@ claude mcp add --transport stdio postgres -- npx -y @modelcontextprotocol/server
|
|
|
231
258
|
MCP supports lazy-loading (auto mode) - tools load on-demand when >10% context.
|
|
232
259
|
<!-- SW:END:mcp -->
|
|
233
260
|
|
|
234
|
-
<!-- SW:SECTION:auto version="1.0.
|
|
261
|
+
<!-- SW:SECTION:auto version="1.0.144" -->
|
|
235
262
|
## Auto Mode
|
|
236
263
|
|
|
237
264
|
**Commands**: `/sw:auto` (start) | `/sw:auto-status` (check) | `/sw:cancel-auto` (emergency only)
|
|
@@ -243,7 +270,7 @@ MCP supports lazy-loading (auto mode) - tools load on-demand when >10% context.
|
|
|
243
270
|
**STOP & ASK** if: Spec conflicts | Task unnecessary | Requirement ambiguous
|
|
244
271
|
<!-- SW:END:auto -->
|
|
245
272
|
|
|
246
|
-
<!-- SW:SECTION:docs version="1.0.
|
|
273
|
+
<!-- SW:SECTION:docs version="1.0.144" -->
|
|
247
274
|
## Docs
|
|
248
275
|
|
|
249
276
|
[spec-weave.com](https://spec-weave.com)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gitignore-generator.d.ts","sourceRoot":"","sources":["../../../../../src/cli/helpers/init/gitignore-generator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAMH;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;IACtC,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC;IACrC,QAAQ,EAAE,YAAY,CAAC;CACxB;AAED,MAAM,MAAM,YAAY,GACpB,UAAU,GACV,WAAW,GACX,YAAY,GACZ,UAAU,GACV,SAAS,GACT,SAAS,GACT,UAAU,CAAC;AAEf;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,UAAU,EAAE,GAAG,CAAC,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC;CACzC;
|
|
1
|
+
{"version":3,"file":"gitignore-generator.d.ts","sourceRoot":"","sources":["../../../../../src/cli/helpers/init/gitignore-generator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAMH;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;IACtC,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC;IACrC,QAAQ,EAAE,YAAY,CAAC;CACxB;AAED,MAAM,MAAM,YAAY,GACpB,UAAU,GACV,WAAW,GACX,YAAY,GACZ,UAAU,GACV,SAAS,GACT,SAAS,GACT,UAAU,CAAC;AAEf;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,UAAU,EAAE,GAAG,CAAC,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC;CACzC;AA+dD;;GAEG;AACH,wBAAsB,eAAe,CACnC,SAAS,EAAE,MAAM,EACjB,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,kBAAkB,CAAC,CAqE7B;AA+BD;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,kBAAkB,EAC7B,OAAO,CAAC,EAAE;IACR,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B,GACA,MAAM,CAsDR;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,MAAM,CAAC,CAGjB;AAED;;GAEG;AACH,wBAAsB,cAAc,CAClC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,GAC9C,OAAO,CAAC;IAAE,MAAM,EAAE,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CA4CrE;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAC1C,SAAS,EAAE,MAAM,EACjB,UAAU,CAAC,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE;IACR,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,GACA,OAAO,CAAC;IACT,SAAS,EAAE,kBAAkB,CAAC;IAC9B,MAAM,EAAE;QAAE,MAAM,EAAE,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CACpE,CAAC,CA+BD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gitignore-generator.js","sourceRoot":"","sources":["../../../../../src/cli/helpers/init/gitignore-generator.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"gitignore-generator.js","sourceRoot":"","sources":["../../../../../src/cli/helpers/init/gitignore-generator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,MAAM,6BAA6B,CAAC;AAClD,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,KAAK,MAAM,OAAO,CAAC;AA8B1B;;GAEG;AACH,MAAM,iBAAiB,GAA6B;IAClD,oBAAoB;IACpB,UAAU,EAAE;QACV,yBAAyB;QACzB,eAAe;QACf,cAAc;QACd,QAAQ;QACR,OAAO;QACP,mBAAmB,EAAG,mCAAmC;QACzD,eAAe;QACf,cAAc;KACf;IACD,UAAU,EAAE;QACV,cAAc;QACd,eAAe;QACf,OAAO;QACP,QAAQ;QACR,YAAY;KACb;IACD,MAAM,EAAE;QACN,UAAU;QACV,cAAc;QACd,WAAW;QACX,YAAY;QACZ,MAAM;QACN,SAAS;QACT,OAAO;QACP,MAAM;QACN,MAAM;QACN,QAAQ;QACR,aAAa;QACb,cAAc;QACd,cAAc;QACd,gBAAgB;QAChB,aAAa;QACb,OAAO;QACP,UAAU;QACV,iBAAiB;KAClB;IACD,IAAI,EAAE;QACJ,QAAQ;QACR,SAAS;QACT,YAAY,EAAG,oCAAoC;QACnD,YAAY;KACb;IACD,EAAE,EAAE;QACF,MAAM;QACN,SAAS;QACT,QAAQ;QACR,OAAO;QACP,QAAQ;QACR,OAAO;KACR;IACD,IAAI,EAAE;QACJ,QAAQ;QACR,SAAS;QACT,OAAO;QACP,OAAO;QACP,OAAO;QACP,OAAO;QACP,aAAa;QACb,aAAa;QACb,UAAU;QACV,QAAQ;QACR,SAAS;QACT,UAAU;QACV,YAAY;KACb;IACD,MAAM,EAAE;QACN,WAAW;QACX,MAAM;QACN,MAAM;QACN,QAAQ;QACR,gBAAgB;QAChB,iBAAiB;QACjB,WAAW;QACX,aAAa;QACb,WAAW;QACX,SAAS;QACT,SAAS;KACV;IACD,IAAI,EAAE;QACJ,QAAQ;QACR,OAAO;QACP,OAAO;QACP,UAAU;QACV,gBAAgB;QAChB,eAAe;QACf,cAAc;QACd,cAAc,EAAG,oBAAoB;KACtC;IACD,GAAG,EAAE;QACH,OAAO;QACP,SAAS;QACT,eAAe;QACf,uBAAuB;QACvB,eAAe;QACf,qBAAqB;KACtB;IACD,KAAK,EAAE;QACL,aAAa;QACb,SAAS;QACT,cAAc;QACd,cAAc;QACd,gBAAgB;QAChB,WAAW;QACX,aAAa;QACb,OAAO;QACP,iBAAiB;KAClB;IACD,MAAM,EAAE;QACN,UAAU;QACV,UAAU;QACV,SAAS;QACT,QAAQ;QACR,UAAU;KACX;IAED,8BAA8B;IAC9B,MAAM,EAAE;QACN,WAAW;QACX,QAAQ;QACR,MAAM;QACN,UAAU;QACV,eAAe;KAChB;IACD,KAAK,EAAE;QACL,SAAS;QACT,QAAQ;QACR,SAAS;KACV;IACD,GAAG,EAAE;QACH,OAAO;QACP,QAAQ;QACR,UAAU;QACV,OAAO;KACR;IACD,OAAO,EAAE;QACP,WAAW;QACX,WAAW;QACX,OAAO;KACR;IACD,MAAM,EAAE;QACN,oBAAoB;QACpB,cAAc;QACd,QAAQ;KACT;IACD,KAAK,EAAE;QACL,SAAS;QACT,SAAS;QACT,QAAQ;QACR,eAAe;KAChB;IACD,KAAK,EAAE;QACL,SAAS;QACT,SAAS;QACT,OAAO;KACR;IAED,6BAA6B;IAC7B,MAAM,EAAE;QACN,UAAU;QACV,OAAO;QACP,QAAQ;KACT;IACD,OAAO,EAAE;QACP,WAAW;QACX,OAAO;KACR;IACD,OAAO,EAAE;QACP,WAAW;QACX,cAAc;QACd,gBAAgB;KACjB;IACD,MAAM,EAAE;QACN,UAAU;QACV,OAAO;QACP,YAAY;QACZ,cAAc;QACd,QAAQ;QACR,2BAA2B;KAC5B;IACD,KAAK,EAAE;QACL,SAAS;QACT,QAAQ;QACR,QAAQ;QACR,YAAY;QACZ,iBAAiB;KAClB;IACD,MAAM,EAAE;QACN,eAAe;QACf,SAAS;QACT,OAAO;QACP,MAAM;QACN,UAAU;KACX;IAED,iBAAiB;IACjB,cAAc,EAAE;QACd,gBAAgB;QAChB,QAAQ;QACR,eAAe;QACf,OAAO;QACP,YAAY;QACZ,kBAAkB;QAClB,oBAAoB;QACpB,WAAW;QACX,YAAY;KACb;IACD,OAAO,EAAE;QACP,WAAW;QACX,aAAa;QACb,kBAAkB;QAClB,+BAA+B;QAC/B,WAAW;QACX,aAAa;QACb,QAAQ;KACT;IAED,sBAAsB;IACtB,OAAO,EAAE;QACP,WAAW;QACX,SAAS;QACT,OAAO;KACR;IACD,IAAI,EAAE;QACJ,QAAQ;QACR,QAAQ;QACR,OAAO;KACR;IACD,KAAK,EAAE;QACL,aAAa;QACb,SAAS;KACV;IACD,OAAO,EAAE;QACP,WAAW;QACX,OAAO;QACP,QAAQ;KACT;IAED,oBAAoB;IACpB,MAAM,EAAE;QACN,UAAU;QACV,mCAAmC;QACnC,aAAa;QACb,qBAAqB;KACtB;IACD,OAAO,EAAE;QACP,WAAW;QACX,UAAU;KACX;IACD,MAAM,EAAE;QACN,UAAU;QACV,MAAM;QACN,UAAU;QACV,WAAW;QACX,UAAU;QACV,UAAU;KACX;IACD,OAAO,EAAE;QACP,WAAW;QACX,UAAU;KACX;IAED,kBAAkB;IAClB,IAAI,EAAE;QACJ,QAAQ;QACR,WAAW;QACX,QAAQ;KACT;IACD,MAAM,EAAE;QACN,UAAU;QACV,WAAW;KACZ;IACD,UAAU,EAAE;QACV,cAAc;QACd,eAAe;QACf,oBAAoB;QACpB,oBAAoB;KACrB;IACD,OAAO,EAAE;QACP,WAAW;QACX,iBAAiB;QACjB,sBAAsB;KACvB;IAED,yBAAyB;IACzB,MAAM,EAAE;QACN,UAAU;QACV,UAAU;KACX;IACD,SAAS,EAAE;QACT,aAAa;QACb,aAAa;QACb,WAAW;QACX,aAAa;QACb,UAAU;QACV,aAAa;QACb,kBAAkB;QAClB,eAAe;QACf,oBAAoB;QACpB,cAAc;QACd,cAAc;KACf;IACD,UAAU,EAAE;QACV,cAAc;QACd,cAAc;QACd,YAAY;KACb;IAED,0BAA0B;IAC1B,MAAM,EAAE;QACN,UAAU;QACV,UAAU;KACX;IACD,OAAO,EAAE;QACP,WAAW;QACX,WAAW;KACZ;IACD,GAAG,EAAE;QACH,OAAO;QACP,WAAW;QACX,gBAAgB;QAChB,UAAU;KACX;IACD,QAAQ,EAAE;QACR,YAAY;QACZ,YAAY;QACZ,oBAAoB;QACpB,aAAa;KACd;IAED,2CAA2C;IAC3C,MAAM,EAAE;QACN,gBAAgB;QAChB,eAAe;QACf,EAAE;QACF,eAAe;QACf,MAAM;QACN,YAAY;QACZ,cAAc;QACd,OAAO;QACP,EAAE;QACF,QAAQ;QACR,UAAU;QACV,QAAQ;QACR,OAAO;QACP,OAAO;QACP,IAAI;QACJ,EAAE;QACF,MAAM;QACN,WAAW;QACX,WAAW;QACX,aAAa;QACb,EAAE;QACF,QAAQ;QACR,OAAO;QACP,gBAAgB;QAChB,iBAAiB;QACjB,iBAAiB;QACjB,EAAE;QACF,aAAa;QACb,OAAO;QACP,QAAQ;QACR,MAAM;KACP;IAED,8CAA8C;IAC9C,SAAS,EAAE;QACT,aAAa;QACb,mBAAmB;QACnB,+BAA+B;QAC/B,uCAAuC;QACvC,gCAAgC;QAChC,iBAAiB;QACjB,UAAU;KACX;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,kBAAkB,GAKnB;IACH,8BAA8B;IAC9B,EAAE,KAAK,EAAE,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE;IACzF,EAAE,KAAK,EAAE,CAAC,eAAe,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE;IAC1F,EAAE,KAAK,EAAE,CAAC,kBAAkB,EAAE,gBAAgB,EAAE,UAAU,EAAE,SAAS,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE;IAClI,EAAE,KAAK,EAAE,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE;IACjF,EAAE,KAAK,EAAE,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE;IAC3E,EAAE,KAAK,EAAE,CAAC,SAAS,EAAE,cAAc,EAAE,kBAAkB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE;IAClH,EAAE,KAAK,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE;IAC1F,EAAE,KAAK,EAAE,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE;IAC9E,EAAE,KAAK,EAAE,CAAC,eAAe,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE;IACnF,EAAE,KAAK,EAAE,CAAC,eAAe,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE;IACrF,EAAE,KAAK,EAAE,CAAC,kBAAkB,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE;IAE3F,sBAAsB;IACtB,EAAE,KAAK,EAAE,CAAC,gBAAgB,EAAE,gBAAgB,EAAE,iBAAiB,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE;IAC7H,EAAE,KAAK,EAAE,CAAC,eAAe,EAAE,gBAAgB,EAAE,gBAAgB,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE;IACxH,EAAE,KAAK,EAAE,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE;IACvF,EAAE,KAAK,EAAE,CAAC,kBAAkB,EAAE,kBAAkB,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE;IAC9G,EAAE,KAAK,EAAE,CAAC,iBAAiB,EAAE,iBAAiB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE;IAC3G,EAAE,KAAK,EAAE,CAAC,kBAAkB,EAAE,iBAAiB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE;IAE5G,qBAAqB;IACrB,EAAE,KAAK,EAAE,CAAC,eAAe,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE;IACvF,EAAE,KAAK,EAAE,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE;IACnF,EAAE,KAAK,EAAE,CAAC,kBAAkB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE;IAEzF,SAAS;IACT,EAAE,KAAK,EAAE,CAAC,UAAU,EAAE,WAAW,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE;IACrG,EAAE,KAAK,EAAE,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE;IAEvF,cAAc;IACd,EAAE,KAAK,EAAE,CAAC,mBAAmB,EAAE,mBAAmB,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE;IAClH,EAAE,KAAK,EAAE,CAAC,gBAAgB,EAAE,gBAAgB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE;IACzG,EAAE,KAAK,EAAE,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE;IAEpF,YAAY;IACZ,EAAE,KAAK,EAAE,CAAC,sBAAsB,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE;IAC7F,EAAE,KAAK,EAAE,CAAC,mBAAmB,EAAE,mBAAmB,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE;IAEhH,UAAU;IACV,EAAE,KAAK,EAAE,CAAC,gBAAgB,EAAE,gBAAgB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE;IACtG,EAAE,KAAK,EAAE,CAAC,kBAAkB,EAAE,kBAAkB,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE;IAC5G,EAAE,KAAK,EAAE,CAAC,sBAAsB,EAAE,sBAAsB,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE;IACxH,EAAE,KAAK,EAAE,CAAC,mBAAmB,EAAE,mBAAmB,EAAE,cAAc,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE;IAE/H,iBAAiB;IACjB,EAAE,KAAK,EAAE,CAAC,YAAY,EAAE,oBAAoB,EAAE,qBAAqB,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE;IAChI,EAAE,KAAK,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE;IAC3F,EAAE,KAAK,EAAE,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE;IACpF,EAAE,KAAK,EAAE,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE;IACtF,EAAE,KAAK,EAAE,CAAC,eAAe,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE;IACxF,EAAE,KAAK,EAAE,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE;CACxG,CAAC;AAEF;;GAEG;AACH,MAAM,eAAe,GAA6B;IAChD,MAAM,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,CAAC;IAC5E,KAAK,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,kBAAkB,EAAE,KAAK,CAAC;IAClE,GAAG,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC;IACjD,OAAO,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,IAAI,CAAC;IACvC,MAAM,EAAE,CAAC,QAAQ,EAAE,WAAW,EAAE,YAAY,CAAC;IAC7C,KAAK,EAAE,CAAC,OAAO,EAAE,WAAW,CAAC;IAC7B,KAAK,EAAE,CAAC,OAAO,CAAC;IAChB,MAAM,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC;IACrC,OAAO,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC;IACjC,OAAO,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,WAAW,CAAC;IAC7C,MAAM,EAAE,CAAC,QAAQ,CAAC;IAClB,KAAK,EAAE,CAAC,OAAO,EAAE,eAAe,EAAE,KAAK,CAAC;IACxC,MAAM,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,YAAY,CAAC;IAC/C,cAAc,EAAE,CAAC,cAAc,EAAE,cAAc,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,CAAC;IAChF,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC;IAC5B,UAAU,EAAE,CAAC,YAAY,EAAE,IAAI,CAAC;IAChC,MAAM,EAAE,CAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,CAAC;IACtD,IAAI,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;IACvB,EAAE,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC;IACzB,MAAM,EAAE,CAAC,QAAQ,CAAC;IAClB,OAAO,EAAE,CAAC,SAAS,CAAC;IACpB,MAAM,EAAE,CAAC,QAAQ,EAAE,cAAc,EAAE,WAAW,CAAC;IAC/C,UAAU,EAAE,CAAC,YAAY,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,CAAC;IACpD,SAAS,EAAE,CAAC,WAAW,EAAE,IAAI,EAAE,wBAAwB,EAAE,KAAK,CAAC;IAC/D,MAAM,EAAE,CAAC,QAAQ,EAAE,kBAAkB,CAAC;IACtC,GAAG,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,CAAC;CAC9C,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,SAAiB,EACjB,UAAmB;IAEnB,MAAM,QAAQ,GAAmB,EAAE,CAAC;IACpC,MAAM,UAAU,GAAG,IAAI,GAAG,EAA0B,CAAC;IAErD,gCAAgC;IAChC,KAAK,MAAM,OAAO,IAAI,kBAAkB,EAAE,CAAC;QACzC,KAAK,MAAM,WAAW,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YACxC,sCAAsC;YACtC,MAAM,KAAK,GAAG,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC;gBACrC,CAAC,CAAC,MAAM,oBAAoB,CAAC,SAAS,EAAE,WAAW,CAAC;gBACpD,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC;YAExC,KAAK,MAAM,QAAQ,IAAI,KAAK,EAAE,CAAC;gBAC7B,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAC5B,QAAQ,CAAC,IAAI,CAAC;wBACZ,IAAI,EAAE,OAAO,CAAC,IAAI;wBAClB,UAAU,EAAE,OAAO,CAAC,UAAU;wBAC9B,MAAM,EAAE,MAAM;wBACd,QAAQ,EAAE,OAAO,CAAC,QAAQ;qBAC3B,CAAC,CAAC;oBACH,MAAM,CAAC,yBAAyB;gBAClC,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,sCAAsC;IACtC,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,WAAW,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC;QAC7C,KAAK,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;YAC/D,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;gBAC/B,IAAI,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;oBAClC,uCAAuC;oBACvC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;wBACzC,QAAQ,CAAC,IAAI,CAAC;4BACZ,IAAI,EAAE,IAAI;4BACV,UAAU,EAAE,QAAQ;4BACpB,MAAM,EAAE,QAAQ;4BAChB,QAAQ,EAAE,eAAe,CAAC,IAAI,CAAC;yBAChC,CAAC,CAAC;oBACL,CAAC;oBACD,MAAM;gBACR,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,0BAA0B;IAC1B,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;QAC5B,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACrD,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC;QACD,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC1C,CAAC;IAED,0EAA0E;IAC1E,IAAI,OAAO,GAAkB,IAAI,CAAC;IAClC,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,WAAW,IAAI,CAAC,CAAC,UAAU,KAAK,MAAM,CAAC,CAAC;IAC/F,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC/B,CAAC;SAAM,CAAC;QACN,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,UAAU,IAAI,CAAC,CAAC,UAAU,KAAK,MAAM,CAAC,CAAC;QAC7F,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC9B,CAAC;IACH,CAAC;IAED,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC;AAC3C,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAC,IAAY;IACnC,MAAM,OAAO,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;IAC9D,OAAO,OAAO,EAAE,QAAQ,IAAI,WAAW,CAAC;AAC1C,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,oBAAoB,CAAC,GAAW,EAAE,OAAe;IAC9D,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IAE3C,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QAClC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC7B,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;YACrC,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,2CAA2C;IAC7C,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAC/B,SAA6B,EAC7B,OAIC;IAED,MAAM,EAAE,gBAAgB,GAAG,IAAI,EAAE,aAAa,GAAG,IAAI,EAAE,aAAa,GAAG,EAAE,EAAE,GAAG,OAAO,IAAI,EAAE,CAAC;IAE5F,MAAM,QAAQ,GAAa,EAAE,CAAC;IAE9B,2CAA2C;IAC3C,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;IAErC,sCAAsC;IACtC,MAAM,aAAa,GAAmB;QACpC,UAAU;QACV,WAAW;QACX,YAAY;QACZ,UAAU;QACV,SAAS;QACT,SAAS;QACT,UAAU;KACX,CAAC;IAEF,KAAK,MAAM,QAAQ,IAAI,aAAa,EAAE,CAAC;QACrC,MAAM,KAAK,GAAG,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACvD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC;gBACrD,QAAQ,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC1C,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAClB,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACvB,CAAC;QACH,CAAC;IACH,CAAC;IAED,qBAAqB;IACrB,IAAI,aAAa,IAAI,iBAAiB,CAAC,MAAM,EAAE,CAAC;QAC9C,QAAQ,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAC3C,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACpB,CAAC;IAED,wBAAwB;IACxB,IAAI,gBAAgB,IAAI,iBAAiB,CAAC,SAAS,EAAE,CAAC;QACpD,QAAQ,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAC9C,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACpB,CAAC;IAED,qBAAqB;IACrB,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,QAAQ,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QACpC,QAAQ,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,CAAC;QAChC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACpB,CAAC;IAED,gCAAgC;IAChC,OAAO,QAAQ;SACZ,IAAI,CAAC,IAAI,CAAC;SACV,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC;SAC1B,IAAI,EAAE,GAAG,IAAI,CAAC;AACnB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,QAAgB,EAChB,UAAmB;IAEnB,MAAM,SAAS,GAAG,MAAM,eAAe,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IAC9D,OAAO,iBAAiB,CAAC,SAAS,CAAC,CAAC;AACtC,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,SAAiB,EACjB,OAAe,EACf,OAA+C;IAE/C,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;IACzD,MAAM,EAAE,KAAK,GAAG,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,OAAO,IAAI,EAAE,CAAC;IAEtD,gCAAgC;IAChC,IAAI,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QACjC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;QACpD,CAAC;QAED,MAAM,QAAQ,GAAG,EAAE,CAAC,YAAY,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QAEzD,kBAAkB;QAClB,IAAI,MAAM,EAAE,CAAC;YACX,EAAE,CAAC,aAAa,CAAC,GAAG,aAAa,SAAS,EAAE,QAAQ,CAAC,CAAC;QACxD,CAAC;QAED,0CAA0C;QAC1C,MAAM,aAAa,GAAG,IAAI,GAAG,CAC3B,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAC7E,CAAC;QAEF,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;YACjD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;YAC5B,gCAAgC;YAChC,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC;gBAAE,OAAO,IAAI,CAAC;YACrD,kCAAkC;YAClC,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACrC,CAAC,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtE,wBAAwB;YACxB,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;QACpD,CAAC;QAED,qBAAqB;QACrB,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,EAAE,GAAG,oCAAoC,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/F,EAAE,CAAC,aAAa,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;QACxC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;IACnD,CAAC;IAED,wBAAwB;IACxB,EAAE,CAAC,aAAa,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;IACzC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;AACpD,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,SAAiB,EACjB,UAAmB,EACnB,OAKC;IAKD,MAAM,EAAE,OAAO,GAAG,KAAK,EAAE,GAAG,YAAY,EAAE,GAAG,OAAO,IAAI,EAAE,CAAC;IAE3D,oBAAoB;IACpB,MAAM,SAAS,GAAG,MAAM,eAAe,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IAE/D,IAAI,OAAO,IAAI,SAAS,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC,CAAC;QACnD,KAAK,MAAM,IAAI,IAAI,SAAS,CAAC,QAAQ,EAAE,CAAC;YACtC,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,KAAK,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;YAC/F,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,UAAU,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC9E,CAAC;IACH,CAAC;IAED,8BAA8B;IAC9B,MAAM,OAAO,GAAG,iBAAiB,CAAC,SAAS,EAAE;QAC3C,gBAAgB,EAAE,YAAY,CAAC,gBAAgB;KAChD,CAAC,CAAC;IAEH,gBAAgB;IAChB,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,SAAS,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;IAEtE,IAAI,OAAO,EAAE,CAAC;QACZ,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAChC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,gCAAgC,SAAS,CAAC,QAAQ,CAAC,MAAM,gBAAgB,CAAC,CAAC,CAAC;QACtG,CAAC;aAAM,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YACtC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,+CAA+C,CAAC,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC;IAED,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;AAC/B,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "specweave",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.145",
|
|
4
4
|
"description": "Spec-driven development framework for Claude Code. AI-native workflow with living documentation, intelligent agents, and multilingual support (9 languages). Enterprise-grade traceability with permanent specs and temporary increments.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -139,6 +139,72 @@ if [[ "$PLUGIN_AUTOLOAD_ENABLED" == "true" ]] && [[ "${SPECWEAVE_DISABLE_AUTO_LO
|
|
|
139
139
|
# Escape prompt for shell (replace quotes and special chars)
|
|
140
140
|
ESCAPED_PROMPT=$(printf '%s' "$PROMPT" | sed "s/'/'\\\\''/g")
|
|
141
141
|
|
|
142
|
+
# v1.0.144: Map matched keywords to likely plugins for user feedback
|
|
143
|
+
# This is a fast local mapping (no LLM) for immediate visibility
|
|
144
|
+
SUGGESTED_PLUGINS=""
|
|
145
|
+
if echo "$MATCHED_KEYWORDS" | grep -qiE "(react|vue|angular|svelte|nextjs|nuxt|tailwind|dashboard|component|frontend|ui)"; then
|
|
146
|
+
SUGGESTED_PLUGINS="sw-frontend"
|
|
147
|
+
fi
|
|
148
|
+
if echo "$MATCHED_KEYWORDS" | grep -qiE "(api|graphql|express|fastapi|django|nestjs|spring|backend|database|postgres|mongodb|redis)"; then
|
|
149
|
+
[[ -n "$SUGGESTED_PLUGINS" ]] && SUGGESTED_PLUGINS="$SUGGESTED_PLUGINS, "
|
|
150
|
+
SUGGESTED_PLUGINS="${SUGGESTED_PLUGINS}sw-backend"
|
|
151
|
+
fi
|
|
152
|
+
if echo "$MATCHED_KEYWORDS" | grep -qiE "(test|tdd|vitest|jest|playwright|cypress)"; then
|
|
153
|
+
[[ -n "$SUGGESTED_PLUGINS" ]] && SUGGESTED_PLUGINS="$SUGGESTED_PLUGINS, "
|
|
154
|
+
SUGGESTED_PLUGINS="${SUGGESTED_PLUGINS}sw-testing"
|
|
155
|
+
fi
|
|
156
|
+
if echo "$MATCHED_KEYWORDS" | grep -qiE "(kubernetes|k8s|helm|argocd)"; then
|
|
157
|
+
[[ -n "$SUGGESTED_PLUGINS" ]] && SUGGESTED_PLUGINS="$SUGGESTED_PLUGINS, "
|
|
158
|
+
SUGGESTED_PLUGINS="${SUGGESTED_PLUGINS}sw-k8s"
|
|
159
|
+
fi
|
|
160
|
+
if echo "$MATCHED_KEYWORDS" | grep -qiE "(docker|terraform|aws|azure|gcp)"; then
|
|
161
|
+
[[ -n "$SUGGESTED_PLUGINS" ]] && SUGGESTED_PLUGINS="$SUGGESTED_PLUGINS, "
|
|
162
|
+
SUGGESTED_PLUGINS="${SUGGESTED_PLUGINS}sw-infra"
|
|
163
|
+
fi
|
|
164
|
+
if echo "$MATCHED_KEYWORDS" | grep -qiE "(github)"; then
|
|
165
|
+
[[ -n "$SUGGESTED_PLUGINS" ]] && SUGGESTED_PLUGINS="$SUGGESTED_PLUGINS, "
|
|
166
|
+
SUGGESTED_PLUGINS="${SUGGESTED_PLUGINS}sw-github"
|
|
167
|
+
fi
|
|
168
|
+
if echo "$MATCHED_KEYWORDS" | grep -qiE "(jira)"; then
|
|
169
|
+
[[ -n "$SUGGESTED_PLUGINS" ]] && SUGGESTED_PLUGINS="$SUGGESTED_PLUGINS, "
|
|
170
|
+
SUGGESTED_PLUGINS="${SUGGESTED_PLUGINS}sw-jira"
|
|
171
|
+
fi
|
|
172
|
+
if echo "$MATCHED_KEYWORDS" | grep -qiE "(ado|azure.?devops)"; then
|
|
173
|
+
[[ -n "$SUGGESTED_PLUGINS" ]] && SUGGESTED_PLUGINS="$SUGGESTED_PLUGINS, "
|
|
174
|
+
SUGGESTED_PLUGINS="${SUGGESTED_PLUGINS}sw-ado"
|
|
175
|
+
fi
|
|
176
|
+
if echo "$MATCHED_KEYWORDS" | grep -qiE "(mobile|expo|ios|android|flutter)"; then
|
|
177
|
+
[[ -n "$SUGGESTED_PLUGINS" ]] && SUGGESTED_PLUGINS="$SUGGESTED_PLUGINS, "
|
|
178
|
+
SUGGESTED_PLUGINS="${SUGGESTED_PLUGINS}sw-mobile"
|
|
179
|
+
fi
|
|
180
|
+
if echo "$MATCHED_KEYWORDS" | grep -qiE "(ml|ai|pytorch|tensorflow|mlops|llm)"; then
|
|
181
|
+
[[ -n "$SUGGESTED_PLUGINS" ]] && SUGGESTED_PLUGINS="$SUGGESTED_PLUGINS, "
|
|
182
|
+
SUGGESTED_PLUGINS="${SUGGESTED_PLUGINS}sw-ml"
|
|
183
|
+
fi
|
|
184
|
+
if echo "$MATCHED_KEYWORDS" | grep -qiE "(kafka|confluent)"; then
|
|
185
|
+
[[ -n "$SUGGESTED_PLUGINS" ]] && SUGGESTED_PLUGINS="$SUGGESTED_PLUGINS, "
|
|
186
|
+
SUGGESTED_PLUGINS="${SUGGESTED_PLUGINS}sw-kafka"
|
|
187
|
+
fi
|
|
188
|
+
if echo "$MATCHED_KEYWORDS" | grep -qiE "(stripe|paypal|payment)"; then
|
|
189
|
+
[[ -n "$SUGGESTED_PLUGINS" ]] && SUGGESTED_PLUGINS="$SUGGESTED_PLUGINS, "
|
|
190
|
+
SUGGESTED_PLUGINS="${SUGGESTED_PLUGINS}sw-payments"
|
|
191
|
+
fi
|
|
192
|
+
if echo "$MATCHED_KEYWORDS" | grep -qiE "(release|changelog)"; then
|
|
193
|
+
[[ -n "$SUGGESTED_PLUGINS" ]] && SUGGESTED_PLUGINS="$SUGGESTED_PLUGINS, "
|
|
194
|
+
SUGGESTED_PLUGINS="${SUGGESTED_PLUGINS}sw-release"
|
|
195
|
+
fi
|
|
196
|
+
if echo "$MATCHED_KEYWORDS" | grep -qiE "(diagram|mermaid)"; then
|
|
197
|
+
[[ -n "$SUGGESTED_PLUGINS" ]] && SUGGESTED_PLUGINS="$SUGGESTED_PLUGINS, "
|
|
198
|
+
SUGGESTED_PLUGINS="${SUGGESTED_PLUGINS}sw-diagrams"
|
|
199
|
+
fi
|
|
200
|
+
|
|
201
|
+
# Store suggested plugins for later feedback (if increment assist doesn't trigger)
|
|
202
|
+
# This variable will be checked after all early exits
|
|
203
|
+
AUTOLOAD_PLUGINS_MSG=""
|
|
204
|
+
if [[ -n "$SUGGESTED_PLUGINS" ]]; then
|
|
205
|
+
AUTOLOAD_PLUGINS_MSG="🔌 **Auto-loading plugins**: ${SUGGESTED_PLUGINS}\\n\\n*Detected from keywords: ${MATCHED_KEYWORDS%%-}*\\n\\n---\\n"
|
|
206
|
+
fi
|
|
207
|
+
|
|
142
208
|
# Run with timeout (10s max per T-011) and log errors for debugging
|
|
143
209
|
# T-011: Background timeout is 10s; hook itself returns immediately (<500ms)
|
|
144
210
|
# Graceful degradation: errors logged but don't block Claude
|
|
@@ -306,8 +372,14 @@ fi
|
|
|
306
372
|
|
|
307
373
|
# CRITICAL: Exit immediately for non-SpecWeave prompts
|
|
308
374
|
# This covers 90%+ of prompts with <5ms overhead
|
|
375
|
+
# v1.0.144: Still show plugin autoload message if plugins are being loaded
|
|
309
376
|
if ! echo "$PROMPT" | grep -qE "(specweave|/sw:|increment|add|create|implement|build|develop)"; then
|
|
310
|
-
|
|
377
|
+
if [[ -n "$AUTOLOAD_PLUGINS_MSG" ]]; then
|
|
378
|
+
# Show plugin loading feedback even for non-SpecWeave prompts
|
|
379
|
+
jq -nc --arg msg "$AUTOLOAD_PLUGINS_MSG" '{"decision":"approve","systemMessage":$msg}'
|
|
380
|
+
else
|
|
381
|
+
echo '{"decision":"approve"}'
|
|
382
|
+
fi
|
|
311
383
|
exit 0
|
|
312
384
|
fi
|
|
313
385
|
|
|
@@ -315,9 +387,15 @@ fi
|
|
|
315
387
|
# EARLY EXIT FOR NON-SPECWEAVE PROJECTS (T-006 - v0.26.15)
|
|
316
388
|
# ==============================================================================
|
|
317
389
|
# Even if prompt contains SpecWeave keywords, exit if no .specweave directory
|
|
390
|
+
# v1.0.144: Still show plugin autoload message for non-SpecWeave projects
|
|
318
391
|
SPECWEAVE_DIR=".specweave"
|
|
319
392
|
if [[ ! -d "$SPECWEAVE_DIR" ]]; then
|
|
320
|
-
|
|
393
|
+
if [[ -n "$AUTOLOAD_PLUGINS_MSG" ]]; then
|
|
394
|
+
# Show plugin loading feedback even for non-SpecWeave projects
|
|
395
|
+
jq -nc --arg msg "$AUTOLOAD_PLUGINS_MSG" '{"decision":"approve","systemMessage":$msg}'
|
|
396
|
+
else
|
|
397
|
+
echo '{"decision":"approve"}'
|
|
398
|
+
fi
|
|
321
399
|
exit 0
|
|
322
400
|
fi
|
|
323
401
|
|
|
@@ -831,11 +909,25 @@ fi
|
|
|
831
909
|
# ==============================================================================
|
|
832
910
|
# OUTPUT: Approve with context or no context
|
|
833
911
|
# ==============================================================================
|
|
912
|
+
# v1.0.144: Prepend plugin auto-loading message if plugins are being loaded
|
|
913
|
+
# This gives users visible feedback that plugins are being auto-loaded
|
|
834
914
|
|
|
915
|
+
FINAL_MESSAGE=""
|
|
916
|
+
|
|
917
|
+
# Add plugin auto-loading message if set (from earlier keyword detection)
|
|
918
|
+
if [[ -n "$AUTOLOAD_PLUGINS_MSG" ]]; then
|
|
919
|
+
FINAL_MESSAGE="$AUTOLOAD_PLUGINS_MSG"
|
|
920
|
+
fi
|
|
921
|
+
|
|
922
|
+
# Add context if available
|
|
835
923
|
if [[ -n "$CONTEXT" ]]; then
|
|
836
|
-
|
|
837
|
-
|
|
838
|
-
|
|
924
|
+
FINAL_MESSAGE="${FINAL_MESSAGE}${CONTEXT}"
|
|
925
|
+
fi
|
|
926
|
+
|
|
927
|
+
if [[ -n "$FINAL_MESSAGE" ]]; then
|
|
928
|
+
# Escape for JSON (newlines, quotes)
|
|
929
|
+
FINAL_MESSAGE_ESCAPED=$(echo "$FINAL_MESSAGE" | sed 's/\\/\\\\/g; s/"/\\"/g' | awk '{printf "%s\\n", $0}' | sed 's/\\n$//')
|
|
930
|
+
printf '{"decision":"approve","systemMessage":"%s"}\n' "$FINAL_MESSAGE_ESCAPED"
|
|
839
931
|
else
|
|
840
932
|
echo '{"decision":"approve"}'
|
|
841
933
|
fi
|
|
@@ -144,6 +144,67 @@ vi.mock('./module', () => ({ func: mockFn }));
|
|
|
144
144
|
```
|
|
145
145
|
<!-- /SECTION -->
|
|
146
146
|
|
|
147
|
+
<!-- SECTION:tdd -->
|
|
148
|
+
## TDD Mode (Test-Driven Development)
|
|
149
|
+
|
|
150
|
+
**When `testing.defaultTestMode: "TDD"` is configured**, follow RED-GREEN-REFACTOR discipline:
|
|
151
|
+
|
|
152
|
+
### TDD Workflow (MANDATORY when configured)
|
|
153
|
+
|
|
154
|
+
```
|
|
155
|
+
1. RED: Write FAILING test first → verify it fails
|
|
156
|
+
2. GREEN: Write MINIMAL code to pass → no extra features
|
|
157
|
+
3. REFACTOR: Improve code quality → keep tests green
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
### Check TDD Mode Before Implementation
|
|
161
|
+
|
|
162
|
+
```bash
|
|
163
|
+
# Check if TDD mode is enabled
|
|
164
|
+
jq -r '.testing.defaultTestMode' .specweave/config.json
|
|
165
|
+
# Returns: "TDD" | "test-first" | "test-after"
|
|
166
|
+
```
|
|
167
|
+
|
|
168
|
+
### TDD Commands
|
|
169
|
+
|
|
170
|
+
| Command | Phase | Purpose |
|
|
171
|
+
|---------|-------|---------|
|
|
172
|
+
| `/sw:tdd-red` | RED | Write failing tests |
|
|
173
|
+
| `/sw:tdd-green` | GREEN | Minimal implementation |
|
|
174
|
+
| `/sw:tdd-refactor` | REFACTOR | Code quality improvement |
|
|
175
|
+
| `/sw:tdd-cycle` | ALL | Full orchestrated workflow |
|
|
176
|
+
|
|
177
|
+
### Enforcement Levels
|
|
178
|
+
|
|
179
|
+
Set `testing.tddEnforcement` in config.json:
|
|
180
|
+
|
|
181
|
+
| Level | Behavior |
|
|
182
|
+
|-------|----------|
|
|
183
|
+
| `strict` | **BLOCKS** task completion if RED not done before GREEN |
|
|
184
|
+
| `warn` | Shows warning but allows continuation (default) |
|
|
185
|
+
| `off` | No enforcement |
|
|
186
|
+
|
|
187
|
+
### TDD Task Format
|
|
188
|
+
|
|
189
|
+
When TDD is enabled, tasks include phase markers:
|
|
190
|
+
|
|
191
|
+
```markdown
|
|
192
|
+
### T-001: [RED] Write auth service tests
|
|
193
|
+
**Depends On**: None
|
|
194
|
+
**Status**: [ ] pending
|
|
195
|
+
|
|
196
|
+
### T-002: [GREEN] Implement auth service
|
|
197
|
+
**Depends On**: T-001
|
|
198
|
+
**Status**: [ ] pending
|
|
199
|
+
|
|
200
|
+
### T-003: [REFACTOR] Extract token utilities
|
|
201
|
+
**Depends On**: T-002
|
|
202
|
+
**Status**: [ ] pending
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
**Rule**: Complete dependencies BEFORE dependent tasks (RED before GREEN).
|
|
206
|
+
<!-- /SECTION -->
|
|
207
|
+
|
|
147
208
|
<!-- SECTION:api -->
|
|
148
209
|
## API Development (OpenAPI-First)
|
|
149
210
|
|
|
@@ -234,6 +295,11 @@ MCP supports lazy-loading (auto mode) - tools load on-demand when >10% context.
|
|
|
234
295
|
|
|
235
296
|
**Pattern**: IMPLEMENT → TEST → FAIL? → FIX → PASS → NEXT
|
|
236
297
|
|
|
298
|
+
**TDD in Auto Mode**: If `testing.defaultTestMode: "TDD"` is configured:
|
|
299
|
+
- Use `/sw:auto --tdd` for strict enforcement (ALL tests must pass)
|
|
300
|
+
- Auto mode reads config and displays TDD banner
|
|
301
|
+
- Follow RED → GREEN → REFACTOR order for task triplets
|
|
302
|
+
|
|
237
303
|
**Pragmatic completion**: MUST (MVP, security, data integrity) | SHOULD (edge cases) | CAN SKIP (conflicts - ask user)
|
|
238
304
|
|
|
239
305
|
**STOP & ASK** if: Spec conflicts | Task unnecessary | Requirement ambiguous
|