This repository uses GitHub Actions for continuous integration and deployment.
The CI pipeline consists of three jobs:
- Code Quality - Linting, formatting, and type checking
- Tests - Test execution with coverage reporting
- Security - Security scanning with Bandit and pip-audit
Configure these status checks in branch protection rules:
quality(Code Quality)test(Tests)security(Security Scan)
- Go to Repository Settings → Branches
- Add rule for
mainbranch with:- ✅ Require pull request before merging
- ✅ Require approvals (1 or more)
- ✅ Require status checks to pass
- ✅ Require branches to be up to date
- ✅ Include administrators
Install pre-commit hooks:
uv sync --extra dev
pre-commit install- Ruff - Linting and formatting
- MyPy - Type checking
- Pytest - Testing with coverage
- Bandit - Security scanning
- pip-audit - Dependency vulnerability scanning