first commit
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
"""
|
||||
Health check router module.
|
||||
"""
|
||||
|
||||
from datetime import datetime
|
||||
from fastapi import APIRouter, Depends
|
||||
from typing import Dict, Any
|
||||
|
||||
from ..models import HealthResponse, ServerInfoResponse
|
||||
from ..state import get_server_state, ServerState
|
||||
|
||||
router = APIRouter()
|
||||
|
||||
|
||||
@router.get("/", response_model=ServerInfoResponse)
|
||||
async def root():
|
||||
"""Server root path information."""
|
||||
return ServerInfoResponse(
|
||||
name="CADDesigner API Server",
|
||||
version="1.0.0",
|
||||
description="OpenAI-compatible API for CADDesigner",
|
||||
api_version="v1",
|
||||
supported_models=["cadagent"],
|
||||
capabilities=[
|
||||
"chat.completions",
|
||||
"streaming",
|
||||
"tool_calling",
|
||||
"conversation_history",
|
||||
"sketch_pad_storage",
|
||||
],
|
||||
)
|
||||
|
||||
|
||||
@router.get("/health", response_model=HealthResponse)
|
||||
async def health_check(state: ServerState = Depends(get_server_state)):
|
||||
"""Health check endpoint."""
|
||||
default_agent = (
|
||||
state.agent_registry.get_agent("cadagent") if state.agent_registry else None
|
||||
)
|
||||
|
||||
return HealthResponse(
|
||||
status="ok",
|
||||
timestamp=datetime.now().isoformat(),
|
||||
version="1.0.0",
|
||||
agent_name=default_agent.name if default_agent else "Not initialized",
|
||||
)
|
||||
Reference in New Issue
Block a user