Stalled Projects in Things
After creating my orphaned items shortcut I figured that I also want to be notified about projects which cannot progress because there are no available todos. Either because I forgot to add some todos or simply because they weren't marked as completed yet.
How it’s implemented
First it removes the tag Stalled
from all items.
Then it gets all projects which are Open
and aren't scheduled to a date. Then it checks if there are any Anytime
or scheduled items in the project. If there are any matching todos the project is fine otherwise the check continues.
If the project is Anytime
it's stalled because there is no todo which can be done right now.
If the project is Someday
I only consider it Stalled
if there is no todo at all.
All matching projects will be tagged as Stalled
and a notification with a summary will be send.
I use Toolbox Pro for the notification as it allows to add a link to the notification so tapping it will bring me right into Things with the Stalled
tag shown. If you don't want to buy Toolbox Pro you can just replace the unknown action with the notification action provided from Apple Shortcuts. I will rewrite the notification part with one of my apps as soon as I've published it to the App Store. My app will be free for this use-case of sending notifications.
Caveats
When I first ran the Shortcut I got notified about a project which I didn't consider being stalled. It was for an upcoming event where I completed all todos I knew of. But since the event didn't happen yet there might still be coming new todos and the project is only completed after the event.
The easiest solution would be to tag the project as Not Stalled
which will cause this automation to skip the project. But this not ideal since the project may become stalled in the future but this tag prevents it from being marked as such. To fix this I created a shortcut to defer to Someday which will fix this issue by marking the project as Deferred
until it has available todos.
Get the shortcut
You need to manually create the Stalled
tag in Things for the shortcut to work.