[build-system] requires = ["setuptools>=45", "wheel"] build-backend = "setuptools.build_meta" [project] name = "openenv-counterfeint" version = "0.1.0" description = "CounterFeint — Ad Fraud Investigation Environment for OpenEnv. Real-world ad fraud detection and investigation simulation." requires-python = ">=3.11" dependencies = [ "openenv-core[core]>=0.2.3", "fastapi>=0.115.0", "pydantic>=2.0.0", "uvicorn[standard]>=0.24.0", "websockets>=13.0", "requests>=2.31.0", "faker==33.1.0", "networkx>=3.2", "openai>=1.0.0", "python-dotenv>=1.0.0", ] [project.optional-dependencies] dev = [ "pytest>=8.0.0", "pytest-cov>=4.0.0", "pytest-asyncio>=0.23.0", # matplotlib is dev-only — used by counterfeint.eval_suite to render # eval_plot.png for the README. Keeping it out of runtime deps keeps # the Docker image slim (~30MB saved). "matplotlib>=3.8.0", ] [project.scripts] server = "counterfeint.server.app:main" [tool.setuptools] include-package-data = true packages = [ "counterfeint", "counterfeint.server", "counterfeint.data", "counterfeint.graders", "counterfeint.scripted", "counterfeint.agents", ] [tool.setuptools.package-dir] "counterfeint" = "." "counterfeint.server" = "server" "counterfeint.data" = "data" "counterfeint.graders" = "graders" "counterfeint.scripted" = "scripted" "counterfeint.agents" = "agents" [tool.setuptools.package-data] "counterfeint.data" = ["real_world_test_set.json"] "counterfeint.server" = [ "static/*.html", "static/*.css", "static/*.js", "static/*.svg", "static/*.png", "static/*.ico", ]