Page MenuHomePhabricator

ZEvaluationResult component crashes when function_call api returns an error
Open, HighPublicBUG REPORT

Description

Description

When a server error caused by the php/mw layer is returned in the wikilambda_function_call api, such as:

{
    "error": {
        "code": "internal_api_error_Error",
        "info": "[23476b0a2c17f0f13053375d] Exception caught: Interface \"Wikimedia\\MetricsPlatform\\EventSubmitter\" not found",
        "errorclass": "Error",
        "*": "Error at /var/www/html/w/extensions/EventLogging/includes/MetricsPlatform/EventSubmitter.php(12)\nfrom /var/www/html/w/extensions/EventLogging/includes/MetricsPlatform/EventSubmitter.php(12)\n#0 /var/www/html/w/includes/AutoLoader.php(225): require()\n#1 /var/www/html/w/extensions/EventLogging/includes/MetricsPlatform/MetricsClientFactory.php(39): AutoLoader::autoload()\n#2 /var/www/html/w/extensions/EventLogging/includes/EventLogging.php(58): MediaWiki\\Extension\\EventLogging\\MetricsPlatform\\MetricsClientFactory->newMetricsClient()\n#3 /var/www/html/w/extensions/WikiLambda/includes/ActionAPI/WikiLambdaApiBase.php(284): MediaWiki\\Extension\\EventLogging\\EventLogging::getMetricsPlatformClient()\n#4 /var/www/html/w/extensions/WikiLambda/includes/ActionAPI/ApiFunctionCall.php(205): MediaWiki\\Extension\\WikiLambda\\ActionAPI\\WikiLambdaApiBase->submitMetricsEvent()\n#5 /var/www/html/w/extensions/WikiLambda/includes/ActionAPI/ApiFunctionCall.php(187): MediaWiki\\Extension\\WikiLambda\\ActionAPI\\ApiFunctionCall->submitFunctionCallEvent()\n#6 /var/www/html/w/extensions/WikiLambda/includes/ActionAPI/ApiFunctionCall.php(50): MediaWiki\\Extension\\WikiLambda\\ActionAPI\\ApiFunctionCall->run()\n#7 /var/www/html/w/includes/api/ApiMain.php(1952): MediaWiki\\Extension\\WikiLambda\\ActionAPI\\ApiFunctionCall->execute()\n#8 /var/www/html/w/includes/api/ApiMain.php(928): ApiMain->executeAction()\n#9 /var/www/html/w/includes/api/ApiMain.php(899): ApiMain->executeActionWithErrorHandling()\n#10 /var/www/html/w/includes/api/ApiEntryPoint.php(158): ApiMain->execute()\n#11 /var/www/html/w/includes/MediaWikiEntryPoint.php(200): MediaWiki\\Api\\ApiEntryPoint->execute()\n#12 /var/www/html/w/api.php(44): MediaWiki\\MediaWikiEntryPoint->run()\n#13 {main}"
    },
    "servedby": "d0055c7e33f3"
}

The ZEvaluationResult component crashes instead of showing a relevant error message

Expected behavior (Acceptance criteria):

The UI should be able to react without crashing in the case of unexpected api errors.

Completion checklist