For completeness I'm reporting this bug. I'm not going to say that this needs be fixed (certainly not with a high priority), but it's not correct, so I'm reporting it, as accurately as I can.
There are some triggered abilities that affect "each other player". They are:
when-gain: Embassy, Haunted Castle, Ill-Gotten Gains, Lost City
when-buy: Messenger, Noble Brigand
When you trigger those, you get to order them with any other ability that trigger at the same time. For instance if you buy Noble Brigand with an Embargo token on the pile, you decide which to do first.
Currently this seems to works correctly with Haunted Castle, Messenger and Noble Brigand, but not with the others. It's probably because when you resolve these three cards, you also have to do something. For the others (Embassy, Ill-Gotten Gains and Lost City), only the other players do something. But they should all work the same; you should be able to use Watchtower or Innovation etc. before or after the other players are affected. Currently you only get the option before.
So these abilities are probably designated in the client as only "belonging" to the other players and therefore are automatically resolved after "your" abilities. Every ability has to "belong" to one player though, in terms of figuring out the timing. (First the active player does all his abilities, ordering them, then the next player, etc.) I don't think it's possible with current cards that two of these abilities can trigger at the same time. If there were it would create a problem in the client, because there would be nobody to decide which to resolve first. For instance if you gain Embassy and also have a theoretical "While this is in play, when you gain a card, each other player gains a Curse". In this case it becomes obvious that the active player has to decide.