We found that clearing the start made other orientations in the same pose also be "free" even though those might be in critical collision at other orientations. We know the start is "free" because it has to be definitionally since the robot is there.
This removes the clearing to fix that issue. Conveniently, we have defensive programming elsewhere that this makes it the only required change. Within the planner plugins themselves we already interpret 1 iteration as being start occupied and thus no valid potential path solution could be found, so we keep that contextual failure mode if there's no way out from the start.
We found that clearing the start made other orientations in the same pose also be "free" even though those might be in critical collision at other orientations. We know the start is "free" because it has to be definitionally since the robot is there.
This removes the clearing to fix that issue. Conveniently, we have defensive programming elsewhere that this makes it the only required change. Within the planner plugins themselves we already interpret 1 iteration as being start occupied and thus no valid potential path solution could be found, so we keep that contextual failure mode if there's no way out from the start.
Addresses https://github.com/ros-navigation/navigation2/issues/4271