He was 21 seconds behind the 2:09:37 of Geoffrey Kirui, who has a recent 2:06:27 on a pancake course (Amsterdam). Kirui also has a 59:38 half and a 26:55 10,000.
(Rupp also beat his 27:38/1:01:11 training partner, marathon debutant Suguru Osako, by 30 seconds.)
Of course, that doesn't mean Rupp is just 21 seconds off of 2:06:27 ability. Kirui clearly didn't remotely need to go to the well for this win. He was able to put 20 seconds on Rupp at will, over the course of just a few miles. Kirui ran for the win, doing what he had to and not much more, and would of course have more of a gap than that in a flat-out time trial.
In short, my observation is that Rupp just had his lunch handed to him pretty hard by a 26:55/59:38/2:06:27 guy.
After watching him get rocked that way, it is very hard to see Rupp going under 2:07:00 in the fitness he showed today.