SCORU/Node: reinject failed SCORU operations of operators
Context
When the daemon detects that one operation (that was signed by one of its operators) is included with a non successful status in a block, the same operation is automatically requeued for injection if:
- the operation was backtracked (i.e. it failed because of another operation but would have succeeded otherwise)
- the operation was skipped (i.e. it failed because of another operation but maybe would have succeeded)
- the operation failed because of an "out of gas" error
A typical case is when two nodes try to publish commitments in the same block, the operation that is included in second will consume more gas and so will likely fail.
Fixes #4040 (closed).
Manually testing the MR
dune exec tezt/tests/main.exe -- --f sc_rollup.ml reinject
Edited by Alain Mebsout