Minimum version selection happens when the go.mod file is updated, so it contains the minimum versions already.
It doesn't happen only later at build time.
For example:
- `go get [email protected]` => Your go.mod contains `x v1.0.0`
- `go get [email protected]` with y having x v1.0.1 as dep => Your go.mod is already updated with the resolved minimum selected version: `x v1.0.1`
This requires using Go commands to manage the go.mod file. If you edit it in a text editor then a final `go mod tidy` will help.