Very useful! I am surprised Agendas are not more commonplace in game frameworks. I, similarly, made an “Actions” library in PixiJS which amounts to the same thing.
With an auto-battler this is less relevant, but for “normal” Hearthstone, I really like how the effects are calculated immediately, it’s just the animation which is queued up (as evidenced by cards losing or gaining a green border as soon as they would be playable, regardless of if the animation has shown you the current game state yet).