Skip to content

Create release files owner-only before publication - #6

Merged
omar07ibrahim merged 2 commits into
masterfrom
fix/private-release-file-creation
Aug 9, 2026
Merged

Create release files owner-only before publication#6
omar07ibrahim merged 2 commits into
masterfrom
fix/private-release-file-creation

Conversation

@omar07ibrahim

@omar07ibrahim omar07ibrahim commented Aug 9, 2026

Copy link
Copy Markdown
Owner

Outcome

  • create every release output with mode 0600 while bytes are still being written
  • apply the intended final 0644 or 0755 mode only after the full payload is present
  • add a regression proving the creation mode and final executable mode
  • remove the test wrapper’s permissive 0777 default after CodeQL found it independently

Why

CodeQL alert #1 correctly identified that the production helper passed the final public mode directly to O_CREAT. A follow-up exact-head scan then identified the test wrapper default as alert #2. Both are fixed in code; neither alert was dismissed.

Exact-head validation

  • head: eb0362c
  • CI run 31290288723: both jobs successful
  • 145 locked unit tests; 100% statements (1136/1136) and branches (362/362)
  • Ruff lint/format and strict mypy successful
  • two byte-identical releases plus fresh-wheel verification successful
  • CodeQL run 31290287547: Actions and Python successful
  • PR CodeQL aggregate successful; zero open PR alerts

Release boundary

The already published v0.3.0 annotated tag and audited assets remain immutable. This hardens post-release build tooling on master; it does not rewrite the tag or replace release bytes.

Comment thread tests/test_release_builder.py Fixed
@omar07ibrahim
omar07ibrahim marked this pull request as ready for review August 9, 2026 02:31
@omar07ibrahim
omar07ibrahim merged commit eb0362c into master Aug 9, 2026
5 checks passed
@omar07ibrahim
omar07ibrahim deleted the fix/private-release-file-creation branch August 9, 2026 02:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants