- Fork the repository and clone your fork.
- Create a virtual environment and install dependencies:
python -m venv .venv
source .venv/bin/activate
pip install -e ".[dev,experiments]"- Run the test suite to make sure everything works:
pytest tests/ -x --tb=short- Create a feature branch from
main. - Make your changes with clear, descriptive commit messages.
- Add tests for new functionality.
- Run the linter and type checker:
ruff check src/ scripts/ tests/ examples/
mypy src/aac/- Run the full test suite before submitting.
- Open a pull request with a clear description of your changes.
- We use Ruff for linting and formatting.
- Line length: 100 characters.
- Type hints are expected for all public function signatures.
- Docstrings follow Google style (
Args:/Returns:/Raises:).
- Tests live in
tests/and usepytest. - Mark slow tests with
@pytest.mark.slow. - Mark GPU tests with
@pytest.mark.gpu. - Mark tests requiring network with
@pytest.mark.network.
Please use GitHub Issues to report bugs or request features. When reporting a bug, include:
- Python version and OS
- PyTorch version
- Minimal reproducible example
- Full error traceback