This task encompasses whatever work is necessary to enable page schema QA on the beta cluster:
Something like the following config will be needed:
// --- 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:
$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.
- You'll need to link pages on the beta cluster with the wikidata beta cluster
- The config will live inside https://github.com/wikimedia/operations-mediawiki-config/blob/master/wmf-config/InitialiseSettings-labs.php