mirror of
https://github.com/openai/codex.git
synced 2026-11-13 14:46:14 +00:00
Apply MCP startup timeouts during client creation (#32781)
## What changed - Apply each server's `startup_timeout_sec` (or the default) while creating the MCP client, so the deadline also covers transport setup. - Launch local stdio servers on a blocking task so synchronous command resolution and process creation do not prevent the deadline from firing. - Recognize the new client-startup timeout error and show the existing `startup_timeout_sec` configuration hint. ## Testing - Extend the timeout error display test to cover the client-startup timeout. GitOrigin-RevId: 1967c62f943d55f6aa18792d4488e52c22f1e717
This commit is contained in:
1 parent
4477b20713
commit
8b2c84ddcc
4 files changed
+38
-15
No files matched your search
@@ -1706,12 +1706,17 @@ fn mcp_init_error_display_reports_generic_errors() {
|
||||
#[test]
|
||||
fn mcp_init_error_display_includes_startup_timeout_hint() {
|
||||
let server_name = "slow";
|
||||
let err: StartupOutcomeError = anyhow::anyhow!("request timed out").into();
|
||||
for error in [
|
||||
"request timed out",
|
||||
"MCP client startup timed out after 30s",
|
||||
] {
|
||||
let err: StartupOutcomeError = anyhow::anyhow!(error).into();
|
||||
|
||||
let display = mcp_init_error_display(server_name, /*entry*/ None, &err);
|
||||
let display = mcp_init_error_display(server_name, /*entry*/ None, &err);
|
||||
|
||||
assert_eq!(
|
||||
"MCP client for `slow` timed out after 30 seconds. Add or adjust `startup_timeout_sec` in your config.toml:\n[mcp_servers.slow]\nstartup_timeout_sec = XX",
|
||||
display
|
||||
);
|
||||
assert_eq!(
|
||||
"MCP client for `slow` timed out after 30 seconds. Add or adjust `startup_timeout_sec` in your config.toml:\n[mcp_servers.slow]\nstartup_timeout_sec = XX",
|
||||
display
|
||||
);
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user