I can understand where you are coming from but questions still remain. What about any predecessors that are connected to the development tasks? You “just want the critical path for a particular phase”, but if you don’t consider predecessors from other phases I might question the value of the result.
So, if this is what you want then the only out of box solution I can think of is to do what you are doing. That is to pull the phase out by itself. That or remove predecessors or other constraints. You can’t determine critical path to part of a project when tasks are still dependent to other phases.
If you just want to find the critical path tasks of a phase within the current WBS, you can highlight or filter tasks with the Critical field set to Yes.
I’m guessing you were hoping for a better answer but I hope that helps…