@tekyzinc/gsd-t 2.31.18 → 2.33.12
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 +626 -581
- package/README.md +15 -3
- package/bin/gsd-t.js +1 -1
- package/commands/gsd-t-brainstorm.md +31 -15
- package/commands/gsd-t-complete-milestone.md +23 -1
- package/commands/gsd-t-debug.md +107 -2
- package/commands/gsd-t-execute.md +15 -1
- package/commands/gsd-t-help.md +16 -0
- package/commands/gsd-t-init.md +3 -0
- package/commands/gsd-t-reflect.md +134 -0
- package/commands/gsd-t-visualize.md +104 -0
- package/commands/gsd-t-wave.md +21 -1
- package/docs/GSD-T-README.md +2 -0
- package/docs/architecture.md +16 -3
- package/docs/requirements.md +106 -84
- package/package.json +40 -40
- package/scripts/gsd-t-dashboard-mockup.html +1143 -0
- package/scripts/gsd-t-dashboard-server.js +140 -0
- package/scripts/gsd-t-dashboard.html +199 -0
- package/scripts/gsd-t-event-writer.js +124 -0
- package/scripts/gsd-t-heartbeat.js +54 -1
- package/templates/CLAUDE-global.md +2 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,581 +1,626 @@
|
|
|
1
|
-
# Changelog
|
|
2
|
-
|
|
3
|
-
All notable changes to GSD-T are documented here. Updated with each release.
|
|
4
|
-
|
|
5
|
-
## [2.
|
|
6
|
-
|
|
7
|
-
###
|
|
8
|
-
- **
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
###
|
|
16
|
-
-
|
|
17
|
-
-
|
|
18
|
-
-
|
|
19
|
-
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
-
|
|
26
|
-
-
|
|
27
|
-
-
|
|
28
|
-
-
|
|
29
|
-
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
- **
|
|
43
|
-
- `
|
|
44
|
-
-
|
|
45
|
-
- `
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
## [2.
|
|
51
|
-
|
|
52
|
-
###
|
|
53
|
-
- **
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
- **
|
|
74
|
-
- **
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
- **
|
|
88
|
-
-
|
|
89
|
-
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
-
|
|
93
|
-
-
|
|
94
|
-
|
|
95
|
-
## [2.24.
|
|
96
|
-
|
|
97
|
-
###
|
|
98
|
-
- **
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
- **
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
- **
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
-
|
|
130
|
-
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
-
|
|
138
|
-
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
- **
|
|
148
|
-
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
-
|
|
152
|
-
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
-
|
|
163
|
-
|
|
164
|
-
## [2.
|
|
165
|
-
|
|
166
|
-
### Changed
|
|
167
|
-
- **
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
-
|
|
175
|
-
-
|
|
176
|
-
|
|
177
|
-
## [2.
|
|
178
|
-
|
|
179
|
-
###
|
|
180
|
-
- **
|
|
181
|
-
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
###
|
|
186
|
-
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
-
|
|
197
|
-
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
- **
|
|
221
|
-
|
|
222
|
-
## [2.
|
|
223
|
-
|
|
224
|
-
###
|
|
225
|
-
- **
|
|
226
|
-
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
-
|
|
272
|
-
- `
|
|
273
|
-
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
-
|
|
297
|
-
-
|
|
298
|
-
|
|
299
|
-
## [2.
|
|
300
|
-
|
|
301
|
-
###
|
|
302
|
-
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
-
|
|
318
|
-
-
|
|
319
|
-
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
-
|
|
328
|
-
|
|
329
|
-
## [2.
|
|
330
|
-
|
|
331
|
-
###
|
|
332
|
-
- `gsd-t-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
-
|
|
343
|
-
|
|
344
|
-
## [2.
|
|
345
|
-
|
|
346
|
-
###
|
|
347
|
-
- `/
|
|
348
|
-
|
|
349
|
-
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
-
|
|
368
|
-
|
|
369
|
-
## [2.
|
|
370
|
-
|
|
371
|
-
###
|
|
372
|
-
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
-
|
|
427
|
-
|
|
428
|
-
## [2.
|
|
429
|
-
|
|
430
|
-
### Changed
|
|
431
|
-
-
|
|
432
|
-
|
|
433
|
-
## [2.
|
|
434
|
-
|
|
435
|
-
###
|
|
436
|
-
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
-
|
|
467
|
-
|
|
468
|
-
## [2.
|
|
469
|
-
|
|
470
|
-
###
|
|
471
|
-
-
|
|
472
|
-
|
|
473
|
-
## [2.
|
|
474
|
-
|
|
475
|
-
###
|
|
476
|
-
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
-
|
|
496
|
-
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
- `
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
-
|
|
517
|
-
|
|
518
|
-
## [2.
|
|
519
|
-
|
|
520
|
-
###
|
|
521
|
-
-
|
|
522
|
-
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
###
|
|
547
|
-
- `gsd-t-
|
|
548
|
-
|
|
549
|
-
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
- `gsd-t
|
|
555
|
-
-
|
|
556
|
-
|
|
557
|
-
## [2.0
|
|
558
|
-
|
|
559
|
-
###
|
|
560
|
-
-
|
|
561
|
-
-
|
|
562
|
-
|
|
563
|
-
## [2.
|
|
564
|
-
|
|
565
|
-
###
|
|
566
|
-
-
|
|
567
|
-
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to GSD-T are documented here. Updated with each release.
|
|
4
|
+
|
|
5
|
+
## [2.33.12] - 2026-03-06
|
|
6
|
+
|
|
7
|
+
### Fixed
|
|
8
|
+
- **Dashboard graph now shows the current session** — heartbeat.js now emits `session_start`/`session_end` events (agent_id=session_id) so the session appears as a root node
|
|
9
|
+
- **Tool calls attributed to session** — PostToolUse events now carry session_id as agent_id fallback; all activity visible in single-agent sessions
|
|
10
|
+
- **Readable node labels** — sessions display as "Session · Mar 6 · abc1234" (blue-bordered); subagents show their type
|
|
11
|
+
- 3 new tests (178/178 passing); event-schema-contract.md updated with new event types
|
|
12
|
+
|
|
13
|
+
## [2.33.11] - 2026-03-05
|
|
14
|
+
|
|
15
|
+
### Added
|
|
16
|
+
- `.gitignore` excludes `.claude/worktrees/` (Claude Code internal) and `nul` (Windows artifact)
|
|
17
|
+
- `ai-evals-analysis.md`, `gsd-t-command-doc-matrix.csv` — development reference documents
|
|
18
|
+
- `scripts/gsd-t-dashboard-mockup.html` — interactive mockup from M15 brainstorm (historical reference)
|
|
19
|
+
- `.gsd-t/brainstorm-2026-02-18.md` — brainstorm notes from Feb 18 ideation session
|
|
20
|
+
|
|
21
|
+
## [2.33.10] - 2026-03-04
|
|
22
|
+
|
|
23
|
+
### Added
|
|
24
|
+
- **Milestone 15: Real-Time Agent Dashboard** — Zero-dependency live browser dashboard for GSD-T execution:
|
|
25
|
+
- **`scripts/gsd-t-dashboard-server.js`** (141 lines): Node.js HTTP+SSE server (zero external deps). Watches `.gsd-t/events/*.jsonl`, streams up to 500 existing events on connect, tails for new events, keepalive every 15s. Runs detached with PID file. All functions exported for testability (23 unit tests in `test/dashboard-server.test.js`).
|
|
26
|
+
- **`scripts/gsd-t-dashboard.html`** (194 lines): Browser dashboard using React 17 + React Flow v11.11.4 + Dagre via CDN (no build step, no npm deps). Dark theme. Renders agent hierarchy as directed graph from `parent_agent_id` relationships. Live event feed (max 200 events, outcome color-coded: green=success, red=failure, yellow=learning). Auto-reconnects on disconnect.
|
|
27
|
+
- **`commands/gsd-t-visualize`**: 48th GSD-T command. Starts server via `--detach`, polls `/ping` up to 5s, opens browser cross-platform (win32/darwin/linux). Accepts `stop` argument. Includes Step 0 self-spawn with OBSERVABILITY LOGGING.
|
|
28
|
+
- Both `gsd-t-dashboard-server.js` and `gsd-t-dashboard.html` automatically installed to `~/.claude/scripts/` during `npx @tekyzinc/gsd-t install/update`
|
|
29
|
+
- 23 new tests in `test/dashboard-server.test.js` — total: 176/176 passing
|
|
30
|
+
|
|
31
|
+
### Changed
|
|
32
|
+
- Total command count: 47 → **48** (44 GSD-T workflow + 4 utility)
|
|
33
|
+
|
|
34
|
+
## [2.32.10] - 2026-03-04
|
|
35
|
+
|
|
36
|
+
### Added
|
|
37
|
+
- **Milestone 14: Execution Intelligence Layer** — Structured observability, learning, and reflection:
|
|
38
|
+
- **`scripts/gsd-t-event-writer.js`**: New zero-dependency CLI + module.exports. Writes structured JSONL events to `.gsd-t/events/YYYY-MM-DD.jsonl`. Validates 8 event_type values and 5 outcome values. Symlink-safe. Resolves events dir from `GSD_T_PROJECT_DIR` or cwd. 26 new tests.
|
|
39
|
+
- **Heartbeat enrichment**: `scripts/gsd-t-heartbeat.js` maps `SubagentStart`/`SubagentStop`/`PostToolUse` hook events to the events/ schema, appending them to daily JSONL files alongside existing heartbeat writes.
|
|
40
|
+
- **Outcome-tagged Decision Log**: `execute`, `debug`, and `wave` now prefix all new Decision Log entries with `[success]`, `[failure]`, `[learning]`, or `[deferred]`.
|
|
41
|
+
- **Pre-task experience retrieval (Reflexion pattern)**: `execute` and `debug` grep the Decision Log for `[failure]`/`[learning]` entries matching the current domain before spawning subagents. Relevant past failures prepended as `⚠️ Past Failures` block in subagent prompt.
|
|
42
|
+
- **Phase transition events**: `wave` writes `phase_transition` event with outcome:success/failure at each phase boundary.
|
|
43
|
+
- **Distillation step** (Step 2.5 in `complete-milestone`): Scans event stream for patterns seen ≥3 times, proposes CLAUDE.md / constraints.md rule additions, requires user confirmation before any write.
|
|
44
|
+
- **`commands/gsd-t-reflect`** (134 lines, 47th command): On-demand retrospective from event stream. Generates `.gsd-t/retrospectives/YYYY-MM-DD-{milestone}.md` with What Worked / What Failed / Patterns Found / Proposed Memory Updates. Includes Step 0 self-spawn with OBSERVABILITY LOGGING.
|
|
45
|
+
- `gsd-t-event-writer.js` installed to `~/.claude/scripts/` during install/update
|
|
46
|
+
|
|
47
|
+
### Changed
|
|
48
|
+
- Total command count: 46 → **47** (43 GSD-T workflow + 4 utility)
|
|
49
|
+
|
|
50
|
+
## [2.28.10] - 2026-02-18
|
|
51
|
+
|
|
52
|
+
### Added
|
|
53
|
+
- **Milestone 13: Tooling & UX** — Infrastructure and UX improvements:
|
|
54
|
+
- **`scripts/gsd-t-tools.js`**: New zero-dependency Node.js CLI utility returning compact JSON. Subcommands: `state get/set` (read/write progress.md keys), `validate` (check required files), `parse progress --section` (extract named sections), `list domains|contracts`, `git pre-commit-check` (branch/status/last-commit), `template scope|tasks <domain>`
|
|
55
|
+
- **`scripts/gsd-t-statusline.js`**: New statusline script for Claude Code. Reads GSD-T project state and optionally reads `CLAUDE_CONTEXT_TOKENS_USED`/`CLAUDE_CONTEXT_TOKENS_MAX` env vars to show a color-coded context usage bar (green→yellow→orange→red). Configure via `"statusLine": "node ~/.claude/scripts/gsd-t-statusline.js"` in `settings.json`
|
|
56
|
+
- **`gsd-t-health`**: New slash command validating `.gsd-t/` project structure. Checks all required files, directories, version consistency, status validity, contract integrity, and domain integrity. `--repair` creates any missing files from templates. Reports HEALTHY / DEGRADED / BROKEN
|
|
57
|
+
- **`gsd-t-pause`**: New slash command saving exact position to `.gsd-t/continue-here-{timestamp}.md` with milestone, phase, domain, task, last completed action, next action, and open items
|
|
58
|
+
- Both scripts automatically installed to `~/.claude/scripts/` during `npx @tekyzinc/gsd-t install/update`
|
|
59
|
+
|
|
60
|
+
### Changed
|
|
61
|
+
- **`gsd-t-resume`**: Now reads the most recent `.gsd-t/continue-here-*.md` file (if present) as the primary resume point before falling back to `progress.md`. Deletes the continue-here file after consuming it
|
|
62
|
+
- **`gsd-t-plan`**: Wave Execution Groups added to `integration-points.md` format — groups tasks into parallel-safe waves with checkpoints between them. Wave rules: same-wave tasks share no files and have no dependencies; different-wave tasks depend on each other's output or modify shared files
|
|
63
|
+
- **`gsd-t-execute`**: Reads Wave Execution Groups from `integration-points.md` and executes wave-by-wave. Tasks within a wave are parallel-safe; checkpoints between waves verify contract compliance before proceeding. Team mode now spawns teammates only within the same wave
|
|
64
|
+
- **`gsd-t-health`** and **`gsd-t-pause`** added to all reference files (help, README, GSD-T-README, CLAUDE-global template, user CLAUDE.md)
|
|
65
|
+
- Total command count: 43 → **45** (41 GSD-T workflow + 4 utility)
|
|
66
|
+
|
|
67
|
+
## [2.27.10] - 2026-02-18
|
|
68
|
+
|
|
69
|
+
### Changed
|
|
70
|
+
- **Milestone 12: Planning Intelligence** — Three improvements to correctness across milestones:
|
|
71
|
+
- **CONTEXT.md from discuss**: `gsd-t-discuss` now creates `.gsd-t/CONTEXT.md` with three sections — Locked Decisions (plan must implement exactly), Deferred Ideas (plan must NOT implement), and Claude's Discretion (free to decide). New Step 5 added to discuss; steps renumbered
|
|
72
|
+
- **Plan fidelity enforcement**: `gsd-t-plan` reads CONTEXT.md and maps every Locked Decision to at least one task. Also produces a REQ-ID → domain/task traceability table in `docs/requirements.md`
|
|
73
|
+
- **Plan validation checker**: A Task subagent validates the plan after creation — checks REQ coverage, Locked Decision mapping, task completeness, cross-domain dependencies, and contract existence. Max 3 fix iterations before stopping
|
|
74
|
+
- **Requirements close-out in verify**: `gsd-t-verify` marks matched requirements as `complete` in the traceability table and reports orphaned requirements and unanchored tasks
|
|
75
|
+
|
|
76
|
+
## [2.26.10] - 2026-02-18
|
|
77
|
+
|
|
78
|
+
### Changed
|
|
79
|
+
- **Milestone 11: Execution Quality** — Three improvements to execution reliability:
|
|
80
|
+
- **Deviation Rules**: `execute`, `quick`, and `debug` now include a 4-rule deviation protocol — auto-fix bugs (3-attempt limit), add minimum missing dependencies, fix blockers, and STOP for architectural changes. Failed attempts log to `.gsd-t/deferred-items.md`
|
|
81
|
+
- **Atomic per-task commits**: `execute` now commits after each task using `feat({domain}/task-{N}): {description}` format instead of batching at phase end. Team mode instructions updated with the same requirement
|
|
82
|
+
- **Wave spot-check**: Between-phase verification in `wave` now checks git log (commits present), filesystem (output files exist), and FAILED markers in progress.md — not just agent-reported status
|
|
83
|
+
|
|
84
|
+
## [2.25.10] - 2026-02-18
|
|
85
|
+
|
|
86
|
+
### Changed
|
|
87
|
+
- **Milestone 10: Token Efficiency** — QA overhead significantly reduced across all phases:
|
|
88
|
+
- `partition` and `plan`: QA spawn removed (no code produced in these phases)
|
|
89
|
+
- `test-sync`, `verify`, `complete-milestone`: contract testing and gap analysis performed inline (no QA teammate)
|
|
90
|
+
- `execute`, `integrate`: QA now spawned via lightweight Task subagent instead of TeamCreate teammate
|
|
91
|
+
- `quick`, `debug`: QA spawn removed; tests run inline in the existing Test & Verify step; both commands now self-spawn as Task subagents (Step 0) for fresh context windows
|
|
92
|
+
- `scan`, `status`: wrap themselves as Task subagents for fresh context on each invocation
|
|
93
|
+
- Global CLAUDE.md QA Mandatory section updated to reflect the new per-command QA method
|
|
94
|
+
|
|
95
|
+
## [2.24.10] - 2026-02-18
|
|
96
|
+
|
|
97
|
+
### Changed
|
|
98
|
+
- **Versioning scheme: patch numbers are always 2 digits**: Patch segment now starts at 10 (not 0) after any minor or major reset. Incrementing continues normally (10→11→12…). Semver validity is preserved — no leading zeros. `checkin.md` and `gsd-t-complete-milestone.md` updated with the new convention. `gsd-t-init` will initialize new projects at `0.1.10`
|
|
99
|
+
|
|
100
|
+
## [2.24.9] - 2026-02-18
|
|
101
|
+
|
|
102
|
+
### Changed
|
|
103
|
+
- **Default model**: Example settings.json updated from `claude-opus-4-6` to `claude-sonnet-4-6` (faster, lower token usage)
|
|
104
|
+
|
|
105
|
+
## [2.24.8] - 2026-02-18
|
|
106
|
+
|
|
107
|
+
### Fixed
|
|
108
|
+
- **CLAUDE.md update no longer overwrites user content**: Installer now uses marker-based merging (`<!-- GSD-T:START -->` / `<!-- GSD-T:END -->`). Updates only replace the GSD-T section between markers, preserving all user customizations. Existing installs without markers are auto-migrated. Backup still created for reference
|
|
109
|
+
|
|
110
|
+
## [2.24.7] - 2026-02-18
|
|
111
|
+
|
|
112
|
+
### Changed
|
|
113
|
+
- **Next Command Hint redesigned**: Replaced plain `Next →` text with GSD-style "Next Up" visual block — divider lines, `▶ Next Up` header, phase name with description, command in backticks, and alternatives section. Format designed to trigger Claude Code's prompt suggestion engine, making the next command appear as ghost text in the user's input field
|
|
114
|
+
|
|
115
|
+
## [2.24.6] - 2026-02-18
|
|
116
|
+
|
|
117
|
+
### Added
|
|
118
|
+
- **Auto-update on session start**: SessionStart hook now automatically installs new GSD-T versions when detected — runs `npm install -g` + `gsd-t update-all`. Falls back to manual instructions if auto-update fails
|
|
119
|
+
- **Changelog link in all version messages**: All three output modes (`[GSD-T AUTO-UPDATE]`, `[GSD-T UPDATE]`, `[GSD-T]`) now include the changelog URL
|
|
120
|
+
- **Update check installer**: `bin/gsd-t.js` now deploys the update check script and configures the SessionStart hook automatically during install, with auto-fix for incorrect matchers
|
|
121
|
+
|
|
122
|
+
### Fixed
|
|
123
|
+
- **SessionStart hook matcher**: Changed from `"startup"` to `""` (empty) to match all session types including compact/resumed sessions
|
|
124
|
+
|
|
125
|
+
## [2.24.5] - 2026-02-18
|
|
126
|
+
|
|
127
|
+
### Fixed
|
|
128
|
+
- **Dead code removed**: `PKG_EXAMPLES` constant in `bin/gsd-t.js` and dead imports (`writeTemplateFile`, `showStatusVersion`) in `test/cli-quality.test.js` (TD-057, TD-058)
|
|
129
|
+
- **summarize() case fallthrough**: Combined identical `Read`/`Edit`/`Write` cases using switch fallthrough, saving 4 lines (TD-056)
|
|
130
|
+
- **checkForUpdates() condition**: Simplified redundant `!cached && isStale` to `if (!cached) ... else if (stale)` (TD-061)
|
|
131
|
+
- **Notification title scrubbing**: Applied `scrubSecrets()` to `h.title` in heartbeat notification handler (TD-063)
|
|
132
|
+
- **SEC-N16 note corrected**: Updated informational note during scan #5 (TD-062)
|
|
133
|
+
- **Wave integrity check contract**: Updated `wave-phase-sequence.md` to match actual implementation — checks Status, Milestone name, Domains table (not version) (TD-064)
|
|
134
|
+
- **Duplicate format contract**: Deleted `file-format-contract.md` — `backlog-file-formats.md` is authoritative (TD-065)
|
|
135
|
+
|
|
136
|
+
### Added
|
|
137
|
+
- 9 new tests: 3 `readSettingsJson()` tests in `cli-quality.test.js`, 6 `shortPath()` tests in `security.test.js` (TD-059, TD-060)
|
|
138
|
+
- Total tests: 125 (was 116)
|
|
139
|
+
|
|
140
|
+
## [2.24.4] - 2026-02-18
|
|
141
|
+
|
|
142
|
+
### Fixed
|
|
143
|
+
- **progress.md status**: Now uses contract-recognized values (READY between milestones, not ACTIVE)
|
|
144
|
+
- **CLAUDE.md version**: Removed hardcoded version — references `package.json` directly to prevent recurring drift (TD-048)
|
|
145
|
+
- **CHANGELOG.md**: Added missing entries for v2.23.1 through v2.24.3 covering milestones 3-7 (TD-045)
|
|
146
|
+
- **Orphaned domains**: Deleted stale `cli-quality/` and `cmd-cleanup/` directories from previous milestones (TD-046)
|
|
147
|
+
- **Git line endings**: Applied `git add --renormalize .` to enforce LF across all tracked files (TD-049)
|
|
148
|
+
- **Notification scrubbing**: Applied `scrubSecrets()` to heartbeat notification messages (TD-052)
|
|
149
|
+
|
|
150
|
+
### Changed
|
|
151
|
+
- **Contracts synced**: `progress-file-format.md` enriched with milestone table + optional fields. `wave-phase-sequence.md` updated with integrity check (M7) and security considerations (M5). `command-interface-contract.md` renamed to `backlog-command-interface.md`. `integration-points.md` rewritten to reflect current state (TD-047, TD-053, TD-054, TD-055)
|
|
152
|
+
- **readSettingsJson()**: Extracted helper to deduplicate 3 `JSON.parse(readFileSync)` call sites in CLI (TD-050)
|
|
153
|
+
- **prepublishOnly**: Added `npm test` gate before `npm publish` (TD-051)
|
|
154
|
+
- **TD-029 (TOCTOU)**: Formally accepted as risk with 5-point rationale — single-threaded Node.js, user-owned dirs, Windows symlink requires admin
|
|
155
|
+
|
|
156
|
+
## [2.24.3] - 2026-02-19
|
|
157
|
+
|
|
158
|
+
### Changed
|
|
159
|
+
- **Command file cleanup**: 85 fractional step numbers renumbered to integers across 17 command files. Autonomy Behavior sections added to `gsd-t-discuss` and `gsd-t-impact`. QA agent hardened with file-path boundary constraints, multi-framework test detection, and Document Ripple section. Wave integrity check validates progress.md fields before starting. Structured 3-condition discuss-skip heuristic. Consistent "QA failure blocks" language across all 10 QA-spawning commands
|
|
160
|
+
|
|
161
|
+
### Fixed
|
|
162
|
+
- 8 tech debt items resolved: TD-030, TD-031, TD-036, TD-037, TD-038, TD-039, TD-040, TD-041
|
|
163
|
+
|
|
164
|
+
## [2.24.2] - 2026-02-19
|
|
165
|
+
|
|
166
|
+
### Changed
|
|
167
|
+
- **CLI quality improvement**: All 86 functions across `bin/gsd-t.js` (80) and `scripts/gsd-t-heartbeat.js` (6) are now <= 30 lines. 3 code duplication patterns resolved (`readProjectDeps`, `writeTemplateFile`, `readPyContent` extracted). `buildEvent()` refactored to handler map pattern. `checkForUpdates` inline JS extracted to `scripts/gsd-t-fetch-version.js`. `doUpdateAll` has per-project error isolation
|
|
168
|
+
|
|
169
|
+
### Added
|
|
170
|
+
- `.gitattributes` and `.editorconfig` for consistent file formatting
|
|
171
|
+
- 22 new tests in `test/cli-quality.test.js` (buildEvent, readProjectDeps, readPyContent, insertGuardSection, readUpdateCache, addHeartbeatHook)
|
|
172
|
+
|
|
173
|
+
### Fixed
|
|
174
|
+
- Heartbeat cleanup now only runs on SessionStart (not every event)
|
|
175
|
+
- 7 tech debt items resolved: TD-017, TD-021, TD-024, TD-025, TD-032, TD-033, TD-034
|
|
176
|
+
|
|
177
|
+
## [2.24.1] - 2026-02-18
|
|
178
|
+
|
|
179
|
+
### Added
|
|
180
|
+
- **Security hardening**: `scrubSecrets()` and `scrubUrl()` in heartbeat script scrub sensitive data (passwords, tokens, API keys, bearer tokens) before logging. 30 new security tests in `test/security.test.js`
|
|
181
|
+
- `hasSymlinkInPath()` validates parent directories for symlink attacks
|
|
182
|
+
- HTTP response accumulation bounded to 1MB in both fetch paths
|
|
183
|
+
- Security Considerations section in `gsd-t-wave.md` documenting `bypassPermissions` implications
|
|
184
|
+
|
|
185
|
+
### Fixed
|
|
186
|
+
- `npm-update-check.js` validates cache path within `~/.claude/` and checks for symlinks before writing
|
|
187
|
+
- 6 tech debt items resolved: TD-019, TD-020, TD-026, TD-027, TD-028, TD-035
|
|
188
|
+
|
|
189
|
+
## [2.24.0] - 2026-02-18
|
|
190
|
+
|
|
191
|
+
### Added
|
|
192
|
+
- **Testing foundation**: 64 automated tests in 2 test files (`test/helpers.test.js`: 27 tests, `test/filesystem.test.js`: 37 tests) using Node.js built-in test runner (`node --test`). Zero external test dependencies
|
|
193
|
+
- `module.exports` added to `bin/gsd-t.js` for 20 testable functions with `require.main` guard
|
|
194
|
+
- CLI subcommand tests (--version, help, status, doctor)
|
|
195
|
+
- Helper function tests (validateProjectName, applyTokens, normalizeEol, validateVersion, isNewerVersion)
|
|
196
|
+
- Filesystem tests (isSymlink, ensureDir, validateProjectPath, copyFile, hasPlaywright, hasSwagger, hasApi)
|
|
197
|
+
- Command listing tests (getCommandFiles, getGsdtCommands, getUtilityCommands with count validation)
|
|
198
|
+
|
|
199
|
+
### Fixed
|
|
200
|
+
- Tech debt item TD-003 (no test coverage) resolved
|
|
201
|
+
|
|
202
|
+
## [2.23.1] - 2026-02-18
|
|
203
|
+
|
|
204
|
+
### Fixed
|
|
205
|
+
- **Count fix**: All command count references updated to 43/39/4 across CLAUDE.md, README.md, package.json, and docs (TD-022)
|
|
206
|
+
- QA agent contract now includes test-sync phase with "During Test-Sync" section and updated output table (TD-042)
|
|
207
|
+
- Orphaned domain files from previous milestones archived to `.gsd-t/milestones/` (TD-043)
|
|
208
|
+
|
|
209
|
+
## [2.23.0] - 2026-02-17
|
|
210
|
+
|
|
211
|
+
### Changed
|
|
212
|
+
- **Wave orchestrator rewrite**: `gsd-t-wave` now spawns an independent agent for each phase instead of executing all phases inline. Each phase agent gets a fresh context window (~200K tokens), eliminating cross-phase context accumulation and preventing mid-wave compaction. The orchestrator stays lightweight (~30KB), reading only progress.md between phases. Phase sequence is unchanged — only the execution model changed. Estimated 75-85% reduction in peak context usage during waves
|
|
213
|
+
|
|
214
|
+
## [2.22.0] - 2026-02-17
|
|
215
|
+
|
|
216
|
+
### Added
|
|
217
|
+
- **gsd-t-qa**: New QA Agent command — dedicated teammate for test generation, execution, and gap reporting. Spawned automatically by 10 GSD-T phase commands
|
|
218
|
+
- **QA Agent spawn steps**: Added to partition (4.7), plan (4.7), execute (1.5 + team), verify (1.5 + team), complete-milestone (7.6), quick (2.5), debug (2.5), integrate (4.5), test-sync (1.5), wave (1.5)
|
|
219
|
+
- **Contract-to-test mapping rules**: API contracts → Playwright API tests, Schema contracts → constraint tests, Component contracts → E2E tests
|
|
220
|
+
- **QA Agent (Mandatory) section**: Added to global CLAUDE.md template — QA failure blocks phase completion
|
|
221
|
+
|
|
222
|
+
## [2.21.1] - 2026-02-18
|
|
223
|
+
|
|
224
|
+
### Fixed
|
|
225
|
+
- **PR #7 — Fix 12 scan items**: Security symlink validation gaps, contract/doc alignment, scope template hardening, heartbeat crash guard, progress template field ordering
|
|
226
|
+
- **PR #8 — Resolve final 4 scan items**: Function splitting in CLI (`doInit` helpers extracted), ownership validation for domain files, npm-update-check extracted to standalone script (`scripts/npm-update-check.js`)
|
|
227
|
+
|
|
228
|
+
## [2.21.0] - 2026-02-17
|
|
229
|
+
|
|
230
|
+
### Added
|
|
231
|
+
- **gsd-t-triage-and-merge**: New command to auto-review unmerged GitHub branches, score impact (auto-merge / review / skip), merge safe branches, and optionally version bump + publish. Publish gate respects autonomy level — auto in Level 3, prompted in Level 1-2. Sensitive file detection for commands, CLI, templates, and scripts
|
|
232
|
+
|
|
233
|
+
## [2.20.7] - 2026-02-17
|
|
234
|
+
|
|
235
|
+
### Added
|
|
236
|
+
- **Formal contracts**: 5 contract definitions for core GSD-T interfaces — backlog file formats, domain structure, pre-commit gate, progress.md format, and wave phase sequence. Formalizes existing conventions as machine-readable reference docs
|
|
237
|
+
|
|
238
|
+
## [2.20.6] - 2026-02-16
|
|
239
|
+
|
|
240
|
+
### Fixed
|
|
241
|
+
- Stale command/template counts in project CLAUDE.md (25→41 commands, 7→9 templates, v2.0.0→v2.20.x)
|
|
242
|
+
- Duplicate step numbering in `gsd-t-execute.md` (two step 10s)
|
|
243
|
+
- Windows CRLF/LF comparison causing false "changed" detection in CLI update
|
|
244
|
+
|
|
245
|
+
### Added
|
|
246
|
+
- Document Ripple sections to `gsd-t-execute`, `gsd-t-scan`, `gsd-t-test-sync`, `gsd-t-verify`
|
|
247
|
+
- Heartbeat auto-cleanup: files older than 7 days are automatically removed
|
|
248
|
+
- Error handling wrapping around file operations in CLI (copy, unlink, write)
|
|
249
|
+
- `applyTokens()` and `normalizeEol()` helpers to reduce duplication
|
|
250
|
+
- Extracted `updateProjectClaudeMd()`, `createProjectChangelog()`, `checkProjectHealth()` from `doUpdateAll()`
|
|
251
|
+
|
|
252
|
+
## [2.20.5] - 2026-02-16
|
|
253
|
+
|
|
254
|
+
### Added
|
|
255
|
+
- **Next Command Hint**: After each GSD-T phase completes, displays the recommended next command (e.g., `Next → /user:gsd-t-partition`). Full successor mapping for all workflow commands. Skipped during auto-advancing (Level 3 mid-wave)
|
|
256
|
+
|
|
257
|
+
## [2.20.4] - 2026-02-16
|
|
258
|
+
|
|
259
|
+
### Changed
|
|
260
|
+
- **Scan always uses team mode**: `gsd-t-scan` and `gsd-t-init-scan-setup` now spawn a team by default. Solo mode only for trivially small codebases (< 5 files) or when teams are explicitly disabled
|
|
261
|
+
|
|
262
|
+
## [2.20.3] - 2026-02-16
|
|
263
|
+
|
|
264
|
+
### Added
|
|
265
|
+
- **Playwright Cleanup**: After Playwright tests finish, kill any app/server processes that were started for the tests. Prevents orphaned dev servers from lingering after test runs
|
|
266
|
+
|
|
267
|
+
## [2.20.2] - 2026-02-16
|
|
268
|
+
|
|
269
|
+
### Added
|
|
270
|
+
- **CLI health checks**: `update-all` and `doctor` now check all projects for missing Playwright and Swagger/OpenAPI
|
|
271
|
+
- Smart API detection: scans `package.json`, `requirements.txt`, `pyproject.toml` for API frameworks (Express, Fastify, Hono, Django, FastAPI, etc.)
|
|
272
|
+
- Swagger detection: checks for spec files (`openapi.json/yaml`, `swagger.json/yaml`) and swagger packages in dependencies
|
|
273
|
+
- Health summary in `update-all` shows counts of missing Playwright and Swagger across all registered projects
|
|
274
|
+
|
|
275
|
+
## [2.20.1] - 2026-02-16
|
|
276
|
+
|
|
277
|
+
### Added
|
|
278
|
+
- **API Documentation Guard (Swagger/OpenAPI)**: Every API endpoint must be documented in Swagger/OpenAPI spec — no exceptions. Auto-detects framework and installs appropriate Swagger integration. Swagger URL must be published in CLAUDE.md, README.md, and docs/infrastructure.md
|
|
279
|
+
- Pre-Commit Gate now checks for Swagger spec updates on any API endpoint change
|
|
280
|
+
|
|
281
|
+
## [2.20.0] - 2026-02-16
|
|
282
|
+
|
|
283
|
+
### Added
|
|
284
|
+
- **Playwright Setup in Init**: `gsd-t-init` now installs Playwright, creates `playwright.config.ts`, and sets up E2E test directory for every project. Detects package manager (bun, npm, yarn, pnpm, pip) automatically
|
|
285
|
+
- **Playwright Readiness Guard**: Before any testing command (execute, test-sync, verify, quick, wave, milestone, complete-milestone, debug), checks for `playwright.config.*` and auto-installs if missing. Playwright must always be ready — no deferring to "later"
|
|
286
|
+
|
|
287
|
+
## [2.19.1] - 2026-02-16
|
|
288
|
+
|
|
289
|
+
### Changed
|
|
290
|
+
- **Quick**: Now runs the FULL test suite (not just affected tests), requires comprehensive test creation for new/changed code paths including Playwright E2E, and verifies against requirements and contracts. "Quick doesn't mean skip testing."
|
|
291
|
+
|
|
292
|
+
## [2.19.0] - 2026-02-16
|
|
293
|
+
|
|
294
|
+
### Changed
|
|
295
|
+
- **Execute**: "No feature code without test code" — every task must include comprehensive unit tests AND Playwright E2E specs for all new code paths, modes, and flows. Tests are part of the deliverable, not a follow-up
|
|
296
|
+
- **Test-Sync**: Creates tests immediately during execute phase instead of deferring gaps to verify. Missing Playwright specs for new features/modes are created on the spot
|
|
297
|
+
- **Verify**: Zero test coverage on new functionality is now a FAIL (not WARN). Coverage audit checks that every new feature, mode, page, and flow has comprehensive Playwright specs covering happy path, error states, edge cases, and all modes/flags
|
|
298
|
+
|
|
299
|
+
## [2.18.2] - 2026-02-16
|
|
300
|
+
|
|
301
|
+
### Added
|
|
302
|
+
- Gap Analysis Gate in `gsd-t-complete-milestone` — mandatory requirements verification before archiving
|
|
303
|
+
- Self-correction loop: auto-fixes gaps, re-verifies, re-analyzes (up to 2 cycles), stops if unresolvable
|
|
304
|
+
- Explicit Playwright E2E test execution in milestone test verification step
|
|
305
|
+
|
|
306
|
+
## [2.18.1] - 2026-02-16
|
|
307
|
+
|
|
308
|
+
### Added
|
|
309
|
+
- Auto-Init Guard — GSD-T workflow commands automatically run `gsd-t-init` if any init files are missing, then continue with the original command
|
|
310
|
+
- `gsd-t-init` copies `~/.claude/settings.local` → `.claude/settings.local.json` during project initialization
|
|
311
|
+
- Exempt commands that skip auto-init: `gsd-t-init`, `gsd-t-init-scan-setup`, `gsd-t-help`, `gsd-t-version-update`, `gsd-t-version-update-all`, `gsd-t-prompt`, `gsd-t-brainstorm`
|
|
312
|
+
|
|
313
|
+
## [2.18.0] - 2026-02-16
|
|
314
|
+
|
|
315
|
+
### Added
|
|
316
|
+
- Heartbeat system — real-time event streaming from Claude Code sessions via async hooks
|
|
317
|
+
- `scripts/gsd-t-heartbeat.js` — hook handler that writes JSONL events to `.gsd-t/heartbeat-{session_id}.jsonl`
|
|
318
|
+
- 9 Claude Code hooks: SessionStart, PostToolUse, SubagentStart, SubagentStop, TaskCompleted, TeammateIdle, Notification, Stop, SessionEnd
|
|
319
|
+
- Installer auto-configures heartbeat hooks in settings.json (all async, zero performance impact)
|
|
320
|
+
- Event types: session lifecycle, tool calls with file/command summaries, agent spawn/stop/idle, task completions
|
|
321
|
+
|
|
322
|
+
## [2.17.0] - 2026-02-16
|
|
323
|
+
|
|
324
|
+
### Added
|
|
325
|
+
- `/user:gsd-t-log` command — sync progress.md Decision Log with recent git activity by scanning commits since last logged entry
|
|
326
|
+
- Incremental updates (only new commits) and first-time full reconstruction from git history
|
|
327
|
+
- Total commands: 38 GSD-T + 3 utility = 41
|
|
328
|
+
|
|
329
|
+
## [2.16.5] - 2026-02-16
|
|
330
|
+
|
|
331
|
+
### Added
|
|
332
|
+
- `gsd-t-populate` now reconstructs Decision Log from git history — parses all commits, generates timestamped entries, merges with existing log
|
|
333
|
+
- Pre-Commit Gate explicitly lists all 30 file-modifying commands that must log to progress.md
|
|
334
|
+
|
|
335
|
+
### Changed
|
|
336
|
+
- Rebuilt GSD-T project Decision Log with full `YYYY-MM-DD HH:MM` timestamps from 54 git commits
|
|
337
|
+
|
|
338
|
+
## [2.16.4] - 2026-02-16
|
|
339
|
+
|
|
340
|
+
### Changed
|
|
341
|
+
- Smart router renamed from `/user:gsd-t` to `/user:gsd` — sorts first in autocomplete, shorter to type
|
|
342
|
+
- Pre-Commit Gate now requires timestamped progress.md entry (`YYYY-MM-DD HH:MM`) after every completed task, not just architectural decisions
|
|
343
|
+
|
|
344
|
+
## [2.16.3] - 2026-02-16
|
|
345
|
+
|
|
346
|
+
### Fixed
|
|
347
|
+
- Reverted smart router rename (`/gsd` back to `/gsd-t`) — superseded by 2.16.4 which re-applies the rename
|
|
348
|
+
|
|
349
|
+
## [2.16.2] - 2026-02-16
|
|
350
|
+
|
|
351
|
+
### Changed
|
|
352
|
+
- Smart router renamed from `/user:gsd-t` to `/user:gsd` (reverted in 2.16.3)
|
|
353
|
+
|
|
354
|
+
## [2.16.1] - 2026-02-16
|
|
355
|
+
|
|
356
|
+
### Fixed
|
|
357
|
+
- `gsd-t-init-scan-setup` now pulls existing code from remote before scanning — prevents treating repos with existing code as greenfield
|
|
358
|
+
|
|
359
|
+
## [2.16.0] - 2026-02-13
|
|
360
|
+
|
|
361
|
+
### Changed
|
|
362
|
+
- Smart router (`/gsd-t`) replaced signal-word lookup table with **semantic evaluation** — evaluates user intent against each command's purpose and "Use when" criteria from help summaries
|
|
363
|
+
- Router shows runner-up command when confidence is close: `(also considered: gsd-t-{x} — Esc to switch)`
|
|
364
|
+
- New commands automatically participate in routing without updating a routing table
|
|
365
|
+
|
|
366
|
+
### Added
|
|
367
|
+
- Backlog item B1: Agentic Workflow Architecture (future exploration when Claude Code agents mature)
|
|
368
|
+
|
|
369
|
+
## [2.15.4] - 2026-02-13
|
|
370
|
+
|
|
371
|
+
### Changed
|
|
372
|
+
- `gsd-t-gap-analysis` team scaling: one teammate per requirement (3–10), cap at 10 with even batching for 11+, solo for 1–2
|
|
373
|
+
|
|
374
|
+
## [2.15.3] - 2026-02-13
|
|
375
|
+
|
|
376
|
+
### Fixed
|
|
377
|
+
- `gsd-t-gap-analysis` hard cap of 4 teammates max — scales by requirement count (2 for 5–10, 3 for 11–15, 4 for 16+), solo for < 5
|
|
378
|
+
|
|
379
|
+
## [2.15.2] - 2026-02-13
|
|
380
|
+
|
|
381
|
+
### Changed
|
|
382
|
+
- `gsd-t-gap-analysis` team mode now handles flat requirement lists — chunks into batches of ~8–10 per teammate instead of requiring sections
|
|
383
|
+
|
|
384
|
+
## [2.15.1] - 2026-02-13
|
|
385
|
+
|
|
386
|
+
### Changed
|
|
387
|
+
- `gsd-t-gap-analysis` now uses agent team mode automatically — one teammate per requirement section for parallel scanning and classification, with solo fallback
|
|
388
|
+
|
|
389
|
+
## [2.15.0] - 2026-02-13
|
|
390
|
+
|
|
391
|
+
### Added
|
|
392
|
+
- `/user:gsd-t-gap-analysis` command — requirements gap analysis against existing codebase
|
|
393
|
+
- Parses spec into discrete numbered requirements, scans codebase, classifies each as implemented/partial/incorrect/not-implemented
|
|
394
|
+
- Evidence-based classification with file:line references for each requirement
|
|
395
|
+
- Severity levels: Critical (incorrect), High (partial), Medium (not implemented), Low (deferrable)
|
|
396
|
+
- Generates `.gsd-t/gap-analysis.md` with requirements breakdown, gap matrix, and summary stats
|
|
397
|
+
- Re-run support with diff against previous gap analysis (resolved, new, changed, unchanged)
|
|
398
|
+
- Optional merge of parsed requirements into `docs/requirements.md`
|
|
399
|
+
- Auto-groups gaps into recommended milestones/features/quick-fixes for promotion
|
|
400
|
+
- Autonomy-aware: Level 3 proceeds with flagged assumptions, Level 1-2 pauses for clarification
|
|
401
|
+
- Total commands: 37 GSD-T + 3 utility = 40
|
|
402
|
+
|
|
403
|
+
## [2.14.2] - 2026-02-13
|
|
404
|
+
|
|
405
|
+
### Changed
|
|
406
|
+
- Smart router (`/gsd-t`) now displays selected command as the first line of output (mandatory routing confirmation)
|
|
407
|
+
|
|
408
|
+
## [2.14.1] - 2026-02-13
|
|
409
|
+
|
|
410
|
+
### Changed
|
|
411
|
+
- Update Notices section in CLAUDE-global template now handles both `[GSD-T UPDATE]` (update available) and `[GSD-T]` (up to date) version banners
|
|
412
|
+
- Update command in notification changed from raw npm command to `/user:gsd-t-version-update-all`
|
|
413
|
+
|
|
414
|
+
## [2.14.0] - 2026-02-12
|
|
415
|
+
|
|
416
|
+
### Added
|
|
417
|
+
- `/user:gsd-t` smart router command — describe what you need in plain language, auto-routes to the correct GSD-T command
|
|
418
|
+
- Intent classification routes to: quick, feature, project, debug, scan, brainstorm, milestone, wave, status, resume, backlog-add, and more
|
|
419
|
+
- Total commands: 36 GSD-T + 3 utility = 39
|
|
420
|
+
|
|
421
|
+
## [2.13.4] - 2026-02-12
|
|
422
|
+
|
|
423
|
+
### Added
|
|
424
|
+
- Auto-invoked status column on all command tables in README and GSD-T-README (Manual / In wave)
|
|
425
|
+
- `[auto]` markers on wave-invoked commands in `gsd-t-help` main listing
|
|
426
|
+
- Section headers in `gsd-t-help` now show Manual or Auto label
|
|
427
|
+
|
|
428
|
+
## [2.13.3] - 2026-02-12
|
|
429
|
+
|
|
430
|
+
### Changed
|
|
431
|
+
- `gsd-t-init-scan-setup` now asks "Is {current folder} your project root?" before prompting for a folder name
|
|
432
|
+
|
|
433
|
+
## [2.13.2] - 2026-02-12
|
|
434
|
+
|
|
435
|
+
### Changed
|
|
436
|
+
- `gsd-t-init-scan-setup` now asks for project folder name, creates it if needed, and `cd`s into it — can be run from anywhere
|
|
437
|
+
|
|
438
|
+
## [2.13.1] - 2026-02-12
|
|
439
|
+
|
|
440
|
+
### Changed
|
|
441
|
+
- Update notification now includes changelog link (https://github.com/Tekyz-Inc/get-stuff-done-teams/blob/main/CHANGELOG.md)
|
|
442
|
+
|
|
443
|
+
## [2.13.0] - 2026-02-12
|
|
444
|
+
|
|
445
|
+
### Added
|
|
446
|
+
- `/user:gsd-t-init-scan-setup` slash command — full project onboarding combining git setup, init, scan, and setup in one command
|
|
447
|
+
- Prompts for GitHub repo URL if not already connected; skips if remote exists
|
|
448
|
+
- Total commands: 35 GSD-T + 3 utility = 38
|
|
449
|
+
|
|
450
|
+
## [2.12.0] - 2026-02-12
|
|
451
|
+
|
|
452
|
+
### Added
|
|
453
|
+
- `/user:gsd-t-version-update` slash command — update GSD-T to latest version from within Claude Code
|
|
454
|
+
- `/user:gsd-t-version-update-all` slash command — update GSD-T + all registered projects from within Claude Code
|
|
455
|
+
- Total commands: 34 GSD-T + 3 utility = 37
|
|
456
|
+
|
|
457
|
+
## [2.11.6] - 2026-02-12
|
|
458
|
+
|
|
459
|
+
### Changed
|
|
460
|
+
- Update notice now shown at both beginning and end of Claude's first response
|
|
461
|
+
|
|
462
|
+
## [2.11.5] - 2026-02-12
|
|
463
|
+
|
|
464
|
+
### Added
|
|
465
|
+
- SessionStart hook script (`~/.claude/scripts/gsd-t-update-check.js`) for automatic update notifications in Claude Code sessions
|
|
466
|
+
- "Update Notices" instruction in global CLAUDE.md template — Claude relays update notices to the user on first response
|
|
467
|
+
|
|
468
|
+
## [2.11.4] - 2026-02-12
|
|
469
|
+
|
|
470
|
+
### Fixed
|
|
471
|
+
- First-run update check now fetches synchronously when no cache exists — notification shows immediately instead of requiring a second run
|
|
472
|
+
|
|
473
|
+
## [2.11.3] - 2026-02-12
|
|
474
|
+
|
|
475
|
+
### Changed
|
|
476
|
+
- Reduced update check cache duration from 24 hours to 1 hour — new releases are detected faster
|
|
477
|
+
|
|
478
|
+
## [2.11.2] - 2026-02-12
|
|
479
|
+
|
|
480
|
+
### Fixed
|
|
481
|
+
- CLI update check used `!==` instead of semver comparison — would show incorrect downgrade notices when cache had an older version
|
|
482
|
+
- Added `isNewerVersion()` helper for proper semver comparison in update notifications
|
|
483
|
+
|
|
484
|
+
## [2.11.1] - 2026-02-12
|
|
485
|
+
|
|
486
|
+
### Changed
|
|
487
|
+
- `gsd-t-resume` now detects same-session vs cross-session mode — skips full state reload when context is already available, auto-resumes at Level 3
|
|
488
|
+
- Added "Conversation vs. Work" rule to global CLAUDE.md template — plain text questions are answered conversationally, workflow only runs when a `/gsd-t-*` command is invoked
|
|
489
|
+
|
|
490
|
+
## [2.11.0] - 2026-02-12
|
|
491
|
+
|
|
492
|
+
### Added
|
|
493
|
+
- Autonomy-level-aware auto-advancing for all phase commands — at Level 3 (Full Auto), partition, plan, impact, execute, test-sync, integrate, verify, and complete-milestone auto-advance without waiting for user input
|
|
494
|
+
- Wave error recovery auto-remediates at Level 3 (up to 2 fix attempts before stopping)
|
|
495
|
+
- Discuss phase always pauses for user input regardless of autonomy level
|
|
496
|
+
- Autonomy levels documentation added to GSD-T-README Configuration section
|
|
497
|
+
|
|
498
|
+
## [2.10.3] - 2026-02-11
|
|
499
|
+
|
|
500
|
+
### Changed
|
|
501
|
+
- Default autonomy level changed from Level 2 (Standard) to Level 3 (Full Auto) across all templates and commands
|
|
502
|
+
- `gsd-t-init` now sets Level 3 in generated CLAUDE.md
|
|
503
|
+
- `gsd-t-setup` defaults to Level 3 when asking autonomy level
|
|
504
|
+
|
|
505
|
+
## [2.10.2] - 2026-02-11
|
|
506
|
+
|
|
507
|
+
### Added
|
|
508
|
+
- Version update check in `gsd-t-status` slash command — works inside Claude Code and ClaudeWebCLI sessions, not just the CLI binary
|
|
509
|
+
|
|
510
|
+
### Fixed
|
|
511
|
+
- Normalized `repository.url` in package.json (`git+https://` prefix)
|
|
512
|
+
|
|
513
|
+
## [2.10.1] - 2026-02-10
|
|
514
|
+
|
|
515
|
+
### Added
|
|
516
|
+
- Automatic update check — CLI queries npm registry (cached 24h, background refresh) and shows a notice box with update commands when a newer version is available
|
|
517
|
+
|
|
518
|
+
## [2.10.0] - 2026-02-10
|
|
519
|
+
|
|
520
|
+
### Added
|
|
521
|
+
- `CHANGELOG.md` release notes document with full version history
|
|
522
|
+
- `changelog` CLI subcommand — opens changelog in the browser (`gsd-t changelog`)
|
|
523
|
+
- Clickable version links in CLI output (OSC 8 hyperlinks to changelog)
|
|
524
|
+
- `checkin` command now auto-updates CHANGELOG.md on every version bump
|
|
525
|
+
- `update-all` now creates CHANGELOG.md for registered projects that don't have one
|
|
526
|
+
|
|
527
|
+
## [2.9.0] - 2026-02-10
|
|
528
|
+
|
|
529
|
+
### Added
|
|
530
|
+
- `gsd-t-setup` command — generates or restructures project CLAUDE.md by scanning codebase, detecting tech stack/conventions, and removing global duplicates
|
|
531
|
+
|
|
532
|
+
## [2.8.1] - 2026-02-10
|
|
533
|
+
|
|
534
|
+
### Added
|
|
535
|
+
- Workflow Preferences section in global and project CLAUDE.md templates (Research Policy, Phase Flow defaults with per-project override support)
|
|
536
|
+
|
|
537
|
+
## [2.8.0] - 2026-02-10
|
|
538
|
+
|
|
539
|
+
### Added
|
|
540
|
+
- Backlog management system: 7 new commands (`backlog-add`, `backlog-list`, `backlog-move`, `backlog-edit`, `backlog-remove`, `backlog-promote`, `backlog-settings`)
|
|
541
|
+
- 2 new templates (`backlog.md`, `backlog-settings.md`)
|
|
542
|
+
- Backlog initialization in `gsd-t-init` with auto-category derivation
|
|
543
|
+
- Backlog summary in `gsd-t-status` report
|
|
544
|
+
- Backlog section in `gsd-t-help`
|
|
545
|
+
|
|
546
|
+
### Changed
|
|
547
|
+
- Updated `gsd-t-init`, `gsd-t-status`, `gsd-t-help`, CLAUDE-global template, README with backlog integration
|
|
548
|
+
|
|
549
|
+
## [2.7.0] - 2026-02-09
|
|
550
|
+
|
|
551
|
+
### Added
|
|
552
|
+
- `update-all` CLI command — updates global install + all registered project CLAUDE.md files
|
|
553
|
+
- `register` CLI command — manually register a project in the GSD-T project registry
|
|
554
|
+
- Auto-registration on `gsd-t init`
|
|
555
|
+
- Project registry at `~/.claude/.gsd-t-projects`
|
|
556
|
+
|
|
557
|
+
## [2.6.0] - 2026-02-09
|
|
558
|
+
|
|
559
|
+
### Added
|
|
560
|
+
- Destructive Action Guard — mandatory safeguard requiring explicit user approval before destructive or structural changes (schema drops, architecture replacements, module removal)
|
|
561
|
+
- Guard enforced in global CLAUDE.md, project template, and all execution commands
|
|
562
|
+
|
|
563
|
+
## [2.5.0] - 2026-02-09
|
|
564
|
+
|
|
565
|
+
### Changed
|
|
566
|
+
- Audited all 27 command files — added Document Ripple and Test Verification steps to 15 commands that were missing them
|
|
567
|
+
- All code-modifying commands now enforce doc updates and test runs before completion
|
|
568
|
+
|
|
569
|
+
## [2.4.0] - 2026-02-09
|
|
570
|
+
|
|
571
|
+
### Added
|
|
572
|
+
- Automatic version bumping in `checkin` command — determines patch/minor/major from change type
|
|
573
|
+
|
|
574
|
+
## [2.3.0] - 2026-02-09
|
|
575
|
+
|
|
576
|
+
### Added
|
|
577
|
+
- Branch Guard — prevents commits on wrong branch by checking `Expected branch` in CLAUDE.md
|
|
578
|
+
|
|
579
|
+
## [2.2.1] - 2026-02-09
|
|
580
|
+
|
|
581
|
+
### Fixed
|
|
582
|
+
- `gsd-t-discuss` now stops for user review when manually invoked (was auto-continuing even in manual mode)
|
|
583
|
+
|
|
584
|
+
## [2.2.0] - 2026-02-09
|
|
585
|
+
|
|
586
|
+
### Added
|
|
587
|
+
- E2E test support in `test-sync`, `verify`, and `execute` commands
|
|
588
|
+
|
|
589
|
+
## [2.1.0] - 2026-02-09
|
|
590
|
+
|
|
591
|
+
### Added
|
|
592
|
+
- `gsd-t-populate` command — auto-populate living docs from existing codebase
|
|
593
|
+
- Semantic versioning system tracked in `progress.md`
|
|
594
|
+
- Auto-update README on version changes
|
|
595
|
+
|
|
596
|
+
## [2.0.2] - 2026-02-07
|
|
597
|
+
|
|
598
|
+
### Changed
|
|
599
|
+
- `gsd-t-init` now creates all 4 living document templates (`requirements.md`, `architecture.md`, `workflows.md`, `infrastructure.md`)
|
|
600
|
+
- `gsd-t-scan` cross-populates findings into living docs
|
|
601
|
+
|
|
602
|
+
## [2.0.1] - 2026-02-07
|
|
603
|
+
|
|
604
|
+
### Fixed
|
|
605
|
+
- Added `gsd-t-brainstorm` to all 4 reference files (README, GSD-T-README, CLAUDE-global, gsd-t-help)
|
|
606
|
+
- Fixed workflow diagram alignment
|
|
607
|
+
|
|
608
|
+
## [2.0.0] - 2026-02-07
|
|
609
|
+
|
|
610
|
+
### Added
|
|
611
|
+
- Renamed package to `@tekyzinc/gsd-t`
|
|
612
|
+
- `gsd-t-brainstorm` command — creative exploration, rethinking, and idea generation
|
|
613
|
+
- Initialized GSD-T state (`.gsd-t/` directory) on itself
|
|
614
|
+
|
|
615
|
+
### Changed
|
|
616
|
+
- Complete framework rewrite from GSD to GSD-T (contract-driven development)
|
|
617
|
+
- npm package with CLI installer (`bin/gsd-t.js`)
|
|
618
|
+
- 6 CLI subcommands: install, update, init, status, doctor, uninstall
|
|
619
|
+
|
|
620
|
+
## [1.0.0] - 2026-02-07
|
|
621
|
+
|
|
622
|
+
### Added
|
|
623
|
+
- Initial GSD-T framework implementation
|
|
624
|
+
- Full milestone workflow: partition, discuss, plan, impact, execute, test-sync, integrate, verify, complete
|
|
625
|
+
- Agent Teams support for parallel execution
|
|
626
|
+
- Living documents system (requirements, architecture, workflows, infrastructure)
|