NATO has been remarkably incurious about it. Which indicates it may well have originated in Ukrainian-controlled territory. But who knows for sure?
Did anyone intentionally target Zagreb? Or was it just an old relic some guys decided to fire off and it went haywire? Weird thing happen in wars. People do strange things. This may well be the case. Anyway, whatever it was, whoever launched the thing, it was pretty much a nothing burger no one cares about.
The Croats were rightly horrified that it flew such a distance over two other NATO countries for such a long time with no response or even warning from NATO.
No doubt that it was fired by the Ukrainians. They also started to scream “Russian attack on Europe” over it.