diff --git a/codex-rs/core/BUILD.bazel b/codex-rs/core/BUILD.bazel index 75f21c7101..5ce423ed14 100644 --- a/codex-rs/core/BUILD.bazel +++ b/codex-rs/core/BUILD.bazel @@ -19,6 +19,7 @@ codex_rust_crate( allow_empty = True, ) + [ "//codex-rs:node-version.txt", + "//codex-rs/models:models.json", ], rustc_env = { # Askama resolves template paths relative to CARGO_MANIFEST_DIR. In diff --git a/codex-rs/core/src/client.rs b/codex-rs/core/src/client.rs index 021e7024a8..f875e70df0 100644 --- a/codex-rs/core/src/client.rs +++ b/codex-rs/core/src/client.rs @@ -109,6 +109,8 @@ use crate::tools::spec::create_tools_json_for_responses_api; use crate::util::FeedbackRequestTags; use crate::util::emit_feedback_auth_recovery_tags; use crate::util::emit_feedback_request_tags_with_auth_env; +#[cfg(test)] +use codex_models::DEFAULT_WEBSOCKET_CONNECT_TIMEOUT_MS; use codex_models::ModelProviderInfo; use codex_models::WireApi; @@ -122,7 +124,8 @@ const RESPONSES_ENDPOINT: &str = "/responses"; const RESPONSES_COMPACT_ENDPOINT: &str = "/responses/compact"; const MEMORIES_SUMMARIZE_ENDPOINT: &str = "/memories/trace_summarize"; #[cfg(test)] -pub(crate) const WEBSOCKET_CONNECT_TIMEOUT: Duration = Duration::from_millis(15_000); +pub(crate) const WEBSOCKET_CONNECT_TIMEOUT: Duration = + Duration::from_millis(DEFAULT_WEBSOCKET_CONNECT_TIMEOUT_MS); /// Session-scoped state shared by all [`ModelClient`] clones. /// diff --git a/codex-rs/models/src/lib.rs b/codex-rs/models/src/lib.rs index 3acc1d76c6..71cf5b55f4 100644 --- a/codex-rs/models/src/lib.rs +++ b/codex-rs/models/src/lib.rs @@ -25,6 +25,7 @@ pub use model_info::model_info_from_slug; pub use model_info::with_config_overrides; pub use model_provider_info::DEFAULT_LMSTUDIO_PORT; pub use model_provider_info::DEFAULT_OLLAMA_PORT; +pub use model_provider_info::DEFAULT_WEBSOCKET_CONNECT_TIMEOUT_MS; pub use model_provider_info::EnvKeyError; pub use model_provider_info::LEGACY_OLLAMA_CHAT_PROVIDER_ID; pub use model_provider_info::LMSTUDIO_OSS_PROVIDER_ID; diff --git a/codex-rs/models/src/model_provider_info.rs b/codex-rs/models/src/model_provider_info.rs index e8de74b2c6..fa6f074d53 100644 --- a/codex-rs/models/src/model_provider_info.rs +++ b/codex-rs/models/src/model_provider_info.rs @@ -22,7 +22,7 @@ use thiserror::Error; const DEFAULT_STREAM_IDLE_TIMEOUT_MS: u64 = 300_000; const DEFAULT_STREAM_MAX_RETRIES: u64 = 5; const DEFAULT_REQUEST_MAX_RETRIES: u64 = 4; -pub(crate) const DEFAULT_WEBSOCKET_CONNECT_TIMEOUT_MS: u64 = 15_000; +pub const DEFAULT_WEBSOCKET_CONNECT_TIMEOUT_MS: u64 = 15_000; /// Hard cap for user-configured `stream_max_retries`. const MAX_STREAM_MAX_RETRIES: u64 = 100; /// Hard cap for user-configured `request_max_retries`.