Repository navigation
Clarify Security Harness fallback defaults - #601
Merged
Merged
Conversation
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
Clarify the existing Security run Harness fallback in Setup's generated User config and the README. Blank or omitted
security.harnessusesharness.default; if that is absent, it uses Claude Code.Extend CLI coverage of the final fallback across absent sections, omitted keys, empty strings and whitespace-only strings.
Closes #598
Evidence
cargo test --test setup setup_asks_once_about_security_fixing_with_off_as_the_default_and_writes_yes -- --exactfailed after adding the assertion for the explicit fallback comment.After: The same command passes with the clarified generated comment.
After:
cargo test --test security_run a_blank_or_missing_security_harness_preserves_the_default_harness_and_its_settings -- --exactpasses with the absent-default Claude Code cases extended to every blank or omitted Security setting.cargo test --test setup --test security_run: 105 passed.cargo test: 1,661 passed, 0 failed, 1 ignored across 41 test executables.cargo check --all-targets,cargo fmt --check, andcargo clippy --all-targets -- -D warnings: passed.Test seams
thirdshift secureCLI reading the User config and launching the selected Harness with its Model and Effort.thirdshift setupCLI writing the commented User config.Review
Reviewed against
main(7b6feb399b6f6396413a8694bf7193decc6df632) withthirdshift-code-review.Standards: 0 findings; no worst issue.
Spec: 0 findings; no worst issue.
Changed files left unread: none on either axis. Both reviewers read
README.md,src/config.rs,tests/security_run.rs, andtests/setup.rs.Security: 0 introduced findings. Reviewed all four changed files and supporting config parsing, Setup writing, and Harness selection against the same pinned merge base with
thirdshift-security-auditin guidance mode. No repositorySECURITY.mdor threat model was present.Security validation: both focused tests passed with
cargo test --offline --locked --test security_run a_blank_or_missing_security_harness_preserves_the_default_harness_and_its_settings -- --exactandcargo test --offline --locked --test setup setup_asks_once_about_security_fixing_with_off_as_the_default_and_writes_yes -- --exact, inside an isolated sandbox with no external network, an allowlisted environment, read-only source and toolchain, and bounded resources.Unaddressed findings
Security review outcome
No unaddressed introduced findings.
Merge Danger
Door: two-way
Documentation, generated comments and test coverage can be reverted; no runtime selection logic changes.
Blast Radius: configuration
New or completed Setup configs gain the clearer comment. Existing user comments are preserved.
Built with codex · gpt-6.1-sol · high