From 1b77bc258d6a5a4c70aafd2b317ded658af97300 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Mon, 9 Feb 2026 13:11:17 +0000 Subject: [PATCH 1/4] Initial plan From dfbb703377975a4b3c3cd84ac7a53f265d273a02 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Mon, 9 Feb 2026 13:15:30 +0000 Subject: [PATCH 2/4] Fix 500 error message to distinguish timeout from prebuilt binary errors Co-authored-by: styfle <229881+styfle@users.noreply.github.com> --- package-lock.json | 3 +++ src/pages/500.tsx | 11 +++++++---- src/pages/_document.tsx | 3 ++- 3 files changed, 12 insertions(+), 5 deletions(-) diff --git a/package-lock.json b/package-lock.json index 1ee19ec3..8c028a53 100644 --- a/package-lock.json +++ b/package-lock.json @@ -56,6 +56,7 @@ "integrity": "sha512-cisd7gxkzjBKU2GgdYrTdtQx1SORymWyaAFhaxQPK9bYO9ot3Y5OikQRvY0VYQtvwjeQnizCINJAenh/V7MK2w==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@types/prop-types": "*", "csstype": "^3.2.2" @@ -2015,6 +2016,7 @@ "version": "4.0.3", "inBundle": true, "license": "MIT", + "peer": true, "engines": { "node": ">=12" }, @@ -2156,6 +2158,7 @@ "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz", "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==", "license": "MIT", + "peer": true, "dependencies": { "loose-envify": "^1.1.0" }, diff --git a/src/pages/500.tsx b/src/pages/500.tsx index 728e7266..0840f4ab 100644 --- a/src/pages/500.tsx +++ b/src/pages/500.tsx @@ -6,7 +6,7 @@ import PageContainer from '../components/PageContainer'; import { pages } from '../util/constants'; -export default ({ reqId }: { reqId: string }) => ( +export default ({ reqId, isTimeout }: { reqId: string; isTimeout?: boolean }) => ( <>
@@ -14,9 +14,12 @@ export default ({ reqId }: { reqId: string }) => (

Oops, the package failed to install.

- This can happen when there is no prebuilt binary for node@ - {process.versions.node} or the install script requires CLIs like - python/curl/etc. + {isTimeout + ? 'This can happen when the package took too long to install and the request timed out.' + : <>This can happen when there is no prebuilt binary for node@ + {process.versions.node} or the install script requires CLIs like + python/curl/etc. + }

Go Home diff --git a/src/pages/_document.tsx b/src/pages/_document.tsx index 1d7e64eb..117f54dd 100644 --- a/src/pages/_document.tsx +++ b/src/pages/_document.tsx @@ -253,8 +253,9 @@ async function routePage( if (err instanceof NotFoundError) { return ; } + const isTimeout = err instanceof Error && 'code' in err && (err as any).code === 'ABORT_ERR'; console.error('Unexpected Error Occurred...', err); - return ; + return ; } } From 39dc75f5d40bc69208eb5afcd8758a22bdb726f4 Mon Sep 17 00:00:00 2001 From: Steven Date: Mon, 9 Feb 2026 13:00:39 -0500 Subject: [PATCH 3/4] prettier --- src/pages/500.tsx | 13 ++++++++----- src/pages/_document.tsx | 3 ++- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/src/pages/500.tsx b/src/pages/500.tsx index 0840f4ab..af2f0135 100644 --- a/src/pages/500.tsx +++ b/src/pages/500.tsx @@ -14,12 +14,15 @@ export default ({ reqId, isTimeout }: { reqId: string; isTimeout?: boolean }) =>

Oops, the package failed to install.

- {isTimeout - ? 'This can happen when the package took too long to install and the request timed out.' - : <>This can happen when there is no prebuilt binary for node@ + {isTimeout ? ( + 'This can happen when the package took too long to install and the request timed out.' + ) : ( + <> + This can happen when there is no prebuilt binary for node@ {process.versions.node} or the install script requires CLIs like - python/curl/etc. - } + python/curl/etc. + + )}

Go Home diff --git a/src/pages/_document.tsx b/src/pages/_document.tsx index 117f54dd..d4d2f87a 100644 --- a/src/pages/_document.tsx +++ b/src/pages/_document.tsx @@ -253,7 +253,8 @@ async function routePage( if (err instanceof NotFoundError) { return ; } - const isTimeout = err instanceof Error && 'code' in err && (err as any).code === 'ABORT_ERR'; + const isTimeout = + err instanceof Error && 'code' in err && (err as any).code === 'ABORT_ERR'; console.error('Unexpected Error Occurred...', err); return ; } From ce3e59f7f4c30e6e2e8ec9dfb8681cb603736b4c Mon Sep 17 00:00:00 2001 From: Steven Date: Mon, 9 Feb 2026 13:02:33 -0500 Subject: [PATCH 4/4] lint --- package-lock.json | 3 --- 1 file changed, 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 8c028a53..1ee19ec3 100644 --- a/package-lock.json +++ b/package-lock.json @@ -56,7 +56,6 @@ "integrity": "sha512-cisd7gxkzjBKU2GgdYrTdtQx1SORymWyaAFhaxQPK9bYO9ot3Y5OikQRvY0VYQtvwjeQnizCINJAenh/V7MK2w==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@types/prop-types": "*", "csstype": "^3.2.2" @@ -2016,7 +2015,6 @@ "version": "4.0.3", "inBundle": true, "license": "MIT", - "peer": true, "engines": { "node": ">=12" }, @@ -2158,7 +2156,6 @@ "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz", "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==", "license": "MIT", - "peer": true, "dependencies": { "loose-envify": "^1.1.0" },