[RETRACTED] fix: stop CWD config discovery, listing probes, and fallback command shadowing - #36
Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: ada56b8592
ℹ️ 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".
| if len(cfg.Servers) > 0 { | ||
| return nil |
There was a problem hiding this comment.
Stop monitoring fallbacks when merging is disabled
When config.toml contains any server, this return makes every fallback, auth, and OAuth file semantically irrelevant, but RuntimeConfigSourcePathsForCWD still returns those paths and currentRuntimeConfigStamp continues reading and fingerprinting them. Consequently, changing a Cursor fallback or refreshing Codex credentials triggers an unnecessary same-CWD reload and pool configuration update even though the resulting configuration cannot change; the monitored source list should exclude fallbacks whenever this branch disables their merge.
AGENTS.md reference: AGENTS.md:L35-L39
Useful? React with 👍 / 👎.
There was a problem hiding this comment.
Good catch. Skip-merge and skip-watch now share the MCPXConfig origin check, so a successful fallback merge still watches those files. Fallback/auth edits no longer stamp-reload when config.toml already has managed servers.
| func (c *Catalog) ServerNames(ctx context.Context) ([]string, error) { | ||
| _ = ctx |
There was a problem hiding this comment.
Preserve explicit operations on Codex virtual servers
When codex_apps is configured, returning only literal config keys makes explicitly requested virtual servers disappear from validation paths even though Resolve still supports them. For example, mcpx linear --help first requests list_servers with IncludeHidden and now reports linear as unknown, while shim install linear similarly rejects it through listShimKnownServers; these explicit operations need to resolve the requested virtual server rather than depend on the now config-only server list.
Useful? React with 👍 / 👎.
There was a problem hiding this comment.
Yep — that was the regression. --help and shim install now Resolve the explicit name via list_tools instead of treating ServerNames membership as the source of truth. Default list_servers stays config-only.
| if len(cfg.Servers) > 0 { | ||
| return nil | ||
| } |
There was a problem hiding this comment.
Keep fallback servers from shadowing utility commands
This condition does not prevent fallback command shadowing in the zero-managed-server case—the only case in which fallback merging now runs. If a fallback source defines add, shim, skill, completion, or __complete, the corresponding maybeHandle*Command sees that name in cfg.Servers and defers to it, so typing a reserved utility command can instead connect to or spawn the fallback server; filter reserved names from discovered servers or make utility dispatch defer only to genuinely managed origins.
AGENTS.md reference: AGENTS.md:L5-L7
Useful? React with 👍 / 👎.
There was a problem hiding this comment.
Fixed. Reserved names are filtered out of fallback discovery, and maybeHandle* only defers for managed origins. A fallback server named add no longer steals mcpx add.
…servers Skip merge and source watching only when config.toml has MCPXConfig origins, not whenever cfg.Servers is non-empty. Filter reserved CLI names from fallback discovery, and resolve explicit --help / shim install targets via list_tools so Codex virtual servers still work.
Retracted
This pull request was merged outside the permitted working window and has been removed from
main.4dca40a678f7ff236d5352a9a3f160289c698576is no longer reachable frommain.Do not treat this merged PR record as released or current.