taskwarrior
taskwarrior copied to clipboard
Urgency of blockers does not assist with prioritising
When dealing with a bunch of tasks with dependencies, the urgency score doesn't help me prioritise which tasks should be completed first.
For example, adding a due date to a task increases its urgency score, but does not increase the urgency of the blockers it depends on.
task add TaskA
task add TaskB
task add depends:1 TaskC
task add depends:2 due:wednesday TaskD
task status
TaskD rightly has higher urgency than TaskC, but both TaskA and TaskB have the same urgency, which incorrectly suggests it doesn't matter which of A/B is done first.
There is urgency.inherits=on mentioned in man taskrc but setting that along with setting blocking/blocked coefficients to 0 results in a confusing mix of blocked tasks interleaved with blockers.
It would be useful if there was a way to add a proportion of a task's pre-blocked urgency to each of its blockers without needing to change the blocking/blocked coefficients that keep blockers at the top.
Another option that would help is if there was a coefficient which took into account quantity. The tag coefficient seems to do this already - when a task has three tags it has greater urgency with an otherwise identical task that has one tag. Having similar logic for blockers would help prioritise them more accurately.
task add TaskA
task add TaskB
task add depends:1 TaskC
task add depends:2 TaskD
task add depends:2 TaskE
task add depends:2 TaskF
task add depends:2 TaskG
task status
Since completing TaskB would unblock more tasks, its urgency should be greater than TaskA.
There is urgency.inherits=on mentioned in man taskrc but setting that along with setting blocking/blocked coefficients to 0 results in a confusing mix of blocked tasks interleaved with blockers.
Are you sure that the coefficients of blocking/blocked are even used when inherit is on? I thought they would be neglected then.
when a task has three tags it has greater urgency with an otherwise identical task that has one tag. Having similar logic for blockers would help prioritise them more accurately. I see that this could be useful although I don't think that this applies to everyones usecase.
Maybe look into configuring the reports themselves. There is the sort value of dependency. Maybe this solves the problem already? I don't know though. Start with man taskrc and search for "report.X.sort". An appropriate column ID would be either blocks or depends I think.
There is urgency.inherits=on mentioned in man taskrc but setting that along with setting blocking/blocked coefficients to 0 results in a confusing mix of blocked tasks interleaved with blockers.
Are you sure that the coefficients of blocking/blocked are even used when inherit is on? I thought they would be neglected then.
I haven't read the code but the man page says:
It is recommended to set urgency.blocking.co‐efficient and urgency.blocked.coefficient to 0.0 in order for this setting to be the most useful.