For example, if after #3 I specify a SlotTime of 1s and my command takes 500ms, a sleep of 0 slots of length should last 0ms, whereas a sleep of 1 should last 500ms.
I'm not sure I like this design, but it'd certainly be more real-time.
I could also see just subtracting from the delay the time that elapsed during execution, then clamping with a lower bound of 0ns to prevent panics.