While the normal data structure does not generate this type of patterns, they must be supported - it is generally speaking useful, and is already used by e.g. the transformer to represent dynamic transformation producers.
The pattern obviously already triggered a bug since there was a specific bug fix for a task context->task context dependency. The fix was however too limited as it would not handle task context->composition.
This change implements a pass after deployment where we would find the root components from the "old plan" that are not used in the "new plan", and cut the dependency relations between these two. This should really handle all cases.
While the normal data structure does not generate this type of patterns, they must be supported - it is generally speaking useful, and is already used by e.g. the transformer to represent dynamic transformation producers.
The pattern obviously already triggered a bug since there was a specific bug fix for a task context->task context dependency. The fix was however too limited as it would not handle task context->composition.
This change implements a pass after deployment where we would find the root components from the "old plan" that are not used in the "new plan", and cut the dependency relations between these two. This should really handle all cases.