From 0d9f89d518eb68672ba82cc2fd3324f9afb520be Mon Sep 17 00:00:00 2001 From: shandian64 <22763347+shandian64@users.noreply.github.com> Date: Mon, 8 Jun 2026 13:57:47 +0800 Subject: [PATCH] fix(title): honor configured auxiliary timeout --- agent/title_generator.py | 2 +- tests/agent/test_title_generator.py | 31 +++++++++++++++++++++++++++++ 2 files changed, 32 insertions(+), 1 deletion(-) diff --git a/agent/title_generator.py b/agent/title_generator.py index a7f1e158e1a65..315fa08475d86 100644 --- a/agent/title_generator.py +++ b/agent/title_generator.py @@ -29,7 +29,7 @@ def generate_title( user_message: str, assistant_response: str, - timeout: float = 30.0, + timeout: Optional[float] = None, failure_callback: Optional[FailureCallback] = None, main_runtime: dict = None, ) -> Optional[str]: diff --git a/tests/agent/test_title_generator.py b/tests/agent/test_title_generator.py index 56286f6ecc990..292e08bdc8b4c 100644 --- a/tests/agent/test_title_generator.py +++ b/tests/agent/test_title_generator.py @@ -22,6 +22,37 @@ def test_returns_title_on_success(self): title = generate_title("help me fix this import", "Sure, let me check...") assert title == "Debugging Python Import Errors" + def test_default_timeout_delegates_to_auxiliary_config(self): + captured_kwargs = {} + + def mock_call_llm(**kwargs): + captured_kwargs.update(kwargs) + resp = MagicMock() + resp.choices = [MagicMock()] + resp.choices[0].message.content = "Configured Timeout" + return resp + + with patch("agent.title_generator.call_llm", side_effect=mock_call_llm): + assert generate_title("question", "answer") == "Configured Timeout" + + assert captured_kwargs["task"] == "title_generation" + assert captured_kwargs["timeout"] is None + + def test_explicit_timeout_still_overrides_config(self): + captured_kwargs = {} + + def mock_call_llm(**kwargs): + captured_kwargs.update(kwargs) + resp = MagicMock() + resp.choices = [MagicMock()] + resp.choices[0].message.content = "Explicit Timeout" + return resp + + with patch("agent.title_generator.call_llm", side_effect=mock_call_llm): + assert generate_title("question", "answer", timeout=123.0) == "Explicit Timeout" + + assert captured_kwargs["timeout"] == 123.0 + def test_strips_quotes(self): mock_response = MagicMock() mock_response.choices = [MagicMock()]