StreamJsonRpc is supposed to be an implementation detail of the .NET implementation. But its use is surfacing via StreamJsonRpc.RemoteInvocationException exceptions that emerge, and these are being documented and tested as part of its contract. Such exceptions should be caught and replaced either by an IOException, or if it's really important to call these out as JSON-RPC issues, a custom GH copilot exception type that surfaces the relevant information.
cc: @SteveSandersonMS