Currently the system is letting the user change the attribute set instance after the order is prepared, which creates a qty reservation that is not linked to any document.
Steps to reproduce:
Create an order
Create an order line with a product with ASI and set an existing instance
Prepare the order
You see a reservation in storage detail with the qty set in the order line
Go back to the order line and update the instance field selecting a different one
Complete the order
Create a Shipment for that order line
Observe in Storage Detail that the records created in #2 are still present.
The solution is to extend the existing validation that does not allow to update the product or delete an order line when qtyReserved > 0, to not allow the change of the ASI value.