#### Description
This is a request for a performance review of Wikifunctions from 1-June-2021 (Tuesday) to 14-June-2021 (Monday), inclusive.
The system is composed of a JavaScript Vue client, MediaWiki PHP middleware, and backend Node.js orchestration/evaluation (n.b., user-defined functions will be supported in Node.js and Python in earlier releases of Wikifunctions).
https://gerrit.wikimedia.org/r/plugins/gitiles/mediawiki/extensions/WikiLambda/+/refs/heads/master
https://gerrit.wikimedia.org/r/plugins/gitiles/mediawiki/services/function-evaluator/+/refs/heads/master
https://gerrit.wikimedia.org/r/plugins/gitiles/mediawiki/services/function-orchestrator/+/refs/heads/master
#### Preview environment
It is presently possible to run the Mediawiki extension WikiLambda in [[ https://gerrit.wikimedia.org/r/plugins/gitiles/mediawiki/core/+/refs/heads/master/DEVELOPERS.md | MediaWiki-Docker ]] with [[https://www.mediawiki.org/wiki/MediaWiki-Docker/Extension/WikiLambda | minimal configuration), and wireup for orchestration and evaluation is in flight.
#### Which code to review
We're interested in evaluation of performance across the tiers. It should be noted that we expect this new Wikimedia project's user base to be small at first, and therefore its computational needs comparatively modest at first.
#### Performance assessment
Q&A:
- What work has been done to ensure the best possible performance of the feature? So far, we haven't begun optimization for performance.
- What are likely to be the weak areas (e.g. bottlenecks) of the code in terms of performance? Snappy FTUX on the Vue client side app, or at least effective management of user expectations for FTUX on the Vue client side app, type conformance checking on the JSON UGC, and function execution bottlenecks.
- Are there potential optimisations that haven't been performed yet? Yes.
- Please list which performance measurements are in place for the feature and/or what you've measured ad-hoc so far. If you are unsure what to measure, ask the Performance Team for advice: [[ mailto:performance-team@wikimedia.org | performance-team@wikimedia.org ]]. Not much. We do intend to have various profiling measures in place in the future, as it will likely play into different types of optimization (e.g., whether to run a function in our system-defined PHP sandbox versus executing in a Node runtime if a JavaScript UDF is also available for a function) and we'll need guards in place to monitor and address yet-to-be-defined SLOs; but this is MVP work.