я начал читать ответы. там говорят, мол, эвентлуп не завершается, потому что в каждом тике событие listening эмитится.
но далее там из комментов выходит, что дело совсем не в этом, а в том, что нодовский сервер вызывает uv_ref(), которая создает реф ссылки для эвентлупа. и процесс ноды не завершается, потому что есть эти самые реф-ссылки. запутано всё