Difficulty: Advanced
Type: Bug
Summary
Add an app-wide error boundary so unexpected rendering errors show a safe recovery screen instead of leaving users stuck or crashing without context.
Current Behaviour
Screens use query loading and error states, but there is no visible global React error boundary for unexpected component errors.
Expected Behaviour
Unexpected UI failures should render a safe fallback with options to retry, reset local state, or return to onboarding.
Suggested Implementation
Add an Expo Router-compatible error boundary or root-level React error boundary. Log non-sensitive error details in development and optionally expose a reporting hook for production integrations.
Files or Areas Likely Affected
app/_layout.tsx
app/+not-found.tsx
src/components/
src/lib/errorReporting/
tests/
README.md
Acceptance Criteria
Additional Notes
Avoid adding a third-party error reporting service unless maintainers approve it. Provide a local abstraction first.
Difficulty: Advanced
Type: Bug
Summary
Add an app-wide error boundary so unexpected rendering errors show a safe recovery screen instead of leaving users stuck or crashing without context.
Current Behaviour
Screens use query loading and error states, but there is no visible global React error boundary for unexpected component errors.
Expected Behaviour
Unexpected UI failures should render a safe fallback with options to retry, reset local state, or return to onboarding.
Suggested Implementation
Add an Expo Router-compatible error boundary or root-level React error boundary. Log non-sensitive error details in development and optionally expose a reporting hook for production integrations.
Files or Areas Likely Affected
app/_layout.tsxapp/+not-found.tsxsrc/components/src/lib/errorReporting/tests/README.mdAcceptance Criteria
Additional Notes
Avoid adding a third-party error reporting service unless maintainers approve it. Provide a local abstraction first.