IIRC this was essential for some browsers (IE < 10?) because it’s impossible to access <noscript>
tags via JavaScript after doing the feature detection. I think @dan worked on this problem a few years back?
Note that there are two fallback ‘modes’ at the moment:
-
Serve the crawler view. No JS required. This is gated on
browser_update_user_agents
. -
Serve the full app, feature detect, and fallback by moving
<noscript>
content into<body>
. This is not based on user agent.
The problem here is that (2) is not working on mobile, because the server isn’t rendering any <noscript>
content. We need to fix that, without breaking (1) for mega-old browsers.