Skip to content

Quality tooling

dpone quality tooling protects code, documentation, packaging, and runtime contracts.

Core commands

uv run ruff check .
uv run ruff format --check .
uv run mypy --config-file mypy.ini
uv run pytest -m "not integration_live"

Documentation checks

uv run pytest tests/test_docs_language_contracts.py -q
uv run --with mkdocs --with mkdocs-material --with pymdown-extensions mkdocs build --strict

Public MkDocs pages must be English-only and should use consistent link labels.

Import checks

uv run python tools/check_import_rules.py
uv run pytest tests/test_lazy_imports.py -q

Use these checks whenever adding optional dependencies or new connectors.

Generated metrics

uv run dpone docs update-dev-metrics --check
uv run dpone docs check-compatibility
uv run dpone docs check-import-rules
uv run dpone docs check-layer-metrics
uv run dpone docs check-architecture-fitness
uv run dpone docs check-module-size

Run without --check when intentionally refreshing generated sections.

check-module-size reports LOC and SLOC per Python module. Existing debt must be explicit in docs/module_size_baseline.json; new modules above the hard threshold fail CI. The current default warning threshold is 450 LOC and the hard failure threshold is 600 LOC.

Package checks

uv build
twine check dist/*

For release candidates, also run fresh virtual-environment smoke installs for base, selected extras, and dpone[full].