Awareness API - no "change" callback for local state changes

I’m using yjs’s awareness API to handle some active presence information (like who’s currently typing).

I just debugged a very confusing bug and tracked it down to the fact that when you first set your local state, the change callback is called both locally and on remote clients. However, for any subsequent local state change, only the remote clients are called and the local one is not. I was relying on doing all the rendering updating inside the change callback and this leads to a very confusing implementation where I have to manually “re-render” the local element whenever awareness changes.

Is this a bug or intended design of awareness changes? Looking at the docs, the change callback is described as “Listen to remote and local state changes. Get notified when a state is either added, updated, or removed.” But based on this observed behavior, it is not responding to local state updates. Is there something wrong with how I’m using it that would lead to this?