I think this is triggered by a robots trying to exit a roboport when it's broken. The robots in transit are frozen above the roboport at the end of their exit animation and other robots may queue around it. I guess the game can still assign jobs for robots in the disabled roboport? Or they got the jobs just before it broke but had to wait for their turn to exit. This is especially bad because the jobs those robots were doing are postponed until the roboport works again. With other machines breaking I could prepare for it by building redundancy, but if a roboport breaks and stalls some jobs, no other robot will do those jobs regardless of how many roboports are in the area. I guess logistics robots might be more tolerant, but it happened enough with construction robots that I ended up just disabling maintenance for roboports because I couldn't figure out a way around it other than waiting or going there to fix the roboport myself. Even with the option for robotic repairs to restart broken machines, it can get into a deadlock - I guess the repair job is assigned to a robot inside that particular roboport, so it can't perform the job until the jam clears naturally.