I also wonder if we could not keep `MessageManager.currentNum` until we can use thread_id everywhere ?