Pipeline stage view first issues a request to the $job/wfapi/runs API (which gets the overall runs list), then issues calls to the describe methods for EACH stage node:
This makes it slow to render the UI.
As of the RunExt caching added in https://issues.jenkins-ci.org/browse/JENKINS-33624 this is no longer needed: once the run is analyzed, all information should already be generated for all stage nodes, and they are served from a cache when requested.
We currently filter out the nested node details when returning the runs, by using a wrapper in the RunExt. This is not needed, we could return all needed information on the initial run.
Any dependent plugins that decorate the stages via the JS extension point can also adapt to do a request per run for information.
Result: greatly reduce server load from the Pipeline Stage View APIs, improve user experience (faster rendering), and potentially allow for better UI code structure.