Pythagora-io / gpt-pilot

The first real AI developer
Other
29.08k stars 2.91k forks source link

Cleanly exit Pythagora core if UI is closed #967

Closed senko closed 1 month ago

senko commented 1 month ago

Before:

  File "/home/senko/Projects/Pythagora/gpt-pilot/core/ui/ipc_client.py", line 119, in _send
    await self.writer.drain()
  File "/usr/lib/python3.11/asyncio/streams.py", line 366, in drain
    raise exc
  File "/usr/lib/python3.11/asyncio/selector_events.py", line 1057, in write
    n = self._sock.send(data)
        ^^^^^^^^^^^^^^^^^^^^^
BrokenPipeError: [Errno 32] Broken pipe
2024-05-27 16:14:05,696 DEBUG [core.ui.ipc_client] Sending message: [Stopping Pythagora due to error:

File `core/cli/main.py`, line 38, in run_project
    success = await orca.run()
File `core/agents/orchestrator.py`, line 62, in run
    response = await agent.run()
File `core/agents/tech_lead.py`, line 57, in run
    return await self.ask_for_new_feature()
File `core/agents/tech_lead.py`, line 96, in ask_for_new_feature
    response = await self.ask_question(
File `core/agents/base.py`, line 91, in ask_question
    response = await self.ui.ask_question(
File `core/ui/ipc_client.py`, line 224, in ask_question
    response = await self._receive()
File `core/ui/ipc_client.py`, line 127, in _receive
    response = await self.reader.read(MESSAGE_SIZE_LIMIT)
File `core/ui/ipc_client.py`, line 119, in _send
    await self.writer.drain()
File `core/ui/ipc_client.py`, line 119, in _send
    await self.writer.drain()
File `core/ui/ipc_client.py`, line 119, in _send
    await self.writer.drain()
File `core/ui/ipc_client.py`, line 119, in _send
    await self.writer.drain()
File `core/ui/ipc_client.py`, line 119, in _send
    await self.writer.drain()
BrokenPipeError: [Errno 32] Broken pipe] from pythagora
2024-05-27 16:14:05,696 ERROR [core.ui.ipc_client] Connection lost while sending the message: [Errno 32] Broken pipe

Now:

2024-05-27 16:15:14,609 INFO [core.cli.main] Interrupted by user