Job cannot be Engineered if it has at least one circular reference

I wonder what solution you got for the following:

Problem description
During production sometimes we loose more quantity than expected. In some cases we can manufacture some extra quantity on the previous (already completed) operations. We rather like to have a different job to manufacture these extras.

Solution till now
When operation 10, 20 are completed and at 30 we loose 2 too many. We can add a material line with the same number to this operation with a fixed quantity of 2 pieces. We mark this material as ‘added material’, ‘make direct’ and ‘fixed quantity’. A method directive creates a recovery job in the background for these 2 pieces which are manufactured job to job, which means all costs are received on the original job. Depending the related operation in de original job, the get details is triggered up till that operation number, so if the original job has operation 10 to 100 and the ‘added material’ is entered on 30, only the details up to 30 are in the recovery job.
The logic works perfect when you keep the added material to assembly sequence 0 (parent level). The material part number can be the same as it’s parent. However, if you want to use this logic on a assembly sequence number > 0 you won’t be able to engineer your job anymore. I find it a bit weird as the circular reference logic would make sense when it would be in the engineering workbench, but in the job entry it has a completely different meaning.

Any suggestions?