[build-system] requires = ["setuptools>=68", "wheel"] build-backend = "setuptools.build_meta" [project] name = "deltallm-core-api" version = "0.1.0" description = "DeltaLLM Phase 1 core proxy API" readme = "README.md" requires-python = ">=3.11" dependencies = [ "fastapi>=0.133,<1.0", "starlette>=1.3.1,<2.0", "uvicorn[standard]==0.40.0", "pydantic>=2.5,<3.0", "pydantic-settings>=2.1,<3.0", "PyYAML>=6.0,<7.0", "httpx>=0.26,<1.0", "httpcore2[asyncio,socks]==2.13.1", "sniffio==1.3.1", "websockets>=16,<17", "redis>=5.0,<6.0", "boto3>=1.35,<2.0", "prisma>=0.12,<1.0", "asyncpg>=0.30,<1.0", "prometheus-client>=0.20,<1.0", "PyJWT[crypto]>=2.15,<3.0", "cryptography>=50.0.2,<51", "python-multipart>=0.0.31,<1.0", ] [project.optional-dependencies] dev = [ "pytest>=7.4,<9.0", "pytest-asyncio>=0.23,<1.0", "pytest-xdist>=3.8,<4.0", "ruff>=0.2,<1.0", ] docs = [ "mkdocs>=1.6,<2.0", "mkdocs-material>=9.5,<10.0", "pymdown-extensions>=10.0,<11.0", ] batch-s3 = [ "boto3>=1.35,<2.0", ] guardrails-presidio = [ "tldextract==5.3.1", "presidio-analyzer==2.2.362", "presidio-anonymizer==2.2.362", "en-core-web-lg @ https://github.com/explosion/spacy-models/releases/download/en_core_web_lg-3.8.0/en_core_web_lg-3.8.0-py3-none-any.whl#sha256=293e9547a655b25499198ab15a525b05b9407a75f10255e405e8c3854329ab63", ] [tool.pytest.ini_options] addopts = ["--strict-markers"] asyncio_mode = "auto" testpaths = ["tests"] markers = [ "hermetic: uses only in-process code, fakes, and temporary files", "app: exercises the in-process FastAPI application with fake dependencies", "postgres: requires a real PostgreSQL database and generated Prisma client", "redis: requires a real Redis server", "helm: requires the Helm CLI and chart dependencies", "integration: exercises a real local infrastructure dependency when available", ] [tool.ruff] line-length = 100 target-version = "py311" [tool.setuptools] package-dir = {"" = "."} [tool.setuptools.packages.find] include = ["src*"] [tool.setuptools.package-data] "src.providers.catalogs" = ["*.json"] "src.migration_recovery" = ["*.sql"]