AOSSIE-Org / AOSSIE-Org/Devr.AI

BUG: Backend fails to start on fresh install due to Discord dependency mismatch

Abierto
#185 1 comentario 0 reacciones 0 asignados Ver en GitHub
Lenguaje dominante
Python
Estrellas
102
Forks
137
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

### Is there an existing issue for this?

- [x] I have searched the existing issues

### What happened?

Following `INSTALL_GUIDE.md` for a fresh setup causes the backend to crash during startup while initializing the Discord bot.

## Steps to Reproduce
1) Clone the repository and `cd` into the directory
2) Follow `INSTALL_GUIDE.md` exactly
3) After running `poetry run python main.py`, the following error is noticed:
```shell
2025-12-14 08:01:46,003 - app.core.orchestration.queue_manager - INFO - Registered handler for message type: devrel_request
2025-12-14 08:01:46,004 - app.core.orchestration.queue_manager - INFO - Registered handler for message type: clear_thread_memory
2025-12-14 08:01:46,006 - app.core.orchestration.queue_manager - INFO - Registered handler for message type: discord_response
INFO: Will watch for changes in these directories: ['/home/adot/projects/hackathon_contributions/Devr.AI/backend']
INFO: Uvicorn running on http://0.0.0.0:8000 (Press CTRL+C to quit)
INFO: Started reloader process [275668] using StatReload
2025-12-14 08:01:50,705 - app.core.orchestration.queue_manager - INFO - Registered handler for message type: devrel_request
2025-12-14 08:01:50,705 - app.core.orchestration.queue_manager - INFO - Registered handler for message type: clear_thread_memory
2025-12-14 08:01:50,707 - app.core.orchestration.queue_manager - INFO - Registered handler for message type: discord_response
/home/adot/.cache/pypoetry/virtualenvs/devr-ai-lttTo2q8-py3.10/lib/python3.10/site-packages/websockets/legacy/__init__.py:6: DeprecationWarning: websockets.legacy is deprecated; see https://websockets.readthedocs.io/en/stable/howto/upgrade.html for upgrade instructions
warnings.warn( # deprecated in 14.0 - 2024-11-09
/home/adot/.cache/pypoetry/virtualenvs/devr-ai-lttTo2q8-py3.10/lib/python3.10/site-packages/uvicorn/protocols/websockets/websockets_impl.py:17: DeprecationWarning: websockets.server.WebSocketServerProtocol is deprecated
from websockets.server import WebSocketServerProtocol
INFO: Started server process [275740]
INFO: Waiting for application startup.
2025-12-14 08:01:50,732 - __mp_main__ - INFO - Starting background tasks (Discord Bot & Queue Manager)...
2025-12-14 08:01:50,748 - httpx - INFO - HTTP Request: GET http://localhost:8080/v1/.well-known/openid-configuration "HTTP/1.1 404 Not Found"
2025-12-14 08:01:50,756 - httpx - INFO - HTTP Request: GET http://localhost:8080/v1/meta "HTTP/1.1 200 OK"
2025-12-14 08:01:51,103 - httpx - INFO - HTTP Request: GET https://pypi.org/pypi/weaviate-client/json "HTTP/1.1 200 OK"
2025-12-14 08:01:51,149 - httpx - INFO - HTTP Request: GET http://localhost:8080/v1/.well-known/ready "HTTP/1.1 200 OK"
2025-12-14 08:01:51,149 - __mp_main__ - INFO - Weaviate connection successful and ready
2025-12-14 08:01:51,169 - app.core.orchestration.queue_manager - INFO - Successfully connected to RabbitMQ
2025-12-14 08:01:51,169 - app.core.orchestration.queue_manager - INFO - Started 3 async queue workers
2025-12-14 08:01:51,171 - __mp_main__ - ERROR - Error during background task startup: module 'discord.ext.commands' has no attribute 'ExtensionError'
Traceback (most recent call last):
File "/home/adot/.cache/pypoetry/virtualenvs/devr-ai-lttTo2q8-py3.10/lib/python3.10/site-packages/discord/cog.py", line 784, in _load_from_module_spec
spec.loader.exec_module(lib) # type: ignore
File "", line 883, in exec_module
File "", line 241, in _call_with_frames_removed
File "/home/adot/projects/hackathon_contributions/Devr.AI/backend/integrations/discord/cogs.py", line 4, in
from discord import app_commands
File "/home/adot/.cache/pypoetry/virtualenvs/devr-ai-lttTo2q8-py3.10/lib/python3.10/site-packages/discord/app_commands/__init__.py", line 12, in
from .commands import *
File "/home/adot/.cache/pypoetry/virtualenvs/devr-ai-lttTo2q8-py3.10/lib/python3.10/site-packages/discord/app_commands/commands.py", line 51, in
from ..enums import AppCommandOptionType, AppCommandType, ChannelType, Locale
ImportError: cannot import name 'AppCommandOptionType' from 'discord.enums' (/home/adot/.cache/pypoetry/virtualenvs/devr-ai-lttTo2q8-py3.10/lib/python3.10/site-packages/discord/enums.py)

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
File "/home/adot/projects/hackathon_contributions/Devr.AI/backend/main.py", line 50, in start_background_tasks
await self.discord_bot.load_extension("integrations.discord.cogs")
File "/home/adot/.cache/pypoetry/virtualenvs/devr-ai-lttTo2q8-py3.10/lib/python3.10/site-packages/discord/cog.py", line 918, in load_extension
self._load_from_module_spec(spec, name)
File "/home/adot/.cache/pypoetry/virtualenvs/devr-ai-lttTo2q8-py3.10/lib/python3.10/site-packages/discord/cog.py", line 787, in _load_from_module_spec
raise errors.ExtensionFailed(key, e) from e
discord.errors.ExtensionFailed: Extension 'integrations.discord.cogs' raised an error: ImportError: cannot import name 'AppCommandOptionType' from 'discord.enums' (/home/adot/.cache/pypoetry/virtualenvs/devr-ai-lttTo2q8-py3.10/lib/python3.10/site-packages/discord/enums.py)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/home/adot/projects/hackathon_contributions/Devr.AI/backend/main.py", line 51, in start_background_tasks
except (ImportError, commands.ExtensionError) as e:
AttributeError: module 'discord.ext.commands' has no attribute 'ExtensionError'. Did you mean: 'ConversionError'?
2025-12-14 08:01:51,176 - __mp_main__ - INFO - Stopping background tasks and closing connections...
2025-12-14 08:01:51,176 - __mp_main__ - INFO - Discord bot has been closed.
2025-12-14 08:01:51,177 - app.core.orchestration.queue_manager - INFO - Stopped all queue workers and closed connection
2025-12-14 08:01:51,178 - __mp_main__ - INFO - Queue manager has been stopped.
2025-12-14 08:01:51,178 - __mp_main__ - INFO - All background tasks and connections stopped.
ERROR: Traceback (most recent call last):
File "/home/adot/.cache/pypoetry/virtualenvs/devr-ai-lttTo2q8-py3.10/lib/python3.10/site-packages/discord/cog.py", line 784, in _load_from_module_spec
spec.loader.exec_module(lib) # type: ignore
File "", line 883, in exec_module
File "", line 241, in _call_with_frames_removed
File "/home/adot/projects/hackathon_contributions/Devr.AI/backend/integrations/discord/cogs.py", line 4, in
from discord import app_commands
File "/home/adot/.cache/pypoetry/virtualenvs/devr-ai-lttTo2q8-py3.10/lib/python3.10/site-packages/discord/app_commands/__init__.py", line 12, in
from .commands import *
File "/home/adot/.cache/pypoetry/virtualenvs/devr-ai-lttTo2q8-py3.10/lib/python3.10/site-packages/discord/app_commands/commands.py", line 51, in
from ..enums import AppCommandOptionType, AppCommandType, ChannelType, Locale
ImportError: cannot import name 'AppCommandOptionType' from 'discord.enums' (/home/adot/.cache/pypoetry/virtualenvs/devr-ai-lttTo2q8-py3.10/lib/python3.10/site-packages/discord/enums.py)

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
File "/home/adot/projects/hackathon_contributions/Devr.AI/backend/main.py", line 50, in start_background_tasks
await self.discord_bot.load_extension("integrations.discord.cogs")
File "/home/adot/.cache/pypoetry/virtualenvs/devr-ai-lttTo2q8-py3.10/lib/python3.10/site-packages/discord/cog.py", line 918, in load_extension
self._load_from_module_spec(spec, name)
File "/home/adot/.cache/pypoetry/virtualenvs/devr-ai-lttTo2q8-py3.10/lib/python3.10/site-packages/discord/cog.py", line 787, in _load_from_module_spec
raise errors.ExtensionFailed(key, e) from e
discord.errors.ExtensionFailed: Extension 'integrations.discord.cogs' raised an error: ImportError: cannot import name 'AppCommandOptionType' from 'discord.enums' (/home/adot/.cache/pypoetry/virtualenvs/devr-ai-lttTo2q8-py3.10/lib/python3.10/site-packages/discord/enums.py)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/home/adot/.cache/pypoetry/virtualenvs/devr-ai-lttTo2q8-py3.10/lib/python3.10/site-packages/starlette/routing.py", line 692, in lifespan
async with self.lifespan_context(app) as maybe_state:
File "/home/adot/.pyenv/versions/3.10.19/lib/python3.10/contextlib.py", line 199, in __aenter__
return await anext(self.gen)
File "/home/adot/.cache/pypoetry/virtualenvs/devr-ai-lttTo2q8-py3.10/lib/python3.10/site-packages/fastapi/routing.py", line 133, in merged_lifespan
async with original_context(app) as maybe_original_state:
File "/home/adot/.pyenv/versions/3.10.19/lib/python3.10/contextlib.py", line 199, in __aenter__
return await anext(self.gen)
File "/home/adot/projects/hackathon_contributions/Devr.AI/backend/main.py", line 100, in lifespan
await app_instance.start_background_tasks()
File "/home/adot/projects/hackathon_contributions/Devr.AI/backend/main.py", line 51, in start_background_tasks
except (ImportError, commands.ExtensionError) as e:
AttributeError: module 'discord.ext.commands' has no attribute 'ExtensionError'. Did you mean: 'ConversionError'?

ERROR: Application startup failed. Exiting.
sys:1: ResourceWarning: unclosed file <_io.TextIOWrapper name=0 mode='r' encoding='UTF-8'>
```
## Expected Behavior
The backend should start without any errors

### Record

- [x] I agree to follow this project's Code of Conduct
- [x] I want to work on this issue

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.