So you only need 1 keyboard component to end the trial, and make sure on your keyboard component the “Force end of routine” box is checked. If it is not checked, it will not end the trial.
I would have to see what conditions you specifically added to know what you did exactly.
Try looking at How to go the next question after response and not force end routine - #5 by Joan_Orpella and Requiring two inputs to end routine (slider + keyboard). It might be the case that the slider component is showing “undefined” instead of a no value as per the explanation there. In yours you would have to do something like
if slider1.getRT() != None and slider2.getRT() != None and slider3.getRT() != None and slider4.getRT() != None and key_resp.keys == 'space':
continueRoutine = False
Or something akin to that. But I do not know how you have set the conditions currently.
Issac