More inclusive predecessor and successor domain for complex projects

For simple projects, the built-in sequence works fine to order tasks, but for more complex projects, using the project_plan module seems like a logical way to go. But in that module, the successor and predecessor domain of siblings (currently implemented as ('parent', '=', Eval('parent', -1)) is just too limiting to be useful.

I propose that a predecessor or successor could be any work within a single project tree (i.e. has a common ancestor in the same project). This should include any sub-projects (but probably should not descend into tasks within the sub-projects).

This would give the flexibility to organize a project tree around one logic and plan the project around another.

I think it will make the project_plan code much more complicated and this will prevent to build a correct PERT graph.
If you have this need I guess your tree structure is not correct.