@tekyzinc/gsd-t 2.11.3 → 2.11.5
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 +11 -0
- package/bin/gsd-t.js +18 -2
- package/package.json +1 -1
- package/templates/CLAUDE-global.md +9 -0
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,17 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to GSD-T are documented here. Updated with each release.
|
|
4
4
|
|
|
5
|
+
## [2.11.5] - 2026-02-12
|
|
6
|
+
|
|
7
|
+
### Added
|
|
8
|
+
- SessionStart hook script (`~/.claude/scripts/gsd-t-update-check.js`) for automatic update notifications in Claude Code sessions
|
|
9
|
+
- "Update Notices" instruction in global CLAUDE.md template — Claude relays update notices to the user on first response
|
|
10
|
+
|
|
11
|
+
## [2.11.4] - 2026-02-12
|
|
12
|
+
|
|
13
|
+
### Fixed
|
|
14
|
+
- First-run update check now fetches synchronously when no cache exists — notification shows immediately instead of requiring a second run
|
|
15
|
+
|
|
5
16
|
## [2.11.3] - 2026-02-12
|
|
6
17
|
|
|
7
18
|
### Changed
|
package/bin/gsd-t.js
CHANGED
|
@@ -805,9 +805,25 @@ function checkForUpdates() {
|
|
|
805
805
|
showUpdateNotice(cached.latest);
|
|
806
806
|
}
|
|
807
807
|
|
|
808
|
-
// Refresh cache in background if stale (older than 1h) or missing
|
|
809
808
|
const isStale = !cached || (Date.now() - cached.timestamp) > 3600000;
|
|
810
|
-
|
|
809
|
+
|
|
810
|
+
if (!cached && isStale) {
|
|
811
|
+
// No cache at all — fetch synchronously so first run shows notification
|
|
812
|
+
try {
|
|
813
|
+
const result = execSync(
|
|
814
|
+
`${process.execPath} -e "const h=require('https');h.get('https://registry.npmjs.org/@tekyzinc/gsd-t/latest',{timeout:5000},(r)=>{let d='';r.on('data',(c)=>d+=c);r.on('end',()=>{try{process.stdout.write(JSON.parse(d).version)}catch{}})}).on('error',()=>{})"`,
|
|
815
|
+
{ timeout: 8000, encoding: "utf8" }
|
|
816
|
+
).trim();
|
|
817
|
+
if (result) {
|
|
818
|
+
fs.writeFileSync(UPDATE_CHECK_FILE,
|
|
819
|
+
JSON.stringify({ latest: result, timestamp: Date.now() }));
|
|
820
|
+
if (isNewerVersion(result, PKG_VERSION)) {
|
|
821
|
+
showUpdateNotice(result);
|
|
822
|
+
}
|
|
823
|
+
}
|
|
824
|
+
} catch { /* timeout or network error — skip */ }
|
|
825
|
+
} else if (isStale) {
|
|
826
|
+
// Cache exists but stale — refresh in background (non-blocking)
|
|
811
827
|
const script = `
|
|
812
828
|
const https = require("https");
|
|
813
829
|
const fs = require("fs");
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tekyzinc/gsd-t",
|
|
3
|
-
"version": "2.11.
|
|
3
|
+
"version": "2.11.5",
|
|
4
4
|
"description": "GSD-T: Contract-Driven Development for Claude Code — 35 slash commands with backlog management, impact analysis, test sync, and milestone archival",
|
|
5
5
|
"author": "Tekyz, Inc.",
|
|
6
6
|
"license": "MIT",
|
|
@@ -149,6 +149,15 @@ Even in development, the user may have:
|
|
|
149
149
|
|
|
150
150
|
# Autonomous Execution Rules
|
|
151
151
|
|
|
152
|
+
## Update Notices
|
|
153
|
+
|
|
154
|
+
If a `[GSD-T UPDATE]` message appears in session startup context, show it to the user in your first response. Format it as:
|
|
155
|
+
|
|
156
|
+
```
|
|
157
|
+
⬆️ GSD-T update available: {installed} → {latest}
|
|
158
|
+
Run: npm update -g @tekyzinc/gsd-t && gsd-t update-all
|
|
159
|
+
```
|
|
160
|
+
|
|
152
161
|
## Conversation vs. Work
|
|
153
162
|
|
|
154
163
|
Only execute GSD-T workflow behavior when a `/gsd-t-*` command is invoked or when actively mid-phase (resumed via `/gsd-t-resume`). **Plain text messages — especially questions — should be answered conversationally.** Do not launch into workflow execution, file reading, or phase advancement from a question or comment. If the user wants work done, they will invoke a command.
|