Hey Patrick Varley,
The Go SDK is actually made up of two somewhat independently developed projects, gocbcore which implements all of the connection, protocol and configuration management, as well as gocb on top which provides a more sane API for developers to use. The version which is reported to the server is the gocbcore version (as this is the one which would actually impact the behaviour of the client). Note that the reason we cannot send the gocb version is that there is no way to map a specific gocb version to a specific gocbcore version due to how Go's package management works. For instance, if you checked out gocb last month, you would get gocb.v1.3.0 and gocbcore v7.0.4. However, doing the exact same installation today would yield instead gocb.v1.3.0 and gocbcore v7.0.5. Note that the gocb version hasn't been updated, but gocbcore underneath has been.