opt: keep watch_src async
upd: doc