I did wonder, what is blocking us from merging the last 2, e.g. making the startup module do something like this:
script = document.createElement( 'script' ); script.src = document.documentElement.getAttribute( 'data-script' );
script = document.createElement( 'script' ); script.src = $VARS.baseModulesUri;
On mobile on a cold cache there are currently 5 script requests (startup module, mediawiki/jquery, top loaded scripts, bottom loaded scripts and a CentralAuth script). What's stopping us at the very least merging top loaded scripts with mediawiki/jquery ?