An issue exists where unauthenticated attackers can cause server memory exhaustion by sending a compressed Erlang external term within a gRPC message body. The `GRPC.Codec.Erlpack.decode/2` function passes the message body to `:erlang.binary to term/2`, which inflates compressed terms fully without a size limit. Because the server's `max body size` limit only tracks compressed bytes, a request using `Content-Type: application/grpc+erlpack` can force the server to allocate memory significantly larger than the actual request body. This occurs because the codec's type checks are only performed after the term has been decoded.