-
Notifications
You must be signed in to change notification settings - Fork 494
Description
Description
When viewing segment overrides for a multivariate feature, the variation values are correctly shown as read-only (variation values are defined at the feature level and cannot be changed per segment). However, hovering over the disabled variation value inputs shows a misleading tooltip:
"To use this feature you need the Create Feature permission for this project. Please contact a member of this project who has administrator privileges."
This makes it appear as though the user lacks permissions, when in reality this is by design — variation values simply cannot be edited at the segment override level.
Steps to reproduce
- Create a multivariate feature with variations
- Go to Segment Overrides tab
- Add or view a segment override
- Hover over a variation value input
Expected: A tooltip explaining that variation values are set at the feature level (e.g. "Variation values are defined at the feature level and cannot be changed per segment").
Actual: A misleading "Create Feature permission" tooltip appears.
Root cause
In SegmentOverrides.js (line ~307), VariationOptions is rendered without passing the canCreateFeature prop:
<VariationOptions
readOnly
disabled={readOnly}
// canCreateFeature is never passed — defaults to undefined (falsy)
...
/>VariationValueInput.tsx (line 38) wraps the value editor with Utils.renderWithPermission(canCreateFeature, ...). Since canCreateFeature is undefined, it always shows the permission tooltip — even though the input is already disabled via the readOnly prop.
Suggested fix
Replace the misleading permission tooltip with a helpful message explaining the actual reason: "Variation values are defined at the feature level and cannot be changed per segment."
This could be done by either:
- Adding a new tooltip variant for read-only variation values in segment overrides
- Or passing
canCreateFeature={true}to suppress the permission tooltip and adding an informational tooltip on the disabled input instead
Reported by
Customer via Slack — they have org admin + full permissions and were confused by the tooltip.