apps/web/src/components/PageComponents/Messages/ChannelChat.tsx:149 sets the React key to message.messageId ?? \${message.from}-${message.date}``. Two messages from the same sender within the same second (or same missing messageId) produce identical keys, which React handles by reordering/dropping DOM nodes — visible as duplicated or vanishing messages.
Include a discriminator (index, hash of content) in the fallback, or require a stable messageId upstream.
apps/web/src/components/PageComponents/Messages/ChannelChat.tsx:149sets the Reactkeytomessage.messageId ?? \${message.from}-${message.date}``. Two messages from the same sender within the same second (or same missing messageId) produce identical keys, which React handles by reordering/dropping DOM nodes — visible as duplicated or vanishing messages.Include a discriminator (index, hash of content) in the fallback, or require a stable messageId upstream.