Page MenuHomePhabricator

Consider removing/replacing JSON schemata validators
Closed, ResolvedPublic

Description

Description

First, test whether this validation is the culprit:

  • track JS memory and CPU usage;
  • try knocking out return validation and running Echo( Resolve( L1 ) );
  • try knocking out JSON schemata validators and running the above;
  • we should see vastly reduced memory and/or CPU usage after both of the above

Desired behavior/Acceptance criteria (returned value, expected error, performance expectations, etc.)

  • rewrite validators in bare JS (no JSON schemata)?
  • eliminate extraneous asJSON* and copy calls on ZWrappers
  • "pre-validate" ZWrappers to avoid duplicate calculations?
  • only validate as type if type is not Z1 (for argument declarations/return types)?

Remove all the non-applicable tags from the "Tags" field, leave only the tags of the projects/repositories related to this task


Completion checklist

Event Timeline

DSantamaria changed the task status from Open to In Progress.Feb 6 2025, 12:11 PM

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

Add isZObject function which finds the first path leading to an invalid object: faster and cheaper than validatesAsZObject!

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

[operations/deployment-charts@master] wikifunctions: Update orchestrator from 2025-03-05-140247 to 2025-03-11-234105

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

Change #1126996 merged by jenkins-bot:

[operations/deployment-charts@master] wikifunctions: Update orchestrator from 2025-03-05-140247 to 2025-03-11-234105

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

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

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

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

Change #1128013 merged by jenkins-bot:

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

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

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

[operations/deployment-charts@master] wikifunctions: Update evaluators from 2025-03-11-234147 to 2025-03-19-125950

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

Change #1129367 merged by jenkins-bot:

[operations/deployment-charts@master] wikifunctions: Update evaluators from 2025-03-11-234147 to 2025-03-19-125950

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

cmassaro updated the task description. (Show Details)
cmassaro updated the task description. (Show Details)

JSON schemata have been completely eliminated as of composition language v2! The other items here were also swept away with the refactor.

cmassaro claimed this task.