Currently, when we process a batch and don't have any unsafe L2 blocks to consolidate with, we apply the blocks eagerly. Generally, this is not a problem but it might lead to a inconsistency when the node restarts/crashes. This is due to the fact that the safe block head is set based on a partially processed batch. Upon restart a partially processed batch will be deleted/reset and re-processed so that the node is at least temporary in a "invalid" state.
This might not be a problem but we should revisit this after #409 and #403 are merged.
Another aspect to keep in mind is atomicity: we should always strive for it and as such it seems more appropriate to only set the safe block head after a batch has been fully processed.