To implement progress reporting, it means you are able to know the time a task would take to run upfront, no? Is it even possible to do it accurately ?
Though, I imagine you could have strategies to give an approximation of it, for example like keeping track of the past execution time of a given type of task in order to infer the progress of a currently running task of the same type.
> To implement progress reporting, it means you are able to know the time a task would take to run upfront, no?
No. You just need to know the total number of steps and what step are you currently on.