Hi! It's a windows persistence feature. I'm able to disable it using the private _disableRestorableStateWriting method of NSApp. There is a checkbox in Interface Builder for Window called "Restorable" but unchecking it didn't prevent NSPersistentUIWindowSnapshotter's methods from calling and using a lot of CPU.
Maybe someone else will find some public API, but I have found only observing functions.