Hello all, I am having some trouble optimizing my change updates.
Ideally, I would like to collect updates generated from one origin, debounce them, and then merge them to a single update I broadcast to peers.
Each change is the same as the previous, with items added to a Y.Array.
The topology is that each peer maintains a Y.Doc that is synced with other peers; There is no central source.
The problem I am facing is that the peers do not update from the merged updates, most likely because the ‘clock’ does not match.
const changes = []
const notifyPeers = debounce( ()=>{
   // Here is where I would like to combine changes and send a single update to peers.
  // I tried this:
  const merged = Y.mergeUpdates(changes)
  changes = []
  broadcast(merged)
}, 1000)
ydoc.on('update', (change, origin) => {
  if (origin === me) {
    changes.push(change)
    notifyPeers()
  }
})