- Install uv and, from the repository root, run
uv sync --extra devso Python 3.12, dependencies frompyproject.toml/uv.lock, andpytestlive in.venv. - Run tools and tests with
uv run …(for exampleuv run pytest,uv run ohm --help) so you do not accidentally use a global interpreter whose packages drift from the lockfile. - Optional:
uv sync --extra docsfor MkDocs;uv sync --all-extrasif you need every optional group.
- Unit tests required for all new features
- Integration tests for API endpoints
- End-to-end tests for complete workflows
- Use pytest fixtures for common test setups
- Mock external services appropriately
- Create feature branch
- Write tests
- Implement features
- Run test suite
- Submit PR with description
- Address review comments
- Update relevant documentation with code changes
- Include docstrings for public interfaces
- Maintain example usage in docs
- Update API documentation when endpoints change