All GrowthExperiments builds started failing with this error today.
https://integration.wikimedia.org/ci/job/quibble-vendor-mysql-hhvm-docker/48441/console
15:56:11 2) GrowthExperiments\Tests\HelpPanelQuestionPosterTest::testSubmitNewTarget 15:56:11 === Logs generated by test case 15:56:11 [caches] [info] parser: HashBagOStuff {"private":false} 15:56:11 [wfDebug] [debug] Parser: using preprocessor: Preprocessor_Hash {"private":false} 15:56:11 [wfDebug] [debug] IP: 127.0.0.1 {"private":false} 15:56:11 [wfDebug] [debug] User::getBlockedStatus: checking... {"private":false} 15:56:11 [wfDebug] [debug] IP: 127.0.0.1 {"private":false} 15:56:11 [GlobalTitleFail] [info] RequestContext::getTitle called by GrowthExperiments\HelpPanel\HelpPanelQuestionPoster->getSectionHeader/DerivativeContext->msg/Message->setContext/DerivativeContext->getTitle/RequestContext->getTitle with no title set. {"private":false} 15:56:11 [GlobalTitleFail] [info] RequestContext::getTitle called by GrowthExperiments\HelpPanel\QuestionPoster->getSectionHeaderWithTimestamp/DerivativeContext->msg/Message->setContext/DerivativeContext->getTitle/RequestContext->getTitle with no title set. {"private":false} 15:56:11 [GlobalTitleFail] [info] RequestContext::getTitle called by GrowthExperiments\HelpPanel\HelpPanelQuestionPoster->getSectionHeader/DerivativeContext->msg/Message->setContext/DerivativeContext->getTitle/RequestContext->getTitle with no title set. {"private":false} 15:56:11 [StashEdit] [debug] AbuseFilter::filterAction: cache miss for 'UTPage-44522' (key wikidb-unittest_:abusefilter:check-stash:default:2a2f779bffea2135bc2c04147b5fd229:v1). [] 15:56:11 === 15:56:11 ConfigException: HashConfig::get: undefined option: 'AllowConfirmedEmail' 15:56:11 15:56:11 /workspace/src/includes/config/HashConfig.php:56 15:56:11 /workspace/src/extensions/ConfirmEdit/SimpleCaptcha/SimpleCaptcha.php:1176 15:56:11 /workspace/src/extensions/ConfirmEdit/SimpleCaptcha/SimpleCaptcha.php:534 15:56:11 /workspace/src/extensions/ConfirmEdit/SimpleCaptcha/SimpleCaptcha.php:800 15:56:11 /workspace/src/extensions/ConfirmEdit/SimpleCaptcha/SimpleCaptcha.php:836 15:56:11 /workspace/src/extensions/ConfirmEdit/includes/ConfirmEditHooks.php:39 15:56:11 /workspace/src/includes/Hooks.php:174 15:56:11 /workspace/src/includes/Hooks.php:202 15:56:11 /workspace/src/extensions/GrowthExperiments/includes/HelpPanel/QuestionPoster.php:363 15:56:11 /workspace/src/extensions/GrowthExperiments/includes/HelpPanel/QuestionPoster.php:145 15:56:11 /workspace/src/extensions/GrowthExperiments/includes/HelpPanel/QuestionPoster.php:107 15:56:11 /workspace/src/extensions/GrowthExperiments/tests/phpunit/HelpPanelQuestionPosterTest.php:62 15:56:11 /workspace/src/tests/phpunit/MediaWikiTestCase.php:427 15:56:11 /workspace/src/maintenance/doMaintenance.php:96 15:56:11 15:56:11 FAILURES! 15:56:11 Tests: 1117, Assertions: 2019, Errors: 2, Skipped: 43. 15:56:11 Traceback (most recent call last): 15:56:11 File "/usr/local/bin/quibble", line 11, in <module> 15:56:11 load_entry_point('quibble==0.0.0', 'console_scripts', 'quibble')() 15:56:11 File "/usr/local/lib/python3.5/dist-packages/quibble/cmd.py", line 573, in main 15:56:11 cmd.execute() 15:56:11 File "/usr/local/lib/python3.5/dist-packages/quibble/cmd.py", line 545, in execute 15:56:11 junit_file=junit_db_file) 15:56:11 File "/usr/local/lib/python3.5/dist-packages/quibble/test.py", line 196, in run_phpunit_database 15:56:11 run_phpunit(*args, **kwargs) 15:56:11 File "/usr/local/lib/python3.5/dist-packages/quibble/test.py", line 191, in run_phpunit 15:56:11 subprocess.check_call(cmd, cwd=mwdir, env=phpunit_env) 15:56:11 File "/usr/lib/python3.5/subprocess.py", line 271, in check_call 15:56:11 raise CalledProcessError(retcode, cmd) 15:56:11 subprocess.CalledProcessError: Command '['php', 'tests/phpunit/phpunit.php', '--debug-tests', '--testsuite', 'extensions', '--group', 'Database', '--exclude-group', 'Broken,ParserFuzz,Stub', '--log-junit', '/workspace/log/junit-db.xml']' returned non-zero exit status 2