Spaces:
Paused
Paused
File size: 9,638 Bytes
4a2ab42 caf23fd 4a2ab42 caf23fd 4a2ab42 caf23fd 4a2ab42 caf23fd 4a2ab42 caf23fd 4a2ab42 caf23fd 4a2ab42 caf23fd 4a2ab42 caf23fd 4a2ab42 caf23fd 4a2ab42 caf23fd 4a2ab42 caf23fd 4a2ab42 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 | from datetime import datetime
from app.routers.agents import router as agents_router
from fastapi import FastAPI
from app.constants import API_VERSION
from app.modules.admin.router import router as admin_router
from app.routers import advanced_ai
from app.routers.ai import router as ai_router
from app.routers.ai_voice import router as ai_voice_router
from app.routers.analytics import router as analytics_router
from app.routers.apm import router as apm_router
from app.routers.audit import router as audit_router
from app.routers.auth import router as auth_router
from app.routers.auth_biometric import router as auth_biometric_router
from app.routers.auth_social import router as auth_social_router
from app.routers.backup import router as backup_router
from app.routers.cases import router as cases_router
from app.routers.collaboration import router as collaboration_router
from app.routers.compliance import router as compliance_router
from app.routers.cost_optimization import router as cost_optimization_router
from app.routers.csrf import router as csrf_router
from app.routers.entities import (
relationships_router as relationships_router_from_entities,
)
from app.routers.entities import router as entities_router
from app.routers.evidence import router as evidence_router
from app.routers.feature_flags import router as feature_flags_router
from app.routers.forensic_intelligence import router as forensic_intel_router
from app.routers.fraud import router as fraud_router
from app.routers.fraud_rules import router as fraud_rules_router
from app.routers.graph import router as graph_router
from app.routers.graph import shim_router as graph_shim_router
from app.routers.health import router as health_router
from app.routers.logging import router as logging_router
from app.routers.metadata import router as metadata_router
from app.routers.monitoring import router as monitoring_router
from app.routers.multimodal import router as multimodal_router
from app.routers.notifications import router as notifications_router
from app.routers.onboarding import router as onboarding_router
from app.routers.proof import router as proof_router
from app.routers.realtime_sync import router as realtime_sync_router
from app.routers.reconciliation import router as reconciliation_router
from app.routers.regulatory_rag import router as regulatory_rag_router
from app.routers.reporting import router as reporting_router
from app.routers.search import router as search_router
from app.routers.self_healing import router as self_healing_router
from app.routers.semantic_search import router as semantic_search_router
from app.routers.stats import router as stats_router
# System specific router
from app.routers.system_routes import router as system_router
from app.routers.time_travel import router as time_travel_router
from app.routers.users import router as users_router
from app.routers.xai import router as xai_router
from core.logging import logger
def setup_routers(app: FastAPI):
# Health Check Endpoints (Moved to app.routers.health)
app.include_router(health_router)
# System routes (metrics, dashboard, index)
app.include_router(system_router)
app.include_router(feature_flags_router, prefix=f"/api/{API_VERSION}/feature-flags", tags=["Feature Flags"])
# Standard Routers
app.include_router(auth_router, prefix=f"/api/{API_VERSION}/auth", tags=["Authentication"])
app.include_router(search_router, prefix=f"/api/{API_VERSION}/search", tags=["Search"])
app.include_router(admin_router, prefix=f"/api/{API_VERSION}/admin", tags=["Admin"])
app.include_router(users_router, prefix=f"/api/{API_VERSION}/users", tags=["Users"])
app.include_router(analytics_router, prefix=f"/api/{API_VERSION}/analytics", tags=["Analytics"])
app.include_router(reporting_router, prefix=f"/api/{API_VERSION}/reports", tags=["Reporting"])
app.include_router(cases_router, prefix=f"/api/{API_VERSION}/cases", tags=["Cases"])
app.include_router(audit_router, prefix=f"/api/{API_VERSION}/audit", tags=["Audit"])
app.include_router(
cost_optimization_router,
prefix=f"/api/{API_VERSION}/cost-optimization",
tags=["Cost Optimization"],
)
app.include_router(evidence_router, prefix=f"/api/{API_VERSION}/evidence", tags=["Evidence"])
app.include_router(fraud_router, prefix=f"/api/{API_VERSION}/fraud", tags=["Fraud"])
app.include_router(compliance_router, prefix=f"/api/{API_VERSION}/compliance", tags=["Compliance"])
app.include_router(agents_router, prefix=f"/api/{API_VERSION}/agents", tags=["Agents"])
# AI & Intelligence
app.include_router(ai_router, prefix=f"/api/{API_VERSION}/ai", tags=["AI Intelligence"])
app.include_router(
advanced_ai.router,
prefix=f"/api/{API_VERSION}/advanced_ai",
tags=["Advanced AI"],
)
# Additional Routers
app.include_router(multimodal_router, prefix=f"/api/{API_VERSION}/multimodal", tags=["Multimodal"])
# DEPRECATED: Semantic search router - will be removed Feb 1, 2026
# Keep active until removal deadline to allow graceful migration
removal_deadline = datetime(2026, 2, 1)
if datetime.now() < removal_deadline:
app.include_router(
semantic_search_router,
prefix=f"/api/{API_VERSION}/semantic_search",
tags=["Semantic Search (DEPRECATED)"],
)
else:
logger.warning("Semantic search router removal deadline reached - endpoints disabled")
app.include_router(logging_router, prefix=f"/api/{API_VERSION}/logging", tags=["Logging"])
app.include_router(monitoring_router, prefix=f"/api/{API_VERSION}/monitoring", tags=["Monitoring"])
app.include_router(apm_router, prefix=f"/api/{API_VERSION}/apm", tags=["APM"])
app.include_router(graph_router, prefix=f"/api/{API_VERSION}/graph", tags=["Graph"])
app.include_router(realtime_sync_router, prefix=f"/api/{API_VERSION}/sync", tags=["Realtime Sync"])
app.include_router(
notifications_router,
prefix=f"/api/{API_VERSION}/notifications",
tags=["Notifications"],
)
app.include_router(backup_router, prefix=f"/api/{API_VERSION}/backup", tags=["Backup"])
app.include_router(fraud_rules_router, prefix=f"/api/{API_VERSION}/rules", tags=["Fraud Rules"])
app.include_router(
collaboration_router,
prefix=f"/api/{API_VERSION}/collaboration",
tags=["Collaboration"],
)
app.include_router(stats_router, prefix=f"/api/{API_VERSION}/stats", tags=["Stats"])
app.include_router(
reconciliation_router,
prefix=f"/api/{API_VERSION}/reconciliation",
tags=["Reconciliation"],
)
app.include_router(onboarding_router, prefix=f"/api/{API_VERSION}/onboarding", tags=["Onboarding"])
app.include_router(metadata_router, prefix=f"/api/{API_VERSION}/metadata", tags=["Metadata"])
app.include_router(proof_router, prefix=f"/api/{API_VERSION}/proof", tags=["Proof"])
app.include_router(
forensic_intel_router,
prefix=f"/api/{API_VERSION}/forensic-intel",
tags=["Forensic Intelligence"],
)
app.include_router(entities_router, prefix=f"/api/{API_VERSION}/entities", tags=["Entities"])
app.include_router(csrf_router, prefix=f"/api/{API_VERSION}", tags=["Security"])
# Roadmap to 10/10 Routers
app.include_router(
time_travel_router,
prefix=f"/api/{API_VERSION}/cases",
tags=["Time Travel (Roadmap)"],
)
app.include_router(ai_voice_router, prefix=f"/api/{API_VERSION}/ai", tags=["AI Voice (Roadmap)"])
# New Roadmap Routers (Completed)
app.include_router(xai_router, prefix=f"/api/{API_VERSION}")
app.include_router(regulatory_rag_router, prefix=f"/api/{API_VERSION}")
app.include_router(auth_biometric_router, prefix=f"/api/{API_VERSION}")
app.include_router(auth_social_router, prefix=f"/api/{API_VERSION}")
app.include_router(self_healing_router, prefix=f"/api/{API_VERSION}")
app.include_router(graph_shim_router, prefix=f"/api/{API_VERSION}")
app.include_router(
relationships_router_from_entities,
prefix=f"/api/{API_VERSION}/relationships",
tags=["Relationships"],
)
# Optional Routers
try:
from app.routers.projects import router as projects_router
app.include_router(projects_router, prefix=f"/api/{API_VERSION}/projects", tags=["Projects"])
except ImportError as e:
logger.warning(f"Failed to import projects router: {e}")
try:
from app.routers.alerts import router as alerts_router
app.include_router(alerts_router, prefix=f"/api/{API_VERSION}/alerts", tags=["Alerts"])
except ImportError as e:
logger.warning(f"Failed to import alerts router: {e}")
try:
from app.routers.metrics import router as metrics_router
app.include_router(metrics_router, tags=["Metrics"])
except ImportError:
pass
try:
from app.routers.streaming import router as streaming_router
app.include_router(streaming_router, prefix=f"/api/{API_VERSION}", tags=["Streaming"])
except ImportError:
pass
try:
from app.routers.websocket import router as websocket_router
app.include_router(websocket_router, tags=["WebSocket"])
except ImportError:
pass
try:
from app.routers.diagnostics import router as diagnostics_router
app.include_router(
diagnostics_router,
prefix=f"/api/{API_VERSION}/diagnostics",
tags=["Diagnostics"],
)
except ImportError:
pass
|