i'd create the paths 1st, then create the rooms,

each room will have a priority and know which are accessible from the order they were created in

once you know this, you're able to place keys and doors, bosses, etc, in these rooms to make sure everything is possible