gsavin commited on
Commit
8517b46
·
1 Parent(s): 9730d19

fix: add retry/trycatch logic

Browse files
src/agent/runner.py CHANGED
@@ -5,6 +5,7 @@ from dataclasses import asdict
5
  from typing import Dict, Optional
6
  import uuid
7
 
 
8
  from agent.image_agent import generate_image_prompt
9
  from agent.tools import generate_scene_image
10
 
@@ -36,7 +37,7 @@ async def process_step(
36
  assert choice_text, "choice_text is required"
37
  graph_state.choice_text = choice_text
38
 
39
- final_state = await llm_game_graph.ainvoke(asdict(graph_state))
40
 
41
  user_state: UserState = await get_user_state(user_hash)
42
  response: Dict = {}
 
5
  from typing import Dict, Optional
6
  import uuid
7
 
8
+ from agent.utils import with_retries
9
  from agent.image_agent import generate_image_prompt
10
  from agent.tools import generate_scene_image
11
 
 
37
  assert choice_text, "choice_text is required"
38
  graph_state.choice_text = choice_text
39
 
40
+ final_state = with_retries(await llm_game_graph.ainvoke(asdict(graph_state)))
41
 
42
  user_state: UserState = await get_user_state(user_hash)
43
  response: Dict = {}
src/audio/audio_generator.py CHANGED
@@ -94,8 +94,11 @@ async def cleanup_music_session(user_hash: str):
94
  if user_hash in sessions:
95
  logger.info(f"Cleaning up music session for user hash {user_hash}")
96
  session = sessions[user_hash]["session"]
97
- await asyncio.wait_for(session.stop(), settings.request_timeout)
98
- await asyncio.wait_for(session.close(), settings.request_timeout)
 
 
 
99
  del sessions[user_hash]
100
 
101
 
 
94
  if user_hash in sessions:
95
  logger.info(f"Cleaning up music session for user hash {user_hash}")
96
  session = sessions[user_hash]["session"]
97
+ try:
98
+ await asyncio.wait_for(session.stop(), settings.request_timeout)
99
+ await asyncio.wait_for(session.close(), settings.request_timeout)
100
+ except Exception as e:
101
+ logger.error(f"Error stopping music session for user hash {user_hash}: {e}")
102
  del sessions[user_hash]
103
 
104