Context
React Navigation is organized as a single flat navigator with all 54+ screens registered centrally, causing merge conflicts and tight coupling.
Current Limitation/Problem
Adding a new screen requires modifying the central navigation file. Feature teams create merge conflicts on the same navigation file regularly.
Expected Outcome
Feature-based navigation: each domain module owns its navigator stack. Root navigator composes feature navigators. Each feature defines its own param list type.
Acceptance Criteria
Technical Scope
- mobile/app/navigation/ - RootNavigator with feature composition
- mobile/features/auth/navigation/ - AuthNavigator
- mobile/features/billing/navigation/ - BillingNavigator
- mobile/features/subscriptions/navigation/ - SubscriptionNavigator
- mobile/features/settings/navigation/ - SettingsNavigator
- mobile/features/admin/navigation/ - AdminNavigator
- shared/types/navigation.ts - root param list type
Context
React Navigation is organized as a single flat navigator with all 54+ screens registered centrally, causing merge conflicts and tight coupling.
Current Limitation/Problem
Adding a new screen requires modifying the central navigation file. Feature teams create merge conflicts on the same navigation file regularly.
Expected Outcome
Feature-based navigation: each domain module owns its navigator stack. Root navigator composes feature navigators. Each feature defines its own param list type.
Acceptance Criteria
Technical Scope