Page MenuHomePhabricator

Tgr (Gergő Tisza)
Software Engineer, WMF

Projects (42)

Today

  • Clear sailing ahead.

Tomorrow

  • Clear sailing ahead.

Tuesday

  • Clear sailing ahead.

User Details

User Since
Sep 19 2014, 4:55 PM (557 w, 1 d)
Availability
Available
IRC Nick
tgr
LDAP User
Gergő Tisza
MediaWiki User
Tgr (WMF) [ Global Accounts ]

Things my team is working on: MediaWiki-Platform-Team
Side projects I am working on (or planning to, eventually): User-Tgr
You can find more info about me on my user page.

Recent Activity

Yesterday

Tgr created T395197: Improve ConfirmEditTriggersCaptcha hook for authentication use cases.
Sat, May 24, 10:54 PM · MediaWiki-Core-AuthManager, MediaWiki-Platform-Team, ConfirmEdit (CAPTCHA extension)
Izno awarded T395185: Consider enabling client hints on auth.wikimedia.org a Like token.
Sat, May 24, 9:48 PM · http-client-hints, Trust and Safety Product Team, MediaWiki-Platform-Team, CheckUser, SUL3
Tgr added a comment to T277834: Two-level session storage and the consistency problem with serialized blob stores.

Also per {T390514} the number of writes seems like a bottleneck, and this proposal would increase it significantly. (Although in other ways smaller separate blobs would improve storage space use in a sessionstore with a binlog, so it's possible it would be positive on the net.)

Sat, May 24, 2:24 PM · MediaWiki-Platform-Team (Radar), MediaWiki-Core-AuthManager
Tgr added a comment to T277834: Two-level session storage and the consistency problem with serialized blob stores.

I think the main problem with this (assuming a pure key-value store) would be session ID reset, which requires copying all the data from the old session to the new session.

Sat, May 24, 2:21 PM · MediaWiki-Platform-Team (Radar), MediaWiki-Core-AuthManager
Tgr added a comment to T277834: Two-level session storage and the consistency problem with serialized blob stores.

There are some groups of keys that should probably be written together, for example wsUserID and wsUserName.

Sat, May 24, 2:19 PM · MediaWiki-Platform-Team (Radar), MediaWiki-Core-AuthManager
Tgr added a comment to T277834: Two-level session storage and the consistency problem with serialized blob stores.

Ref T158365: Session "{session}": Metadata merge failed: {exception} and T204459: Session "{session}": CentralAuth saved source {saved} != expected source {expected}.

I'm not very familiar with the background of that error, but it seems like perhaps this is a symptom of combined writes losing out?

Sat, May 24, 2:14 PM · MediaWiki-Platform-Team (Radar), MediaWiki-Core-AuthManager
Tgr added a project to T395185: Consider enabling client hints on auth.wikimedia.org: http-client-hints.
Sat, May 24, 12:02 PM · http-client-hints, Trust and Safety Product Team, MediaWiki-Platform-Team, CheckUser, SUL3
Tgr created T395185: Consider enabling client hints on auth.wikimedia.org.
Sat, May 24, 12:01 PM · http-client-hints, Trust and Safety Product Team, MediaWiki-Platform-Team, CheckUser, SUL3

Thu, May 22

Tgr created T395096: Rethink CaptchaPreAuthenticationProvider flow.
Thu, May 22, 11:17 PM · MediaWiki-Core-AuthManager, MediaWiki-Platform-Team, ConfirmEdit (CAPTCHA extension)
Tgr added a comment to T394965: Add call to action to perform server-provided linting of JS, CSS and wikitext in CodeMirror.

Showing issues that prevent the save would be nice, too. I think the fundamental limitation here is that the linter / filter / whatever needs to be able to return errors associated with specific lines. That's not always straightforward (see e.g. T174554: AbuseFilter should expose matched text to warning messages for some related discussion), although for blacklists it should be easy to add.

Thu, May 22, 4:53 PM · TemplateStyles, MediaWiki-extensions-CodeMirror
Tgr added a comment to T394993: LogicException: Unattached user at end of login.

Probably caused by T380500: CentralAuthUser returning outdated data after user creation.

Thu, May 22, 4:45 PM · SUL3, MediaWiki-extensions-CentralAuth, Wikimedia-production-error, MediaWiki-Platform-Team
Tgr added a comment to T368468: Cannot switch 2FA method between TOTP and WebAuthn: InvalidArgumentException: User already has a key from a different module enabled (totp).

The error is kind of intentional - we could actually remove it and let users add multiple methods by just removing a throw clause, but that would lead to more confusing errors in other workflows. We could replace it with a nicer error page, but we are so close to properly supporting multiple methods now that I don't think it's worth the effort.

Thu, May 22, 4:40 PM · affects-translatewiki.net, MW-1.44-notes (1.44.0-wmf.24; 2025-04-08), Patch-For-Review, affects-Miraheze, MediaWiki-Platform-Team (Radar), Wikimedia-production-error, MediaWiki-extensions-OATHAuth
Tgr placed T67750: Low-risk OAuth consumers should be automatically approved up for grabs.
Thu, May 22, 3:09 PM · MediaWiki-Engineering-Group-onboarding, MediaWiki-Platform-Team, MW-1.41-notes (1.41.0-wmf.9; 2023-05-15), User-notice, MediaWiki-extensions-OAuth
Tgr placed T245905: Integrate CirrusSearch topic search capability with AdvancedSearch up for grabs.
Thu, May 22, 3:05 PM · Patch-Needs-Improvement, Wikimedia-Hackathon-2020, CirrusSearch, Advanced-Search
Tgr placed T326088: Install TemplateSandbox on Wikispore up for grabs.
Thu, May 22, 3:05 PM · Wikispore
Tgr placed T337136: Test Matrix to Telegram bridge up for grabs.

We did the testing for t2bot.io (theoretically mautrix-telegram, but one thing we found out was that, at least at the time, it was using a quite old fork of that software). The notes are here.

Thu, May 22, 3:04 PM · Wikimedia-Hackathon-2023, Tool-bridgebot

Wed, May 21

Tgr added a comment to T394936: Should '#MediaWiki-Platform-Team (Roadmap)' be added to the exclusions for H425?.

Yes please.

Wed, May 21, 8:40 PM · Phabricator, MediaWiki-Platform-Team
MusikAnimal awarded T190114: Integrate TemplateStyles errors with CodeEditor a Like token.
Wed, May 21, 7:47 PM · CodeEditor, TemplateStyles
MusikAnimal awarded T227447: Librarize i18n-related PHP classes in MediaWiki a Like token.
Wed, May 21, 4:56 AM · Patch-For-Review, Librarization, I18n, MediaWiki-Internationalization

Tue, May 20

Tgr merged T392631: Familiarisation and research for WE5.5.3 into T392630: [Hypothesis] WE5.5.3 Developer Authentication Exploration.
Tue, May 20, 3:35 PM · MediaWiki-Platform-Team, Epic, OKR-Work
Tgr merged task T392631: Familiarisation and research for WE5.5.3 into T392630: [Hypothesis] WE5.5.3 Developer Authentication Exploration.
Tue, May 20, 3:35 PM · MediaWiki-Platform-Team
Tgr removed a parent task for T392635: [WE5.5.3 research spike] Make a docker-based test environment with envoy and MediaWiki: T392631: Familiarisation and research for WE5.5.3.
Tue, May 20, 3:34 PM · MediaWiki-Platform-Team, MediaWiki-Docker
Tgr removed a parent task for T392634: [WE5.5.3 research spike] Understand the options to interface with Envoy: T392631: Familiarisation and research for WE5.5.3.
Tue, May 20, 3:34 PM · MediaWiki-Platform-Team
Tgr removed a parent task for T392633: [WE5.5.3 research spike] Inventory of current MediaWiki session authentication mechanisms: T392631: Familiarisation and research for WE5.5.3.
Tue, May 20, 3:34 PM · MediaWiki-Platform-Team
Tgr removed a parent task for T392647: [WE5.5.3 research spike] Understand how rate limiting of applications and users works and where it's enforced: T392631: Familiarisation and research for WE5.5.3.
Tue, May 20, 3:34 PM · MediaWiki-Platform-Team
Tgr removed a parent task for T392649: [WE5.5.3 research spike] Review open tasks for session handling in MediaWiki: T392631: Familiarisation and research for WE5.5.3.
Tue, May 20, 3:34 PM · MediaWiki-Platform-Team, MediaWiki-Core-AuthManager
Tgr removed subtasks for T392631: Familiarisation and research for WE5.5.3: T392649: [WE5.5.3 research spike] Review open tasks for session handling in MediaWiki, T392647: [WE5.5.3 research spike] Understand how rate limiting of applications and users works and where it's enforced, T392635: [WE5.5.3 research spike] Make a docker-based test environment with envoy and MediaWiki, T392634: [WE5.5.3 research spike] Understand the options to interface with Envoy, T392633: [WE5.5.3 research spike] Inventory of current MediaWiki session authentication mechanisms.
Tue, May 20, 3:34 PM · MediaWiki-Platform-Team
Tgr added a parent task for T392635: [WE5.5.3 research spike] Make a docker-based test environment with envoy and MediaWiki: T392630: [Hypothesis] WE5.5.3 Developer Authentication Exploration.
Tue, May 20, 3:32 PM · MediaWiki-Platform-Team, MediaWiki-Docker
Tgr added a parent task for T392633: [WE5.5.3 research spike] Inventory of current MediaWiki session authentication mechanisms: T392630: [Hypothesis] WE5.5.3 Developer Authentication Exploration.
Tue, May 20, 3:32 PM · MediaWiki-Platform-Team
Tgr added subtasks for T392630: [Hypothesis] WE5.5.3 Developer Authentication Exploration: T392633: [WE5.5.3 research spike] Inventory of current MediaWiki session authentication mechanisms, T392634: [WE5.5.3 research spike] Understand the options to interface with Envoy, T392635: [WE5.5.3 research spike] Make a docker-based test environment with envoy and MediaWiki, T392647: [WE5.5.3 research spike] Understand how rate limiting of applications and users works and where it's enforced, T392632: [WE5.5.3 research spike] Understand how rate limiting is currently implemented in Varnish, T392649: [WE5.5.3 research spike] Review open tasks for session handling in MediaWiki.
Tue, May 20, 3:32 PM · MediaWiki-Platform-Team, Epic, OKR-Work
Tgr added a parent task for T392632: [WE5.5.3 research spike] Understand how rate limiting is currently implemented in Varnish: T392630: [Hypothesis] WE5.5.3 Developer Authentication Exploration.
Tue, May 20, 3:32 PM · MediaWiki-Platform-Team
Tgr added a parent task for T392649: [WE5.5.3 research spike] Review open tasks for session handling in MediaWiki: T392630: [Hypothesis] WE5.5.3 Developer Authentication Exploration.
Tue, May 20, 3:32 PM · MediaWiki-Platform-Team, MediaWiki-Core-AuthManager
Tgr added a parent task for T392647: [WE5.5.3 research spike] Understand how rate limiting of applications and users works and where it's enforced: T392630: [Hypothesis] WE5.5.3 Developer Authentication Exploration.
Tue, May 20, 3:32 PM · MediaWiki-Platform-Team
Tgr added a parent task for T392634: [WE5.5.3 research spike] Understand the options to interface with Envoy: T392630: [Hypothesis] WE5.5.3 Developer Authentication Exploration.
Tue, May 20, 3:32 PM · MediaWiki-Platform-Team
Tgr closed T391270: Determine CentralAuth SUL3 defaults, a subtask of T391406: Update CentralAuth documentation page after SUL3, as Resolved.
Tue, May 20, 12:04 PM · MediaWiki-Platform-Team, Documentation, SUL3, MediaWiki-extensions-CentralAuth
Tgr closed T391270: Determine CentralAuth SUL3 defaults as Resolved.

rECAU85157ca73787: Simplify authentication provider filtering flipped provider filtering in $wgCentralAuthSul3SharedDomainRestrictions, so now the defaults make sense for most wikis. With that and flipping $wgCentralAuthRestrictSharedDomain, I think this is done.

Tue, May 20, 12:04 PM · MW-1.45-notes (1.45.0-wmf.3; 2025-05-27), MediaWiki-Platform-Team, SUL3, MediaWiki-extensions-CentralAuth

Mon, May 19

Tgr created P76315 User namespace *.js pages where the content model isn't Javascript.
Mon, May 19, 8:55 PM
Tgr added a comment to T393026: Dismiss interaction notification if someone responded to the interaction.

It worked fine today.

Mon, May 19, 8:53 PM · OKR-Work, Release-Engineering-Team (Yak Shaving 🐃🪒), Scap (SpiderPig 🕸️)
Tgr created P76314 User namespace *.json pages where the content model isn't JSON.
Mon, May 19, 8:33 PM
Tgr added a comment to T393656: Some newly created accounts are not created on loginwiki/metawiki (wgCentralAuthAutoCreateWikis).

I think what's left here is to spot-check some examples and confirm they are failing due to permission checks. If that's the case, this task can be closed as invalid (since that's the expected behavior) and we can follow up in T394733 on whether we want to change that.

Mon, May 19, 8:31 PM · Stewards-and-global-tools, MediaWiki-Platform-Team (Radar), MediaWiki-extensions-CentralAuth
Tgr added a comment to T393656: Some newly created accounts are not created on loginwiki/metawiki (wgCentralAuthAutoCreateWikis).

I think this is ultimately a question for stewards, as they are the target audience for these autocreations: when a user registers successfully on some wiki, but their local account on metawiki and/or loginwiki cannot be created because of some local rule (block, abusefilter etc), what would be your preferred outcome for the backfill script (T371267: Create a script to backfill missing local accounts on loginwiki/metawiki for new global accounts)? Obeying the rule or overriding it and creating the account anyway?

Mon, May 19, 8:28 PM · Stewards-and-global-tools, MediaWiki-Platform-Team (Radar), MediaWiki-extensions-CentralAuth
Tgr updated subscribers of T394733: Consider ignoring permission checks in backfillLocalAccounts.php.
Mon, May 19, 8:27 PM · MediaWiki-Platform-Team, MediaWiki-extensions-CentralAuth
Tgr added a parent task for T394733: Consider ignoring permission checks in backfillLocalAccounts.php: T371267: Create a script to backfill missing local accounts on loginwiki/metawiki for new global accounts.
Mon, May 19, 8:24 PM · MediaWiki-Platform-Team, MediaWiki-extensions-CentralAuth
Tgr added a subtask for T371267: Create a script to backfill missing local accounts on loginwiki/metawiki for new global accounts: T394733: Consider ignoring permission checks in backfillLocalAccounts.php.
Mon, May 19, 8:24 PM · Trust and Safety Product Team, MW-1.44-notes (1.44.0-wmf.1; 2024-10-29), MW-1.43-notes (1.43.0-wmf.24; 2024-09-24), Temporary accounts, Patch-For-Review, MediaWiki-Platform-Team, SUL3, MediaWiki-extensions-CentralAuth
Tgr removed a subtask for T394733: Consider ignoring permission checks in backfillLocalAccounts.php: T371267: Create a script to backfill missing local accounts on loginwiki/metawiki for new global accounts.
Mon, May 19, 8:23 PM · MediaWiki-Platform-Team, MediaWiki-extensions-CentralAuth
Tgr removed a parent task for T371267: Create a script to backfill missing local accounts on loginwiki/metawiki for new global accounts: T394733: Consider ignoring permission checks in backfillLocalAccounts.php.
Mon, May 19, 8:23 PM · Trust and Safety Product Team, MW-1.44-notes (1.44.0-wmf.1; 2024-10-29), MW-1.43-notes (1.43.0-wmf.24; 2024-09-24), Temporary accounts, Patch-For-Review, MediaWiki-Platform-Team, SUL3, MediaWiki-extensions-CentralAuth
Tgr added a subtask for T394733: Consider ignoring permission checks in backfillLocalAccounts.php: T371267: Create a script to backfill missing local accounts on loginwiki/metawiki for new global accounts.
Mon, May 19, 8:23 PM · MediaWiki-Platform-Team, MediaWiki-extensions-CentralAuth
Tgr added a parent task for T371267: Create a script to backfill missing local accounts on loginwiki/metawiki for new global accounts: T394733: Consider ignoring permission checks in backfillLocalAccounts.php.
Mon, May 19, 8:23 PM · Trust and Safety Product Team, MW-1.44-notes (1.44.0-wmf.1; 2024-10-29), MW-1.43-notes (1.43.0-wmf.24; 2024-09-24), Temporary accounts, Patch-For-Review, MediaWiki-Platform-Team, SUL3, MediaWiki-extensions-CentralAuth
Tgr created T394733: Consider ignoring permission checks in backfillLocalAccounts.php.
Mon, May 19, 8:22 PM · MediaWiki-Platform-Team, MediaWiki-extensions-CentralAuth
Tgr added a comment to T393656: Some newly created accounts are not created on loginwiki/metawiki (wgCentralAuthAutoCreateWikis).

As I said on discord: Accounts created by the backfill script show the wrong IP in loginwiki CU. The backfill script has little value to stewards as long as that's the case.

Mon, May 19, 8:20 PM · Stewards-and-global-tools, MediaWiki-Platform-Team (Radar), MediaWiki-extensions-CentralAuth
Tgr updated subscribers of T394732: backfillLocalAccounts.php does not (always?) copy checkuser data.
Mon, May 19, 8:19 PM · MediaWiki-Platform-Team, MediaWiki-extensions-CentralAuth
Tgr added a subtask for T371267: Create a script to backfill missing local accounts on loginwiki/metawiki for new global accounts: T394732: backfillLocalAccounts.php does not (always?) copy checkuser data.
Mon, May 19, 8:19 PM · Trust and Safety Product Team, MW-1.44-notes (1.44.0-wmf.1; 2024-10-29), MW-1.43-notes (1.43.0-wmf.24; 2024-09-24), Temporary accounts, Patch-For-Review, MediaWiki-Platform-Team, SUL3, MediaWiki-extensions-CentralAuth
Tgr added a parent task for T394732: backfillLocalAccounts.php does not (always?) copy checkuser data: T371267: Create a script to backfill missing local accounts on loginwiki/metawiki for new global accounts.
Mon, May 19, 8:19 PM · MediaWiki-Platform-Team, MediaWiki-extensions-CentralAuth
Tgr created T394732: backfillLocalAccounts.php does not (always?) copy checkuser data.
Mon, May 19, 8:18 PM · MediaWiki-Platform-Team, MediaWiki-extensions-CentralAuth
Tgr created P76313 User namespace *.css pages where the content model isn't CSS.
Mon, May 19, 8:11 PM
Tgr added a comment to T394402: Reduce noisy auth logs.

logPersistenceChange() logs cookie writes. Those are not particularly relevant to the current investigation which is about session store writes. They were added for issues where the cookies got cached and sent to the wrong user, but we didn't have such issues for years so probably fine to drop that logging.

Mon, May 19, 5:37 PM · MW-1.45-notes (1.45.0-wmf.3; 2025-05-27), MediaWiki-extensions-CentralAuth, MediaWiki-Platform-Team, MediaWiki-Core-AuthManager
Tgr moved T393473: Most authentication providers are disabled during autocreation on local domain (SUL3 mode) from Needs refinement to In progress on the MediaWiki-Platform-Team board.
Mon, May 19, 2:27 PM · MW-1.45-notes (1.45.0-wmf.3; 2025-05-27), SUL3, MediaWiki-Platform-Team, MediaWiki-extensions-CentralAuth
Tgr added a comment to T393963: PHP Deprecated: Use of $_SESSION was deprecated in MediaWiki 1.27. [Called from session_write_close in (internal function)].

Also triggered by one of the integration tests:

1) MediaWiki\Tests\Session\SessionBackendTest::testResetIdOfGlobalSession
Use of $_SESSION was deprecated in MediaWiki 1.27. [Called from session_write_close in (internal function)]
Mon, May 19, 11:39 AM · MediaWiki-Core-AuthManager, MediaWiki-Platform-Team, User-brennen, Wikimedia-production-error
Tgr removed a subtask for T392631: Familiarisation and research for WE5.5.3: T392632: [WE5.5.3 research spike] Understand how rate limiting is currently implemented in Varnish.
Mon, May 19, 11:18 AM · MediaWiki-Platform-Team
Tgr added a subtask for T392647: [WE5.5.3 research spike] Understand how rate limiting of applications and users works and where it's enforced: T392632: [WE5.5.3 research spike] Understand how rate limiting is currently implemented in Varnish.
Mon, May 19, 11:18 AM · MediaWiki-Platform-Team
Tgr edited parent tasks for T392632: [WE5.5.3 research spike] Understand how rate limiting is currently implemented in Varnish, added: T392647: [WE5.5.3 research spike] Understand how rate limiting of applications and users works and where it's enforced; removed: T392631: Familiarisation and research for WE5.5.3.
Mon, May 19, 11:18 AM · MediaWiki-Platform-Team
Tgr closed T393038: Improve MediaWiki session logging as Resolved.

I think this is done, the current logs are good enough.

Mon, May 19, 11:13 AM · MW-1.45-notes (1.45.0-wmf.1; 2025-05-13), MW-1.44-notes (1.44.0-wmf.28; 2025-05-06), MediaWiki-Platform-Team, Sustainability (Incident Followup), MediaWiki-Core-AuthManager
Tgr added a comment to T393448: WebAuthn authentication failed due to: Syntax error.

The stack trace is

from /srv/mediawiki/php-1.45.0-wmf.1/vendor/thecodingmachine/safe/lib/Exceptions/JsonException.php(10)
#0 /srv/mediawiki/php-1.45.0-wmf.1/vendor/thecodingmachine/safe/lib/special_cases.php(35): Safe\Exceptions\JsonException::createFromPhpError()
#1 /srv/mediawiki/php-1.45.0-wmf.1/vendor/web-auth/webauthn-lib/src/PublicKeyCredentialLoader.php(118): Safe\json_decode(string, bool)
#2 /srv/mediawiki/php-1.45.0-wmf.1/extensions/WebAuthn/src/Key/WebAuthnKey.php(485): Webauthn\PublicKeyCredentialLoader->load(string)
#3 /srv/mediawiki/php-1.45.0-wmf.1/extensions/WebAuthn/src/Key/WebAuthnKey.php(297): MediaWiki\Extension\WebAuthn\Key\WebAuthnKey->authenticationCeremony(string, Webauthn\PublicKeyCredentialRequestOptions, MediaWiki\Extension\OATHAuth\OATHUser)
#4 /srv/mediawiki/php-1.45.0-wmf.1/extensions/WebAuthn/src/Module/WebAuthn.php(82): MediaWiki\Extension\WebAuthn\Key\WebAuthnKey->verify(array, MediaWiki\Extension\OATHAuth\OATHUser)
#5 /srv/mediawiki/php-1.45.0-wmf.1/extensions/WebAuthn/src/Authenticator.php(225): MediaWiki\Extension\WebAuthn\Module\WebAuthn->verify(MediaWiki\Extension\OATHAuth\OATHUser, array)
#6 /srv/mediawiki/php-1.45.0-wmf.1/extensions/WebAuthn/src/Auth/WebAuthnSecondaryAuthenticationProvider.php(88): MediaWiki\Extension\WebAuthn\Authenticator->continueAuthentication(array)
#7 /srv/mediawiki/php-1.45.0-wmf.1/extensions/OATHAuth/src/Auth/SecondaryAuthenticationProvider.php(64): MediaWiki\Extension\WebAuthn\Auth\WebAuthnSecondaryAuthenticationProvider->continueSecondaryAuthentication(MediaWiki\User\User, array)
#8 /srv/mediawiki/php-1.45.0-wmf.1/includes/auth/AuthManager.php(759): MediaWiki\Extension\OATHAuth\Auth\SecondaryAuthenticationProvider->continueSecondaryAuthentication(MediaWiki\User\User, array)
#9 /srv/mediawiki/php-1.45.0-wmf.1/includes/specialpage/AuthManagerSpecialPage.php(410): MediaWiki\Auth\AuthManager->continueAuthentication(array)
#10 /srv/mediawiki/php-1.45.0-wmf.1/includes/specialpage/AuthManagerSpecialPage.php(542): MediaWiki\SpecialPage\AuthManagerSpecialPage->performAuthenticationStep(string, array)
#11 /srv/mediawiki/php-1.45.0-wmf.1/includes/htmlform/HTMLForm.php(825): MediaWiki\SpecialPage\AuthManagerSpecialPage->handleFormSubmit(array, MediaWiki\HTMLForm\CodexHTMLForm)
#12 /srv/mediawiki/php-1.45.0-wmf.1/includes/specialpage/AuthManagerSpecialPage.php(473): MediaWiki\HTMLForm\HTMLForm->trySubmit()
#13 /srv/mediawiki/php-1.45.0-wmf.1/includes/specialpage/LoginSignupSpecialPage.php(407): MediaWiki\SpecialPage\AuthManagerSpecialPage->trySubmit()
#14 /srv/mediawiki/php-1.45.0-wmf.1/includes/specialpage/SpecialPage.php(734): MediaWiki\SpecialPage\LoginSignupSpecialPage->execute(null)
#15 /srv/mediawiki/php-1.45.0-wmf.1/includes/specialpage/SpecialPageFactory.php(1738): MediaWiki\SpecialPage\SpecialPage->run(null)
#16 /srv/mediawiki/php-1.45.0-wmf.1/includes/actions/ActionEntryPoint.php(499): MediaWiki\SpecialPage\SpecialPageFactory->executePath(string, MediaWiki\Context\RequestContext)
#17 /srv/mediawiki/php-1.45.0-wmf.1/includes/actions/ActionEntryPoint.php(143): MediaWiki\Actions\ActionEntryPoint->performRequest()
#18 /srv/mediawiki/php-1.45.0-wmf.1/includes/MediaWikiEntryPoint.php(198): MediaWiki\Actions\ActionEntryPoint->execute()
#19 /srv/mediawiki/php-1.45.0-wmf.1/index.php(58): MediaWiki\MediaWikiEntryPoint->run()
#20 /srv/mediawiki/w/index.php(3): require(string)
#21 {main}

which is still not terribly helpful (but at least it clarifies that this is a JSON syntax error, not a PHP syntax error). So either some field is too short and cuts off the end of the JSON, or this is some kind of client-side issue.

Mon, May 19, 11:11 AM · MW-1.45-notes (1.45.0-wmf.1; 2025-05-13), MediaWiki-Platform-Team, MediaWiki-extensions-OATHAuth, Wikimedia-production-error
Tgr added a comment to T394629: EmailAuth uses account language for mail content, but content language for times.

I have a WIP patch for this, although it tries to do some more complex things too and I got stuck figuring out a nice way to allow hooks to change the HTML message (to do things like add a country name) so feel free to make a more straightforward patch if you want.

Mon, May 19, 10:52 AM · Patch-For-Review, MediaWiki-extensions-EmailAuth

Sun, May 18

Tgr added a comment to T392251: SessionBackend seems to store session changes too often.

So fundamentally I think the problem is that a some things call save() and rely on it generally being a no-op: WebRequest::getSession() via the delaySave() call in SessionManager::getSessionFromInfo(); and Session::persist() via the renew() call. But save() is only a noop when there is no change; if anything changed the session data, it will do a write.

Sun, May 18, 1:22 PM · MW-1.45-notes (1.45.0-wmf.3; 2025-05-27), Patch-For-Review, Sustainability (Incident Followup), MediaWiki-Platform-Team, MediaWiki-Core-AuthManager
Tgr closed T392633: [WE5.5.3 research spike] Inventory of current MediaWiki session authentication mechanisms, a subtask of T392631: Familiarisation and research for WE5.5.3, as Resolved.
Sun, May 18, 8:11 AM · MediaWiki-Platform-Team
Tgr closed T392633: [WE5.5.3 research spike] Inventory of current MediaWiki session authentication mechanisms as Resolved.

I think this concludes the investigation.

Sun, May 18, 8:11 AM · MediaWiki-Platform-Team
Tgr added a comment to T392633: [WE5.5.3 research spike] Inventory of current MediaWiki session authentication mechanisms.

Ability to use arbitrary tokens:

  • Session-ish cookies (core session cookie, core user token cookie, CentralAuth session cookie, CentralAuth user token cookie, bot password cookie): yes, could be replaced with any value as long as the session ID / user token / user token hash is recoverable from it (e.g. a JWT with the ID/hash + other data). The JWT could also be a separate cookie, we are already using several cookies (session ID, username, user ID...).
  • CentralAuth API token: yes, this is an arbitrary token, fully under our control, and short-lived so easy to change the format.
  • NetworkSession: yes, tokens are arbitrary secrets stored in site confiugration.
  • OAuth 2: the tokens are already JWTs and there's a hook (OAuthClaimStoreGetClaims) for adding fields to the JWT data, so no change needed.
Sun, May 18, 8:10 AM · MediaWiki-Platform-Team

Fri, May 16

Tgr closed T393216: EmailAuth verification code should be a number as Resolved.
Fri, May 16, 2:14 PM · MW-1.45-notes (1.45.0-wmf.2; 2025-05-20), MW-1.44-notes (1.44.0-wmf.28; 2025-05-06), MediaWiki-extensions-EmailAuth
Tgr added a comment to T394402: Reduce noisy auth logs.
Fri, May 16, 2:10 PM · MW-1.45-notes (1.45.0-wmf.3; 2025-05-27), MediaWiki-extensions-CentralAuth, MediaWiki-Platform-Team, MediaWiki-Core-AuthManager
Tgr added a comment to T394402: Reduce noisy auth logs.

The Persisting... stuff was added for {T309943} & co, I don't think we need it anymore

I think this will be a partial revert of https://gerrit.wikimedia.org/r/c/mediawiki/core/+/1143959 and I imagine that removing the else block will be enough here?

Fri, May 16, 2:05 PM · MW-1.45-notes (1.45.0-wmf.3; 2025-05-27), MediaWiki-extensions-CentralAuth, MediaWiki-Platform-Team, MediaWiki-Core-AuthManager
Tgr added a comment to T391346: Database maintenance map not working.

You can use OAuth which is more great (security-wise at least) and isn't really affected by domains.

Fri, May 16, 2:02 PM · Pywikibot, MediaWiki-User-login-and-signup, Pywikibot-login.py, DBA
Tgr added a comment to T375122: Add actor membership condition for "Restrict maximum number of connected objects when editing edges".

Ideally you'd want a rate limit for this kind of thing, ie. "cannot change more than X edges within Y seconds". Some googling suggests Phabricator does rate limiting via PhabricatorSystemActionEngine::willTakeAction() so maybe that can just be called wherever Phabricator actually does the graph updates?

Fri, May 16, 2:00 PM · Release-Engineering-Team (Doing 😎), Patch-For-Review, Phabricator
Tgr added a comment to T2212: Some MediaWiki: messages not safe in HTML (tracking).

Apparently you cannot add more subtasks to this task (T394493: Too many relationships of type "task.has-subtask") so I'll just link to the last remaining issue instead: T394492: MobileFrontend should not use raw HTML messages

Fri, May 16, 10:38 AM · Tracking-Neverending, I18n, MediaWiki-Internationalization
Tgr added a comment to T394493: Too many relationships of type "task.has-subtask".

You can reproduce e.g. by opening and trying to save the subtasks menu on T2212.

Fri, May 16, 10:36 AM · Phabricator
Tgr created T394493: Too many relationships of type "task.has-subtask".
Fri, May 16, 10:35 AM · Phabricator
Tgr created T394492: MobileFrontend should not use raw HTML messages.
Fri, May 16, 10:32 AM · Web-Team, Security, MobileFrontend
Tgr added a comment to T391346: Database maintenance map not working.

Can reproduce it but PWB logs aren't helpful. I guess I will have to set up a Python debugger to understand what's going on.
(Normal password-based login works BTW.)

Fri, May 16, 9:59 AM · Pywikibot, MediaWiki-User-login-and-signup, Pywikibot-login.py, DBA

Thu, May 15

Tgr added a comment to T394012: [WE5.5.3] Decide how to expose session information to infrastructure layers in front of MediaWiki.

Some thoughts on implementation:

  • Session info endpoint: this is just an API handler or PHP entry point that calls WebRequest::getSession() and puts its various properties into the response. Can be done in days if not hours.
  • Turn all (or some) session tokens into JWTs:
    • The OAuth 2 access token is already a JWT.
    • For OAuth 1, I think there are two options:
      • Just put JWTs in the oaac_access_token table. Needs a schema change (current column is too short) and probably some sort of migration to convert the existing values.
      • Keep storing short random strings in the table, generate JWTs dynamically. This would 1) require the encryption to be deterministic, 2) would mean the access token gets invalidated any time the JWT changes because some information included in it changes (e.g. the user is added to a new group). We probably don't want to go there.
    • CentralAuth tokens and NetworkSession tokens are arbitrarily and fully under our control, turning them into JWTs should be unproblematic. (For NetworkSession it's probably not really needed since it uses the service mesh so it won't pass through the API gateway. But then, it's trivial to do.)
    • For the various cookie-based schemes, the easiest approach would be to just have add a new cookie on top of the existing ones, and put the JWT in it.
    • If we want to simplify cookies, there are two ways, since there are two different groups of cookies which are both needed, one to authenticate the user in a way that keeps working when visiting other wikis, the other to identify the data in the session backend that the current wiki is associating with the user. So we could:
      • Have a JWT cookie on the parent domain (ie. replace current centralauth_Session and centralauth_Token with a JWT), store the local session ID as a separate cookie. So the same JWT cookie would be shared across different wikis, and it wouldn't change much. (Would we even need a central session backend after this? Maybe not.)
    • Replace the local session ID with a JWT, keep the centralauth_* cookies. In some cases, this JWT could store session data directly, per T394076: Investigate storing anonymous sessions client-side.
    • I guess we could do both of these things at the same time too, not sure if there would be much benefit in it though.
Thu, May 15, 6:24 PM · MediaWiki-Core-AuthManager, MediaWiki-Platform-Team
Tgr added a comment to T394402: Reduce noisy auth logs.

authevents is a dedicated log channel for keeping track of authentication volume. It's primarily for Prometheus, so we can turn off the Logstash backend if someone feels strongly about it, but it's nice to have IMO. The Persisting... stuff was added for {T309943} & co, I don't think we need it anymore. The Session store:... stuff is for {T390514}, we are still actively investigating that. Might want to keep in the longer term too but we'll see. The SUL3 logs aren't needed (the idea was to track bounce rates but due to the massive amount of scraping on the login page, that ended up being completely useless).

Thu, May 15, 3:28 PM · MW-1.45-notes (1.45.0-wmf.3; 2025-05-27), MediaWiki-extensions-CentralAuth, MediaWiki-Platform-Team, MediaWiki-Core-AuthManager
Bugreporter2 awarded T194746: Bundle StopForumSpam extension with the next MediaWiki release a Like token.
Thu, May 15, 9:27 AM · MediaWiki-extensions-StopForumSpam

Wed, May 14

Tgr added a comment to T392017: SharedDomainHookHandlerTest::testOnSiteNoticeBefore variants are broken in some test environments.

The error was on https://gerrit.wikimedia.org/r/c/mediawiki/services/parsoid/+/1136758

Wed, May 14, 4:09 PM · MW-1.45-notes (1.45.0-wmf.3; 2025-05-27), MW-1.44-notes (1.44.0-wmf.27; 2025-04-29), MediaWiki-extensions-CentralAuth, MediaWiki-Platform-Team
Tgr added a comment to T394105: Make EmailAuth an available 2fa method for various Wikimedia users.

I would make it generally available, yes.

Wed, May 14, 4:07 PM · Security, MediaWiki-extensions-EmailAuth
Tgr updated the task description for T394012: [WE5.5.3] Decide how to expose session information to infrastructure layers in front of MediaWiki.
Wed, May 14, 2:19 PM · MediaWiki-Core-AuthManager, MediaWiki-Platform-Team
Tgr added a comment to T195494: Handle mobile domains in core.

As a first approximation, I think we'd want an "URL variant" data structure (could just be an array with arbitrary extension-prefixed keys, like [ 'MobileFrontend.mobile-domain' => true ], a getUrlVariant() method on either WebRequest or RequestContext, and the ability to pass an url variant to any URL generating method (Title, WikiMap, UrlUtils etc). Maybe a new hook to determine the default URL variant when not explicitly provided. Then 90% of mobile domain wrangling could be replaced with "default to the current URL variant when generating links".

Wed, May 14, 12:12 PM · MobileFrontend (Tracking), User-Jdlrobson, MediaWiki-General
Tgr added a comment to T393976: Move CentralAuth hooks out of MobileFrontend into CentralAuth.

Not really a subtask of T214998: RFC: Remove m-dot subdomain, serve mobile and desktop variants through the same URL - if that happened, these hooks wouldn't be necessary at all.

Wed, May 14, 12:05 PM · Technical-Debt, MobileFrontend, MediaWiki-Platform-Team, MediaWiki-extensions-CentralAuth
Tgr added a comment to T336937: Attempt to create OAuth2 consumer ends in HTTP 500.

If we had used the same keypairs (but are not using CentralAuth or similar) would it have still meant access tokens worked across wikis?

Wed, May 14, 11:58 AM · Wikibase Cloud (Kanban Board Q2 2025), affects-Miraheze

Tue, May 13

Tgr updated the task description for T394076: Investigate storing anonymous sessions client-side.
Tue, May 13, 5:19 PM · MediaWiki-Platform-Team, Security, MediaWiki-Core-AuthManager
Tgr added a parent task for T394075: Investigate using different stores for different kinds of sessions: T394076: Investigate storing anonymous sessions client-side.
Tue, May 13, 5:16 PM · Security, MediaWiki-Platform-Team, MediaWiki-Core-AuthManager
Tgr added a subtask for T394076: Investigate storing anonymous sessions client-side: T394075: Investigate using different stores for different kinds of sessions.
Tue, May 13, 5:16 PM · MediaWiki-Platform-Team, Security, MediaWiki-Core-AuthManager
Tgr updated the task description for T394075: Investigate using different stores for different kinds of sessions.
Tue, May 13, 5:15 PM · Security, MediaWiki-Core-AuthManager, MediaWiki-Platform-Team
Tgr created T394076: Investigate storing anonymous sessions client-side.
Tue, May 13, 5:14 PM · MediaWiki-Platform-Team, Security, MediaWiki-Core-AuthManager
Tgr created T394075: Investigate using different stores for different kinds of sessions.
Tue, May 13, 5:04 PM · Security, MediaWiki-Core-AuthManager, MediaWiki-Platform-Team
Tgr added a comment to T392251: SessionBackend seems to store session changes too often.

Usually that just falls back to calling getSession() on the global context's WebRequest, which would then be cached

Tue, May 13, 1:57 PM · MW-1.45-notes (1.45.0-wmf.3; 2025-05-27), Patch-For-Review, Sustainability (Incident Followup), MediaWiki-Platform-Team, MediaWiki-Core-AuthManager
Tgr updated the task description for T394012: [WE5.5.3] Decide how to expose session information to infrastructure layers in front of MediaWiki.
Tue, May 13, 1:45 PM · MediaWiki-Core-AuthManager, MediaWiki-Platform-Team
Tgr updated the task description for T394012: [WE5.5.3] Decide how to expose session information to infrastructure layers in front of MediaWiki.
Tue, May 13, 11:11 AM · MediaWiki-Core-AuthManager, MediaWiki-Platform-Team
Tgr added a subtask for T392630: [Hypothesis] WE5.5.3 Developer Authentication Exploration: T394012: [WE5.5.3] Decide how to expose session information to infrastructure layers in front of MediaWiki.
Tue, May 13, 11:10 AM · MediaWiki-Platform-Team, Epic, OKR-Work
Tgr added a parent task for T394012: [WE5.5.3] Decide how to expose session information to infrastructure layers in front of MediaWiki: T392630: [Hypothesis] WE5.5.3 Developer Authentication Exploration.
Tue, May 13, 11:09 AM · MediaWiki-Core-AuthManager, MediaWiki-Platform-Team
Tgr updated the task description for T394012: [WE5.5.3] Decide how to expose session information to infrastructure layers in front of MediaWiki.
Tue, May 13, 10:56 AM · MediaWiki-Core-AuthManager, MediaWiki-Platform-Team
Tgr created T394012: [WE5.5.3] Decide how to expose session information to infrastructure layers in front of MediaWiki.
Tue, May 13, 10:27 AM · MediaWiki-Core-AuthManager, MediaWiki-Platform-Team