We can define a format for a lock file that conforms to the constraints outlined here, and teach `go get` to interact with it.
So you want to write a package manager
sam boyer
18128
One lock file format that `go get` already knows how to speak is git submodules (support introduced in 1.5, fixed in 1.6). I’m not sure that it’s a workable solution, but might be worth looking into.