А разве change detection не сделает тоже самое? Ну, т.е. асинк пайп сделает компоненту markForCheck, но не вызовет change detection. Он вызовется после, когда состояние уже будет согласовано. И лишних вычислений не должно быть по идее. Или я не прав где-то?