I added something of a hack in using the last context value for exiting the menu, but there are other circumstances where the graph seems incomplete enough that it throws off the calculation of estimated remaining time.
The right way to solve this would be to provide the current warps and actions as new edges before constructing an arborescence. But for shortest paths, this can drastically change the entire table; we likely should just calculate it from scratch each time if there isn't a convenient update algorithm. Luckily, our initial testing has shown that estimation is performed very infrequently: about 7200 unique trees were generated in about 300 million scoring requests (8.9 million rounds).
I added something of a hack in using the
last
context value for exiting the menu, but there are other circumstances where the graph seems incomplete enough that it throws off the calculation of estimated remaining time.The right way to solve this would be to provide the current warps and actions as new edges before constructing an arborescence. But for shortest paths, this can drastically change the entire table; we likely should just calculate it from scratch each time if there isn't a convenient update algorithm. Luckily, our initial testing has shown that estimation is performed very infrequently: about 7200 unique trees were generated in about 300 million scoring requests (8.9 million rounds).