Files
telemetry-client-py/pyproject.toml
Jason Woltje 883fd4d60f
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
docs(#1): SDK integration guide, API reference, and CI pipeline
- Rewrite README with quick start, FastAPI snippet, async/sync patterns,
  config reference with env vars, and API version targeting (v1, schema 1.0)
- Add docs/integration-guide.md with full FastAPI and generic Python
  integration examples, environment-specific config, prediction queries,
  error handling, and dry-run mode documentation
- Add docs/api-reference.md covering all exported classes, methods, Pydantic
  models, enums (TaskType, Complexity, Harness, Provider, QualityGate,
  Outcome, RepoSizeCategory), and internal components
- Add Woodpecker CI pipeline (.woodpecker.yml) with quality gates: lint,
  format check, typecheck, bandit security scan, pip-audit, and pytest
  with 85% coverage gate
- Add bandit and pip-audit to dev dependencies

Fixes #1

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 22:39:19 -06:00

52 lines
1.1 KiB
TOML

[project]
name = "mosaicstack-telemetry"
version = "0.1.0"
description = "Python client SDK for Mosaic Stack Telemetry"
requires-python = ">=3.10"
license = "MPL-2.0"
dependencies = [
"httpx>=0.25.0",
"pydantic>=2.5.0",
]
[project.optional-dependencies]
dev = [
"pytest>=8.0",
"pytest-cov>=5.0",
"pytest-asyncio>=0.24",
"ruff>=0.14.0",
"mypy>=1.15",
"respx>=0.21.0",
"bandit>=1.8.0",
"pip-audit>=2.7.0",
]
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[tool.hatch.build.targets.wheel]
packages = ["src/mosaicstack_telemetry"]
[tool.pytest.ini_options]
testpaths = ["tests"]
asyncio_mode = "auto"
addopts = "--cov=src/mosaicstack_telemetry --cov-report=term-missing --cov-fail-under=85"
[tool.ruff]
line-length = 100
target-version = "py310"
src = ["src", "tests"]
[tool.ruff.lint]
select = ["E", "F", "I", "N", "W", "B", "UP", "S", "A", "C4", "DTZ", "T20", "RUF"]
[tool.ruff.lint.per-file-ignores]
"tests/**" = ["S101"]
[tool.mypy]
python_version = "3.10"
strict = true
plugins = ["pydantic.mypy"]
mypy_path = "src"