For example, the fallback page is displayed when the server response has a 404 status code, even though there is no reason to assume that the client is offline at this point.
This is due to the status page throwing an error when at least one data check fails, with the response status code being 500. I would argue that this is debatable, since this error code indicates that (there is a - probably unclear - reason that) the server was not able to fulfill the request (see: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/500). In our case, the server is indeed able to fulfill the request regardless of the status of the data checks mentioned. Since in other, more appropriate, cases of the 500 status code being thrown the current behavior of the service worker seems right to me, wouldn't it be the right solution to just abdicate the conditional usage of status codes in this case? (@nik)