fix: keep scan output private through completion and exports - #118
Conversation
Reject group/world-writable non-sticky output parents at prepare time, and re-check scan-directory ownership/mode whenever the workbench or contract loader resolves the path, so a mid-scan rename under a shared parent cannot substitute forged completion artifacts. Co-authored-by: Cursor <cursoragent@cursor.com>
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: d74bbe5f62
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
…e-scan-output-directories
There was a problem hiding this comment.
💡 Codex Review
When an untracked nested Git repository has a non-default directory mode, such as 0700, the source working-tree digest includes that mode, but this recursive copy creates the destination directory using the process umask (commonly producing 0755). require_reviewed_patch_applied then computes a different digest for the copied checkout and rejects an otherwise exact reviewed patch. Preserve the source nested directory's mode after copying it; the current regression test only exercises the default-mode case.
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
Codex Review: Didn't find any major issues. What shall we delve into next? Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
ianw-oai
left a comment
There was a problem hiding this comment.
Verified private scan-directory ownership, trusted ancestors, completion checks, and cross-platform regression coverage.
…nvariants Upstream openai#118 now enforces private (0700) scan output directories when reading artifacts; the test double created them 0755 via cp, tripping ContractValidationError instead of the missing-artifact retry path.
Summary
Verification