I've been working on something akin to org-depend.el called org-edna. Basically, Edna provides an extensible means of specifying blocking conditions and trigger actions.
For example, Edna allows you to specify that a task should be blocked until all TODOs have been addressed in source code:
* TODO Address all TODOs in code :PROPERTIES: :BLOCKER: file("main.cpp") file("code.cpp") re-search("TODO") :END: * TODO Commit Code to Repository
Or schedule the following task for an hour after the current task is completed:
* TODO Put clothes in washer SCHEDULED: <2017-04-08 Sat 09:00> :PROPERTIES: :TRIGGER: next-sibling scheduled("++1h") :END: * TODO Put clothes in dryer :PROPERTIES: :TRIGGER: next-sibling scheduled("++1h") :BLOCKER: previous-sibling :END:
The (semi-complete) documentation is here: http://www.nongnu.org/org-edna-el/ I'd appreciate some feedback on it, whether the code or the documentation. -- Ian Dunn