User Details
- User Since
- Apr 14 2022, 9:50 AM (59 w, 2 d)
- Availability
- Available
- LDAP User
- AAssaf
- MediaWiki User
- AAssaf88 [ Global Accounts ]
Oct 13 2022
Hi Strobilomyces, the contents of the document have been ported to metawiki: https://meta.wikimedia.org/wiki/Abstract_Wikipedia/Semantics_of_validation_in_Wikifunctions. I'll update the OP.
Oct 7 2022
Thank you!
Sep 22 2022
Sep 21 2022
Note that I think this issue is not depending on the validation strategy (on the contrary, this issue would even be a blocker for a working validation strategy). We can fix and should fix it independently.
Sep 8 2022
Thank you Ori and Cory for looking into this!
Sep 1 2022
Aug 18 2022
As mentioned in today's eng meeting, "Z882K1" should probably not be accepted because the type is a transient type generated by a function. This is also touched up in the doc,
Aug 17 2022
Cory is right, it is very common for dynamically-checked languages to not enforce this.
Cory, do we consider this done with https://gerrit.wikimedia.org/r/c/mediawiki/services/function-orchestrator/+/787836?
Aug 16 2022
This topic also came up while working on scoping in the orchestrator. It turns out there are several different usages of local keys and subtle differences between them. I went ahead and summarized my current understanding in this doc, I hope it will help the team when tackling this subject: https://docs.google.com/document/d/1yGnvukO8hjOP3r7zdCjWNG1mQBQdICHyEQscGjC_rXQ/edit
Aug 15 2022
Noting that by removing the clone, at head there would be only 3 tests failing, because they are expecting the result to be slightly less resolved:
Aug 10 2022
Aug 8 2022
I confirm that this works now, maybe due to fixing https://phabricator.wikimedia.org/T309195.
Aug 5 2022
Noting that this is not just for booleans, trying to define the empty string function from https://phabricator.wikimedia.org/T309038 also does not work.
I think we can consider this done.
Aug 4 2022
Aug 3 2022
Aug 2 2022
Actually might not be related to lists migration, but here is an example:
$ lambda --noeval --normal 'if(true, [String, "a", "b"] , [String, "c", "d"])' { "Z1K1": { "Z1K1": "Z9", "Z9K1": "Z7" }, "Z7K1": { "Z1K1": "Z9", "Z9K1": "Z802" }, "Z802K1": { "Z1K1": "Z9", "Z9K1": "Z41" }, "Z802K2": { "Z1K1": { "Z1K1": { "Z1K1": "Z9", "Z9K1": "Z7" }, "Z7K1": { "Z1K1": "Z9", "Z9K1": "Z881" }, "Z881K1": { "Z1K1": "Z9", "Z9K1": "Z6" } }, "K1": { "Z1K1": "Z6", "Z6K1": "a" }, "K2": { "Z1K1": { "Z1K1": { "Z1K1": "Z9", "Z9K1": "Z7" }, "Z7K1": { "Z1K1": "Z9", "Z9K1": "Z881" }, "Z881K1": { "Z1K1": "Z9", "Z9K1": "Z6" } }, "K1": { "Z1K1": "Z6", "Z6K1": "b" }, "K2": { "Z1K1": { "Z1K1": { "Z1K1": "Z9", "Z9K1": "Z7" }, "Z7K1": { "Z1K1": "Z9", "Z9K1": "Z881" }, "Z881K1": { "Z1K1": "Z9", "Z9K1": "Z6" } } } } }, "Z802K3": { "Z1K1": { "Z1K1": { "Z1K1": "Z9", "Z9K1": "Z7" }, "Z7K1": { "Z1K1": "Z9", "Z9K1": "Z881" }, "Z881K1": { "Z1K1": "Z9", "Z9K1": "Z6" } }, "K1": { "Z1K1": "Z6", "Z6K1": "c" }, "K2": { "Z1K1": { "Z1K1": { "Z1K1": "Z9", "Z9K1": "Z7" }, "Z7K1": { "Z1K1": "Z9", "Z9K1": "Z881" }, "Z881K1": { "Z1K1": "Z9", "Z9K1": "Z6" } }, "K1": { "Z1K1": "Z6", "Z6K1": "d" }, "K2": { "Z1K1": { "Z1K1": { "Z1K1": "Z9", "Z9K1": "Z7" }, "Z7K1": { "Z1K1": "Z9", "Z9K1": "Z881" }, "Z881K1": { "Z1K1": "Z9", "Z9K1": "Z6" } } } } } } undefined function: If condition: true then: undefined K1: "a" K2: undefined K1: "b" K2: undefined else: undefined K1: "c" K2: undefined K1: "d" K2: undefined
There are still some undefined that show up due to the typed lists migration that we need to fix.
Jul 19 2022
Jul 18 2022
Jul 15 2022
Jul 14 2022
Repo was moved to https://github.com/wikimedia/mediawiki-tools-wikilambda-cli
Jul 13 2022
Jul 6 2022
Also mentioned with Denny and Ori the idea of bringing it over from Github into the WMF repositories and setting up CI for it to avoid future breakages.
Maybe related: https://phabricator.wikimedia.org/T310995
Some fixes were submitted in https://github.com/vrandezo/lambda-cli/pull/2.
Jul 5 2022
Jul 1 2022
Jun 29 2022
Jun 20 2022
Jun 13 2022
Jun 9 2022
Jun 8 2022
May 25 2022
May 24 2022
May 23 2022
That one was resolved by pointing the "wiki" in the config to the correct address ("http://localhost:8080"). By default the first one in the config is used (which by default is "https://wikifunctions.beta.wmflabs.org").
Now getting "could not delabel reference" when trying to evaluate:
It turns out the error UnhandledPromiseRejectionWarning: TypeError: s.toLowerCase(...).replaceAll is not a function was caused by my Node version being too old: https://stackoverflow.com/questions/13340131/string-prototype-replaceall-not-working. I switched to a newer version and the error went away.
May 19 2022
May 5 2022
Very early draft with more details on the goals and assumptions: https://docs.google.com/document/d/1olASGiCWKbT-XjAHO528HgZsx_pmVHO5tbPlZFGiex4/edit?pli=1#
Apr 20 2022
Thanks!