Contributing¶
- Fork and branch.
uv sync, thenuvx pre-commit installso ruff and mypy run before each commit.- Make the change with tests. Run
uv run pytest. - If you changed dependencies, run
uv lockand regenerate the exports (uv export --frozen --no-dev --no-emit-project [--extra ...] -o requirements*.txt); CI checks that they match. - Add a line to
CHANGELOG.mdunder Unreleased. Change notes belong there, not in code comments. - Open a pull request. CI runs lint, types (strict on the core), tests with a coverage gate, LoRA training on CPU, the lockfile check, pip-audit, gitleaks, CodeQL and a Docker build.
Docs live in docs/ as Markdown and build with uv run --group docs mkdocs serve. Every push to
main that touches them publishes the site to https://yog-sotho.github.io/Brainbrew/.