Symptom
On the Health Connect setup screen (onboarding), the grant historical data button is disabled/grayed out until the base Health Connect permission is granted. But granting the base permission auto-advances to the next screen, so the button is never in a pressable state — the user can never grant historical access during onboarding.
Where
- Button + gating:
app/src/main/java/com/rousecontext/app/ui/screens/HealthConnectSetupScreen.kt (onRequestHistoricalAccess / historicalAccessGranted).
- Auto-advance:
app/src/main/java/com/rousecontext/app/ui/navigation/destinations/HealthConnectSetupDestination.kt — the requestPermissions result callback calls viewModel.onPermissionsResult(granted) then navController.navigate(...), leaving the screen immediately after the grant.
Desired fix (owner leans toward option 2)
- Hide the historical button entirely (if we don't want to offer it in onboarding), OR
- Don't auto-advance on base-permission grant — stay on the setup screen so the now-enabled 'grant historical data' button can be pressed, then advance on an explicit continue/skip. (Preferred.)
Notes
- Historical access = the
READ_HEALTH_DATA_HISTORY permission (isHistoricalReadGranted). Without it, reads are limited to the last 30 days.
- This is an onboarding-flow / error-surface change → needs a
docs/ux-decisions.md entry when implemented (per .claude/rules/ux-changes.md). Owner has stated the preferred direction (option 2) here.
Symptom
On the Health Connect setup screen (onboarding), the grant historical data button is disabled/grayed out until the base Health Connect permission is granted. But granting the base permission auto-advances to the next screen, so the button is never in a pressable state — the user can never grant historical access during onboarding.
Where
app/src/main/java/com/rousecontext/app/ui/screens/HealthConnectSetupScreen.kt(onRequestHistoricalAccess/historicalAccessGranted).app/src/main/java/com/rousecontext/app/ui/navigation/destinations/HealthConnectSetupDestination.kt— therequestPermissionsresult callback callsviewModel.onPermissionsResult(granted)thennavController.navigate(...), leaving the screen immediately after the grant.Desired fix (owner leans toward option 2)
Notes
READ_HEALTH_DATA_HISTORYpermission (isHistoricalReadGranted). Without it, reads are limited to the last 30 days.docs/ux-decisions.mdentry when implemented (per .claude/rules/ux-changes.md). Owner has stated the preferred direction (option 2) here.