fix: verify server actually stopped in stop-server.sh#751
Merged
Conversation
vladivis
pushed a commit
to vladivis/superpowers
that referenced
this pull request
Mar 18, 2026
fix: verify server actually stopped in stop-server.sh
shihao-hc
pushed a commit
to shihao-hc/superpowers
that referenced
this pull request
Apr 6, 2026
fix: verify server actually stopped in stop-server.sh
ronnyf
pushed a commit
to ronnyf/superpowers
that referenced
this pull request
Apr 25, 2026
commit 7e51643 Merge: 3cee13e 8a0a5ca Author: Jesse Vincent <jesse@fsck.com> Date: Tue Mar 17 15:02:02 2026 -0700 Merge branch 'dev' for v5.0.5 release commit 8a0a5ca Author: Jesse Vincent <jesse@fsck.com> Date: Tue Mar 17 15:01:57 2026 -0700 Release v5.0.5: brainstorm server ESM fix, Windows PID fix, stop-server reliability commit 2d46da1 Author: Jesse Vincent <jesse@fsck.com> Date: Tue Mar 17 14:51:02 2026 -0700 Credit @lucasyhzhu-debug for Windows brainstorm docs (PR obra#768) commit 0002948 Author: Jesse Vincent <jesse@fsck.com> Date: Tue Mar 17 14:35:03 2026 -0700 Update RELEASE-NOTES.md with brainstorm server ESM fix commit 3128a2c Author: sarbojitrana <sarbojitrana47c@gmail.com> Date: Tue Mar 17 19:44:46 2026 +0530 fix : resolve ESM/CommonJS module confict in brainstorming server commit f34ee47 Author: jesse <jesse@magic-kingdom> Date: Tue Mar 17 04:09:36 2026 +0000 fix: Windows brainstorm server lifecycle, restore execution choice - Skip OWNER_PID monitoring on Windows/MSYS2 where the PID namespace is invisible to Node.js, preventing server self-termination after 60s (obra#770) - Document run_in_background: true for Claude Code on Windows (obra#767) - Restore user choice between subagent-driven and inline execution after plan writing; subagent-driven is recommended but no longer mandatory - Add Windows lifecycle test script verified on Windows 11 VM - Note obra#723 (stop-server.sh reliability) as already fixed Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> commit 3cee13e Author: Jesse Vincent <jesse@fsck.com> Date: Mon Mar 16 20:10:15 2026 -0700 Add Community section with Discord link and Prime Radiant attribution commit 1128a72 Merge: 825a142 d1b5f57 Author: Jesse Vincent <jesse@fsck.com> Date: Mon Mar 16 17:56:02 2026 -0700 Merge branch 'dev' commit d1b5f57 Author: Jesse Vincent <jesse@fsck.com> Date: Mon Mar 16 17:55:49 2026 -0700 Release v5.0.4: review loop refinements, OpenCode one-line install, bug fixes commit 61a64d7 Author: savvyinsight <ecedwdpf@outlook.com> Date: Mon Mar 16 01:23:32 2026 +0800 fix: verify server actually stopped in stop-server.sh commit 825a142 Author: Jesse Vincent <jesse@fsck.com> Date: Mon Mar 16 17:23:54 2026 -0700 Revert "Merge pull request obra#751 from savvyinsight/fix/stop-server-verify" This reverts commit bd537d8, reversing changes made to 363923f. commit bd537d8 Merge: 363923f 6d21e9c Author: Jesse Vincent <jesse@fsck.com> Date: Mon Mar 16 17:14:47 2026 -0700 Merge pull request obra#751 from savvyinsight/fix/stop-server-verify fix: verify server actually stopped in stop-server.sh commit 24be2e8 Merge: a479e10 687a661 Author: Jesse Vincent <jesse@fsck.com> Date: Mon Mar 16 17:12:03 2026 -0700 Merge pull request obra#749 from ynyyn/fix-codex-multi-agent-flag fix(docs): replace deprecated `collab` flag with `multi_agent` for Codex docs commit a479e10 Merge: a4c4871 f4b54a1 Author: Jesse Vincent <jesse@fsck.com> Date: Mon Mar 16 17:08:09 2026 -0700 Merge pull request obra#753 from obra/f/opencode-plugin Auto-register skills from plugin, simplify OpenCode install commit a4c4871 Author: Jesse Vincent <jesse@fsck.com> Date: Mon Mar 16 15:57:27 2026 -0700 Use generic "the agent" instead of "Claude" in brainstorm server commit 2c6a8a3 Author: Jesse Vincent <jesse@fsck.com> Date: Mon Mar 16 15:57:23 2026 -0700 Tone down review loops: single-pass plan review, raise issue bar - Remove chunk-based plan review in favor of single whole-plan review - Add Calibration sections to both reviewer prompts so only serious issues block approval - Reduce max review iterations from 5 to 3 - Streamline reviewer checklists (spec: 7→5, plan: 7→4 categories) commit 2b25774 Author: jesse <jesse@magic-kingdom> Date: Sun Mar 15 19:35:36 2026 +0000 Update changelog with Cursor hooks support (obra#709) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> commit f4b54a1 Author: jesse <jesse@magic-kingdom> Date: Sun Mar 15 21:29:25 2026 +0000 Auto-register skills from plugin, simplify OpenCode install to one line The plugin's new `config` hook injects the skills directory into OpenCode's live config singleton, so skills are discovered automatically without symlinks or manual config edits. Installation is now just adding one line to opencode.json: "plugin": ["superpowers@git+https://github.com/obra/superpowers.git"] Rewrote docs/README.opencode.md and .opencode/INSTALL.md to reflect the new approach, removing ~200 lines of platform-specific symlink instructions. Added migration notes for existing users. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> commit 911fa1d Author: jesse <jesse@magic-kingdom> Date: Sun Mar 15 20:08:51 2026 +0000 test: add package.json for opencode npm plugin test commit 4e7c084 Author: jesse <jesse@magic-kingdom> Date: Sun Mar 15 19:35:18 2026 +0000 feat: add Cursor-compatible hooks and fix platform detection Add hooks/hooks-cursor.json with Cursor's camelCase format (sessionStart, version: 1) and update .cursor-plugin/plugin.json to reference it. Uses ${CURSOR_PLUGIN_ROOT} and run-hook.cmd for cross-platform support. Fix session-start platform detection: check CURSOR_PLUGIN_ROOT first (Cursor may also set CLAUDE_PLUGIN_ROOT), ensuring correct output format for each platform. Based on PR obra#709 with fixes for: wrong filename (.sh extension), missing Windows support, fragile relative paths, and incorrect platform detection. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> commit 689f27c Author: jesse <jesse@magic-kingdom> Date: Sun Mar 15 19:14:54 2026 +0000 Update changelog: add bash 5.3+ fix, link all issues/PRs Add obra#572/obra#571 entry, add "already fixed" section for obra#630/obra#529/obra#539, and convert all issue/PR references to markdown links. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> commit 537ec64 Author: jesse <jesse@magic-kingdom> Date: Sun Mar 15 19:14:34 2026 +0000 fix(hooks): replace heredoc with printf to fix bash 5.3+ hang Bash 5.3 has a regression where heredoc variable expansion blocks when content exceeds ~512 bytes. The session_context variable is ~4,500 bytes, causing the SessionStart hook to hang indefinitely on macOS with Homebrew bash 5.3+. Replace cat <<EOF with printf. Tested on Linux (bash 5.2) and Windows (Git Bash 5.2). The hang only affects 5.3+ but printf works correctly on all versions. Based on obra#572, closes obra#572. Fixes obra#571. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> commit c5e9538 Author: jesse <jesse@magic-kingdom> Date: Sun Mar 15 18:40:54 2026 +0000 Update changelog with POSIX hook fix (obra#553) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> commit fd318b1 Author: jesse <jesse@magic-kingdom> Date: Sun Mar 15 18:40:33 2026 +0000 fix(hooks): replace BASH_SOURCE with POSIX-safe $0 Replace ${BASH_SOURCE[0]:-$0} with $0 in hooks/session-start and the polyglot-hooks docs example. BASH_SOURCE uses bash array syntax that causes 'Bad substitution' on systems where /bin/sh is dash (Ubuntu). Since session-start is always executed (never sourced), $0 and BASH_SOURCE give the same result. Tested on Linux (bash + dash) and Windows (Git Bash via CMD and direct). Based on obra#553, closes obra#553. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> commit ea472de Author: jesse <jesse@magic-kingdom> Date: Sun Mar 15 18:38:16 2026 +0000 Update changelog with portable shebang fix (obra#700) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> commit addfe85 Author: jesse <jesse@magic-kingdom> Date: Sun Mar 15 18:38:00 2026 +0000 fix: use portable shebang #!/usr/bin/env bash in all shell scripts Replace #!/bin/bash with #!/usr/bin/env bash in 13 scripts. The hardcoded path fails on NixOS, FreeBSD, and macOS with Homebrew bash. #!/usr/bin/env bash is the portable POSIX-friendly alternative. Tested on Linux and Windows (Git Bash + CMD). macOS is the primary beneficiary since Homebrew installs bash to /opt/homebrew/bin/bash. Based on obra#700, closes obra#700. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> commit c6a2b1b Author: jesse <jesse@magic-kingdom> Date: Sun Mar 15 18:24:23 2026 +0000 fix: auto-foreground brainstorm server on Windows/Git Bash Windows/Git Bash reaps nohup background processes, causing the brainstorm server to die silently after launch. Auto-detect Windows via OSTYPE (msys/cygwin/mingw) and MSYSTEM env vars, switching to foreground mode automatically. Tested on Windows 11 from CMD, PowerShell, and Git Bash — all route through Git Bash and hit the same issue. Based on obra#740, fixes obra#737. Also adds CHANGELOG.md documenting the fix and a known OWNER_PID/WINPID mismatch on the main branch. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> commit d19703b Author: jesse <jesse@magic-kingdom> Date: Sun Mar 15 18:28:55 2026 +0000 fix: stop firing SessionStart hook on --resume Resumed sessions already have injected context in their conversation history. Re-firing the hook was redundant and could cause issues. The hook now fires only on startup, clear, and compact. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> commit 6d21e9c Author: savvyinsight <ecedwdpf@outlook.com> Date: Mon Mar 16 01:23:32 2026 +0800 fix: verify server actually stopped in stop-server.sh commit 687a661 Author: ynyyn <6551531+ynyyn@users.noreply.github.com> Date: Sun Mar 15 21:21:09 2026 +0800 Fix deprecated collab flag in Codex docs
ronnyf
pushed a commit
to ronnyf/superpowers
that referenced
this pull request
Apr 27, 2026
commit 7e51643 Merge: 3cee13e 8a0a5ca Author: Jesse Vincent <jesse@fsck.com> Date: Tue Mar 17 15:02:02 2026 -0700 Merge branch 'dev' for v5.0.5 release commit 8a0a5ca Author: Jesse Vincent <jesse@fsck.com> Date: Tue Mar 17 15:01:57 2026 -0700 Release v5.0.5: brainstorm server ESM fix, Windows PID fix, stop-server reliability commit 2d46da1 Author: Jesse Vincent <jesse@fsck.com> Date: Tue Mar 17 14:51:02 2026 -0700 Credit @lucasyhzhu-debug for Windows brainstorm docs (PR obra#768) commit 0002948 Author: Jesse Vincent <jesse@fsck.com> Date: Tue Mar 17 14:35:03 2026 -0700 Update RELEASE-NOTES.md with brainstorm server ESM fix commit 3128a2c Author: sarbojitrana <sarbojitrana47c@gmail.com> Date: Tue Mar 17 19:44:46 2026 +0530 fix : resolve ESM/CommonJS module confict in brainstorming server commit f34ee47 Author: jesse <jesse@magic-kingdom> Date: Tue Mar 17 04:09:36 2026 +0000 fix: Windows brainstorm server lifecycle, restore execution choice - Skip OWNER_PID monitoring on Windows/MSYS2 where the PID namespace is invisible to Node.js, preventing server self-termination after 60s (obra#770) - Document run_in_background: true for Claude Code on Windows (obra#767) - Restore user choice between subagent-driven and inline execution after plan writing; subagent-driven is recommended but no longer mandatory - Add Windows lifecycle test script verified on Windows 11 VM - Note obra#723 (stop-server.sh reliability) as already fixed Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> commit 3cee13e Author: Jesse Vincent <jesse@fsck.com> Date: Mon Mar 16 20:10:15 2026 -0700 Add Community section with Discord link and Prime Radiant attribution commit 1128a72 Merge: 825a142 d1b5f57 Author: Jesse Vincent <jesse@fsck.com> Date: Mon Mar 16 17:56:02 2026 -0700 Merge branch 'dev' commit d1b5f57 Author: Jesse Vincent <jesse@fsck.com> Date: Mon Mar 16 17:55:49 2026 -0700 Release v5.0.4: review loop refinements, OpenCode one-line install, bug fixes commit 61a64d7 Author: savvyinsight <ecedwdpf@outlook.com> Date: Mon Mar 16 01:23:32 2026 +0800 fix: verify server actually stopped in stop-server.sh commit 825a142 Author: Jesse Vincent <jesse@fsck.com> Date: Mon Mar 16 17:23:54 2026 -0700 Revert "Merge pull request obra#751 from savvyinsight/fix/stop-server-verify" This reverts commit bd537d8, reversing changes made to 363923f. commit bd537d8 Merge: 363923f 6d21e9c Author: Jesse Vincent <jesse@fsck.com> Date: Mon Mar 16 17:14:47 2026 -0700 Merge pull request obra#751 from savvyinsight/fix/stop-server-verify fix: verify server actually stopped in stop-server.sh commit 24be2e8 Merge: a479e10 687a661 Author: Jesse Vincent <jesse@fsck.com> Date: Mon Mar 16 17:12:03 2026 -0700 Merge pull request obra#749 from ynyyn/fix-codex-multi-agent-flag fix(docs): replace deprecated `collab` flag with `multi_agent` for Codex docs commit a479e10 Merge: a4c4871 f4b54a1 Author: Jesse Vincent <jesse@fsck.com> Date: Mon Mar 16 17:08:09 2026 -0700 Merge pull request obra#753 from obra/f/opencode-plugin Auto-register skills from plugin, simplify OpenCode install commit a4c4871 Author: Jesse Vincent <jesse@fsck.com> Date: Mon Mar 16 15:57:27 2026 -0700 Use generic "the agent" instead of "Claude" in brainstorm server commit 2c6a8a3 Author: Jesse Vincent <jesse@fsck.com> Date: Mon Mar 16 15:57:23 2026 -0700 Tone down review loops: single-pass plan review, raise issue bar - Remove chunk-based plan review in favor of single whole-plan review - Add Calibration sections to both reviewer prompts so only serious issues block approval - Reduce max review iterations from 5 to 3 - Streamline reviewer checklists (spec: 7→5, plan: 7→4 categories) commit 2b25774 Author: jesse <jesse@magic-kingdom> Date: Sun Mar 15 19:35:36 2026 +0000 Update changelog with Cursor hooks support (obra#709) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> commit f4b54a1 Author: jesse <jesse@magic-kingdom> Date: Sun Mar 15 21:29:25 2026 +0000 Auto-register skills from plugin, simplify OpenCode install to one line The plugin's new `config` hook injects the skills directory into OpenCode's live config singleton, so skills are discovered automatically without symlinks or manual config edits. Installation is now just adding one line to opencode.json: "plugin": ["superpowers@git+https://github.com/obra/superpowers.git"] Rewrote docs/README.opencode.md and .opencode/INSTALL.md to reflect the new approach, removing ~200 lines of platform-specific symlink instructions. Added migration notes for existing users. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> commit 911fa1d Author: jesse <jesse@magic-kingdom> Date: Sun Mar 15 20:08:51 2026 +0000 test: add package.json for opencode npm plugin test commit 4e7c084 Author: jesse <jesse@magic-kingdom> Date: Sun Mar 15 19:35:18 2026 +0000 feat: add Cursor-compatible hooks and fix platform detection Add hooks/hooks-cursor.json with Cursor's camelCase format (sessionStart, version: 1) and update .cursor-plugin/plugin.json to reference it. Uses ${CURSOR_PLUGIN_ROOT} and run-hook.cmd for cross-platform support. Fix session-start platform detection: check CURSOR_PLUGIN_ROOT first (Cursor may also set CLAUDE_PLUGIN_ROOT), ensuring correct output format for each platform. Based on PR obra#709 with fixes for: wrong filename (.sh extension), missing Windows support, fragile relative paths, and incorrect platform detection. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> commit 689f27c Author: jesse <jesse@magic-kingdom> Date: Sun Mar 15 19:14:54 2026 +0000 Update changelog: add bash 5.3+ fix, link all issues/PRs Add obra#572/obra#571 entry, add "already fixed" section for obra#630/obra#529/obra#539, and convert all issue/PR references to markdown links. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> commit 537ec64 Author: jesse <jesse@magic-kingdom> Date: Sun Mar 15 19:14:34 2026 +0000 fix(hooks): replace heredoc with printf to fix bash 5.3+ hang Bash 5.3 has a regression where heredoc variable expansion blocks when content exceeds ~512 bytes. The session_context variable is ~4,500 bytes, causing the SessionStart hook to hang indefinitely on macOS with Homebrew bash 5.3+. Replace cat <<EOF with printf. Tested on Linux (bash 5.2) and Windows (Git Bash 5.2). The hang only affects 5.3+ but printf works correctly on all versions. Based on obra#572, closes obra#572. Fixes obra#571. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> commit c5e9538 Author: jesse <jesse@magic-kingdom> Date: Sun Mar 15 18:40:54 2026 +0000 Update changelog with POSIX hook fix (obra#553) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> commit fd318b1 Author: jesse <jesse@magic-kingdom> Date: Sun Mar 15 18:40:33 2026 +0000 fix(hooks): replace BASH_SOURCE with POSIX-safe $0 Replace ${BASH_SOURCE[0]:-$0} with $0 in hooks/session-start and the polyglot-hooks docs example. BASH_SOURCE uses bash array syntax that causes 'Bad substitution' on systems where /bin/sh is dash (Ubuntu). Since session-start is always executed (never sourced), $0 and BASH_SOURCE give the same result. Tested on Linux (bash + dash) and Windows (Git Bash via CMD and direct). Based on obra#553, closes obra#553. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> commit ea472de Author: jesse <jesse@magic-kingdom> Date: Sun Mar 15 18:38:16 2026 +0000 Update changelog with portable shebang fix (obra#700) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> commit addfe85 Author: jesse <jesse@magic-kingdom> Date: Sun Mar 15 18:38:00 2026 +0000 fix: use portable shebang #!/usr/bin/env bash in all shell scripts Replace #!/bin/bash with #!/usr/bin/env bash in 13 scripts. The hardcoded path fails on NixOS, FreeBSD, and macOS with Homebrew bash. #!/usr/bin/env bash is the portable POSIX-friendly alternative. Tested on Linux and Windows (Git Bash + CMD). macOS is the primary beneficiary since Homebrew installs bash to /opt/homebrew/bin/bash. Based on obra#700, closes obra#700. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> commit c6a2b1b Author: jesse <jesse@magic-kingdom> Date: Sun Mar 15 18:24:23 2026 +0000 fix: auto-foreground brainstorm server on Windows/Git Bash Windows/Git Bash reaps nohup background processes, causing the brainstorm server to die silently after launch. Auto-detect Windows via OSTYPE (msys/cygwin/mingw) and MSYSTEM env vars, switching to foreground mode automatically. Tested on Windows 11 from CMD, PowerShell, and Git Bash — all route through Git Bash and hit the same issue. Based on obra#740, fixes obra#737. Also adds CHANGELOG.md documenting the fix and a known OWNER_PID/WINPID mismatch on the main branch. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> commit d19703b Author: jesse <jesse@magic-kingdom> Date: Sun Mar 15 18:28:55 2026 +0000 fix: stop firing SessionStart hook on --resume Resumed sessions already have injected context in their conversation history. Re-firing the hook was redundant and could cause issues. The hook now fires only on startup, clear, and compact. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> commit 6d21e9c Author: savvyinsight <ecedwdpf@outlook.com> Date: Mon Mar 16 01:23:32 2026 +0800 fix: verify server actually stopped in stop-server.sh commit 687a661 Author: ynyyn <6551531+ynyyn@users.noreply.github.com> Date: Sun Mar 15 21:21:09 2026 +0800 Fix deprecated collab flag in Codex docs
ronnyf
pushed a commit
to ronnyf/superpowers
that referenced
this pull request
Apr 27, 2026
fix: verify server actually stopped in stop-server.sh
4 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fix [stop-server.sh] so it doesn’t report success unless the server process is actually dead (SIGTERM + wait + SIGKILL fallback).
Motivation and Context
[stop-server.sh] previously always returned {"status":"stopped"} after sending SIGTERM, even if the node server kept listening on the port. That made the “stop” command misleading and prevents safe automation or retries (because the PID file was removed even if the process survived).
How Has This Been Tested?
Started the visual companion server (start-server.sh)
Ran stop-server.sh <screen_dir>
Confirmed output is "stopped" only when the process truly exited
Verified with lsof -i : that the server stopped
Confirmed it reports "failed" when the process ignores SIGTERM/SIGKILL
Breaking Changes
No. This is a bug fix and does not change existing behavior except making the stop result accurate.
Types of changes
Checklist
Additional context
This directly addresses issue #729