The main cause of the bug, can be summed up like this. You just drafted your marksdwarf. Supplied him/her with 100 bolts for training, marked T, since your fort cannot waste metal bolts. When Usrist decides its time to target practice, will go gather a stack from a stockpile, put them in his quiver, then go and fire them off. Does not go refill his quiver.
If you set the bolts for C and T the next time he wants to shoot, will go get some more, and fire them at the target. The difference is, if they are marked C, will restock his quiver, after target practice, with bolts you designated for combat, then go about his business.
The C command is like issuing live rounds to store, and use in case of problems.
But then poor, easily confused Urist decides to go target practice, and decides to save a trip to the ammo supply, since he has some already in his quiver. Fires off the bolts in his quiver, then restocks the quiver, since his quiver needs to always be filled with combat bolts "C". If you do not pay attention, they will decimate the supply of war bolts you made.
Best thing to, under normal conditions, assign an allotment of wooden bolts, or bone, C T. If you have an emergency(siege, ambushers, a racoon loose in the fort) remove the allotment of practice bolts from the ammo screen, make a new allotment of metal bolts, assign T. They will go refill their quivers with these, and fire at the problems. When the emergency is over, remove the metal bolts from the ammo screen, then replace with an allotment of training bolts. If you don't, the idiots will again start trying to use up all your metal bolts at target practice. Its a pain, but in emergencys, you will be issuing commands, and alerts anyways.