The autonomous conversation loop could hang indefinitely because self.response_timeout=30 was defined but never used in wait_for(). - autonomous_conversation_controller: wrap generate_persona_response() with asyncio.wait_for(timeout=120s); 30s was too short for production LLMs, raised to 120s; TimeoutError returns an error dict so the loop can continue or count toward consecutive_silence limit - conversation_decision_service: add asyncio.wait_for(timeout=60s) around LLMService.generate_content() for the decision call; add asyncio import and explicit TimeoutError handling Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| auth | ||
| models | ||
| routes | ||
| services | ||
| utils | ||
| .DS_Store | ||
| __init__.py | ||
| db.py | ||
| extensions.py | ||
| websocket_debug_tap.py | ||
| websocket_manager.py | ||
| websocket_manager_async.py | ||