>TL;DR: autojoin only means whether to join automatically on login, it's not
>for tracking/controlling which MUCs you're currently in; "I don't want to
>join automatically" is not equivalent to "I want to leave now."
I completely agree that the decision of what to do wrt join/leave should be
up to the client and not part of the XEP at all. However the XEP already
had language like "On the other hand, if the event is a retract
notification, the client SHOULD leave the room immediately." and so this led
to specifying an inconsistent UX (as opposed to not specifying UX at all,
which would be preferred).
I think the solution in practise will be to ignore the SHOULD in clients
that know what they are doing.
That sounds awfully like a MAY. SHOULD is "MUST unless you know what you're doing, and you probably don't".
I'm also unconvinced that specifying whether clients leave chatrooms or not when things happen is "UX" - it's client behaviour, and that seems entirely within the remit of a XEP. It might *also* have an effect on user experience, too, but that's OK, as many things we do have an effect on UX. We assume, for example, that if you send a message to a client it'll be visible to the user sitting in front of it - that, too is UX. We don't specify how that might occur.
Dave.