React: Missing exception context

We have Sentry configured in our React application (mostly following this Guide). Due to how our application is configured (via React Admin), we are unable to use the provided Sentry.ErrorBoundary out of the box and are explicitly capturing exceptions like so:

Sentry.captureException(error, {
    contexts: {
        react: { componentStack: errorInfo?.componentStack }

which looks similar to what happens in Sentry.ErrorBoundary.

While the custom react context is included in logged events, other basic context including browser, OS, and URL is not included. Is this expected?