Your app is already running on the New Architecture!
- ✅ React Native 0.76.9 (New Architecture enabled by default)
- ✅ Expo SDK 52.0.47 (Full New Architecture support)
- ✅ Hermes JS Engine enabled
- ✅
newArchEnabled: trueconfigured inapp.config.ts
While the New Architecture is enabled, you need to:
- Update dependencies for optimal compatibility
- Refactor code to leverage new features
- Verify critical integrations work correctly
- Test thoroughly before production rollout
- Verify Authentication - Test Okta integration thoroughly
- Verify Payments - Test Plaid integration
- Verify Feature Flags - Test LaunchDarkly
- Run Tests - Ensure existing functionality works
- Update
@apollo/clientto latest 3.11.x - Update
react-native-reanimatedto latest - Update
react-native-screensto latest - Run full test suite
- Update
@react-navigation/*to v7 - Update
@sentry/react-native - Verify third-party SDK compatibility
- Refactor
onLayouttouseLayoutEffect(4 files)
- No more visual jumps from
onLayout - Smoother UI updates
- Better user experience
useTransitionfor responsive UIuseDeferredValuefor smooth inputsSuspensefor better loading states- Automatic batching (already working!)
- Faster JavaScript/Native communication (JSI)
- Improved rendering performance
- Smoother animations
- Lower memory usage
src/@payments/screens/FundingAccountsScreen/FundingAccountsScreen.tsxsrc/@payments/screens/PaymentsFlow/PaymentSlider/PaymentSliderScreen.tsxsrc/@payments/screens/PaymentsFlow/PaymentSlider/SliderSection.tsxsrc/@core/navigation/screens/LockCardScreen/LockCardScreen.tsx
- ✅
app.config.ts- Already updated withnewArchEnabled: true package.json- Will be updated with new dependency versions
- Apollo Client update
- Reanimated update
- Screens update
- Most Expo packages
- React Navigation v7 upgrade
- Sentry update
- Code refactoring
- Okta SDK (has patch, needs verification)
- Plaid SDK (payment critical)
- LaunchDarkly (feature flags critical)
npm test
npm run typecheck
npm run lintnpm run maestro:ios:all
npm run maestro:android:all- Authentication flows
- Payment flows
- Navigation
- Animations
- Push notifications
- Feature flags
- Update low-risk dependencies
- Run automated tests
- Verify core functionality
- Update React Navigation
- Verify critical SDKs
- Begin code refactoring
- Update Sentry
- Verify analytics SDKs
- Complete code refactoring
- Final testing
- Performance validation
- Documentation
- Gradual rollout
Track these before and after:
- App startup time
- Navigation performance
- Animation frame rate (target: 60 FPS)
- Memory usage
- Crash rate
- User-reported issues
If issues occur:
# Quick rollback
git checkout package.json package-lock.json
npm install
npx expo prebuild --clean
# Emergency disable New Architecture
# Set newArchEnabled: false in app.config.ts
npx expo prebuild --clean- Review the detailed dependency plan
- Discuss with team about timeline
- Create a feature branch for updates
- Start with Phase 1 low-risk updates
- Test thoroughly after each phase
- Monitor metrics closely
Status: Ready to begin implementation
Last Updated: 2025-10-01
Owner: Technical Product Owner