Nit: marionette and timeout can be used as positional arguments as including the keywords doesn't add any clarity. I know this wasn't introduced by your patch, but it's an opportunity for cleanup. Also, if you include the `.until(` on this line you don't need a `\` to indicate the line continues.