#630 (comment)
e.g. if an RPC protocol sets Path to /service/foo/operation/bar, it doesn't set RawPath because in that protocol it's unambiguous and doesn't need to. The post-resolution logic that handles path joining will go through http.JoinPath which will incorrectly implicitly turn RawPath into /. This is technically a misuse of RawPath since they don't correspond anymore, but the http client just ignores RawPath in this case.
We should probably just gate the RawPath join behind a length check.
#630 (comment)
e.g. if an RPC protocol sets Path to /service/foo/operation/bar, it doesn't set RawPath because in that protocol it's unambiguous and doesn't need to. The post-resolution logic that handles path joining will go through http.JoinPath which will incorrectly implicitly turn RawPath into /. This is technically a misuse of RawPath since they don't correspond anymore, but the http client just ignores RawPath in this case.
We should probably just gate the RawPath join behind a length check.