Spaces:
Sleeping
Sleeping
| """ | |
| TradeFlow AI — Admin Router | |
| """ | |
| from typing import Annotated, Any | |
| import structlog | |
| from fastapi import APIRouter, Depends | |
| from ..dependencies import CurrentUser, require_admin | |
| log = structlog.get_logger() | |
| router = APIRouter() | |
| async def get_analytics( | |
| user: Annotated[CurrentUser, Depends(require_admin)] | |
| ) -> dict[str, Any]: | |
| """Get platform analytics for admin dashboard.""" | |
| # Stub implementation | |
| return { | |
| "total_declarations": 150, | |
| "avg_crs": 82.5, | |
| "success_rate": 0.92, | |
| "avg_processing_time": 42.1 | |
| } | |
| async def trigger_retrain( | |
| user: Annotated[CurrentUser, Depends(require_admin)] | |
| ) -> dict[str, Any]: | |
| """Manually trigger XGBoost retraining.""" | |
| from ..tasks.learning_tasks import retrain_predictor | |
| retrain_predictor.apply_async(queue="low") | |
| return {"status": "enqueued"} | |