Conversation
|
@codex review |
|
Codex Review: Didn't find any major issues. 🎉 ℹ️ 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". |
9d8f242 to
ad75171
Compare
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
codex/codex-rs/app-server/src/codex_message_processor.rs
Lines 9206 to 9208 in ad75171
validate_dynamic_tools only checks tool.name for reserved mcp prefixes and duplicate conflicts, but never validates tool.namespace. A dynamic tool can therefore use an MCP namespace/name pair and collide with real MCP tools. That key is later registered as a dynamic handler and can overwrite the existing handler, causing tool calls to be routed to the wrong backend.
ℹ️ 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".
| defer_loading, | ||
| } = tool; | ||
| Ok(ToolDefinition { | ||
| name: name.clone(), |
There was a problem hiding this comment.
what is this used for that we don't care about ns?
ad75171 to
7b3d791
Compare
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 7b3d791662
ℹ️ 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".
7b3d791 to
984d794
Compare
|
@codex review |
984d794 to
d8411aa
Compare
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 984d7945c7
ℹ️ 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".
9f7fd1f to
b619c18
Compare
|
@codex review |
Review result: changes requestedI re-reviewed the PR state at 1) P2 —
|
b619c18 to
61927ed
Compare
61927ed to
7a8eb68
Compare
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 7a8eb680cb
ℹ️ 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".
| { | ||
| tool_name.display() | ||
| } else { | ||
| tool_name.name.clone() |
There was a problem hiding this comment.
Preserve namespaces in code-mode tool names
Return a fully-qualified name for non-MCP namespaced tools. Flattening to tool_name.name makes different tools share the same code-mode identifier (e.g. shell), and later dedup/lookup logic is name-based. This can hide one tool from ALL_TOOLS and route tools.<name>(...) to the wrong handler when names collide across namespaces or with built-ins.
Useful? React with 👍 / 👎.
Dynamic tools can now carry an explicit namespace from the app-server protocol through core registration, tool search, and dispatch. This lets deferred dynamic tools be returned from tool_search as a real namespace containing their callable function, instead of relying on Responses echoing a self-namespaced function name.
The dynamic tool handler still sends the plain tool name back to the app, so app-side dynamic tool handlers keep receiving names like automation_update while core routes the model call through the namespaced registry key.