Contributing
Setup
git clone https://github.com/mii-llm/palingenesis.git && cd palingenesis
uv pip install -e ".[all]" --group dev
Tests
pytest tests/ # all 87 tests
pytest tests/ -x # stop on first failure
pytest tests/test_integration.py -v # verbose single file
black --line-length 120 src/ tests/
Docs
pip install mkdocs-material
mkdocs serve # → http://localhost:8000
Pull requests
- Fork, branch from
main
- Write tests for new features (see
tests/ for patterns)
- Run
pytest and black before pushing
- Keep PRs focused — one feature or fix per PR
- Reference the relevant paper (arxiv ID) in code comments
Architecture rules
- No circular imports. Dependency flows downward (see architecture overview).
- Every optimization cites its paper in a comment block.
- Absolute imports only (
from palingenesis.config import Config, never from .config).
- New config fields go in the typed dataclass in
config.py with a comment explaining the default.