pub fn decode_message_id(bytes: &[u8; 32]) -> String
Decode 32 bytes back to an ID string, handling pending IDs specially.