Skip to content

fix: keep scan output private through completion and exports - #118

Merged
ianw-oai merged 6 commits into
mainfrom
mdangelo/codex/private-scan-output-directories
Jul 31, 2026
Merged

fix: keep scan output private through completion and exports#118
ianw-oai merged 6 commits into
mainfrom
mdangelo/codex/private-scan-output-directories

Conversation

@mldangelo-oai

Copy link
Copy Markdown
Collaborator

Summary

Verification

  • Full current-main SDK suite: 473 passed, six expected platform/integration skips, zero failures.
  • Focused runtime, contract, scan recovery, API, and event coverage passed; the unmodified external patch reproduced ten event-flow regressions before the compatibility fix.
  • TypeScript and formatting checks passed.

batmnnn and others added 3 commits July 29, 2026 23:41
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>
@mldangelo-oai

Copy link
Copy Markdown
Collaborator Author

@codex review

Please review exact pushed head d74bbe5, including the preserved batmnnn contribution, sticky ancestor checks, repeated owner/mode validation, compatible private event fixtures, and 473 passing current-main tests.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 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".

Comment thread sdk/typescript/src/runtime.ts Outdated
Comment thread sdk/typescript/src/contract.ts
@mldangelo-oai

Copy link
Copy Markdown
Collaborator Author

@codex review

Please review exact pushed head 2372cc1, including preserved contributor authorship, trusted ownership of sticky shared ancestors, continuous ancestry validation at public contract-loading boundaries, and the full 475-pass local suite.

@mldangelo-oai

Copy link
Copy Markdown
Collaborator Author

@codex review

Please review exact pushed head 08569b1, including contributor-preserving private scan directories, trusted sticky-ancestor ownership, repeated contract-loading ancestry verification, and the latest nested-Git main merge.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

copy_git_worktree_files(source_path, destination_path, excluded)

P2 Badge Preserve nested repository directory modes in snapshots

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".

Comment thread sdk/typescript/src/runtime.ts Outdated
Comment thread sdk/typescript/_bundled_plugin/scripts/workbench_db.py
Comment thread sdk/typescript/src/contract.ts
@mldangelo-oai

Copy link
Copy Markdown
Collaborator Author

@codex review

Please review exact pushed head 62f3f11, including contributor attribution, trusted ownership of every ancestor, repeated TypeScript contract privacy checks, Python workbench ancestor validation, and current-main tests.

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. What shall we delve into next?

Reviewed commit: 62f3f11839

ℹ️ 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".

@ianw-oai ianw-oai left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Verified private scan-directory ownership, trusted ancestors, completion checks, and cross-platform regression coverage.

@ianw-oai
ianw-oai merged commit 01532a5 into main Jul 31, 2026
8 checks passed
@ianw-oai
ianw-oai deleted the mdangelo/codex/private-scan-output-directories branch July 31, 2026 01:28
schemann added a commit to schemann/codex-security that referenced this pull request Jul 31, 2026
…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.
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.

3 participants