I would like to propose the following idea:

Tasks are placed in a command column, always at the right side of the grid. Tasks which are not flagged as grid task can be started from the context menu that can be openen with the (...) button.
This seems to me to be a relatively small adjustment for the platform, which can make applications considerably more intuitive.
It ensures that there will be fewer misunderstandings about the context/row to which a task to be performed relates. It enables the possibilty to start tasks and the context menu (...) with a touchscreen.
With 3 extra fields in the table table_task, this new functionality could easily be controlled from the model.
1. grid_task_enabled (bit)
2. grid_task_sequence(int)
3. grid_icon (varbinary)