well, despite calling it internally, it seems there were random error condition that made the reported bug reproducible in a highly rate. As the caller is who decides when to enter selectMode I believe it is legitimate for the caller also to decide when to select mode, otherwise you are putting too much intelligence on the other module