Despite the variety of performance measurements available through the current API, it’s difficult to discern from the NavigationType whether the measurements reflect those of a regular navigation under normal browsing or of one where the browser is in a non-optimal performance state, such as a cold start. A browser launch is one of the most expensive performance scenarios commonly encountered in typical PWA and WebView patterns. Our proposal seeks to create a new value for the NavigationType enum to differentiate this condition from others in measurements of web application performance.
Modifying the NavigationType to include state for a user agent launch (i.e. useragent_launch) will enable engineers to determine whether a given measurement is taken from a launch scenario, enabling greater differentiation of application performance from browser performance in scenarios where the browser engine is launched and terminated frequently. Examples include: Electron apps, system WebViews, or other application scenarios where the browser is relatively short-lived or commonly launched from a terminated state.