Standalone apps: Outdated code in new bundle

Is it possible that some users are still executing old code even after they updated the JS bundle?

So initially we thought the users are just lying about updating/restarting the app, but recently we’ve been trying to fix a bug in production and even though we are 99% sure it has been fixed in the newest release Sentry is still reporting (very few) cases where users seem to execute some code from previous release even though the bundleId is the latest one.

This is very hard to reproduce so my question is more if this is somehow possible in theory. Maybe JS bundle update/download can fail in a way it’s still using the previous bundle but reporting a new bundleID?


One thing I’ve been struggling with for example is fixing errors caused by momentjs ( Requiring unknown module "./locale/is".). I’ve migrated the whole project on dayjs and even made sure momentjs is not installed by any other dependency (even did rm -rf node_modules/moment in CI). After publishing we can still see some users are triggering this error from bundle that has no momentjs installed.

My current theories on what is happening:

  1. Sentry is reporting wrong bundleId.
  2. JS bundle or node_modules content is cached somewhere in AppData and executed even when new bundle was downloaded.