I am not going to be able to test this but the same as you I see the code in the examined hype file re generated.
So I would not think the bug lays in the hype oam.
The call works. The function runs.
And I would think arguments passed by many other hype apis work without issue.
The only thing that is not being picked up it appears is the arguments to and from confetti.
you could try
confetti.maxCount = 1000; //set max confetti count
Also just realised.
You have the timeouts set to 0. which means the animation should not even start.
Timeout here means STOP animation in number of milliseconds.
So somewhere in the confetti api there must be a min default on that option.
When I test with anything above zero the timeout kicks in as expected but with zero the animation just works from default as if there is no timeout.
This could be part of the problem although it does not explain why the number of particles change as expected but not in an oam export setup.
The min timeout should not be anything less than 300 from what I can see and that is in an extreme case.