# Versiones FIJAS a proposito.
#
# Por que: el 2026-07-28 una reconstruccion del API tomo mcp 2.0.0 (el rango era
# `mcp>=1.0.0`), que elimino Server.list_tools(). El import lanzo AttributeError
# al arrancar y dejo el contenedor en crash-loop ~50 minutos. Once de las doce
# dependencias eran rangos `>=` sin techo, o sea que cada build era una tirada de
# dados contra PyPI: `pydantic>=2.0` habria aceptado pydantic 3 igual de alegre.
#
# Estas versiones son exactamente las que corrian sanas en produccion cuando se
# fijaron (capturadas con `pip freeze` del contenedor healthy).
#
# Para subir una dependencia: cambiala aqui a proposito, reconstruye y prueba.
# Nunca por accidente al redesplegar.
#
# Limitacion conocida: esto fija las dependencias DIRECTAS. Las transitivas
# (starlette, cryptography, anyio...) las sigue resolviendo pip. Es un riesgo
# mucho menor, pero si algun dia muerde, el siguiente paso es un lock completo
# con pip-tools o uv.

fastapi==0.140.13
uvicorn[standard]==0.51.0
asyncpg==0.31.0
pydantic==2.13.4
pydantic-settings==2.14.2
python-jose[cryptography]==3.5.0
passlib[bcrypt]==1.7.4
python-multipart==0.0.32
reportlab==5.0.0
openpyxl==3.1.5
httpx==0.28.1
