mirror of
https://github.com/OpenHands/OpenHands.git
synced 2025-12-26 05:48:36 +08:00
feat: new delegate stuck check. (#1677)
Co-authored-by: aaren.xzh <aaren.xzh@antfin.com>
This commit is contained in:
parent
e63910263c
commit
10b971c612
@ -187,7 +187,7 @@ class AgentController:
|
||||
self.agent.reset()
|
||||
|
||||
async def set_agent_state_to(self, new_state: AgentState):
|
||||
logger.info(f'Setting agent state from {self._agent_state} to {new_state}')
|
||||
logger.info(f'Setting agent({type(self.agent).__name__}) state from {self._agent_state} to {new_state}')
|
||||
if new_state == self._agent_state:
|
||||
return
|
||||
|
||||
@ -201,9 +201,7 @@ class AgentController:
|
||||
self._cur_step += 1
|
||||
if self.agent_task is not None:
|
||||
self.agent_task.cancel()
|
||||
elif new_state == AgentState.STOPPED:
|
||||
await self.reset_task()
|
||||
elif new_state == AgentState.FINISHED:
|
||||
elif new_state == AgentState.STOPPED or new_state == AgentState.ERROR or new_state == AgentState.FINISHED:
|
||||
await self.reset_task()
|
||||
|
||||
await self.event_stream.add_event(
|
||||
@ -291,6 +289,9 @@ class AgentController:
|
||||
return self.state
|
||||
|
||||
def _is_stuck(self):
|
||||
# check if delegate stuck
|
||||
if self.delegate and self.delegate._is_stuck():
|
||||
return True
|
||||
if (
|
||||
self.state is None
|
||||
or self.state.history is None
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user