То, что вы сейчас делаете, выглядит для меня очень неправильно.Старайтесь не смешивать RxJS с циклами for.Обычно в RxJS есть что-то, что удовлетворяет вашим потребностям, взгляните на https://rxmarbles.com/.
Если вы хотите подождать несколько потоков, пока они не отправят событие, вы должны использовать функциюlateLatest ().Он не только сообщает вам, когда все HTTP-запросы ответили, но также передает вам данные в структуре кортежа.
const httpCalls:Array<Observable<any>> = paths.map(step => this.nodeService.getFilterResult(step));
combineLatest(HttpCalls)
.subscribe(results => console.log(results));
// --> [Call1Result, Call2Result, ...]