Pre-commit hooks are required:
pre-commit run --all-filesChecks include:
- formatting (
end-of-file-fixer) - YAML validation
- large file prevention
- linting (
ruff) - type checking (
mypy)
All checks must pass before submitting changes.
Run tests with:
pytestUse clear, structured messages:
Add: ...Fix: ...Test: ...
Use the imperative form and keep messages concise.
- Work on a separate branch
- Keep changes focused
- Ensure tests and pre-commit checks pass
- Provide a clear description of the change
Document user-visible changes in CHANGELOG.md under the appropriate version.
- Do not add personal or machine-specific files to
.gitignore - Use
.git/info/excludefor local files - Do not commit data, caches, or temporary files