I don't personally think multi-device will ever be solved in a satisfactory way in XMPP. Like IRC, the whole architecture is fundamentally based on relaying messages. This works great for desktop computers, but as you add more devices with more intermittent connectivity, it breaks down quickly as you need to resort to hacks like sending deltas to other devices as carbon copies, which may or may not be delivered or interpreted correctly by clients. To solve it you need to fundamentally rethink your protocol not as one that relays messages, but synchronizes history. This is extremely hard to do without breaking backwards compatibility as you basically need to rearchitect every part of the stack. Matrix is a notable open messaging standard that does this and although it has it's flaws, multi-device experience is not one of them.
I'd definitely welcome XMPP making improvements in this area, but I'm not personally optimistic it can be done in time considering the generally dwindling userbase.