Mostly the failing events (e.g. the Messages app failing to keep the first word of a message when typing rapidly after sending a message) are, I think, due to Apple using Catalyst for these apps.
Catalyst was an ambitious project, which works… mostly. But in the details, it has a lot of rough cuts. I fully expect Apple to end up rewriting Messages and co completely in SwiftUI eventually, but that will take many years, if they ever do it.
For the rest, most of the time my wild guess would be that Apple is constantly migrating their frameworks, or creating new ones, and the engineers developing apps are using ever moving frameworks. The framework stabilizes at the end of the release cycle (or sometimes even later…), which leaves no time for the front devs to truly finish quality control on their part.
Basically, to summarize, the release cycle is too small. Apple should do releases every two years instead of every year. Or drop the cycle altogether and just release when ready.
Catalyst was an ambitious project, which works… mostly. But in the details, it has a lot of rough cuts. I fully expect Apple to end up rewriting Messages and co completely in SwiftUI eventually, but that will take many years, if they ever do it.
For the rest, most of the time my wild guess would be that Apple is constantly migrating their frameworks, or creating new ones, and the engineers developing apps are using ever moving frameworks. The framework stabilizes at the end of the release cycle (or sometimes even later…), which leaves no time for the front devs to truly finish quality control on their part.
Basically, to summarize, the release cycle is too small. Apple should do releases every two years instead of every year. Or drop the cycle altogether and just release when ready.