This task encompasses whatever work is necessary to enable page schema QA on the beta cluster:
- https://wikidata.beta.wmflabs.org/wiki/Wikidata:Main_Page
- https://en.wikipedia.beta.wmflabs.org/wiki/Main_Page
Something like the following config will be needed:
```lang=php
// --- Some form of these settings is hopefully already enabled. ---
require_once "$IP/extensions/Wikibase/vendor/autoload.php";
require_once "$IP/extensions/Wikibase/lib/WikibaseLib.php";
require_once "$IP/extensions/Wikibase/repo/Wikibase.php";
require_once "$IP/extensions/Wikibase/repo/ExampleSettings.php";
require_once "$IP/extensions/Wikibase/client/WikibaseClient.php";
require_once "$IP/extensions/Wikibase/client/ExampleSettings.php";
$wgEnableWikibaseRepo = true;
$wgEnableWikibaseClient = true;
// --- /Some form of these settings is hopefully already enabled. ---
// I hope this terrible workaround won't be needed but it was necessary to get my local Wikibase repo
// instance to actually link data.
$wgWBClientSettings[ 'siteGlobalID' ] = 'enwiki';
// Enable page schemas on the main, a non-main (File), Item, and Property pages. We really just need
// main but the others might be useful.
$wgWBClientSettings[ 'pageSchemaNamespaces' ] = [ 0, 6, 120, 122 ];
// Enable 50% sampling.
$wgWBClientSettings[ 'pageSchemaSplitTestSamplingRatio' ] = 0.5;
// Split bucketed pages into control and treatment groups. Only the latter will receive the schema changes.
// Given 50% sampling, 25% of pages will receive the new treatment and 75% will be unchanged.
$wgWBClientSettings[ 'pageSchemaSplitTestBuckets' ] = [ 'control', 'treatment' ];
```
^That's about what I use in development. The bare minimum of changes needed are:
```lang=php
$wgWBClientSettings[ 'pageSchemaNamespaces' ] = [ 0 ];
$wgWBClientSettings[ 'pageSchemaSplitTestSamplingRatio' ] = 0.5;
$wgWBClientSettings[ 'pageSchemaSplitTestBuckets' ] = [ 'control', 'treatment' ];
```
But I'm hoping it'll kind of just work with the beta Wikidata instance.
Note: the order of `$wgWBClientSettings[ 'pageSchemaSplitTestBuckets' ]` buckets matter. Please copy as described, `[ 'control', 'treatment' ]`. The reason is that we'll later use this configuration in production and we want to identify pages in the new treatment prior using a database query on `page_random`. The new treatment bucket occupies the upper half of the range in this order and would occupy the lower half if flipped. It's not a big deal if we botch it but it'll save requerying later if we're mindful and consistent about it.
= Developer notes
* You'll need to link pages on the beta cluster with the [[ https://wikidata.beta.wmflabs.org | wikidata beta cluster ]]
* The config will live inside https://github.com/wikimedia/operations-mediawiki-config/blob/master/wmf-config/InitialiseSettings-labs.php
* A SWAT will be needed to turn it on. Given this is a beta cluster only change, if you find a willing deployer, you can do it outside the normal SWAT windows.