mark_read refactor and sender.type recognition