import * as Sentry from '@sentry/electron/renderer'; import { appConfig, appEnv } from '@/config/env'; import { installErrorSinks } from '@/lib/errors'; /** * Initialise Sentry for a renderer process. No-ops when `sentryDsn` is empty * so dev builds and unconfigured envs stay quiet. */ export function initSentryRenderer(): void { if (!appConfig.sentryDsn) return; Sentry.init({ dsn: appConfig.sentryDsn, environment: appEnv, tracesSampleRate: 0, }); installErrorSinks({ capture: (err, context) => Sentry.captureException(err, { extra: context }), breadcrumb: (err, context) => Sentry.addBreadcrumb({ category: 'error', level: 'error', message: err instanceof Error ? err.message : String(err), data: context, }), }); }