reworked shrinkage, save baseproduct on ingredient update