Publishing a page tree might take some time. If this is the case and you're quick enough to trigger an unpublication of the same page tree, you might get an exception because Magnolia tries to deactivate something that wasn't properly activated yet (tested with ee 5.2.7 and 5.3.2). We should check how to prevent running into this situation. e.g. introduce a kind of dependencies between asynchronously executed action (only start second when the first is indeed finished).
Solution of this problem needs public API changes.
Proposed solution: Node need to know if it is part of recursive activation (only sub nodes, not parent) and if yes, check activation status of node on author. If node on Author is deactivated we should quietly skip activation of this node, because we know over recursiveActivation correctly activated it (no exception and break of recursion) and somebody come after and deactivated it. For it you will need to change Syndicator interface.