"observeDeep" does not cover subdocs

Another noteworthy restriction (which is not obvious from the docs): while you are allowed to add subdocs to Y.Maps and Y.Arrays, observeDeep does not report any operations within these inner Y.Docs.

This makes truly deep observations more difficult as you will have to listen for subdocs events (particularly the loaded part therein) and register/unregister your listeners accordingly…

Subdocs are extremely limited; arguably the implementation is not really complete. I researched subdocs and determined that they weren’t going to serve my purpose, though some people seem to have added the requisite provider support and gotten them to work.

Instead I have a separate Doc that tracks guids, and then I lazily sync whatever Docs I need by guid.

Yep; I just keep soft references in my ydocs as ID strings and have my application layer resolve IDs into other YDocs. Subdocs are essentially the same thing but obfuscate what’s going on a bit.