pub fn decode_message<T: for<'de> Deserialize<'de>>( buf: &[u8], ) -> Result<Option<(T, usize)>>
Decode a length-prefixed message from a buffer Returns (message, bytes_consumed) or None if incomplete