fix: bound scheduled recipe validation - #10509
Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 42f1f0c740
ℹ️ 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".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 4ca54e7581
ℹ️ 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".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 8e82c5de43
ℹ️ 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".
8e82c5d to
d928905
Compare
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: d928905c5a
ℹ️ 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".
Summary
Security impact
The schedule-management tool can no longer read an unbounded arbitrary filesystem object or reflect attacker-selected recipe contents through parser diagnostics. The scheduler also preserves the validated recipe's canonical directory across the handoff and does not relax a private source recipe to a group- or world-readable internal copy on Unix.
Verification
cargo test -p goose --test schedule_tool_security(6 passed)cargo test -p goose --lib bounded_recipe_copy_rejects_source_that_grew_after_validationcargo test -p goose validated_recipe_bytes_and_base_are_persisted_after_source_replacementcargo test -p goose validated_recipe_copy_makes_existing_destination_owner_privatecargo fmt --all -- --checkcargo clippy --workspace --all-targets -- -D warningsThis finding was discovered by Project Loupe.