Shopify / Shopify/hydrogen

`TypeError: Load failed` causing crashes on WebKit browsers

Open
#3,879 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
2.1k
Forks
443
Avg merge
4d 19h
Merged PRs (30d)
24

Description

Hey there,

Nice to meet some of you at the DotDev event :).

We've built a storefront for an enterprise client that I'm super happy with, but there's an issue that appears in our logs that I can't reproduce. It crashes the frontend, showing an error boundary in 0.79% of sessions, which is way too much at our scale.

I have attached the production logs. Here's what I've found:

  • Only in WebKit browsers
  • A fetch request to a .data fetch request is logged with statusCode=0
  • Server-side logs for the same sessions return successfully with statusCode=200
  • Error boundary shows, crashing the page

I hope you can help us understand why a successful server response isn't reaching the user. And is there a way to handle this more gracefully?

I can't share our codebase publicly, but I'd be happy to walk you through it. It's very close to the Hydrogen example. We do have a Cloudflare worker for traffic routing in front of Oxygen, but this doesn't cause any (other?) issues.

Kind regards,

Wiebe

Session logs

The logs include a status code of 500 for the client-side error boundary because we labeled it that way in our frontend code. It's not an actual 500. Confusing, I know.

session-4afd71d9-pdp-predictive.csv
session-9d7b0c22-login-navigation-2.csv
session-70e0a899-cart-navigation.csv
session-820a2263-suits-predictive-search.csv
session-3884a2e6-stores-navigation.csv
session-4034dfd8-plp-predictive.csv
session-de363bc6-home-predictive.csv
session-df00ab4f-search-predictive.csv
session-f3055940-login-navigation.csv
session-ffc52bc0-home-search-predictive.csv

Which package or tool is having this issue?

Hydrogen

What version of that package or tool are you using?

2026.4.2

What version of React Router 7 are you using?

7.15.1

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by comparing the attached session CSV logs, focusing on WebKit sessions where the .data fetch has statusCode=0 while server logs show 200. Reproduce with Hydrogen 2026.4.2 and React Router 7.15.1 in a WebKit browser, then determine the cause and verify that the error boundary handles the failed fetch without crashing the page.

Written by the indexing model from the issue text.

Assessment

Tech stack
react, typescript
Domain
frontend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.