Background
The MediaWiki\Extension\MetricsPlatform\XLab\ResourceLoader\Hooks::XLAB_STREAMS allowlist allows us to have fine-grained control over which stream configurations are sent to the browser to initialise the xLab JS SDK. This is because the number of streams far outweighs the number of streams used for experiments.
However, to date, two teams have needed to use a new stream for their experiment and in both cases, developers have been confused as to why their experiments aren't sending events (and maybe even why setting $wgEventLoggingStreamNames to falsy makes it work).
AC
- The XLAB_STREAMS allowlist becomes a config variable, e.g. $wgMetricsPlatformExperimentStreamNames
- The allowlist is initialized to its current value in operations/mediawiki-config
- The behaviour of the allowlist is made to be independent of $wgEventLoggingStreamNames
- Experiment#setStream() logs a warning if the stream name isn't in the allowlist