All apps have bugs, but these assertions would allow the developer to more easily find and fix them for the next update.
And maybe allowing the app to continue running in an unexpected state (instead of crashing) is not a good idea?
And maybe allowing the app to continue running in an unexpected state (instead of crashing) is not a good idea?
Open communication can also help manage the end user expectations. I personally like and have been inspired by the Dev blogs for the game Factorio. For example here is a blog post from them about their new(at the time) Crash log uploading feature that some people weirdly didn't like. https://www.factorio.com/blog/post/fff-231
Personally, if it was my app, I would just fix the issue. State should be clear. If state is not clear, then the application is probably not well architected.