"isn't the FSM supposed to manage that stuff" - it does manage it (we don't change the state or any properties of the FSM), but I think you mean shouldn't the FSM be responsible for firing the callback?  If so, then you could (not you should, I mean for discussion) add a new method on the FSM in the various states that allow you to pass in the `req` object so that when the game is ready (or in a playing-type state) then it sends the response back to the client.