Skip to content

Commit 089173a

Browse files
committed
test(hooks): pin bare pkill — the ablation found the pidscoped gate unpinned
Second ablation leg: replacing check_pkill's `[ "$pidscoped" -eq 1 ] && return 0` with an unconditional allow left the self-test green at 68/0. Bare `pkill` is the only input that reaches that gate — every other spelling returns earlier — so the branch had no case standing on it. It does now. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01P58euzUXCVJNwmhuPC9DXY
1 parent 5cfdf57 commit 089173a

1 file changed

Lines changed: 5 additions & 0 deletions

File tree

.claude/hooks/guard-process-kill.selftest.sh

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,11 @@ expect block 'pkill --signal TERM node'
8484
expect block 'pkill -f "pnpm --filter @objectstack/spec test"'
8585
expect block '/usr/bin/pkill -f vitest'
8686
expect block 'OS_FOO=1 pkill -f vitest'
87+
# Bare `pkill` — its option loop completes with no PID-family selector, and it is the ONLY
88+
# input that reaches the pidscoped gate at the end of check_pkill. Without this row that gate
89+
# is unpinned: an ablation replacing it with an unconditional allow left this file green at
90+
# 68/0, which is how the hole was found rather than shipped.
91+
expect block 'pkill'
8792

8893
echo "== killall is the spelling a pkill-only rule would go silent on =="
8994
expect block 'killall node'

0 commit comments

Comments
 (0)