Coroutines on EDT and Locks
Sometimes, errors similar to the below can be observed in the IDE running in the internal mode:
Access is allowed with explicit read lock.
Now each coroutine scheduled on EDT wrapped in implicit write intent
lock (which implies read lock too). This implicit lock will be removed
in future releases.
Please, use explicit lock API like ReadAction.run(),
WriteIntentReadAction.run(), readAction() or writeIntentReadAction()
to wrap code which needs lock to access model or PSI.
Please note, that read action API can re-schedule your code
to background threads, if you are sure that your code need
to be executed on EDT, you need to use write intent read action.
This is not an actual error. Nothing is broken and no data races occurred.
This assertion message was a way to prepare plugins for the changes in the IntelliJ Platform, but it is no longer necessary. It is safe to ignore it.
07 January 2026