"""FastAPI 应用入口。""" from contextlib import asynccontextmanager from fastapi import FastAPI from fastapi.middleware.cors import CORSMiddleware from app.database import engine, Base from app.api import auth, users, audit, dashboard from app.middleware.audit import AuditMiddleware @asynccontextmanager async def lifespan(app: FastAPI): async with engine.begin() as conn: await conn.run_sync(Base.metadata.create_all) yield await engine.dispose() app = FastAPI( title="Hive Manage v3", version="0.1.0", lifespan=lifespan, ) app.add_middleware( CORSMiddleware, allow_origins=["*"], allow_credentials=True, allow_methods=["*"], allow_headers=["*"], ) app.add_middleware(AuditMiddleware) app.include_router(auth.router) app.include_router(users.router) app.include_router(audit.router) app.include_router(dashboard.router, prefix="/api/v1") @app.get("/api/v1/health") async def health_check(): return {"status": "ok"}