Context inside tasks

The idea is in a task flow hold on untill something is changed or something is accomplished.

There can be an optional wait time specified for maximum time to wait.

Like in a task wait untill internet available, or wait untill a variable changed(although it is available in wait untill task, there is no option for maximum time to wait). Moniter something in between a task and proceed after it changed status. 

Using multiple profiles can accomplish this but giving this option would really be helpful.