Repository navigation
Disable background git maintenance in isolated release tests - #762
Merged
Merged
Conversation
Preserve the remote maintenance fix and its intent while retaining the reviewed guards for inherited and command-specific parameters, repeated entries, configuration exclusion and identity. The merged tree matches the reviewed and fully tested tree.
JacobStephens2
marked this pull request as draft
October 17, 2026 16:24
JacobStephens2
marked this pull request as ready for review
October 17, 2026 16:27
Merged
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
Isolated release-test git commands and their descendants inherit maintenance-off settings, preserving existing command-scope configuration, host-config exclusion, and test identity.
Closes #732.
Evidence
isolated()helper on Git 2.47.3,cargo test --test release isolated_git_ -- --nocapturefails both new guards. Direct git has nomaintenance.auto; descendant git reads conflicting inherited valuestrueand42.After:
cargo test --test releasepasses all 54 tests on Git 2.47.3, including both guards. Coverage includes repeated unrelatedGIT_CONFIG_COUNTentries, inherited and command-specificGIT_CONFIG_PARAMETERS, conflicting maintenance values, global/system exclusion, and author/committer identity.cargo check --tests,cargo fmt --check, andcargo clippy --all-targets -- -D warningspass.cargo testpassed 1,866 tests, with 0 failures and 2 existing ignored tests, across 45 test binaries.The original
DirectoryNotEmptyrace was not reproduced: all 52 existing release scenarios also passed with the original helper on locally built Git 2.47.3. The configuration gap is reproduced deterministically; its connection to the historical cleanup race remains inferred. Cleanup errors still propagate without retries.Test seams
tests/release.rs::isolated, directly and through child processes.tests/release.rs.Merge Danger
Door: two-way
Blast Radius: tests
Confined to the release-test isolation helper and its regression guards.
Unaddressed findings
Standards
None. The independent reviewer reported no findings.
Spec
None. The independent reviewer reported no findings.
Security
None. Guidance-mode Security review found no introduced Security findings against pinned merge base
8b2af147279ba0d1ccc9e8d8426d6ce6e65330b4.Security review outcome
No unaddressed introduced findings.
Review coverage
Independent Standards and Spec reviews compare against
main(8b2af147279ba0d1ccc9e8d8426d6ce6e65330b4). Both axes read the only changed file,tests/release.rs. Changed files left unread: none for Standards; none for Spec.The earlier Spec finding about inherited parameter precedence is addressed; the retained descendant guard exercises conflicting values in both command-scope formats. Current independent reviews report no additional findings. Final reports and each axis's files-read list are saved in
.thirdshift-review-73gAwW/standards.mdand.thirdshift-review-73gAwW/spec.mdin the implementation workspace.Security review
Guidance-mode review against pinned merge base
8b2af147279ba0d1ccc9e8d8426d6ce6e65330b4: 0 introduced Security findings. Reviewed the requested local diff at6b97d7b0952ca18bf6022cd93738023c6e932fe5and the additional reconciliation at PR revisionf17021279743d890058a40cc7e67a12757609811.Read the complete change and supporting Git command builders, release fixtures, fake GitHub merge path, release script, CI workflow, and applicable security decisions. Applied injection, configuration inheritance, resource/file handling, and supply-chain/release attack-class guidance. No source fix was needed.
Validation: rebuilt the release-test target directly from source with Rust 1.99.0 and cached dependencies, without dependency downloads. All three isolation guards at the requested local revision passed; both reconciled isolation guards at the PR revision passed. Runs used an OS-enforced sandbox with networking disabled, read-only source/toolchain, an empty allowlisted environment, scratch-only file writes, and bounded CPU, memory, processes, file size, disk, and wall time.
Additional Security review validation at
f17021279743d890058a40cc7e67a12757609811: compiled the currenttests/release.rswithrustc --testusing Rust 1.99.0 and cached dependencies, then ran all 54 release tests successfully on Git 2.43.0. The offline OS sandbox used read-only source/toolchain, an empty allowlisted environment, scratch-only writes, and explicit resource limits. NoSECURITY.mdor conventional threat-model document was present; the applicable trust/privacy ADRs were read. No security fixes were required.Built with codex · gpt-6.1-sol · high