> we have to take the CUDA version into account as well somehow...

The version of the toolchain SHOULD/MUST correspond to and confine  specific subcomponents versions.
IMHO, this is no different than the OpenMPI-version vs goalf-1.1.0 business: promote version numbers.

If we don't hold on this fine line we run the risk of having builds with the same name
that actually behave differently because they are technically different builds.

I suspect we might find ourselves using the "slack" in the numbering scheme for entirely different purposes though :-)