Hmm. I haven’t worked with that sort of thing in a long time, so this could all be completely wrong!
But my guess would be that when the itemgroup is spawning the item, it’s spawning it using “charges-min” and “charges-max”, so depending on the amount of ammunition it’s then assigning a magazine based on that.
How to fix it? You’d probably have to change the itemgroups to only use a range of ammunition that would fit in the magazine you want to spawn, and set up others for the different clips.
Alternatively, I know you can use “contents-item” to specify storage for clips in things like a chest rig, so you may be able to use that to specify a clip into a gun, but I couldn’t find examples of this so it might not be possible.
If it were me, I’d just make one of the magazines standard and spawn with them all by specifying a range of ammo that fits that clip, then have the other magazines only appear in the world and not in the gun.
I don’t know if any of this was helpful or would work, but I’m bored and thought I’d weigh in.