Overview
@sentry/react-native is a dependency and sentryContextService is used throughout the API layer, but there is no evidence of source-map upload in eas.json or any workflow, and the release version reported by logger.ts is the hardcoded '1.0.0' fallback. Production stack traces from a minified, ProGuard-processed release (enableMinifyInReleaseBuilds: true is set in app.json) will be unreadable, and every event will be attributed to the same phantom release — which makes regression detection impossible.
Specifications
Features:
- Source maps uploaded to Sentry on every production build
- ProGuard mapping files uploaded for Android
- Releases tagged with the real version and build number
Tasks:
- Configure the Sentry Expo plugin for source-map upload in
app.json / eas.json
- Upload the ProGuard mapping produced by
plugins/withProguard.js and proguard-rules.pro
- Set the Sentry release from
expo-constants rather than the logger fallback
- Verify a deliberately thrown production error symbolicates correctly
Impacted Files:
eas.json
app.json
src/services/crashReporting.ts
src/services/sentryContext.ts
plugins/withProguard.js
Acceptance Criteria
- A production crash shows readable file and line information
- Events are attributed to the correct release
- Android traces are de-obfuscated
Overview
@sentry/react-nativeis a dependency andsentryContextServiceis used throughout the API layer, but there is no evidence of source-map upload ineas.jsonor any workflow, and the release version reported bylogger.tsis the hardcoded'1.0.0'fallback. Production stack traces from a minified, ProGuard-processed release (enableMinifyInReleaseBuilds: trueis set inapp.json) will be unreadable, and every event will be attributed to the same phantom release — which makes regression detection impossible.Specifications
Features:
Tasks:
app.json/eas.jsonplugins/withProguard.jsandproguard-rules.proexpo-constantsrather than the logger fallbackImpacted Files:
eas.jsonapp.jsonsrc/services/crashReporting.tssrc/services/sentryContext.tsplugins/withProguard.jsAcceptance Criteria