[FEATURE] Managed / Remote settings have poor layering and are trivially bypassable
Preflight Checklist
- [x] I have searched existing requests and this feature hasn't been requested yet
- [x] This is a single feature request (not multiple features)
Problem Statement
Both server-side remote settings and MDM managed settings are trivially bypassable in most environments, especially in an Agent-powered world. Takes a few prompts at most. Enterprises sometimes want to provide sane defaults, but are fine with users overriding. Sometimes you'd like to extend values.
Sometimes, managed settings need to _change_, but settings.json/managed settings/remote-settings.json _create_ other configuration files, that are not migrated (known_marketplaces.json,
Proposed Solution
In three parts
- Enterprise managed settings should use a different schema than settings(.local)?.json, that indicates the value as mandatory/suggested/extendable
- Use a json generation language like jsonnet or golang text-templates to make settings user extendable
- Allow managed settings to specify _migrations_ that are understood.
Alternative Solutions
Currently using a mix of home-manager and other tooling (including custom migration scripts) to generate defaults but have no method to get "extend" a setting, like statusline.
Priority
High - Significant impact on productivity
Feature Category
Configuration and settings
Use Case Example
Example scenarios:
Settings migrations:
- we create a plugin marketplace within a company
- we need to change the URI, and some plugin names, or migrate per-team plugin marketplaces to the main one
- currently, only custom migration scripts work for this
Extendable settings, optional defaults:
Statuslines, some environment variables.
Additional Context
_No response_