fix: production readiness P0/P1 improvements#148
Merged
kitplummer merged 1 commit intodevelopfrom Feb 19, 2026
Merged
Conversation
…uf for paths, modernize CI - Replace process::exit() in do_task/do_task_with_timeout with error returns based on exit code instead of stderr presence (#138) - Use AtomicBool for exit_on_first_diff instead of process::exit(0) - Propagate child process exit codes through main() via parse_exit_code() - Use PathBuf::join() for .goa file paths instead of format!() (#145) - Upgrade GitHub Actions: checkout@v4, dtolnay/rust-toolchain replacing archived actions-rs/toolchain (#142) - Update scorecards workflow to current action versions - Add cargo-audit security scanning job to CI (#141) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
6 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.
Summary
process::exit()with proper error propagation (Replace process::exit() calls with proper error propagation #138) —do_taskanddo_task_with_timeoutno longer terminate the process when commands write to stderr. Exit is based on exit code, not stderr presence.exit_on_first_diffusesAtomicBoolto cleanly break the scheduler loop. Child process exit codes are forwarded throughmain().PathBuffor file path construction (Use PathBuf for file path construction instead of string formatting #145) —.goafile paths and temp directory paths now usePathBuf::join()instead offormat!(), fixing cross-platform correctness (Windows).rust.ymlandscorecards-analysis.ymlupdated from archived/outdated actions (actions-rs/toolchain, checkout v2) to current versions (dtolnay/rust-toolchain, checkout v4, scorecard v2, codeql v3).cargo-auditsecurity scanning to CI (Add cargo-audit / cargo-deny to CI for dependency vulnerability scanning #141) — Newsecurity_auditjob inrust.ymlrunscargo auditon every push and PR.Test plan
test_spy_repo_command_bad_commandwhich validates exit code 127 forwarding)cargo clippy -- -D warningscleanCloses #138, closes #141, closes #142, closes #145
🤖 Generated with Claude Code