Earlier quoted context omitted.
You are going beyond To Do Lists and stepping into full project management systems. I suppose there would be nothing stopping you from using PM software as a to do list... you would just need to focus your searches on "Project Management", because that is the feature set you are describing.
But I find all tasks to be done, face these constraints, and need to be managed in this way. PM software tends to include other stuff - like team management, SLA considerations etc. dependencies should be part of any task management system IMHO.
To do lists are what the name implies, a list of things to do.
Once you start adding things like dependencies, etc. to a to do list, it's not really a to do list any more.
If you are going to be that detailed about how you do your tasks, then a traditional Project Management tool (like Microsoft Project) is probably what you need.
Sure it's going to have some extra features you don't want, but nothing is forcing you to use those features, especially if the task management part satisfies your primary needs for dependency tracking, estimate/deadline rollups, etc.