Allow users to select any task/milestone and see its critical path
There are various reasons why this is essential for large or interdependent projects:
Large projects often have multiple future milestones at fixed points. We don't often want to view the critical path of the future-most milestone, we mostly want the next upcoming milestone. We can exclude milestones except for the upcoming one, but then we need to keep adjusting the structure, and we can't see all the milestones at once (eg: maybe the next milestone after is also at risk).
Our projects invariably have inter-project dependencies. At the very least, the dependencies are resource-based (eg: we're sharing resources between projects). In order for auto-scheduling to work properly, and for resource utilization to calculate properly, we need to include all main projects in the structure. However, we can then only see the critical path for the last milestone of the project that is scheduled to finish last. To make this work, we'd need for auto-scheduling/utilization to work on projects/tasks that are not displayed in the structure, or to have some way to select what milestone/task we want to see the critical path for (if any).
One way I could see this working:
* Select a task in the Gantt chart to open the pop-up.
* Have a button in that pop-up to "View critical path".
* The critical path function would then work off this selected item (overriding the "last scheduled task in the structure" value that is used now).
* A button in the gantt chart would indicate that there is a custom target for critical path calcs, and allow resetting to "latest task in structure" with a click.
* The "Gantt Critical Path" value could be "Target" for the targeted task/milestone if a custom target is set.
I can't see many workarounds to this right now, although having a calculated "Gantt Slack" column for each task would help (see other feature request!).