Skip to content

[Enhancement] App does not handle expired OTA update gracefully — stale bundle used silently #862

Description

@RUKAYAT-CODER

Overview

The app uses Expo OTA updates but does not check if the currently loaded bundle is more than N days old and a newer update is available. Users on very old cached bundles may encounter API incompatibilities that are silently ignored.

Specifications

Features:

  • Check for available OTA updates on app foreground using expo-updates
  • If an update is available and the current bundle is > 7 days old, prompt the user to update
  • If an update is critical (determined by a flag in the update manifest), force the update before allowing app use

Tasks:

  • Add update check in App.tsx on foreground
  • Create UpdatePromptModal for non-critical updates
  • Implement forced update flow for critical updates

Impacted Files:

  • App.tsx
  • src/components/common/UpdatePromptModal.tsx (new)

Acceptance Criteria

  • Stale bundles (> 7 days) prompt the user to update
  • Critical updates block app use until applied
  • Update check does not block app startup

Metadata

Metadata

Assignees

Labels

Stellar WaveIssues in the Stellar wave programenhancementNew feature or request

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions