Python code is linted and formatted with Ruff through the pre-commit hooks in {repo}.pre-commit-config.yaml:
pre-commit run --files <modified files>Ruff runs with its default rule set; there is no pyproject.toml or ruff.toml that overrides it.
- Dashboard dependencies live in {repo}
dashboard/environment.yml. - ML dependencies live in {repo}
ml/environment.yml. - Regenerate the corresponding
environment-lock.ymlafter dependency changes.
Create the documentation conda environment once, from {repo-dir}docs/, using {repo}docs.yml <docs/docs.yml>:
conda env create -f docs.ymlBuild the documentation locally with:
conda activate synapse-docs
cd docs
make htmlThe generated HTML is written to docs/build/html/.
The project does not have a full pytest suite.
The main integration check is {repo}tests/test_ml_pipeline.py:
python tests/test_ml_pipeline.pyIt requires a local MLflow server.
- Dashboard features use manager classes in
dashboard/*_manager.py. - Experiment-specific behavior belongs under
experiments/synapse-*. - Shared dashboard helpers live in {repo}
dashboard/utils.py.