Building
Publishing
Site shape
Changes to any of these change what the snippet does for every visitor. They all require publish because none of them go live otherwise.Data and security
Sensitive
These prompt for confirmation each time.Presets, again
For quick setup the drawer has:- Full access, every key on.
- Standard dev, building + publish + pause + schedule; not IP block list, not danger zone.
- View only, nothing on. For a stakeholder who reads results.
- Clear all, every key off. Starting point for a bespoke role.
Companion enforcement
The drawer will refuse to save an invalid combination. Concretely:- Turning on Global JS without Publish experiments is impossible. the drawer flips Publish on with it.
- Same for SPA, Analytics adapters, and Schedule experiments.
Enforcement is server-side
The dashboard hides buttons a member does not have permission for. The worker also refuses the API call. A malicious client cannot bypass the UI to publish an experiment they do not have the key for.Where the rest of this fits
- The role is the ceiling. A Viewer cannot be granted publish, ever.
- Site scope decides which sites the keys apply to. A member scoped to one site cannot publish on another, no matter what keys they have.
- Admins have every key on every site by definition. Toggling keys on an Admin’s row is a no-op.