Cover the error paths the router middleware alone does not see, and stop reporting things that are not faults.
- Patch
createRequestListener in @remix-run/node-fetch-server and install an onError that chains to the app's own. This is the only thing covering an app whose fetch handler does not use fetch-router.
- Skip aborted requests.
raceRequestAbort rejects with the request's abort reason when a client disconnects, so without this every user navigating away mid request creates an issue.
- Add a
shouldHandleError option on the integration, following the @sentry/hono convention: skip 3xx and 4xx errors carrying a numeric status, capture the rest.
No de-duplication needed when a failure is seen by both the middleware and onError. captureException already marks the value __sentry_captured__ and drops the second report.
A handler returning a 500 response is not an error. Nothing is thrown, so no issue is created and the status lands on the span.
Done when e2e covers the abort case and the non-router handler case. The abort test must fail if the guard is removed.
Cover the error paths the router middleware alone does not see, and stop reporting things that are not faults.
createRequestListenerin@remix-run/node-fetch-serverand install anonErrorthat chains to the app's own. This is the only thing covering an app whose fetch handler does not use fetch-router.raceRequestAbortrejects with the request's abort reason when a client disconnects, so without this every user navigating away mid request creates an issue.shouldHandleErroroption on the integration, following the@sentry/honoconvention: skip 3xx and 4xx errors carrying a numericstatus, capture the rest.No de-duplication needed when a failure is seen by both the middleware and
onError.captureExceptionalready marks the value__sentry_captured__and drops the second report.A handler returning a 500 response is not an error. Nothing is thrown, so no issue is created and the status lands on the span.
Done when e2e covers the abort case and the non-router handler case. The abort test must fail if the guard is removed.