sqlalchemy>=2.0.0
langgraph>=0.2.60
langgraph-checkpoint>=2.0.10
aiofiles>=24.1.0
aiosqlite>=0.20.0

[all]
wtb[api,grpc,langgraph-postgres,langgraph-sqlite,llm,observability,ray,venv]

[api]
fastapi>=0.109.0
uvicorn[standard]>=0.27.0
websockets>=12.0
pydantic>=2.5.0

[dev]
pytest>=7.0.0
pytest-asyncio>=0.23.0
httpx>=0.26.0
ruff>=0.1.0

[grpc]
grpcio>=1.60.0
grpcio-tools>=1.60.0
protobuf>=4.25.0

[langgraph-postgres]
langgraph-checkpoint-postgres>=2.0.15
psycopg[binary]>=3.1.0

[langgraph-sqlite]
langgraph-checkpoint-sqlite>=2.0.5

[llm]
openai>=1.0.0
langchain-openai>=0.0.5

[observability]
opentelemetry-api>=1.22.0
opentelemetry-sdk>=1.22.0
opentelemetry-instrumentation-fastapi>=0.43b0
opentelemetry-exporter-otlp>=1.22.0
prometheus-client>=0.17.0

[ray]
ray>=2.9.0
dill>=0.3.7

[test]
pytest>=7.0.0
pytest-asyncio>=0.23.0
pytest-env>=1.1.0
httpx>=0.26.0
ray>=2.9.0
dill>=0.3.7
grpcio>=1.60.0
grpcio-tools>=1.60.0
langgraph-checkpoint-sqlite>=2.0.5
openai>=1.0.0
langchain-openai>=0.0.5
fastapi>=0.109.0
uvicorn[standard]>=0.27.0

[venv]
grpcio>=1.60.0
protobuf>=4.25.0
