Okay thanks to
@Jeremy P's efforts in tracking this down we now have a workaround in place for this and have been able to shed some light on the situation.
The reason changing
data-app="public"
to any other value works is because there are some relevant PWA bits that only run if that value is set to
public
.
Inexplicably, it turns out that the root cause of this issue is in fact a bug in "headless Chromium" which causes it to crash when it accesses the
Notification.badge API.
This existing bug has been reported here:
bugs.chromium.org
We will attempt to give them a nudge but from an XF point of view it is fixed. We now detect if the user agent appears to be from Lighthouse and bypass that API in that case.
Those changes are rolled out here if you'd like to test them.