Page MenuHomePhabricator

Make Vector feature flags compatible with beta features
Closed, ResolvedPublic3 Estimated Story Points

Description

Currently feature flags can be enabled for anonymous or logged in users. Going forward we'd like to make it possible to roll features like dark mode out to logged in users as beta feature.
e.g.

$wgVectorClientPreferences = [
  "logged_in" => false,
  "logged_out" => false
];

Going forward it would be useful to mark features as available in a set of beta features.
e.g. it should be possible to enable the settings cog to beta feature users.

$wgVectorClientPreferences = [
  "logged_in" => false,
  "logged_out" => false,
  "beta" => false
];

TODO (Spec)

  • A beta feature is added to Special:Preferences for Vector 2022 beta:

Screenshot 2023-09-29 at 1.41.04 PM.png (252×764 px, 30 KB)

  • When a feature sets the key "beta_feature" to true, it is enabled to users who have the beta feature enabled.
  • If BetaFeature extension is disabled, configuration flags marked as beta_feature will not be loaded regardless of when they are true
  • Beta feature should be configurable and default to off (does not appear on the list of the beta features)

QA Results - Beta

ACStatusDetails
1T347772#9270568

QA Results - Prod

ACStatusDetails
1No need to test in prod per T347772#9266460

Event Timeline

@ovasileva @sgrabarczuk @JScherer-WMF it would be great to get a head start on this so we have this capability available for when we need it. What do you think about the copy for the Special:Preferences beta features page?

Jdlrobson renamed this task from Make feature flags compatible with beta features to Make Vector feature flags compatible with beta features.Sep 29 2023, 8:44 PM

@ovasileva @sgrabarczuk @JScherer-WMF it would be great to get a head start on this so we have this capability available for when we need it. What do you think about the copy for the Special:Preferences beta features page?

I think for the copy we might want to frame it in the language of the project page: "Accessibility for reading" and include a link to the project page. Maybe we can do something like:

Title: Accessibility for Reading (Vector 2022)
Description: Get early access to the new reading accessibility features, such as typography improvements and dark mode.

ovasileva set the point value for this task to 3.Oct 10 2023, 5:23 PM

Change 965143 had a related patch set uploaded (by Mabualruz; author: Mabualruz):

[mediawiki/skins/Vector@master] [WIP] Make Vector feature flags compatible with beta features

https://gerrit.wikimedia.org/r/965143

I have a higher priority task with a higher estimation assigned to me Friday https://phabricator.wikimedia.org/T346954 I will focus on moving that along then get back to this.

@JScherer-WMF This requires svg images (ltr and rtl versions) to be populated to the page if that can be provided it would be highly appreciated

@JScherer-WMF This requires svg images (ltr and rtl versions) to be populated to the page if that can be provided it would be highly appreciated

Sorry I can't see in the ticket which images you're referring to. Could you tell me which images you need?

The image is shown in the ticket description there is a design that shows an image beside the description and under the buttons ( information and discussion). we need an rtl and ltr version of.

Change 967259 had a related patch set uploaded (by Mabualruz; author: Mabualruz):

[operations/mediawiki-config@master] Make Vector feature flags compatible with beta features

https://gerrit.wikimedia.org/r/967259

Change 965143 merged by jenkins-bot:

[mediawiki/skins/Vector@master] Make Vector feature flags compatible with beta features

https://gerrit.wikimedia.org/r/965143

Change 967259 merged by jenkins-bot:

[operations/mediawiki-config@master] Make Vector feature flags compatible with beta features

https://gerrit.wikimedia.org/r/967259

Can be QAed on beta cluster. No need to verify this one in production so feel free to tag verified when that is done!

Edtadros subscribed.

Test Result - Beta

Status: ✅ PASS
Environment: beta
OS: macOS Sonoma
Browser: Chrome
Device: MBA
Emulated Device:NA

Test Artifact(s):

QA Steps

✅ AC1: A beta feature is added to Special:Preferences for Vector 2022 beta.
The feature is added and the number of users using it incremented. I included the event assuming I'd see something but didn't but figured there's no need to crop the images. The font size preference appeared once I selected and saved the beta feature.

screenshot 164.png (1×1 px, 239 KB)
screenshot 165.png (1×1 px, 235 KB)

Looks good to me, unsure if we want to do technical signoff for this one as well, so leaving open for now

Jdlrobson claimed this task.

LGTM.