- pytest-html for HTML test reports
- coverage HTML report
- 90% coverage threshold check
- Upload test results and coverage as artifacts
- Artifacts available in PR for review
- PR workflow: full tests with dev dependencies (pytest, ruff, pip-audit)
- Release workflow: production-only build for main and tags
- Use upload-artifact@v3 for Gitea compatibility
- Separate docs deployment for main branch
- Faster CI by avoiding dev deps in production builds