Repository navigation
Conversation
Resolve 425 baseline diagnostics without lowering ShellCheck severity or adding global exclusions. Preserve failed command-substitution statuses, quote arguments, fix formatted output and installer checksum argument handling, and identify cross-module data and trap callbacks with narrow documented annotations. Fix Python-tool completion markers after failed installs and ineffective Dockerfile test assertions. Add eight regression checks covering failure propagation, Python install results, output rendering, and both checksum backends. Check all shell scripts in CI and use the actual dist installer and supported artifact action. Verified matching local/remote tree ad24a99: ShellCheck 0.9.0 reports zero diagnostics; 68 checks pass under Bash 3.2.57 and 5.2. Runtime Docker calls are stubbed at the boundary, not full application-image integration.
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
Reviewer's GuideThe PR drives ShellCheck diagnostics to zero across all shell scripts by refactoring status-sensitive declarations, quoting and formatting unsafe expansions, replacing fragile enumeration logic, and documenting only intentional exceptions. It also strengthens installer/build behavior and adds comprehensive Bash 3.2/5.2, packaged-install, runtime, output, Dockerfile, Python-install, and checksum regression coverage, with CI updated to exercise the complete surface. Sequence diagram for packaged installer checksum validationsequenceDiagram
participant User
participant Installer as dist_claudebox_run
participant Archive as InstallArchive
participant Setup as setup_sh
participant Checksum as sha256sum_or_shasum
User->>Installer: invoke installer
Installer->>Checksum: calculate archive checksum
Checksum-->>Installer: checksum value
alt checksum matches
Installer->>Installer: extract archive
Installer->>Setup: exec setup.sh
Setup-->>User: installation starts
else checksum missing or mismatched
Installer->>Installer: refresh archive and checksum
Installer->>Setup: exec setup.sh
end
Flow diagram for failure-safe shell installation statusflowchart TD
A[Start Python tools installation] --> B[Install Python tools]
B -->|success| C[Write completion marker]
B -->|failure| D[Return failure]
C --> E[Future runs detect completed installation]
D --> F[Marker remains absent]
F --> G[Future runs retry installation]
File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
|
@copilot resolve the merge conflicts in this pull request |
# Conflicts: # .github/workflows/build.yml # .github/workflows/test.yml # build/docker-entrypoint # build/init-firewall # lib/docker.sh # lib/preflight.sh # tests/README.md # tests/test_dockerfile_template.sh Co-authored-by: RchGrav <643233+RchGrav@users.noreply.github.com>
Co-authored-by: RchGrav <643233+RchGrav@users.noreply.github.com>
Co-authored-by: RchGrav <643233+RchGrav@users.noreply.github.com>
Co-authored-by: RchGrav <643233+RchGrav@users.noreply.github.com>
Co-authored-by: RchGrav <643233+RchGrav@users.noreply.github.com>
Co-authored-by: RchGrav <643233+RchGrav@users.noreply.github.com>
Co-authored-by: RchGrav <643233+RchGrav@users.noreply.github.com>
Co-authored-by: RchGrav <643233+RchGrav@users.noreply.github.com>
Result
ShellCheck 0.9.0: 425 baseline diagnostics → 0, checking every shell script. The original core-only invocation reported 269 diagnostics; the full 33-script baseline also included builders, container scripts, tests, and tooling. Four new regression scripts bring current coverage to 37 shell scripts.
Changes
lib/commands/*.shtarget, testdist/claudebox.run, and replace the obsolete artifact upload action.Verification
git diff --checkpasses.ad24a99b3750079e58276e5d275f53166d619174.Runtime tests execute the real launcher and jq with Docker stubbed at the boundary; this does not claim full Claude application-image integration testing. GitHub CI results will be verified before merging.
Temporary tool-bootstrap workflow commits leave no file in the final diff; squash on merge.
Summary by Sourcery
Eliminate ShellCheck diagnostics across the shell codebase and harden the installer, runtime behavior, regression coverage, and CI validation.
Bug Fixes:
Enhancements:
Build:
CI:
Documentation:
Tests: