Fix edge-cases with the FissionAutostart experiment pref integration
Categories
(Core :: DOM: Content Processes, task, P2)
Tracking
()
Tracking | Status | |
---|---|---|
firefox83 | --- | verified |
People
(Reporter: nika, Assigned: nika)
References
Details
Attachments
(1 file)
Assignee | ||
Comment 1•5 years ago
|
||
This should fix some of the issues discovered by QA during their review of the
fission experiment's preference behaviour.
Updated•5 years ago
|
Comment 4•5 years ago
|
||
bugherder |
Comment 5•5 years ago
|
||
The issues seem to have been fixed. The fission.experiment.enrollmentStatus
and fission.experiment.startupEnrollmentStatus
preferences now exist with the default value 0
even before enrolling in the experiment.
If the user unenrolls by enabling fission.autostart
as described in Bug 1669703 the fission.experiment.enrollmentStatus
and fission.experiment.startupEnrollmentStatus
will remain on 2
until a restart, when they will become 3
.
If the user changes the fission.autostart
preference after enrollment + restart, the fission.experiment.enrollmentStatus
and fission.experiment.startupEnrollmentStatus
preferences will instantly change to 3
.
Unenrolling by turning Fission off or on from Nightly Experiments will also correctly change the preferences to 3
("instantly", as the entry requires restart at state change).
If the user unenrolls as described in Bug 1669536 the fission.experiment.enrollmentStatus
and fission.experiment.startupEnrollmentStatus
preferences will instantly change to 0
and the fission.autostart
preference will remain on the experiment value until a restart, after which it will be false
.
This was tested using Firefox Nightly 83.0a1 (Build ID: 20201009041754 and 20201008210150) on Windows 10 x64, macOS 10.15 and Windows 7.
Can :neha or :cpterson please confirm that the fact that some pref changes only occur after restart is the desired behavior?
Comment 6•5 years ago
|
||
(In reply to Maria Heres, :mheres, Ecosystem QA from comment #5)
If the user unenrolls by enabling
fission.autostart
as described in Bug 1669703 thefission.experiment.enrollmentStatus
andfission.experiment.startupEnrollmentStatus
will remain on2
until a restart, when they will become3
.
If the user changes thefission.autostart
preference after enrollment + restart, thefission.experiment.enrollmentStatus
andfission.experiment.startupEnrollmentStatus
preferences will instantly change to3
.
I think this is OK. IIUC, the Normandy code that checks whether any of the prefs related to the experiment (including fission.autostart
) runs at startup. So the actual unenrollment will run after restart like you see.
If the user unenrolls as described in Bug 1669536 the
fission.experiment.enrollmentStatus
andfission.experiment.startupEnrollmentStatus
preferences will instantly change to0
and thefission.autostart
preference will remain on the experiment value until a restart, after which it will befalse
.
Can :neha or :cpterson please confirm that the fact that some pref changes only occur after restart is the desired behavior?
As long as the fission.autostart
, fission.experiment.enrollmentStatus
, and fission.experiment.startupEnrollmentStatus
prefs have the expected values after restart, I think we're good.
Comment 7•5 years ago
|
||
I am marking this issue as verified fixed based on the two previous comments.
Description
•