Open settings.json in Cursor.
Add the snippet above under your settings.
Save and restart Cursor.
Observe that the extensions.experimental.affinity entry is gone.
Expected Behavior
Cursor should not silently delete unknown or experimental configuration keys from settings.json. Even if the key is unsupported, it should remain untouched instead of being stripped out on restart.
Operating System
Linux
Current Cursor Version (Menu → About Cursor → Copy)
I did a bit of digging, and I can confirm that this isn’t a general issue with experimental settings, it’s specific to extensions.experimental.affinity and only for VIM extensions vscodevim.vim and asvetliakov.vscode-neovim.
Any particular reason you want to change the affinity for these extensions? Cursor should already be handling extension isolation for you.
(FWIW I don’t enjoy “magic” either, just want to understand what impact this is having for you!)