- SQLAlchemy async database layer (SQLite dev, PostgreSQL prod) - Conversation and Message models with UUID primary keys - Token counting utilities using litellm - Context summarization at 80% token threshold - REST API endpoints for multi-turn conversations - 19 conversation tests, 6 token tests (176 total passing) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
32 lines
956 B
Python
32 lines
956 B
Python
"""
|
|
Root router - composes all domain routers.
|
|
|
|
Import and include domain routers here.
|
|
main.py only includes this root_router.
|
|
"""
|
|
from fastapi import APIRouter
|
|
|
|
from src.domains.health.router import router as health_router
|
|
from src.domains.agents.router import router as agents_router
|
|
from src.domains.conversations.router import router as conversations_router
|
|
|
|
# from src.domains.auth.router import router as auth_router
|
|
# from src.domains.tools.router import router as tools_router
|
|
|
|
root_router = APIRouter()
|
|
|
|
# Health (no prefix - root level)
|
|
root_router.include_router(health_router)
|
|
|
|
# Agents domain (prefix defined in router)
|
|
root_router.include_router(agents_router)
|
|
|
|
# Conversations domain (prefix defined in router)
|
|
root_router.include_router(conversations_router)
|
|
|
|
# Auth domain
|
|
# root_router.include_router(auth_router, prefix="/auth", tags=["Auth"])
|
|
|
|
# Tools domain
|
|
# root_router.include_router(tools_router, prefix="/tools", tags=["Tools"])
|