fix(2136): add missing bash hooks to MANAGED_HOOKS staleness check (#2141)

* test(2136): add failing test for MANAGED_HOOKS missing bash hooks

Asserts that every gsd-*.js and gsd-*.sh file shipped in hooks/ appears
in the MANAGED_HOOKS array inside gsd-check-update.js. The three bash
hooks (gsd-phase-boundary.sh, gsd-session-state.sh, gsd-validate-commit.sh)
were absent, causing this test to fail before the fix.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* fix(2136): add gsd-phase-boundary.sh, gsd-session-state.sh, gsd-validate-commit.sh to MANAGED_HOOKS

The MANAGED_HOOKS array in gsd-check-update.js only listed the 6 JS hooks.
The 3 bash hooks were never checked for staleness after a GSD update, meaning
users could run stale shell hooks indefinitely without any warning.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Tom Boucher
2026-04-12 08:10:56 -04:00
committed by GitHub
parent 86dd9e1b09
commit a91f04bc82
2 changed files with 77 additions and 0 deletions

View File

@@ -86,9 +86,12 @@ const child = spawn(process.execPath, ['-e', `
const MANAGED_HOOKS = [
'gsd-check-update.js',
'gsd-context-monitor.js',
'gsd-phase-boundary.sh',
'gsd-prompt-guard.js',
'gsd-read-guard.js',
'gsd-session-state.sh',
'gsd-statusline.js',
'gsd-validate-commit.sh',
'gsd-workflow-guard.js',
];
let staleHooks = [];