Just out of the #triggerComplete code:
- when async action completes (drumroll) async, we send the pulse message from system-context (user's context is already gone)
- on 5.3.x *only*, we call messagesManager.sendLocalMessage(msg), which internally calls MgnlContext.getUser()... on sys-ctx
It should be trivial to remember the user, just like we do on master (in DefaultAsyncActionExecutor since the 5.4.1 refactoring), and pass it along.
- Let's confirm this suspicion
- See first raw patch at: https://gist.github.com/mkgl/05e30173624e11e9ee34
I haven't tested it, but yes it does deserve a test-case; might be worth writing it off master's DefaultAsyncActionExecutorTest first, and then backport it into 5.3's AbstractCommandActionTest.