WrapTransient wraps transient errors (possibly status.Status) with
appropriate codes.Code. The returned error will always be a status.Status
with description set to msg.
WrapTransientCaller wraps transient errors with an appropriate codes.Code and caller.
The returned error will always be a status.Status with description set to msg.