RealmSwift strategies for coping with long-standing crash issue? "Cannot register notification blocks from within write transactions."

There is some useful discussion recently and going years back in this open thread about a “Cannot register notification blocks from within write transactions.” error that seems to happen frequently for use cases of the library that should be allowable. The solutions presented by community members are concerning - such as moving ALL Realm using to a background thread, which would require eliminating all SwiftUI Realm properties for example - pretty severe rewriting required.

The thread: "Cannot register notification blocks from within write transactions." when making changes in quick succession · Issue #8333 · realm/realm-swift · GitHub

Since the issue has been open for so long I’m checking here if others have advice on coping with it, if anyone else runs into it. I really don’t want to have to completely rewrite all my Realm usage to exist in a bg thread and 100% async as some advise in the GitHub thread… This is really a nightmare to have multiple apps of mine crashing unpredictably, now severely, without any apparent incorrect use of Realm and uncertainty over what the solution might be besides radically narrowing/consolidating all Realm access. Thanks

Update - I’ve begun the slow process of rewriting all my RealmSwift usage to use async on a background actor for all writes, and stripping out all ObservedResults usage - this seems to be working. I’ve wrapped this into a helper function to avoid a lot of the boilerplate required each write, but the change to fully async requires extensive rework

If this is the only reliable solution then it seems Realm docs should update their guidance because currently it encourages practices and offers APIs which seem impossible to use without crashing instability once your project grows. So much time lost on what I thought were the typical ways of using Realm over years with this crashing issue only recently worsening somehow and now requiring a full app rewrite to move to async writes on bg actor and ditch the SwiftUI enhancements added to Realm, it feels avoidable since that crash issue has been open for 5+ years.