e5d15c920f
Non-blocking follow-up from the audit: applicationScope ran on Dispatchers.Default, so two very fast conflicting persistence writes (recalibrate then immediately Reset) had no ordering guarantee. Main.immediate launches the coroutine body synchronously in call order, so the DataStore edits enqueue deterministically; DataStore still does the IO on its own dispatcher. Only lightweight persistence uses this scope. 64 tests passing; assembleDebug clean; runs on device. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>