Can you use the orientation of the Door GameObject and based off the orientation, figure out which way you can go thru it, then remove the inputs and outputs of the Vertex where the Door is, and add a Bidirectional Edge on both sides of the Door? Just a thought.