Ensure behavior is reasonable when paths can't be generated
We need to make sure we don't loop forever if we find ourselves in a situation where we can't generate any paths.
We need to make sure we don't loop forever if we find ourselves in a situation where we can't generate any paths.