These requirements apply to PEF as well as any other experiment with (1) an eligibility check based on registration date (for example experiments only targeting new editors or editors with accounts older than N days) and (2) a limited and consistent duration of the treatment for each participant in the experiment.
the code gets deployed at , we allow a buffer of time before the experiment is activated and anyone can participate in the experiment;
is the period that determines if a user is eligible as a participant in the experiment. If the user registration date falls within this period the user is eligible, otherwise nothing happens
if the user is eligible, than a bucketing function determines which condition the user is assigned to. Conditions can be two (in case of a split test) or multiple (in case of multiple treatments).
The duration of the treatment is calculated from the time at which the user becomes eligible as a participant (the registration date) and ensures that every participant is exposed to the treatment for the same duration regardless of when she became eligible. This will ensure, in particular, that users who registered towards the end of the eligibility period will still get exposed to a sufficiently long treatment to produce usable data.
The overall duration of the experiment will need to extend at least days after the eligibility period is over.