Page MenuHomePhabricator

OrchestratorRequest: make sure the returned body is a zobject (or even a Z22) before returning a successful response
Closed, ResolvedPublicBUG REPORT

Description

Description

OrchestratorRequest::orchestrate calls the orchestrator with http_errors, which means that a failure response will be returned successfully.
We only check if the body is an array to verify whether it's a successful response, but we could get failure responses which satisfy this condition, such as:

{"error":"Payload too large"}

OrchestratorRequest::orchestrate should make better checks to return a successful response or return an error, at least:

  • response body is a ZObject
  • response body contains a Z22

Completion checklist

Details

Related Changes in Gerrit:
Related Changes in GitLab:
TitleReferenceAuthorSource BranchDest Branch
definitions: [Z577] Add a key for the (quoted) requestrepos/abstract-wiki/wikifunctions/function-schemata!342jforresterZ577-k2main
Update function-schemata sub-module to HEAD (748582d); rustversion: Bump prometheus to 0.14 for security fixrepos/abstract-wiki/wikifunctions/function-evaluator!517jforresterfix-rust-security-warningsmain
data: Provide Z577/Invalid orchestrator resultrepos/abstract-wiki/wikifunctions/function-schemata!335jforresterT414062main
Customize query in GitLab

Event Timeline

Jdforrester-WMF subscribed.

Impact is mostly on us as developers looking at the logs during chores, but it also means users get a confusing error rather than something more specific when a test/run fails.

Change #1262281 had a related patch set uploaded (by Jforrester; author: Jforrester):

[mediawiki/extensions/WikiLambda@master] [WIP] OrchestratorRequest: Ensure we always emit a Z22

https://gerrit.wikimedia.org/r/1262281

jforrester opened https://gitlab.wikimedia.org/repos/abstract-wiki/wikifunctions/function-evaluator/-/merge_requests/517

Update function-schemata sub-module to HEAD (748582d); rustversion: Bump wasmtime to 36.0.7 and prometheus to 0.14 for security fixes

jforrester merged https://gitlab.wikimedia.org/repos/abstract-wiki/wikifunctions/function-evaluator/-/merge_requests/517

Update function-schemata sub-module to HEAD (748582d); rustversion: Bump prometheus to 0.14 for security fix

Change #1276088 had a related patch set uploaded (by Jforrester; author: Jforrester):

[mediawiki/extensions/WikiLambda@master] Update function-schemata sub-module to HEAD (dd27923)

https://gerrit.wikimedia.org/r/1276088

Change #1276088 merged by jenkins-bot:

[mediawiki/extensions/WikiLambda@master] Update function-schemata sub-module to HEAD (dd27923)

https://gerrit.wikimedia.org/r/1276088

Change #1277265 had a related patch set uploaded (by Jforrester; author: Jforrester):

[mediawiki/extensions/WikiLambda@master] OrchestratorRequestTest: Use a realistic Z22 mock and assert HTTP status

https://gerrit.wikimedia.org/r/1277265

Change #1277265 merged by jenkins-bot:

[mediawiki/extensions/WikiLambda@master] OrchestratorRequestTest: Use a realistic Z22 mock and assert HTTP status

https://gerrit.wikimedia.org/r/1277265

Change #1277557 had a related patch set uploaded (by Jforrester; author: Jforrester):

[mediawiki/extensions/WikiLambda@master] Update function-schemata sub-module to HEAD (6e5476d)

https://gerrit.wikimedia.org/r/1277557

Change #1277557 merged by jenkins-bot:

[mediawiki/extensions/WikiLambda@master] Update function-schemata sub-module to HEAD (6e5476d)

https://gerrit.wikimedia.org/r/1277557

Change #1279362 had a related patch set uploaded (by Jforrester; author: Jforrester):

[operations/deployment-charts@master] wikifunctions: Upgrade evaluators from 2026-04-14-215402 to 2026-04-21-184122

https://gerrit.wikimedia.org/r/1279362

Change #1279363 had a related patch set uploaded (by Jforrester; author: Jforrester):

[operations/deployment-charts@master] wikifunctions: Upgrade orchestrator from 2026-04-15-195941 to 2026-04-29-001940

https://gerrit.wikimedia.org/r/1279363

Change #1279362 merged by jenkins-bot:

[operations/deployment-charts@master] wikifunctions: Upgrade evaluators from 2026-04-14-215402 to 2026-04-21-184122

https://gerrit.wikimedia.org/r/1279362

Change #1279363 merged by jenkins-bot:

[operations/deployment-charts@master] wikifunctions: Upgrade orchestrator from 2026-04-15-195941 to 2026-04-29-001940

https://gerrit.wikimedia.org/r/1279363

Change #1262281 merged by jenkins-bot:

[mediawiki/extensions/WikiLambda@master] OrchestratorRequest: Ensure we always emit a Z22

https://gerrit.wikimedia.org/r/1262281

Change #1283785 had a related patch set uploaded (by Jforrester; author: Jforrester):

[operations/deployment-charts@master] wikifunctions: Upgrade orchestrator from 2026-04-29-001940 to 2026-05-05-223522

https://gerrit.wikimedia.org/r/1283785

Change #1283785 merged by jenkins-bot:

[operations/deployment-charts@master] wikifunctions: Upgrade orchestrator from 2026-04-29-001940 to 2026-05-05-223522

https://gerrit.wikimedia.org/r/1283785

Change #1283786 had a related patch set uploaded (by Jforrester; author: Jforrester):

[operations/deployment-charts@master] wikifunctions: Upgrade evaluators from 2026-04-21-184122 to 2026-05-05-223640

https://gerrit.wikimedia.org/r/1283786

Change #1283786 merged by jenkins-bot:

[operations/deployment-charts@master] wikifunctions: Upgrade evaluators from 2026-04-21-184122 to 2026-05-05-223640

https://gerrit.wikimedia.org/r/1283786

Service-side part of this is now deployed; waiting for the train to roll with the WikiLambda-side parts.