from fastapi import FastAPI from core_shared.observability import add_observability from core_shared.security import add_internal_service_auth from app.api.routes import router from app.bootstrap.settings import EventServiceSettings from app.db.session import build_session_factory def create_app() -> FastAPI: settings = EventServiceSettings() app = FastAPI( title="agent-platform event-service", version="0.1.0", ) app.state.settings = settings app.state.session_factory = build_session_factory(settings) add_observability(app, settings.service_name) add_internal_service_auth(app, settings) app.include_router(router, prefix="/events", tags=["events"]) return app