Keep usable Xcode routes responsive when sibling processes stall - #192
Conversation
|
Codex usage limits have been reached for code reviews. Please check with the admins of this repo to increase the limits by adding credits. |
|
@codex review |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
Codex Review: Didn't find any major issues. Already looking forward to the next diff. Reviewed commit: ℹ️ 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". |
Purpose
Keep MCP client startup and tool discovery responsive when multiple GUI Xcode processes are running and one process never produces a tool catalog.
The proxy already lets the first compatible route complete protocol initialization, but foreground
tools/liststill waited for every exposed process catalog. A workspace-backed route could therefore be blocked by an initialized, workspace-less sibling until the sibling timed out.Changes
notifications/tools/list_changedunder their existing owners.XcodeListWindows, failure/recovery boundaries, and overlapping foreground/background loads.Review focus
Testing
scripts/check.shXcodeMCPProcessRuntimeTests(24 tests)ProxyStdioAdapterTests(13 tests)swift test --no-parallel --filter 'ControlPlaneAuthorityTests|RuntimeCoordinatorRecoveryTests|RuntimeCoordinatorCatalogTests' -Xswiftc -strict-concurrency=minimal(115 tests)git diff --checkmain: clean, 0 findingsFixes #191