Difference between normal iOS app startup and O/S forced startup?

We have an Ionic 6 / Capacitor 4 / Angular 12 app.

I’m seeing a different behaviour (on certain devices only) when the app re-starts depending on the cause of the restart.

If I close the app and open it (i.e the onResume lifecycle is activating) the app works ok and behaves ok on all devices.

If I swipe-close the app manually myself and re-open it the app works on all devices.

If I open that app after a period of X hours and re-open it AND in the meantime the OS has decided to close the app, on some devices (my iPhone SE for example) - the app behaves differently and fails (a call to secure storage in a 3rd party auth library is failing to get a token)

As far as I’m concerned the second and third use-cases are identical - the app is closed fully and is starting up. But I’m seeing a different behaviour. Are there differences between these two scenarios as far as the app is concerned?

Testing this on two devices at the moment - iPhone 11 and iPhone SE. The problem only seems to occur on the SE and it definitely only occurs when - on reopening the app - the app startup events occur rather than the onResume sequence. And does NOT occur if I force close the app myself and reopen it ie in this situation the startup sequence works fine, it’s only when the OS forces the startup that things start to go wrong. Very frustrating.

One more thing to add here. If I power off the SE and switch it on again (which SURELY is the equivalent test of the OS closing the app rather than me manually closing it - isn’t it???) then the app starts up ok.