pyproject.toml 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. [project]
  2. name = "script-build-host"
  3. version = "0.1.0"
  4. description = "Script build business host backed by the generic cyber-agent orchestration framework"
  5. requires-python = ">=3.11"
  6. dependencies = [
  7. "alembic>=1.13",
  8. "asyncmy>=0.2.9",
  9. "cyber-agent",
  10. "fastapi>=0.115",
  11. "httpx>=0.28",
  12. "numpy>=1.26",
  13. "pydantic-settings>=2.6",
  14. "sqlalchemy[asyncio]>=2.0.36",
  15. "uvicorn>=0.35",
  16. ]
  17. [project.scripts]
  18. script-build-host = "script_build_host.cli:main"
  19. script-build-rebuild-decode-index = "script_build_host.infrastructure.decode_index_builder:main"
  20. script-build-real-e2e = "script_build_host.internal_e2e:main"
  21. [project.optional-dependencies]
  22. dev = [
  23. "aiosqlite>=0.20",
  24. "mypy>=1.13",
  25. "pytest>=8.3",
  26. "pytest-asyncio>=0.24",
  27. "ruff>=0.8",
  28. ]
  29. [build-system]
  30. requires = ["setuptools>=75"]
  31. build-backend = "setuptools.build_meta"
  32. [tool.setuptools.packages.find]
  33. where = ["src"]
  34. [tool.setuptools.package-data]
  35. "script_build_host.agents.prompts" = ["*.md"]
  36. [tool.uv.sources]
  37. cyber-agent = { path = "../agent", editable = true }
  38. [tool.pytest.ini_options]
  39. asyncio_mode = "auto"
  40. testpaths = ["tests"]
  41. markers = ["mysql: requires an explicit SCRIPT_BUILD_TEST_MYSQL_DSN"]
  42. [tool.ruff]
  43. line-length = 100
  44. target-version = "py311"
  45. [tool.ruff.lint]
  46. select = ["E", "F", "I", "UP", "B", "ASYNC", "RUF"]
  47. [tool.mypy]
  48. python_version = "3.11"
  49. strict = true
  50. packages = ["script_build_host"]
  51. [[tool.mypy.overrides]]
  52. module = ["agent", "agent.*"]
  53. follow_imports = "skip"
  54. ignore_missing_imports = true