If I'm reading this correctly, there's potentially non-deterministic behavior here.

If the poll time is slow enough that the first poll doesn't occur until after the manifest step has completed, we get no output at all about that step. So it's possible that from sync to sync, the output will be different. That's potentially disconcerting to the end user, wondering why there was no metadata step that took place.

There are ways around it. This is one reason why the other reports track each step's state individually. The benefit of tracking each step is that we can reproduce the entire report at any time, regardless of poll interval. This also comes into play when resuming watching an existing sync. If a user stops the CLI from tracking this sync and then later reattaches (for lack of a better term), the previous steps can be re-rendered as well.

It's not entirely apples to apples though. In those importers, a failed step != a failed sync. We don't consider the entire sync failed if 1 out of 3000 RPMs fails to download or validate. 

Ok, this comment is just not going anywhere with you people talking StarCraft to me in the scrum. I'll revisit later.