"""FastAPI application entrypoint.""" from fastapi import FastAPI from app.config import Settings, get_settings from app.controllers.v1.delivery import router as delivery_router from app.runtime.logging import configure_logging from app.runtime.metrics import configure_metrics from app.runtime.tracing import configure_tracing def create_app(settings: Settings | None = None) -> FastAPI: configure_logging() resolved_settings = settings or get_settings() configure_metrics(resolved_settings.observability) application = FastAPI(title="G2S Aggregator", version="0.1.0") application.state.settings = resolved_settings application.include_router(delivery_router, prefix=resolved_settings.controller.api_prefix) configure_tracing(application, resolved_settings.observability) return application app = create_app()