Harden source-bound evidence writes - #3
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.
Outcome
Harden every source-bound evidence writer flagged on
mainby creating temporary files as owner-only (0600) and publishing the completed synthetic documentation artifacts as reviewed0644files only after the full payload has been written.This closed all 11
py/overly-permissive-filefindings through the default-branch CodeQL analysis without dismissing or suppressing any alert.Security boundary
0600.fchmod(..., 0644),fsync, and atomic replacement.os.opentest spies no longer introduce permissive fallback modes.0600; every installed public evidence artifact is0644.Source-bound evidence
The six adopted files were generated on GitHub-hosted Actions from source commit
b2c39608c2dc6180008d2b2533aebb6ed0a8f20b(treebbefc2958919bc5c84180c76e7d47dd325bbbf17) and reviewed as one atomic bundle:private-evidence-bundle-31317811446/9039266614d9546fb6ea90853983a13afd1db693ab91962ead5621091d4bbe41390f8caa690644modesThe normalized ten-step CLI transcript is semantically identical to the previous evidence. PNG pixel changes are confined to the source/wheel provenance line; GIF phases, full-canvas frames, timing, disposal, and loop semantics are unchanged. The private temporary mode is proved by code and tests, not claimed from pixels.
The temporary staging workflow used to produce the review bundle was removed before the final head.
Final verification
Verified at
ed4e3df677c8fa85a39812a1d3b7a529c9371d34:9039407682: 523,349 bytes, digestsha256:34c05a349a1336a0fdd1a005506c33c9257b1ea687821b3c1478b92aa3d08e75Reviewable history
Five linear commits, each authored and committed only by Omar Ibrahim:
76df9a7— create evidence temporaries privatelye91c2c8— prove the private evidence write boundaryb2c3960— stage private evidence regenerationf271d8a— adopt reviewed private-write evidenceed4e3df— remove temporary private evidence stagingIntegration is intentionally limited to a fast-forward of the already-reviewed head; no squash, rebase, force-push, or merge commit.
Post-integration verification
mainfast-forwarded from3049a2dc1b2c0de1a5e2935944048a02feb18531to the exact reviewed headed4e3df677c8fa85a39812a1d3b7a529c9371d34withforce:false.9039465662: 523,349 bytes, digestsha256:3475637a86798854d6c8a26ed6557ab0176561fa142f7c255b1e0b752aae81b7.1592046120reports 0 results across 50 Python rules.mainprotection remains strict and app-bound to Python 3.11, Python 3.12, Installed-wheel media, and Analyze (python), with admin enforcement, linear history, resolved conversations, and force-push/deletion disabled.