Hi Mike, I had a similar idea a few years ago: a Todo Network, where tasks are linked to related tasks, similarly as you propose.
If you take your example chain of tasks and goals, and add say 20 goals to it. There will be certain tasks that turn out to be blocking (a well connected node).
It could well be a meeting in which many decisions need to be made.
Or a Q&A sprint to validate 2 weeks of programming work.
It would be easy to see which tasks must be finished to get progress.