Fix shell lint baseline warnings#1677
Draft
arittr wants to merge 1 commit into
Draft
Conversation
055efbf to
4c95100
Compare
4c95100 to
cb6bdf9
Compare
5 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.
What problem are you trying to solve?
After #1676 introduced
scripts/lint-shell.sh --all, the first warning-level ShellCheck baseline run failed on existing tracked shell scripts. That meant the repo would have a useful shell lint command, but agents and reviewers would not be able to treat new warning-level findings as regressions because the baseline already started red.The initial baseline exposed 14 warning-level findings: SC2155 in
tests/claude-code/test-helpers.sh, SC2088 intests/claude-code/test-worktree-path-policy.sh, SC2034 in the brainstorming server start/stop scripts, SC2064 and SC2320 in the subagent integration test, and SC2164 inskills/brainstorming/scripts/start-server.sh.What does this PR change?
Fixes the warning-level ShellCheck findings exposed by #1676 without changing the tooling branch. The fixes split declaration/assignment pairs, preserve the real pipeline exit status in the integration test, keep legacy
~/.config/superpowers/worktreesassertions literal, handlecdfailure instart-server.sh, and rename intentionally-unused loop variables.Is this change appropriate for the core library?
Yes. These are small correctness and maintainability fixes to existing core shell scripts/tests so the repository can adopt a clean shell lint baseline. This does not add a dependency, does not add a new harness, does not introduce project-specific configuration, and does not modify behavior-shaping skill prose.
What alternatives did you consider?
Does this PR contain multiple unrelated changes?
No. Every file change is directly tied to making the ShellCheck warning baseline pass. The branch is stacked above #1676 because it depends on the lint script introduced there.
Existing PRs
scripts/lint-shell.shand the test suite for the tooling.Searches reviewed:
shell lint,lint-shell,ShellCheck,shfmt, andbash lintacross open and closed PRs. I did not find an earlier PR fixing a repository-wide ShellCheck baseline for tracked shell scripts.Environment tested
Local verification performed on macOS / Darwin 25 with Bash, ShellCheck, and shfmt available.
Commands run:
Observed results:
scripts/lint-shell.sh --allpasses on the rebased stack, linting 31 shell files. The shell lint tests and worktree path policy test passed. The brainstorming server lifecycle test passed with 9 passed, 0 failed, and 3 Windows-specific skips on macOS.New harness support (required if this PR adds a new harness)
Not applicable. This PR does not add a new harness.
Evaluation
scripts/lint-shell.sh --allfailed with 14 warning-level ShellCheck findings. After this PR, the same baseline passes on the rebased stack. The targeted tests around the changed helper/policy/lifecycle paths also pass.Rigor
superpowers:writing-skillsadversarial testing is not required.Human review
AI was used for implementation assistance.
Stack created with GitHub Stacks CLI • Give Feedback