Use Python 3.11 for local tests:
python -m venv .venv
source .venv/bin/activate
python -m pip install -r requirements.txt ".[test]"
python -m pytestTests must use generated fixtures. Do not commit robot recordings, datasets, checkpoints, or other user data.
- Keep dataset conversion and training changes independently testable.
- Add a regression test for bug fixes.
- Preserve the
/data/input,/data/output, checkpoint, and manifest contracts unless the change is explicitly documented as breaking. - Run all tests and at least one Docker build before requesting review.
Runtime dependencies are pinned in requirements.txt. Update them deliberately
and run pip check in every CUDA image.
The supported build matrix is defined in
.github/workflows/docker.yml. A CUDA variant must use an official,
digest-pinned PyTorch runtime image and pass the same test and import checks as
the other variants. cuda remains an alias for cuda121.
ACT is pinned by ACT_GIT_REF in Dockerfile. To update it:
- Review upstream changes between the old and new commits.
- Rebase
src/act_overrides/detr/models/detr_vae.py. - Update the commit in
DockerfileandTHIRD_PARTY_NOTICES.md. - Build all CUDA variants and run a GPU smoke training.
Do not point published images at a mutable upstream branch.
Pushes to main publish the floating CUDA tags. A Git tag matching
vMAJOR.MINOR.PATCH publishes versioned tags such as
MAJOR.MINOR.PATCH-cuda121. Docker Hub credentials are provided through the
DOCKERHUB_USERNAME and DOCKERHUB_TOKEN repository secrets.