if there are a sequence of nodes in an order: node_1, node_2, node_3(with HARD action), node_4, node_5(with HARD action);
on the loop of "_on_active_order", each time it will trigger "_process_next_edge" to send a new edge+node to ROS till to the end (node_5).
I guess "_process_next_edge" should be blocked if one node/edge get HARD action on it, after all the HARD actions done, then start to send nodes again.
if there are a sequence of nodes in an order: node_1, node_2, node_3(with HARD action), node_4, node_5(with HARD action);
on the loop of "_on_active_order", each time it will trigger "_process_next_edge" to send a new edge+node to ROS till to the end (node_5).
I guess "_process_next_edge" should be blocked if one node/edge get HARD action on it, after all the HARD actions done, then start to send nodes again.