Constraints on Parameters Update

I would like to make sure the error is decreasing at each iteration of a module I invented.
Let’s say it is made of iterative processes which are called for example for 10 times, so my architecture is made of the unfolded version of these iterative processes.

To learn the parameters of this unfolded architecture, I am using the back propagation (through time) of the error computed at the end of this architecture.
I would like to make sure that at each parameter update, the error is decreasing through this unfolded architecture.

Is there a way to be sure the error is decreasing at each iteration step, though we are doing a backpropagation of the error from the end of the network?

I know it is a tricky question, however it could be the case that somebody has faced this problem,
thanks.
S