pip install -e ".[dev,nmr]"
pre-commit installmake testTests run with PYTHONPATH=src so imports resolve correctly.
- Linter/formatter: ruff (line-length 100)
- Lint rules: E, F, I, N, W, UP
- Type hints required on all public function signatures
- Pydantic for all data schemas
from __future__ import annotationsin every module
Run make lint to check and make format to auto-fix.
feat/-- new featuresfix/-- bug fixesdocs/-- documentation onlyrefactor/-- code restructuring, no behavior changetest/-- adding or updating tests
Use conventional commits:
feat(nmr): add temperature series processing
fix(orchestrator): handle timeout in parallel steps
test(plate-reader): add edge cases for empty wells
- One concern per PR -- do not bundle unrelated changes.
make lintandmake testmust pass.- Add or update tests for any behavior change.
- Fill out the PR template completely.
- Request review from
@labclaw/core-team.