Merged
Conversation
| "Shared MCP server not started. Call with server_mode='shared' and start_server=True first." | ||
| ) | ||
| # Bind this instance to the shared server for this call | ||
| self.server = MCPGymRolloutProcessor._shared_server |
There was a problem hiding this comment.
Bug: Shared Server Port Mismatch Breaks Connections
In shared server mode, the port used to create the shared server is not validated against the port requested in subsequent calls. If the first call creates a shared server on port 9700, but a second call requests port 8000, the code reuses the server on port 9700 but attempts to connect to port 8000 at line 304, causing connection failures.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Note
Add shared/per-run MCP server lifecycle with configurable port and a helper to build rollout configs, and expose eval params metadata on the test wrapper.
server_mode("per_run"or"shared") with class-level shared server lifecycle, guarded by a lock; honorsstart_server, configurableport, and forwards extra server kwargs; endpoint now useshttp://localhost:{port}; cleanup skips stopping shared server.__ep_params__on the dual-mode wrapper.build_rollout_processor_config(...)to constructRolloutProcessorConfig, supporting MCP-specific options (start_server,server_mode,server_script_path).ServerModeliteral type ineval_protocol/pytest/types.py.Written by Cursor Bugbot for commit d91a56f. This will update automatically on new commits. Configure here.