We have scenarios where the product can be started to produce without having all the inputs in stock.
You can start producing a birthday cake (base, layers) without having cherrys because it’s the last thing you put on. When you receive the cherrys you can then finish the cake.
The actual solution in Tryton is to ignore the cherrys on assing (quantity 0), continuing with the remaing tasks, and when you want to add the cherrys, go back to waiting, create new input cherrys so you can finally finish the production.
This is done that way because, it’s the same as the shipment process, and in shipment we need to set the qty to 0 in order to recreate the shipment with the remaining quantities to send.
As in production we don’t need to set qty to 0, because we don’t recreate anything, I propose to:
Leave the inputs without stock in draft with the correct qty on Ignore, later on when we want to put the cherrys we can go back and use that draft move.
This change also makes neccesary to restrict to not beeing able to finish a production if you have inputs in draft state.
Does this make sense for you?