Thanks for the reply, that's really cool it seems we both sought a similar solution! If it's an issue of when those booleans are being checked, perhaps you can dedicate some resources at the beginning of a day or when a save is loaded to a "loading screen" where these finished weapon values can be thoroughly checked before the player loads in? Even if it took a while, I think most players would take that tradeoff gladly.
I've also noticed that around 50% of the time a weapon constructed the day before (or earlier) will not be recognized as a complete weapon and you'll need to disassemble/reassemble it for a customer to take it - perhaps that's a similar situation.