Right now when you re-execute a pipeline from failure, we load an execution plan over gRPC not once, not twice, but thrice - once from the parent run to figure out the steps, once from the child run without any steps to validate that the steps are correct, and then a third time with the steps.
This diff takes the first call out of the equation by loading the execution plan directly from the snapshot.