Skip to content

Add preserved path shell preflight#19848

Draft
evawong-oai wants to merge 1 commit intocodex/bugb15632-seatbelt-preserved-pathsfrom
codex/bugb15632-preserved-path-preflight
Draft

Add preserved path shell preflight#19848
evawong-oai wants to merge 1 commit intocodex/bugb15632-seatbelt-preserved-pathsfrom
codex/bugb15632-preserved-path-preflight

Conversation

@evawong-oai
Copy link
Copy Markdown
Contributor

@evawong-oai evawong-oai commented Apr 27, 2026

Summary

Add a shell preflight layer that gives users an early explanation when a literal redirection targets a preserved agent metadata path.

Scope

  1. Add a shared shell command helper for literal preserved path write targets.
  2. Use that helper in debug sandbox handling.
  3. Use that helper in agent shell handling.
  4. Leave direct command creation attempts to sandbox enforcement.

Reviewer Focus

  1. This is user experience only.
  2. Security remains in the policy and platform sandbox layers.
  3. Direct commands such as mkdir .codex are intentionally not treated as preflight security logic here.

Stack

  1. Policy primitive: Add preserved path policy primitive #19846
  2. macOS Seatbelt enforcement: Enforce preserved path names in Seatbelt #19847
  3. Shell preflight: this PR
  4. Runtime permission propagation: Propagate runtime permission profiles #19849
  5. Linux bubblewrap enforcement: Enforce preserved path names in Linux sandbox #19852

Validation

  1. Shell command tests passed locally.
  2. CLI and core compile check passed locally.
  3. Formatter passed locally.
  4. Bazel lock drift check passed locally.

@evawong-oai evawong-oai force-pushed the codex/bugb15632-seatbelt-preserved-paths branch from 7a081ee to fe774aa Compare April 27, 2026 18:32
@evawong-oai evawong-oai force-pushed the codex/bugb15632-preserved-path-preflight branch from fca3989 to 1bc0b13 Compare April 27, 2026 18:32
@evawong-oai evawong-oai force-pushed the codex/bugb15632-seatbelt-preserved-paths branch from fe774aa to 017761a Compare April 27, 2026 18:40
@evawong-oai evawong-oai force-pushed the codex/bugb15632-preserved-path-preflight branch 2 times, most recently from 2b511ae to b0df7b1 Compare April 27, 2026 18:55
@evawong-oai evawong-oai force-pushed the codex/bugb15632-seatbelt-preserved-paths branch from 017761a to 613fe13 Compare April 27, 2026 18:55
@evawong-oai evawong-oai force-pushed the codex/bugb15632-preserved-path-preflight branch from b0df7b1 to e76a989 Compare April 27, 2026 19:07
@evawong-oai evawong-oai force-pushed the codex/bugb15632-seatbelt-preserved-paths branch 2 times, most recently from 6e4de4c to 0b8c428 Compare April 27, 2026 19:48
@evawong-oai evawong-oai force-pushed the codex/bugb15632-preserved-path-preflight branch 2 times, most recently from 6c3c566 to 669222a Compare April 27, 2026 20:52
@evawong-oai evawong-oai force-pushed the codex/bugb15632-seatbelt-preserved-paths branch 2 times, most recently from 6541b90 to c2bf30f Compare April 27, 2026 21:14
@evawong-oai evawong-oai force-pushed the codex/bugb15632-preserved-path-preflight branch from 669222a to a1666bf Compare April 27, 2026 21:14
@evawong-oai evawong-oai force-pushed the codex/bugb15632-seatbelt-preserved-paths branch from c2bf30f to 5e3f0d4 Compare April 27, 2026 22:21
@evawong-oai evawong-oai force-pushed the codex/bugb15632-preserved-path-preflight branch from a1666bf to 427c425 Compare April 27, 2026 22:22
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.

1 participant