# rpc error: code = Internal desc = grpc: error unmarshalling response: proto: cannot parse invalid wire-format data

- **ID:** `go/grpc-malformed-response`
- **Domain:** go
- **Category:** data_error
- **Verification:** ai_generated
- **Fix Rate:** 80%

## Root Cause

The server sent a response that is not a valid protobuf message, possibly due to a bug in the server's serialization or a corrupted network stream.

## Version Compatibility

| Version | Status | Introduced | Deprecated |
|---------|--------|------------|------------|
| 1.13 | active | — | — |

## Workarounds

1. **Check the server's protobuf version and regenerate code** (85% success)
   ```
   protoc --go_out=. --go-grpc_out=. your.proto
   ```
2. **Enable gRPC max receive message size on the client** (80% success)
   ```
   grpc.WithDefaultCallOptions(grpc.MaxCallRecvMsgSize(10*1024*1024))
   ```

## Dead Ends

- **Ignore the error and retry with the same request** — If the server has a bug, it will likely produce the same malformed response. (70% fail)
- **Use a different protobuf library** — The wire format is standard; the issue is likely in the server's generation. (40% fail)
