Thanks for contributing to veritail.
- Open an issue first for large feature work or behavior changes.
- Use a feature branch for all changes; do not work directly on
main. - Keep pull requests focused and scoped to a single problem.
git clone https://github.com/asarnaout/veritail.git
cd veritail
pip install -e ".[dev,cloud]"Python 3.9+ is required.
Create a feature branch from an up-to-date main:
git checkout main
git pull origin main
git checkout -b feature/short-descriptionCommit frequently in small, logical chunks:
git add <files>
git commit -m "Short description of change"Push your feature branch and open a PR to main:
git push -u origin feature/short-descriptionIf main has moved while you are working, re-sync before final review:
git fetch origin
git rebase origin/main
git push --force-with-leaseRun these before opening a pull request:
pytest
ruff check src tests
mypy src- Add or update tests for any behavior change.
- Keep type annotations and
mypystrict-mode compatibility. - Reuse existing patterns in
src/veritail/and avoid unrelated refactors.
Update docs when you change user-facing behavior:
README.mdfor quick-start or CLI examplesdocs/cli-reference.mdfor flags and command behaviorCHANGELOG.mdfor notable updates (when applicable)
- Branch created from
mainand PR targetsmain - Small, frequent commits with clear commit messages
- Tests added/updated and passing locally
-
ruff,mypy, andpytestpass - Documentation updated for any user-visible change
- No generated outputs committed (
eval-results/, local scratch files)