Posted by @shufujian:
WaitForTraffic is an event used to satisfy dependency. But there’s a bit of confusion about _consider_going().
when running Interrupt(),Cancel(),Kill(),_replan() or all dependencies readhed, _decision_made is changed to the current time.
But it means that the decision is already done, so why execute _replan() when now - _decision_made>10s in _consider_going().
I guess that after the decision is fully implemented, the whole WaitFortraffic will be removed, so _consider_going() will not run.
In the case of _decision_made, a decision is started but not completed. The active->_timer keeps running _consider_going(), and if the decision isn’t complete after more than 10 seconds, a reminder that the decision is timed out will be triggered.
It has the same function as _decision_made of type bool.