The readable-stream module has different timings to using plain generators - it turns out that detection of the end of the walkDag method was being done incorrectly - instead of waiting for it's promise to resolve we should wait for the output queue to finish.
The readable-stream module has different timings to using plain generators - it turns out that detection of the end of the walkDag method was being done incorrectly - instead of waiting for it's promise to resolve we should wait for the output queue to finish.