Outcome
Create a small, explicit package surface with reproducible quality gates.
Acceptance criteria
- Move maintained code to
src/gpn in a mechanical layer.
- Finish dependency boundaries for base, data, inference, training, docs, and development; no analysis/dataset-building dependencies in the root project.
- Remove deprecated GPN-MSA training dependencies and obsolete/import-side-effect paths.
- Add stable
gpn CLI entry points while retaining inexpensive old python -m shims for one release.
- Add Ruff formatting/lint, pre-commit, built-wheel tests, and incremental mypy.
- Adopt jaxtyping incrementally on public/high-risk array APIs with runtime checks in tests/development.
- Keep Python 3.11 and 3.13 CI fast and offline.
- Add root
AGENTS.md, contribution guidance, changelog/release guidance, and dependency-placement rules.
- Ensure importing
gpn never downloads a model or accesses the network.
Outcome
Create a small, explicit package surface with reproducible quality gates.
Acceptance criteria
src/gpnin a mechanical layer.gpnCLI entry points while retaining inexpensive oldpython -mshims for one release.AGENTS.md, contribution guidance, changelog/release guidance, and dependency-placement rules.gpnnever downloads a model or accesses the network.