Спасибо за ссылку. Это любопытный прием, но он требует врапперов вокруг всех источников событий. Нужна работа с файлами? Пиши врапперы на все необходимые операции. Плюс все корутины приходится оборачивать в обычные функции для запуска.
В принципе с точки зрения реализации это не сильно отличается от того что писали бы разработчики qt, но они могли бы предоставить более удобный интерфейс.
Не очень понял, что ты имеешь ввиду. Там насколько я понимаю достаточно в make_awaitable_signal передать источник сигнала и сам сигнал, которые могут быть любыми