Extension preferences, in
~/Library/Application Support/Nova/UserConfiguration.json are all mingled together in a single JSON object, allowing cross-extension collisions naming collisions.
Related, the response to the LSP workspaces/configuration request can include configuration parameters which, in this situation, effectively come from a global shared namespace, not scoped to the extension managing the LanguageClient.
I’ve taken the practice of prefixing all my extension preferences with my extension ID, but currently if I do so, but that will not work for things I want the language server to be able to query. The gopls language server queries with
"section": "gopls" and to be returned, the preference items must be
gopls.<preference name>, not