replaceColumnNames is now queued again which should bring a performance boost in general for not flattened and not expanded reports.
Eg in my dev vm A huge first level
getPageUrls report loads in < 300ms. Half of that time is spent in Twig, about 1/4 in bootstrapping etc. We do now spend more time in JS (300-400ms on a fast computer with a fast browser) after the report is fetched than it takes to fetch it.
expanded=1? I'm almost sure that all APIs are tested as system test without flat=1 but because we touch here flat=1 and expanded=1 it would be good to confirm that these are covered in system tests