I’d love it if there was an option to make it so that a repeating task is only triggered if the previous instance of the task was completed.
So for example, if I have “clear email inbox” set up as a daily task. But if I fall four days behind, it doesn’t make sense for there to be four instances of the task created. I’d rather the first task just goes overdue so I can see how far I’ve fallen behind and check off that ONE task to get up to speed. Once I check off that one task, a new task will spawn the next day.
Here’s another example: Let’s say you wanted to call you mom every Sunday because it’s the best time for both of you to talk. So you create a repeating task. If you miss calling her for 3 weeks, the current implementation will leave you with 3 instances of the same task in you queue. Obviously it doesn’t make sense for you to call her 3 times in one day.
With this option enabled, you will only have one instance of the task that’s 3 weeks overdue. Once you complete it, a new “call mom” task will spawn the following Sunday.
I think the simplest implementation would be to just add another checkbox to the repeating tasks dialogue “Spawn new tasks only when previous instances are complete or non-existent”
For reference, this idea comes from Org-Mode - one of the most hallowed productivity software ever (at least among nerds). This is one of the biggest features I’m missing from making the switch to Everdo. You can see the documentation page here if you’re interested in more details: https://orgmode.org/manual/Repeated-tasks.html