Both MobileFrontend and Minerva skin do complex DOM processing before the page is presented to the user. Includes but not limited to the following
- MobileFrontend transformations
- Sections parsing
- Minerva PageIssues parsing
Some time ago we observed T220751: [Bug] Extreme latency due to JavaScript parsing on DOM-heavy pages which could be easily caught by automated systems. Systems can easily detect big changes in render time (like rendering time went double), and we should aim for that.
Open questions
We develop features gradually, adding bits one by one. It's possible that each commit will only slightly increase render time, but in one month window the render time will double. To avoid Boiling frog, tools should provide us a graph that can present the constant increase of render time, or a tool that compares today render time with the render time saved ~month ago.
How to monitor such things? Possible tools:
- T133646: Run performance test on commits (Fresnel)
- Use Grafana to monitor render time of complex pages? (same as we monitor Barack Obama)
- something different?
How to define "a complex page"?
Acceptance criteria
- There is a tool/graph that provides us information about changes in rendering time of complex pages