add a timeout for edge case of newRoom
fix a few todos