Our upload callbacks should be ordered based on how users will interact with the data and how long the callback tasks take.
Alexey brought a bug to my attention where he was getting a 404 when trying to investigate a link to Buildbot. I couldn't reproduce the issue a few hours later, but it occurred to me what was likely happening. Our callback tasks are executed in order, but some callback tasks are nearly instant while others may take minutes. If you look, the callback which generates links to Buildbot is executed after the one generating test results, which is the most expensive callback and the callback that tends to generate the data users most often use to discover a test run. While I can't be certain, I'm pretty sure that that what was happening to Alexey was that he followed a Buildbot link for a test run where the results had been processed (or at least, the result he was interested in) but the Buildbot links had not yet been generated.
Created attachment 389693 [details] Patch
Comment on attachment 389693 [details] Patch Clearing flags on attachment: 389693 Committed r255694: <https://trac.webkit.org/changeset/255694>
All reviewed patches have been landed. Closing bug.
<rdar://problem/59163912>
While this definitely was a theoretical issue, it wasn't what Alexey was encountering. He showed me his reproduction steps, it's a different bug.