Page MenuHomePhabricator

Jdforrester-WMF (James D. Forrester)
Software Engineer

Today

  • Clear sailing ahead.

Tomorrow

  • Clear sailing ahead.

Friday

  • Clear sailing ahead.

User Details

User Since
Oct 6 2014, 10:08 PM (554 w, 2 d)
Availability
Available
IRC Nick
James_F
LDAP User
Jforrester
MediaWiki User
Jdforrester (WMF) [ Global Accounts ]

I've been a Wikipedia editor since 2002 on the English Wikipedia and a few other Wikimedia projects. In May 2012, I joined the Wikimedia Foundation as a "product manager", initially for VisualEditor, the the Editing Team, and later the lead product manager for all contribution. In 2018, I moved to be a software engineer, working on reliability, infrastructure, developer tooling, and continuous integration and deployment.

My job is to help ensure that the tools we provide to our readers and contributors are the best the can be, in speed, correctness, consistency, utility, and reliability.

Recent Activity

Today

Jdforrester-WMF moved T391914: [PHP]: Allow only Z7(Z6884) persisted as root object from Needs Sign-off to Ready to deploy on the Abstract Wikipedia team (25Q4 (Apr–Jun)) board.
Wed, May 21, 8:02 PM · MW-1.45-notes (1.45.0-wmf.3; 2025-05-27), OKR-Work, Abstract Wikipedia team (25Q4 (Apr–Jun)), WikiLambda
Jdforrester-WMF moved T391913: [PHP]: Add rights for creation & editing of lightweight enum types from In Code review to Ready to deploy on the Abstract Wikipedia team (25Q4 (Apr–Jun)) board.
Wed, May 21, 8:02 PM · Patch-For-Review, OKR-Work, Abstract Wikipedia team (25Q4 (Apr–Jun)), WikiLambda
Jdforrester-WMF updated the task description for T381537: Raise Grade A JavaScript requirement from ES2016 (ES7) to ES2017 (ES8).
Wed, May 21, 6:29 PM · Patch-For-Review, User-notice, MediaWiki-Platform-Team, MediaWiki-ResourceLoader, JavaScript
Jdforrester-WMF moved T392118: Add metrics to track async content (Wikifunctions) SLO from Ready to deploy to Needs Sign-off on the Abstract Wikipedia team (25Q4 (Apr–Jun)) board.

"Extra update MedaiWiki jobs due to Wikifunctions content" will be the mediawiki_refreshlinks_parsercache_operations_total metric with status=cache_miss and has_async_content=true. This the total number of refresh links jobs with async content. If you look at the label async_not_ready=true then these are jobs which are going to need to be repeated once the async content is ready, and so they are "extra" update jobs. In addition, there will be a few extra update jobs with async_not_ready=false when entries fall out of the parser cache, do to the way we currently handle updating async content. So the range of "extra" jobs is between the lower bound of the # of jobs with async_not_ready=true and the upper bound of the # of jobs with has_async_content=true. We can refine this metric further if/when the upper bound gets close to our SLI limit.

Unfortunately, this metric is fixed at 0 right now because we don't use Parsoid to trigger refreshlinks jobs, only legacy parses. Since WF is Parsoid-only at the moment, WF can't affect page metadata and therefore there are currently no extra refreshlinksjobs being created for WF. This will change in the future though (T393716: RefreshLinksJob should use Parsoid-generated metadata).

Wed, May 21, 6:05 PM · MW-1.44-notes (1.44.0-wmf.27; 2025-04-29), OKR-Work, Abstract Wikipedia team (25Q4 (Apr–Jun)), Content-Transform-Team (Work In Progress)
Jdforrester-WMF added projects to T392085: PHP Warning: Undefined array key 27: Content-Transform-Team, Abstract Wikipedia team, Essential-Work.

Re-triggered logstash link looking at https://test.wikipedia.org/wiki/MavetunaTest. The page is filled with Wikifunctions client calls and simple wikitext. Are we accidentally triggering the wrong path here?

Wed, May 21, 5:15 PM · Essential-Work, Abstract Wikipedia team, Content-Transform-Team, Parsoid, JsonCodec, Wikimedia-production-error
Jdforrester-WMF moved T394557: Make catalyst build / selenium tests blocking in evaluator gitlab pipeline from Incoming to Ready on the Abstract Wikipedia team (25Q4 (Apr–Jun)) board.
Wed, May 21, 3:57 PM · Abstract Wikipedia team (25Q4 (Apr–Jun)), Essential-Work, function-evaluator, Catalyst
Jdforrester-WMF moved T394401: Update Z1124/en-x-simple primary language code to en-simple from Incoming to Ready on the Abstract Wikipedia team (25Q4 (Apr–Jun)) board.
Wed, May 21, 3:57 PM · Abstract Wikipedia team (25Q4 (Apr–Jun)), Essential-Work, function-schemata
Jdforrester-WMF triaged T394557: Make catalyst build / selenium tests blocking in evaluator gitlab pipeline as Medium priority.
Wed, May 21, 3:57 PM · Abstract Wikipedia team (25Q4 (Apr–Jun)), Essential-Work, function-evaluator, Catalyst
Jdforrester-WMF moved T394558: Make catalyst build / selenium tests blocking in orchestrator gitlab pipeline from Incoming to Ready on the Abstract Wikipedia team (25Q4 (Apr–Jun)) board.
Wed, May 21, 3:57 PM · Essential-Work, Abstract Wikipedia team (25Q4 (Apr–Jun)), function-evaluator, Catalyst
Jdforrester-WMF triaged T394558: Make catalyst build / selenium tests blocking in orchestrator gitlab pipeline as Medium priority.
Wed, May 21, 3:57 PM · Essential-Work, Abstract Wikipedia team (25Q4 (Apr–Jun)), function-evaluator, Catalyst
Jdforrester-WMF moved T394672: Spike: Optimize Further the ZID Batching Algorithms from Incoming to Ready on the Abstract Wikipedia team (25Q4 (Apr–Jun)) board.
Wed, May 21, 3:57 PM · Abstract Wikipedia team (25Q4 (Apr–Jun)), OKR-Work, function-orchestrator
Jdforrester-WMF triaged T391807: Replace our Preview component with Codex Accordion when it supports a 'controlled' isOpen property as Medium priority.
Wed, May 21, 3:57 PM · Abstract Wikipedia team, Abstract Wikipedia Fix-It tasks, WikiLambda Front-end
Jdforrester-WMF added projects to T394917: Capacity planning for Wikifunctions services: Essential-Work, Epic.

Provisional concept of a Q1 epic.

Wed, May 21, 3:56 PM · Epic, Essential-Work, function-schemata, function-evaluator, function-orchestrator, Abstract Wikipedia team
Jdforrester-WMF added a project to T394913: Consider passing only type conversion information to the evaluator (no types): Epic.

Provisional concept of a Q1 epic.

Wed, May 21, 3:56 PM · Epic, function-schemata, function-evaluator, function-orchestrator, Abstract Wikipedia team
Jdforrester-WMF triaged T394839: Inject config into ZObjectSecondaryDataUpdate as Low priority.
Wed, May 21, 3:54 PM · Essential-Work, Abstract Wikipedia Fix-It tasks, WikiLambda, Abstract Wikipedia team
Jdforrester-WMF moved T394820: Replace use of mw.Uri with native URL API from To Triage to Engineering Backlog on the Abstract Wikipedia team board.
Wed, May 21, 3:54 PM · Abstract Wikipedia team, WikiLambda Front-end, Abstract Wikipedia Fix-It tasks, Essential-Work, WikiLambda, Technical-Debt, JavaScript
Jdforrester-WMF triaged T394820: Replace use of mw.Uri with native URL API as Medium priority.
Wed, May 21, 3:54 PM · Abstract Wikipedia team, WikiLambda Front-end, Abstract Wikipedia Fix-It tasks, Essential-Work, WikiLambda, Technical-Debt, JavaScript
Jdforrester-WMF triaged T394769: Z24086/display Gregorian month currently fails as High priority.
Wed, May 21, 3:53 PM · Abstract Wikipedia team
Jdforrester-WMF merged T394768: Built-in function that returns the Z2 given a ZID into T366246: fetch Persistent object (Z828) errors in evaluation (in test case).
Wed, May 21, 3:52 PM · Abstract Wikipedia team, Wikifunctions
Jdforrester-WMF merged task T394768: Built-in function that returns the Z2 given a ZID into T366246: fetch Persistent object (Z828) errors in evaluation (in test case).
Wed, May 21, 3:52 PM · Abstract Wikipedia team
Jdforrester-WMF triaged T394672: Spike: Optimize Further the ZID Batching Algorithms as Medium priority.
Wed, May 21, 3:51 PM · Abstract Wikipedia team (25Q4 (Apr–Jun)), OKR-Work, function-orchestrator
Jdforrester-WMF triaged T394664: get nth element of a list fails too much as Medium priority.
Wed, May 21, 3:50 PM · function-orchestrator, Abstract Wikipedia team
Jdforrester-WMF added a project to T394664: get nth element of a list fails too much: function-orchestrator.
Wed, May 21, 3:50 PM · function-orchestrator, Abstract Wikipedia team
Jdforrester-WMF triaged T394663: dot product code implementations fail as High priority.
Wed, May 21, 3:49 PM · function-orchestrator, Abstract Wikipedia team
Jdforrester-WMF triaged T394658: When running composition implementation of "lists have equal length", evaluator returns "Cannot read property .toString of undefined" as High priority.
Wed, May 21, 3:46 PM · Abstract Wikipedia team (25Q4 (Apr–Jun)), Essential-Work, WikiLambda, function-schemata, function-evaluator, function-orchestrator
Jdforrester-WMF moved T394658: When running composition implementation of "lists have equal length", evaluator returns "Cannot read property .toString of undefined" from Incoming to Ready to deploy on the Abstract Wikipedia team (25Q4 (Apr–Jun)) board.
Wed, May 21, 3:46 PM · Abstract Wikipedia team (25Q4 (Apr–Jun)), Essential-Work, WikiLambda, function-schemata, function-evaluator, function-orchestrator
Jdforrester-WMF edited projects for T394658: When running composition implementation of "lists have equal length", evaluator returns "Cannot read property .toString of undefined", added: Essential-Work, Abstract Wikipedia team (25Q4 (Apr–Jun)); removed Abstract Wikipedia team.
Wed, May 21, 3:46 PM · Abstract Wikipedia team (25Q4 (Apr–Jun)), Essential-Work, WikiLambda, function-schemata, function-evaluator, function-orchestrator
Jdforrester-WMF edited projects for T394558: Make catalyst build / selenium tests blocking in orchestrator gitlab pipeline, added: Abstract Wikipedia team (25Q4 (Apr–Jun)), Essential-Work; removed Abstract Wikipedia team.
Wed, May 21, 3:43 PM · Essential-Work, Abstract Wikipedia team (25Q4 (Apr–Jun)), function-evaluator, Catalyst
Jdforrester-WMF edited projects for T394557: Make catalyst build / selenium tests blocking in evaluator gitlab pipeline, added: Essential-Work, Abstract Wikipedia team (25Q4 (Apr–Jun)); removed Abstract Wikipedia team.
Wed, May 21, 3:43 PM · Abstract Wikipedia team (25Q4 (Apr–Jun)), Essential-Work, function-evaluator, Catalyst
Jdforrester-WMF triaged T394494: Wikifunctions client logging: Figure out if it's possible to add more details of the caller in FunctionCallHandler failure logs as Medium priority.

Problem: The FunctionCallHandler operates on WF.org without context intentionally; passing that along will disrupt the cacheability. To discuss further. Let's discuss further.

Wed, May 21, 3:42 PM · WikiLambda, Abstract Wikipedia team
Jdforrester-WMF moved T394458: Make it nice to use function closures and possibly anonymous functions in composition editing mode from To Triage to No current plans / External on the Abstract Wikipedia team board.

We're pretty sure this should work in the back-end, but building the composition in the UX may well be hard/impossible. Did you manage to write such a composition and run into issues (in which case it's a definite bug), or is this more that it seemed/was impossible?

Wed, May 21, 3:40 PM · Abstract Wikipedia team, Wikifunctions
Jdforrester-WMF renamed T394458: Make it nice to use function closures and possibly anonymous functions in composition editing mode from Function closures and possibly anonymous functions to Make it nice to use function closures and possibly anonymous functions in composition editing mode.
Wed, May 21, 3:39 PM · Abstract Wikipedia team, Wikifunctions
Jdforrester-WMF renamed T394442: Use better node libraries for memcached access in the function-orchestrator from Use better npms for memcached to Use better node libraries for memcached access in the function-orchestrator.
Wed, May 21, 3:37 PM · Abstract Wikipedia team (25Q4 (Apr–Jun)), OKR-Work, function-orchestrator
Jdforrester-WMF moved T394442: Use better node libraries for memcached access in the function-orchestrator from Incoming to Ready on the Abstract Wikipedia team (25Q4 (Apr–Jun)) board.
Wed, May 21, 3:37 PM · Abstract Wikipedia team (25Q4 (Apr–Jun)), OKR-Work, function-orchestrator
Jdforrester-WMF triaged T394442: Use better node libraries for memcached access in the function-orchestrator as High priority.
Wed, May 21, 3:37 PM · Abstract Wikipedia team (25Q4 (Apr–Jun)), OKR-Work, function-orchestrator
Jdforrester-WMF moved T394410: Move management of recommended Wikifunctions to use CommunityConfiguration from To Triage to Product Backlog on the Abstract Wikipedia team board.
Wed, May 21, 3:36 PM · WikiLambda, CommunityConfiguration-Adoption, Abstract Wikipedia team
Jdforrester-WMF triaged T394410: Move management of recommended Wikifunctions to use CommunityConfiguration as Low priority.
Wed, May 21, 3:36 PM · WikiLambda, CommunityConfiguration-Adoption, Abstract Wikipedia team
Jdforrester-WMF triaged T394401: Update Z1124/en-x-simple primary language code to en-simple as Low priority.
Wed, May 21, 3:34 PM · Abstract Wikipedia team (25Q4 (Apr–Jun)), Essential-Work, function-schemata
Jdforrester-WMF moved T393737: Add wikilambda back into patchdemo (in client mode) from To Triage to No current plans / External on the Abstract Wikipedia team board.
Wed, May 21, 3:33 PM · Abstract Wikipedia team, Test-Platform, WikiLambda, Catalyst (PatchDemo)
Jdforrester-WMF moved T390563: Develop a plan for how we might support macro-languages like Chinese, so that we can see how to support them as groups in future from To Triage to Product Backlog on the Abstract Wikipedia team board.
Wed, May 21, 3:33 PM · Abstract Wikipedia team
Jdforrester-WMF closed T365786: serialising lists of months from code as Resolved.

@Jdforrester-WMF Should we close it?

Wed, May 21, 2:51 PM · Essential-Work, Abstract Wikipedia team (25Q4 (Apr–Jun)), Wikifunctions
Jdforrester-WMF assigned T365786: serialising lists of months from code to cmassaro.
Wed, May 21, 2:51 PM · Essential-Work, Abstract Wikipedia team (25Q4 (Apr–Jun)), Wikifunctions
Jdforrester-WMF added a comment to T392152: Determine what (if any) process changes are wanted before further deployment.

So, should we close it?

Wed, May 21, 2:39 PM · OKR-Work, Abstract Wikipedia team (25Q4 (Apr–Jun))
Jdforrester-WMF closed T394107: TypeError: MediaWiki\Extension\WikiLambda\ZObjects\ZObject::setValueByKey(): Argument #2 ($value) must be of type MediaWiki\Extension\WikiLambda\ZObjects\ZObject, string given, called in /srv/mediawiki/php-1.44.0-wmf.28/extensi as Resolved.
Wed, May 21, 1:00 PM · MW-1.45-notes (1.45.0-wmf.2; 2025-05-20), Abstract Wikipedia team (25Q4 (Apr–Jun)), WikiLambda, Essential-Work, Wikimedia-production-error
Jdforrester-WMF closed T300530: WikiLambda: Improve performance of ZTypeRegistry::isZObjectKeyKnown DB call as Resolved.
Wed, May 21, 12:59 PM · MW-1.45-notes (1.45.0-wmf.1; 2025-05-13), Abstract Wikipedia team (25Q4 (Apr–Jun)), Patch-For-Review, Abstract Wikipedia Fix-It tasks, WikiLambda
Jdforrester-WMF moved T391329: Z23746 Unable to run tests. Please reload. from In Engineering to Needs Sign-off on the Abstract Wikipedia team (25Q4 (Apr–Jun)) board.

To confirm that this is (finally!) fixed.

Wed, May 21, 12:57 PM · MW-1.45-notes (1.45.0-wmf.3; 2025-05-27), Abstract Wikipedia team (25Q4 (Apr–Jun)), Essential-Work, Wikimedia-production-error
Jdforrester-WMF closed T394385: ZObjectFactory: handle literal languages on ZObject creation and validation: as Resolved.
Wed, May 21, 12:56 PM · MW-1.45-notes (1.45.0-wmf.2; 2025-05-20), Abstract Wikipedia team (25Q4 (Apr–Jun)), Essential-Work, WikiLambda
Jdforrester-WMF closed T391439: WikifunctionsPFragmentHandler: Make extractWikifunctionCallArguments ignore named arguments as Resolved.
Wed, May 21, 12:56 PM · MW-1.45-notes (1.45.0-wmf.2; 2025-05-20), Essential-Work, Abstract Wikipedia team (25Q4 (Apr–Jun)), WikiLambda
Jdforrester-WMF closed T391589: WikifunctionsPFragmentHandler: Response empty string causes PHP exception, a subtask of T390552: Make embedded Wikifunctions available in at least five more Wikimedia projects, to learn from other languages and communities, as Resolved.
Wed, May 21, 12:56 PM · Patch-For-Review, Workstreams, Release, OKR-Work, Abstract Wikipedia team (25Q4 (Apr–Jun))
Jdforrester-WMF closed T391589: WikifunctionsPFragmentHandler: Response empty string causes PHP exception as Resolved.
Wed, May 21, 12:56 PM · MW-1.45-notes (1.45.0-wmf.2; 2025-05-20), OKR-Work, Abstract Wikipedia team (25Q4 (Apr–Jun)), WikiLambda
Jdforrester-WMF closed T362251: Wikifunction parser tag: Trimming wikitext inputs means users can't use whitespace-only inputs, but not trimming them would break user inputs of wikitext, a subtask of T391021: Implement default value replacement for Gregorian calendar date with today's date as per local client wiki timezone., as Resolved.
Wed, May 21, 12:56 PM · Abstract Wikipedia team (25Q4 (Apr–Jun)), OKR-Work, WikiLambda
Jdforrester-WMF closed T362251: Wikifunction parser tag: Trimming wikitext inputs means users can't use whitespace-only inputs, but not trimming them would break user inputs of wikitext as Resolved.
Wed, May 21, 12:56 PM · OKR-Work, MW-1.45-notes (1.45.0-wmf.2; 2025-05-20), Abstract Wikipedia team (25Q4 (Apr–Jun)), WikiLambda
Jdforrester-WMF added a comment to T394116: Create generic-type functions for zobject-based lightweight enums.

Needs the pull-throughs to land before it can be deployed.

Wed, May 21, 12:55 PM · OKR-Work, Abstract Wikipedia team (25Q4 (Apr–Jun)), function-schemata
Jdforrester-WMF added a project to T391023: [VE WikifunctionsCall]: Accept empty values for Gregorian calendar date without failing on validation: MW-1.45-notes (1.45.0-wmf.3; 2025-05-27).
Wed, May 21, 12:54 PM · MW-1.45-notes (1.45.0-wmf.3; 2025-05-27), Abstract Wikipedia team (25Q4 (Apr–Jun)), OKR-Work, WikiLambda Front-end, WikiLambda
Jdforrester-WMF moved T393631: refactor remainder of logs to use appropriate sev levels from Ready to deploy to In Code review on the Abstract Wikipedia team (25Q4 (Apr–Jun)) board.
Wed, May 21, 12:54 PM · Patch-For-Review, OKR-Work, Abstract Wikipedia team (25Q4 (Apr–Jun)), Abstract Wikipedia Fix-It tasks
Jdforrester-WMF moved T393035: return 4/5xx HTTP status codes when valid from Ready to deploy to Needs Sign-off on the Abstract Wikipedia team (25Q4 (Apr–Jun)) board.
Wed, May 21, 12:53 PM · MW-1.45-notes (1.45.0-wmf.2; 2025-05-20), WikiLambda, OKR-Work, Abstract Wikipedia team (25Q4 (Apr–Jun))
Jdforrester-WMF moved T300530: WikiLambda: Improve performance of ZTypeRegistry::isZObjectKeyKnown DB call from Ready to deploy to Needs Sign-off on the Abstract Wikipedia team (25Q4 (Apr–Jun)) board.
Wed, May 21, 12:53 PM · MW-1.45-notes (1.45.0-wmf.1; 2025-05-13), Abstract Wikipedia team (25Q4 (Apr–Jun)), Patch-For-Review, Abstract Wikipedia Fix-It tasks, WikiLambda
Jdforrester-WMF moved T394107: TypeError: MediaWiki\Extension\WikiLambda\ZObjects\ZObject::setValueByKey(): Argument #2 ($value) must be of type MediaWiki\Extension\WikiLambda\ZObjects\ZObject, string given, called in /srv/mediawiki/php-1.44.0-wmf.28/extensi from Ready to deploy to Needs Sign-off on the Abstract Wikipedia team (25Q4 (Apr–Jun)) board.
Wed, May 21, 12:53 PM · MW-1.45-notes (1.45.0-wmf.2; 2025-05-20), Abstract Wikipedia team (25Q4 (Apr–Jun)), WikiLambda, Essential-Work, Wikimedia-production-error
Jdforrester-WMF moved T394385: ZObjectFactory: handle literal languages on ZObject creation and validation: from Ready to deploy to Needs Sign-off on the Abstract Wikipedia team (25Q4 (Apr–Jun)) board.
Wed, May 21, 12:53 PM · MW-1.45-notes (1.45.0-wmf.2; 2025-05-20), Abstract Wikipedia team (25Q4 (Apr–Jun)), Essential-Work, WikiLambda
Jdforrester-WMF moved T391914: [PHP]: Allow only Z7(Z6884) persisted as root object from Ready to deploy to Needs Sign-off on the Abstract Wikipedia team (25Q4 (Apr–Jun)) board.
Wed, May 21, 12:53 PM · MW-1.45-notes (1.45.0-wmf.3; 2025-05-27), OKR-Work, Abstract Wikipedia team (25Q4 (Apr–Jun)), WikiLambda
Jdforrester-WMF moved T391439: WikifunctionsPFragmentHandler: Make extractWikifunctionCallArguments ignore named arguments from Ready to deploy to Needs Sign-off on the Abstract Wikipedia team (25Q4 (Apr–Jun)) board.
Wed, May 21, 12:53 PM · MW-1.45-notes (1.45.0-wmf.2; 2025-05-20), Essential-Work, Abstract Wikipedia team (25Q4 (Apr–Jun)), WikiLambda
Jdforrester-WMF moved T391589: WikifunctionsPFragmentHandler: Response empty string causes PHP exception from Ready to deploy to Needs Sign-off on the Abstract Wikipedia team (25Q4 (Apr–Jun)) board.
Wed, May 21, 12:53 PM · MW-1.45-notes (1.45.0-wmf.2; 2025-05-20), OKR-Work, Abstract Wikipedia team (25Q4 (Apr–Jun)), WikiLambda
Jdforrester-WMF moved T362251: Wikifunction parser tag: Trimming wikitext inputs means users can't use whitespace-only inputs, but not trimming them would break user inputs of wikitext from Ready to deploy to Needs Sign-off on the Abstract Wikipedia team (25Q4 (Apr–Jun)) board.
Wed, May 21, 12:53 PM · OKR-Work, MW-1.45-notes (1.45.0-wmf.2; 2025-05-20), Abstract Wikipedia team (25Q4 (Apr–Jun)), WikiLambda
Jdforrester-WMF changed the status of T391971: Create persist-to-cache endpoint in the orchestrator, a subtask of T390743: Read Objects from the Wikifunctions memcached in the function-orchestrator, rather than via HTTP calls to wikifunctions.org, from Open to In Progress.
Wed, May 21, 12:41 PM · Performance Issue, function-orchestrator, WikiLambda, OKR-Work, Abstract Wikipedia team (25Q4 (Apr–Jun))
Jdforrester-WMF changed the status of T391971: Create persist-to-cache endpoint in the orchestrator from Open to In Progress.
Wed, May 21, 12:41 PM · MW-1.45-notes (1.45.0-wmf.3; 2025-05-27), Patch-For-Review, OKR-Work, Abstract Wikipedia team (25Q4 (Apr–Jun)), WikiLambda, function-orchestrator
Jdforrester-WMF added a comment to T394912: Decide on process to document important/breaking changes in bundled skins/extensions in MW core RELEASE-NOTES.

Specifically, this is about breaking-for-sysadmins changes, I think? New config/new requirements/new behaviour, rather than anything at the code level.

Wed, May 21, 12:40 PM · MediaWiki-Releasing (Workflow Improvements), Documentation

Yesterday

Jdforrester-WMF closed T394404: PHP Deprecated: Use of MediaWiki\Xml\Xml::radio was deprecated in MediaWiki 1.42. [Called from SpecialCentralNoticeLogs::getLogSwitcher] as Resolved.

Should now be fixed.

Tue, May 20, 9:06 PM · MW-1.45-notes (1.45.0-wmf.1; 2025-05-13), MediaWiki-extensions-CentralNotice, Wikimedia-production-error
Jdforrester-WMF closed T394025: PHP Deprecated: Use of MediaWiki\Xml\Xml::input was deprecated in MediaWiki 1.42. [Called from MediaWiki\Xml\Xml::inputLabelSep] as Resolved.

Should now be fixed.

Tue, May 20, 9:05 PM · MW-1.45-notes (1.45.0-wmf.1; 2025-05-13), Patch-For-Review, affects-translatewiki.net, MediaWiki-extensions-LiquidThreads, Wikimedia-production-error
Jdforrester-WMF closed T394270: LogicException: Title not found! as Resolved.
Tue, May 20, 8:59 PM · MW-1.45-notes (1.45.0-wmf.1; 2025-05-13), Content-Transform-Team (Work In Progress), Parsoid, Wikimedia-production-error
Jdforrester-WMF added a comment to T394270: LogicException: Title not found!.

Confirmed also with the code on k8s-mwdebug:

Tue, May 20, 8:57 PM · MW-1.45-notes (1.45.0-wmf.1; 2025-05-13), Content-Transform-Team (Work In Progress), Parsoid, Wikimedia-production-error
Jdforrester-WMF added a comment to T394846: GrowthExperiments fatal on REL1_39.

Oh, sorry, I thought we'd already landed all these 8.1 fixes into major extensions' REL1_39 branches.

Tue, May 20, 8:53 PM · ci-test-error (WMF-deployed Build Failure), PHP 8.1 support, Continuous-Integration-Config, GrowthExperiments-NewcomerTasks, Growth-Team, MW-1.39-release
Jdforrester-WMF added a comment to T394814: Unable to have multiple captcha implementations in extension-list.

I wouldn't object to that personally.

Long-term that might actually be a viable direction for the extension, to treat the selected backend as a config var / pluggable service class, rather than a separate extension with separate hooks each. Just an idea at this point, there may be various issue with this that I haven't thought through yet :)

Tue, May 20, 8:49 PM · MW-1.45-notes (1.45.0-wmf.1; 2025-05-13), Wikimedia-production-error, Patch-For-Review, Scap, WMF-General-or-Unknown, ConfirmEdit (CAPTCHA extension)
Jdforrester-WMF added a comment to T328921: Drop PHP 7.4 and PHP 8.0 support from MediaWiki.

I have a dummy question to ask: once we get the green light from the ServiceOps team to proceed with the deprecation of PHP7.4, what's the effort for the work needed to proceed? Is it possible to measure how many weeks are needed to complete the work?

[…] Your follow-up question below suggests you mean just the actual dropping of active PHP 7.4/8.0 support, which is already done in REL1_44 (like with REL1_43 and REL1_42).

[…] I don't see how this is relevant to the 1.44 release timeline. PHP 7.4 and 8.0 support were dropped in MW 1.42, with a special hack […]

I believe Mateus, by proxy of me, is operating on the assumption that the "backwards cherry-pick" that we applied to MW 1.42 and MW 1.43 (i.e. the dropping of 7.4 and 8.0 support, which is a patch we kind of backported to those two REL branches, but hasn't landed in the master branch yet), is something we prefer not to repeat for the MW 1.44 release.

Tue, May 20, 7:48 PM · MW-1.45-notes (1.45.0-wmf.3; 2025-05-27), MediaWiki-Engineering, PHP 8.0 support, MW-1.44-release, MW-1.42-release, Patch-For-Review, MW-1.43-release, PHP 7.4 support, Epic, MediaWiki-General
Jdforrester-WMF awarded T394834: Use refactored PEG grammar for `{{#....}}` constructs a Like token.
Tue, May 20, 7:10 PM · Content-Transform-Team (Work In Progress), Parsoid-Read-Views (Performance and Cache research Q4 FY24-25), Parsoid
Jdforrester-WMF added a comment to T392165: Preset for "current day" on Wikifunctions integration wikis.

@Jdforrester-WMF Why is this the parent of a # workstream like "Null Values"?

Tue, May 20, 7:05 PM · OKR-Work, Abstract Wikipedia team
Jdforrester-WMF moved T390552: Make embedded Wikifunctions available in at least five more Wikimedia projects, to learn from other languages and communities from In Engineering to Ready to deploy on the Abstract Wikipedia team (25Q4 (Apr–Jun)) board.
Tue, May 20, 6:56 PM · Patch-For-Review, Workstreams, Release, OKR-Work, Abstract Wikipedia team (25Q4 (Apr–Jun))
Jdforrester-WMF changed the status of T392153: Determine what (if any) feature changes are wanted before further deployment from Open to In Progress.

I believe we have agreed that we are OK to deploy as-is from a code perspective (with changes landed since original deploy).

Tue, May 20, 6:53 PM · OKR-Work, Abstract Wikipedia team (25Q4 (Apr–Jun))
Jdforrester-WMF changed the status of T392153: Determine what (if any) feature changes are wanted before further deployment, a subtask of T390552: Make embedded Wikifunctions available in at least five more Wikimedia projects, to learn from other languages and communities, from Open to In Progress.
Tue, May 20, 6:53 PM · Patch-For-Review, Workstreams, Release, OKR-Work, Abstract Wikipedia team (25Q4 (Apr–Jun))
Jdforrester-WMF changed the status of T392152: Determine what (if any) process changes are wanted before further deployment, a subtask of T390552: Make embedded Wikifunctions available in at least five more Wikimedia projects, to learn from other languages and communities, from Open to In Progress.
Tue, May 20, 6:53 PM · Patch-For-Review, Workstreams, Release, OKR-Work, Abstract Wikipedia team (25Q4 (Apr–Jun))
Jdforrester-WMF changed the status of T392152: Determine what (if any) process changes are wanted before further deployment from Open to In Progress.

I believe we have agreed that we are OK to deploy as-is from a process perspective.

Tue, May 20, 6:53 PM · OKR-Work, Abstract Wikipedia team (25Q4 (Apr–Jun))
Jdforrester-WMF added a project to T362251: Wikifunction parser tag: Trimming wikitext inputs means users can't use whitespace-only inputs, but not trimming them would break user inputs of wikitext: OKR-Work.
Tue, May 20, 6:35 PM · OKR-Work, MW-1.45-notes (1.45.0-wmf.2; 2025-05-20), Abstract Wikipedia team (25Q4 (Apr–Jun)), WikiLambda
Jdforrester-WMF added a subtask for T391021: Implement default value replacement for Gregorian calendar date with today's date as per local client wiki timezone.: T362251: Wikifunction parser tag: Trimming wikitext inputs means users can't use whitespace-only inputs, but not trimming them would break user inputs of wikitext.
Tue, May 20, 6:35 PM · Abstract Wikipedia team (25Q4 (Apr–Jun)), OKR-Work, WikiLambda
Jdforrester-WMF added a parent task for T362251: Wikifunction parser tag: Trimming wikitext inputs means users can't use whitespace-only inputs, but not trimming them would break user inputs of wikitext: T391021: Implement default value replacement for Gregorian calendar date with today's date as per local client wiki timezone..
Tue, May 20, 6:35 PM · OKR-Work, MW-1.45-notes (1.45.0-wmf.2; 2025-05-20), Abstract Wikipedia team (25Q4 (Apr–Jun)), WikiLambda
Jdforrester-WMF added a comment to T362251: Wikifunction parser tag: Trimming wikitext inputs means users can't use whitespace-only inputs, but not trimming them would break user inputs of wikitext.

It's OKR work, but wasn't tagged as such.

Tue, May 20, 6:35 PM · OKR-Work, MW-1.45-notes (1.45.0-wmf.2; 2025-05-20), Abstract Wikipedia team (25Q4 (Apr–Jun)), WikiLambda
Jdforrester-WMF moved T390551: Collect feedback from Dagbani Wikipedia community on Wikifunctions integration from In Engineering to Needs Sign-off on the Abstract Wikipedia team (25Q4 (Apr–Jun)) board.

Per Luca.

Tue, May 20, 6:34 PM · Workstreams, OKR-Work, Abstract Wikipedia team (25Q4 (Apr–Jun))
Jdforrester-WMF created T394820: Replace use of mw.Uri with native URL API.
Tue, May 20, 5:42 PM · Abstract Wikipedia team, WikiLambda Front-end, Abstract Wikipedia Fix-It tasks, Essential-Work, WikiLambda, Technical-Debt, JavaScript
Jdforrester-WMF changed the subtype of T394814: Unable to have multiple captcha implementations in extension-list from "Task" to "Production Error".
Tue, May 20, 5:09 PM · MW-1.45-notes (1.45.0-wmf.1; 2025-05-13), Wikimedia-production-error, Patch-For-Review, Scap, WMF-General-or-Unknown, ConfirmEdit (CAPTCHA extension)
Jdforrester-WMF moved T391023: [VE WikifunctionsCall]: Accept empty values for Gregorian calendar date without failing on validation from In Code review to Ready to deploy on the Abstract Wikipedia team (25Q4 (Apr–Jun)) board.
Tue, May 20, 3:26 PM · MW-1.45-notes (1.45.0-wmf.3; 2025-05-27), Abstract Wikipedia team (25Q4 (Apr–Jun)), OKR-Work, WikiLambda Front-end, WikiLambda
Jdforrester-WMF updated the task description for T379508: Upgrade nikic/php-parser to ^5.
Tue, May 20, 2:21 PM · MW-1.44-notes (1.44.0-wmf.3; 2024-11-12), phpunit-patch-coverage, Parsoid (Dodo), MediaWiki-General
Jdforrester-WMF added a comment to T384764: mwgrep cannot be used from a deployment host.

Change #1127075 had a related patch set uploaded (by Reedy; author: Reedy):

[operations/puppet@production] Revert^2 "scap: Port mwgrep to Python 3 and other cleanup"

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

Tue, May 20, 1:29 PM · Python3-Porting, serviceops, SRE, MW-on-K8s
Jdforrester-WMF awarded T387475: Migrate some uses of Echo hooks to static registries a Love token.
Tue, May 20, 1:14 PM · Notifications (Echo), MediaWiki-Notifications, Growth-Team

Mon, May 19

Jdforrester-WMF moved T362251: Wikifunction parser tag: Trimming wikitext inputs means users can't use whitespace-only inputs, but not trimming them would break user inputs of wikitext from In Code review to Ready to deploy on the Abstract Wikipedia team (25Q4 (Apr–Jun)) board.
Mon, May 19, 3:44 PM · OKR-Work, MW-1.45-notes (1.45.0-wmf.2; 2025-05-20), Abstract Wikipedia team (25Q4 (Apr–Jun)), WikiLambda
Jdforrester-WMF moved T391439: WikifunctionsPFragmentHandler: Make extractWikifunctionCallArguments ignore named arguments from In Code review to Ready to deploy on the Abstract Wikipedia team (25Q4 (Apr–Jun)) board.
Mon, May 19, 3:43 PM · MW-1.45-notes (1.45.0-wmf.2; 2025-05-20), Essential-Work, Abstract Wikipedia team (25Q4 (Apr–Jun)), WikiLambda
Jdforrester-WMF moved T391914: [PHP]: Allow only Z7(Z6884) persisted as root object from In Engineering to Ready to deploy on the Abstract Wikipedia team (25Q4 (Apr–Jun)) board.
Mon, May 19, 3:24 PM · MW-1.45-notes (1.45.0-wmf.3; 2025-05-27), OKR-Work, Abstract Wikipedia team (25Q4 (Apr–Jun)), WikiLambda
Jdforrester-WMF added a comment to T392976: Denial of service vector on ipinfo/v0/norevision.

Mentioned in SAL (#wikimedia-operations) [2025-05-18T12:50:21Z] <sbassett> Ran scap remove-patch for T392976

Mon, May 19, 1:53 PM · MW-1.45-notes (1.45.0-wmf.2; 2025-05-20), Trust and Safety Product Sprint (Sprint Key Lime Pie (May 5 - May 23)), Data-Persistence, Vuln-DoS, IP Info, Trust and Safety Product Team, Security, Security-Team

Fri, May 16

Jdforrester-WMF moved T391023: [VE WikifunctionsCall]: Accept empty values for Gregorian calendar date without failing on validation from In Engineering to In Code review on the Abstract Wikipedia team (25Q4 (Apr–Jun)) board.
Fri, May 16, 2:41 PM · MW-1.45-notes (1.45.0-wmf.3; 2025-05-27), Abstract Wikipedia team (25Q4 (Apr–Jun)), OKR-Work, WikiLambda Front-end, WikiLambda
Jdforrester-WMF added a comment to T328921: Drop PHP 7.4 and PHP 8.0 support from MediaWiki.

I have a dummy question to ask: once we get the green light from the ServiceOps team to proceed with the deprecation of PHP7.4, what's the effort for the work needed to proceed? Is it possible to measure how many weeks are needed to complete the work?

Fri, May 16, 2:22 PM · MW-1.45-notes (1.45.0-wmf.3; 2025-05-27), MediaWiki-Engineering, PHP 8.0 support, MW-1.44-release, MW-1.42-release, Patch-For-Review, MW-1.43-release, PHP 7.4 support, Epic, MediaWiki-General

Thu, May 15

Jdforrester-WMF added a comment to T390753: Work out why function-orchestrator's and function-evaluator's OTel telemetry isn't showing up.

Arguably still true, at least per https://trace.wikimedia.org/trace/968783e04dd84f906bdcf24b617cbbc0. Although I think that indeed the rate has dropped.

https://grafana.wikimedia.org/goto/29y0JdaHR?orgId=1 says that no, although those numbers seem wrong (they are off by an order of magnitude?)

Yup, something's off here. Repro:

$ docker-compose restart function-orchestrator 
$ curl -s http://localhost:9100 |grep expr
# HELP express_router_request_duration_seconds request duration handled by router in seconds
# TYPE express_router_request_duration_seconds histogram
$ # So 0 metrics. Now send 100 requests in sequence
$ curl -s -o /dev/null http://localhost:6254/_info?ts={1..100}
$ curl -s http://localhost:9100 |grep expr
express_router_request_duration_seconds_sum{service="function-orchestrator",path="/_info",method="GET",status="200"} 0.013436579999999993
express_router_request_duration_seconds_count{service="function-orchestrator",path="/_info",method="GET",status="200"} 100

When the time for a single request is 1-3 ms, the sum for 100 should be 0.1 to 0.3, not 0.013.

I 'll file this under a separate task though.

Thu, May 15, 6:24 PM · OKR-Work, Abstract Wikipedia team (25Q4 (Apr–Jun)), function-orchestrator, function-evaluator
Jdforrester-WMF created MW-1.45-notes (1.45.0-wmf.7; 2025-06-24).
Thu, May 15, 6:11 PM
Jdforrester-WMF created MW-1.45-notes (1.45.0-wmf.6; 2025-06-17).
Thu, May 15, 6:10 PM