Daimona
Musician

Today

  • Clear sailing ahead.

Tomorrow

  • Clear sailing ahead.

Thursday

  • Clear sailing ahead.

User Details

User Since
May 18 2017, 10:49 AM (87 w, 5 d)
Availability
Available
IRC Nick
Daimona
LDAP User
Daimona Eaytoy
MediaWiki User
Daimona Eaytoy [ Global Accounts ]

Recent Activity

Today

Daimona moved T214196: BadMethodCallException: Call to a member function dumpAllVars() on a non-object (boolean) from Next to Under review on the User-Daimona board.
Tue, Jan 22, 6:27 PM · Patch-For-Review, User-Daimona, Wikimedia-production-error, AbuseFilter
Daimona claimed T214196: BadMethodCallException: Call to a member function dumpAllVars() on a non-object (boolean).

Since this is caused by old entries, the script will fix it. Subsequent patches will reinforce the method.

Tue, Jan 22, 6:27 PM · Patch-For-Review, User-Daimona, Wikimedia-production-error, AbuseFilter
Daimona moved T214191: Read timeout reached on AbuseFilterViewTestBatch from Regressed 1.33-wmf.13 to Regressed longer ago on the Wikimedia-production-error board.
Tue, Jan 22, 6:27 PM · User-Daimona, Wikimedia-production-error, AbuseFilter
Daimona claimed T214193: PHP Notice: Unable to unserialize in AbuseFilter.php.
Tue, Jan 22, 6:22 PM · Patch-For-Review, User-Daimona, AbuseFilter, Wikimedia-production-error
Daimona updated the task description for T203587: Major overhaul for "throttle" action.
Tue, Jan 22, 3:46 PM · Core Platform Team Kanban (Blocked Externally), Core Platform Team (Code Health (TEC13)), User-Daimona, Patch-For-Review, Technical-Debt, AbuseFilter
Daimona added a comment to T203587: Major overhaul for "throttle" action.

@daniel yes... And then blocked on normalizeThrottleParameters.php being executed (without --dry-run). That alone should resolve most of the subtasks.

Tue, Jan 22, 3:46 PM · Core Platform Team Kanban (Blocked Externally), Core Platform Team (Code Health (TEC13)), User-Daimona, Patch-For-Review, Technical-Debt, AbuseFilter
Daimona raised the priority of T209565: Dry run for normalizeThrottleParameters.php from Normal to High.

@daniel Not really; actually, there are still two different PHP notices and a fatal caused by malformed parameters (all seen in production), plus affected filters don't do what they should. Not UBN, but neither normal.

Tue, Jan 22, 3:44 PM · User-notice, MW-1.33-notes (1.33.0-wmf.8; 2018-12-11), Patch-For-Review, MW-1.32-release, Core Platform Team Kanban (Doing), Core Platform Team (Security, stability, performance and scalability (TEC1)), Wikimedia-maintenance-script-run, AbuseFilter
Daimona moved T214193: PHP Notice: Unable to unserialize in AbuseFilter.php from Regressed 1.33-wmf.13 to Regressed longer ago on the Wikimedia-production-error board.
Tue, Jan 22, 2:41 PM · Patch-For-Review, User-Daimona, AbuseFilter, Wikimedia-production-error
Daimona added a comment to T214193: PHP Notice: Unable to unserialize in AbuseFilter.php.

OK, so I think I understood this. First of, this is the link with the broken log entry. Using quarry for abuse_filter_log.afl_id === 101, you can get the whole row. Since it was inserted in 2009, the var dump is inside afl_var_dump instead of the text table/external storage. Reading it, you can see that the serialized string is truncated, and thus unserialization obviously fails. My guess is that this happened because the string was too long for an SQL blob [1], thus being truncated upon insertion. In fact, strlen returns 65361 of length, whereas BLOB is capped at 65535. I guess the delta has some explanation unrelated to this bug (maybe I didn't count bytes properly). The only thing I'm not sure of is the presence of the special character U+FFFD at the end of the serialized string. But again, I guess this is unrelated to the bug, and probably added e.g. by quarry or upon DB insertion.

Tue, Jan 22, 1:42 PM · Patch-For-Review, User-Daimona, AbuseFilter, Wikimedia-production-error
Daimona added a comment to T210739: Target deletion during page move fails.

@MarcoAurelio This will be announced in Tech/News... On Jan 28th... The announcement also suggests to add a message in MediaWiki:Delete and move confirm. I see that Johan has also added the gadget above as a suggestion. However, I must note that the gadget isn't really localizable, and chinese writings are probably fine only for zhwiki. We could ask intadmins to manually localize it (but this would create code duplication), or make it retrieve messages from a customizable variable. Or, probably easier & quicker, just change the messages to be in english.

Tue, Jan 22, 1:21 PM · Anti-Harassment, MW-1.33-notes (1.33.0-wmf.13; 2019-01-15), Patch-For-Review, User-notice, Core Platform Team Backlog (Watching / External), Core Platform Team (Security, stability, performance and scalability (TEC1)), MediaWiki-Special-pages, Wikimedia-production-error
Daimona merged T214381: Cannot rename a page and delete destination into T210739: Target deletion during page move fails.
Tue, Jan 22, 1:09 PM · Anti-Harassment, MW-1.33-notes (1.33.0-wmf.13; 2019-01-15), Patch-For-Review, User-notice, Core Platform Team Backlog (Watching / External), Core Platform Team (Security, stability, performance and scalability (TEC1)), MediaWiki-Special-pages, Wikimedia-production-error
Daimona merged task T214381: Cannot rename a page and delete destination into T210739: Target deletion during page move fails.
Tue, Jan 22, 1:09 PM
Daimona added a comment to T213453: AbuseFilter MCR diff is comparing old value of one slot with the new value from another, not the old whole page with the new whole page.

@Jdforrester-WMF I'd create the task myself, although I'm not into MCR so I don't really know what's left to do here. Should the EditFilterMergedContent always pass a slot, or what else? Ping @Addshore.

Tue, Jan 22, 12:48 PM · MW-1.33-notes (1.33.0-wmf.13; 2019-01-15), User-Addshore, SDC Engineering, Core Platform Team (MCR), AbuseFilter
Daimona added a comment to T212268: Make the abusefilter-blocker user not be a sysop.

@Tgr I'm sorry but I'm not sure I understood. Is it correct that, after $user = User::newSystemUser( $wgAbuseFilterUserName, [ 'steal' => true ] ); (line 720) we should do

MediaWiki\Auth\AuthManager::singleton()->autoCreateUser(
	$user,
	MediaWiki\Auth\AuthManager::AUTOCREATE_SOURCE_MAINT,
	false
);
Tue, Jan 22, 12:46 PM · AbuseFilter, User-Daimona, Patch-For-Review
Daimona added a comment to T144096: AbuseLog: add checkboxes for multiple hidding and unhidding of log entries.

Created P8017.

Tue, Jan 22, 11:40 AM · Patch-For-Review, Stewards-and-global-tools, AbuseFilter
Daimona created P8017 Important and short patches in AbuseFilter currently under review.
Tue, Jan 22, 11:39 AM · AbuseFilter
Daimona added a comment to T144096: AbuseLog: add checkboxes for multiple hidding and unhidding of log entries.

@MarcoAurelio Sure! I can do better: write down a list of urgent patches, ordered by priority (regardless of how complex are them), and a list of easy patches under review (usually doc-only or other minor changes). The latter can be as important as the former, since they often make writing other patches easier, and of course are much quicker to review. Matěj did a great job in reviewing a dozen of them lately, but there are others. Where should I post the list once done?

Tue, Jan 22, 10:38 AM · Patch-For-Review, Stewards-and-global-tools, AbuseFilter
Daimona added a comment to T144096: AbuseLog: add checkboxes for multiple hidding and unhidding of log entries.

@lfaraone The patch (https://gerrit.wikimedia.org/r/467774) is in place since October 16th, we just need a reviewer :) I'm afraid there's nothing I can do on my own.

Tue, Jan 22, 9:06 AM · Patch-For-Review, Stewards-and-global-tools, AbuseFilter

Yesterday

Daimona claimed T214269: ErrorException from line 137 of /srv/mediawiki/w/extensions/AbuseFilter/includes/Views/AbuseFilterViewList.php: PHP Notice: compact(): Undefined variable: querypattern.
Mon, Jan 21, 2:36 PM · Patch-For-Review, AbuseFilter
Daimona removed a project from T213269: Requesting access to Citoid/Zotero production servers for MVOLZ: Patch-For-Review.

(Excuse me, typo upon committing)

Mon, Jan 21, 2:35 PM · Operations, SRE-Access-Requests, Citoid

Sun, Jan 20

Daimona closed T204128: testfilter parameter for ViewExamine shouldn't use GET as Resolved.
Sun, Jan 20, 3:36 PM · MW-1.33-notes (1.33.0-wmf.14; 2019-01-22), User-Daimona, AbuseFilter

Sat, Jan 19

Daimona closed T204650: Special:AbuseFilter/history should color empty fields with red if changed as Resolved.
Sat, Jan 19, 2:29 PM · MW-1.33-notes (1.33.0-wmf.14; 2019-01-22), User-Daimona, AbuseFilter
Daimona updated subscribers of T210739: Target deletion during page move fails.

The whole MediaWiki sofware is affected... Unfortunately T/N/04 is already translated and we'll probably have to announce it in /05 (which will be published on Jan 28th). CC'ing @Johan to be sure. The message could be:

Sat, Jan 19, 2:27 PM · Anti-Harassment, MW-1.33-notes (1.33.0-wmf.13; 2019-01-15), Patch-For-Review, User-notice, Core Platform Team Backlog (Watching / External), Core Platform Team (Security, stability, performance and scalability (TEC1)), MediaWiki-Special-pages, Wikimedia-production-error
Daimona added a comment to T204126: AbuseLog impact search should take page deletion into account.

I guess <= is fine and => is the problem. Not sure how to deal with that though.

Sat, Jan 19, 2:22 PM · AbuseFilter

Fri, Jan 18

Daimona moved T210739: Target deletion during page move fails from To Triage to Announce in next Tech/News on the User-notice board.
Fri, Jan 18, 11:26 PM · Anti-Harassment, MW-1.33-notes (1.33.0-wmf.13; 2019-01-15), Patch-For-Review, User-notice, Core Platform Team Backlog (Watching / External), Core Platform Team (Security, stability, performance and scalability (TEC1)), MediaWiki-Special-pages, Wikimedia-production-error
Daimona added a project to T210739: Target deletion during page move fails: User-notice.

Since a solution doesn't seem to be near, I guess we should at least inform communities of the problem. Many people already know, but not everybody.

Fri, Jan 18, 11:25 PM · Anti-Harassment, MW-1.33-notes (1.33.0-wmf.13; 2019-01-15), Patch-For-Review, User-notice, Core Platform Team Backlog (Watching / External), Core Platform Team (Security, stability, performance and scalability (TEC1)), MediaWiki-Special-pages, Wikimedia-production-error
Daimona moved T214191: Read timeout reached on AbuseFilterViewTestBatch from Next to Waiting on the User-Daimona board.

I see that the problem here is using WHERE rc_user = 'XXXXXXXX'. The field is not indexed, and thus the filesort. However, I also see that the field is deprecated in favour of rc_actor (which has an index together with timestamp), and thus this should be fixed with actor conversion. Leaving open as memo.

Fri, Jan 18, 7:00 PM · User-Daimona, Wikimedia-production-error, AbuseFilter
Daimona moved T214196: BadMethodCallException: Call to a member function dumpAllVars() on a non-object (boolean) from Backlog to Next on the User-Daimona board.
Fri, Jan 18, 6:41 PM · Patch-For-Review, User-Daimona, Wikimedia-production-error, AbuseFilter
Daimona created T214196: BadMethodCallException: Call to a member function dumpAllVars() on a non-object (boolean).
Fri, Jan 18, 6:41 PM · Patch-For-Review, User-Daimona, Wikimedia-production-error, AbuseFilter
Daimona updated the task description for T214193: PHP Notice: Unable to unserialize in AbuseFilter.php.
Fri, Jan 18, 6:23 PM · Patch-For-Review, User-Daimona, AbuseFilter, Wikimedia-production-error
Daimona updated the task description for T213006: Create a script to update afl_var_dump, drop back-compat code.
Fri, Jan 18, 6:19 PM · Patch-For-Review, User-Daimona, AbuseFilter
Daimona moved T214191: Read timeout reached on AbuseFilterViewTestBatch from Backlog to Next on the User-Daimona board.
Fri, Jan 18, 6:18 PM · User-Daimona, Wikimedia-production-error, AbuseFilter
Daimona added a project to T214191: Read timeout reached on AbuseFilterViewTestBatch: User-Daimona.
Fri, Jan 18, 6:18 PM · User-Daimona, Wikimedia-production-error, AbuseFilter
Daimona moved T214193: PHP Notice: Unable to unserialize in AbuseFilter.php from Backlog to Next on the User-Daimona board.
Fri, Jan 18, 6:17 PM · Patch-For-Review, User-Daimona, AbuseFilter, Wikimedia-production-error
Daimona added a project to T214193: PHP Notice: Unable to unserialize in AbuseFilter.php: User-Daimona.
Fri, Jan 18, 6:17 PM · Patch-For-Review, User-Daimona, AbuseFilter, Wikimedia-production-error
Daimona created T214193: PHP Notice: Unable to unserialize in AbuseFilter.php.
Fri, Jan 18, 6:17 PM · Patch-For-Review, User-Daimona, AbuseFilter, Wikimedia-production-error
Daimona created T214191: Read timeout reached on AbuseFilterViewTestBatch.
Fri, Jan 18, 6:09 PM · User-Daimona, Wikimedia-production-error, AbuseFilter
Daimona edited P7956 Filters which must be manually fixed in WMF wikis.
Fri, Jan 18, 5:12 PM · AbuseFilter
Daimona moved T115128: AbuseFilter test tools does not work for Flow edits from Backlog to Waiting on the User-Daimona board.
Fri, Jan 18, 10:44 AM · User-Daimona, Patch-For-Review, Growth-Team, Collaboration-Team-Triage, StructuredDiscussions, AbuseFilter
Daimona added a project to T115128: AbuseFilter test tools does not work for Flow edits: User-Daimona.
Fri, Jan 18, 10:44 AM · User-Daimona, Patch-For-Review, Growth-Team, Collaboration-Team-Triage, StructuredDiscussions, AbuseFilter
Daimona added a comment to T214035: DBError "Error: 1213 Deadlock found when trying to get lock" on WikiPage::doUpdateRestrictions.

I could trigger this again via the same script. This leads me to think that the bug is very likely to happen when several protection requests are sent subsequently.

Fri, Jan 18, 9:41 AM · MediaWiki-General-or-Unknown, Wikimedia-production-error

Thu, Jan 17

Daimona added a comment to T115128: AbuseFilter test tools does not work for Flow edits.

@Leaderboard Thanks, I'm working on it (i.e. on understanding why filter 59 didn't trigger), while for testing flow edits we still need someone who knows Flow's codebase.

Thu, Jan 17, 6:10 PM · User-Daimona, Patch-For-Review, Growth-Team, Collaboration-Team-Triage, StructuredDiscussions, AbuseFilter
Daimona moved T213982: Special:AbuseLog issues when filtering vs not filtering results from Backlog to Future on the User-Daimona board.
Thu, Jan 17, 1:41 PM · User-Daimona, AbuseFilter
Daimona added a project to T213982: Special:AbuseLog issues when filtering vs not filtering results: User-Daimona.

Adding to radar for the moment. However, I feel that (unless someone offers to review the patch) we should just avoid adding yet another hack and go ahead with the stable solution.

Thu, Jan 17, 1:40 PM · User-Daimona, AbuseFilter
Daimona added a comment to T213982: Special:AbuseLog issues when filtering vs not filtering results.

I checked on my wiki and found the cause.
First, filters are executed and we eventually save an AbuseLog entry. There we use $user->getId() and $user->getName() to get such data. Now, if the action is an account creation $user is the creator, passed by the AuthenticationProvider here, and is an anonymous user. Thus, calling getName and getId on it returns respectively the IP and 0. This way, we would just end up saving the IP as log performer, however it's not over. As I was saying in my previous comment, AbuseFilter performs the horrible hack of changing afl_user_text to the account name, in order to avoid showing the IP. Thus, what we get in the end is a DB row where afl_user is 0 and afl_user_text is the account name.
Back to Special:AbuseLog, if a user is specified we try to build a User object from the given name. This creates two cases:

  1. If the account doesn't exist (assume creation was disallowed by AbuseFilter), then we'll query the abuse_filter_log to find rows with afl_user === 0 and afl_user_text = the_one_specified_in_the_search_bar. This will succeed, proof.
  2. If the account exists (we can assume that this means that the creation wasn't disallowed by AbuseFilter or anything else), the User object will have a non-zero ID and a name, so we'll try to match an abuse_filter_log with such ID and name, but this obviously fails because we stored a 0 as user ID, proof.
Thu, Jan 17, 1:39 PM · User-Daimona, AbuseFilter
Daimona added a comment to T115128: AbuseFilter test tools does not work for Flow edits.

@Leaderboard May I please have some spam examples which should have triggered filter 59?

Thu, Jan 17, 12:52 PM · User-Daimona, Patch-For-Review, Growth-Team, Collaboration-Team-Triage, StructuredDiscussions, AbuseFilter
Daimona renamed T214035: DBError "Error: 1213 Deadlock found when trying to get lock" on WikiPage::doUpdateRestrictions from SQL error 1213 on WikiPage::doUpdateRestrictions to DBError "Error: 1213 Deadlock found when trying to get lock" on WikiPage::doUpdateRestrictions.
Thu, Jan 17, 12:50 PM · MediaWiki-General-or-Unknown, Wikimedia-production-error
Daimona created T214035: DBError "Error: 1213 Deadlock found when trying to get lock" on WikiPage::doUpdateRestrictions.
Thu, Jan 17, 12:50 PM · MediaWiki-General-or-Unknown, Wikimedia-production-error
Daimona added a comment to T213982: Special:AbuseLog issues when filtering vs not filtering results.

Will investigate later. Below is a possible explanation.
On "createaccount" the filter is triggered by anonymous users (i.e. you would find it by searching the IP which triggered it). However, in order not to publicly show the IP, AF replaces it with the new account name before saving the log entry, which is pretty hacky, has lead to other problems, and doesn't actually completely prevents the IP from being leaked in several specific cases. A proper solution would probably be to change this behaviour and make it somehow saner. As for this specific problem, I think (but I have to check) that we inconsistently use anonymous users (i.e. IPs) and fake users with the new username in different parts of the code, and thus searching by username doesn't work because entries reference the IP.

Thu, Jan 17, 6:24 AM · User-Daimona, AbuseFilter

Wed, Jan 16

Daimona removed a project from T89514: Issues with abusefilter + MW 1.24 + postgresql: Doesn't define af_group, af_id definition: Patch-For-Review.
Wed, Jan 16, 9:49 PM · MW-1.31-release-notes (WMF-deploy-2018-02-20 (1.31.0-wmf.22)), PostgreSQL, AbuseFilter
RandomDSdevel awarded T209565: Dry run for normalizeThrottleParameters.php a Grey Medal token.
Wed, Jan 16, 5:56 PM · User-notice, MW-1.33-notes (1.33.0-wmf.8; 2018-12-11), Patch-For-Review, MW-1.32-release, Core Platform Team Kanban (Doing), Core Platform Team (Security, stability, performance and scalability (TEC1)), Wikimedia-maintenance-script-run, AbuseFilter
RandomDSdevel awarded T212268: Make the abusefilter-blocker user not be a sysop a Piece of Eight token.
Wed, Jan 16, 5:55 PM · AbuseFilter, User-Daimona, Patch-For-Review
Daimona triaged T212082: Do not block page moves with AbuseFilter on LocalRenameJob page moves as High priority.
Wed, Jan 16, 5:45 PM · User-Daimona, Patch-For-Review, Stewards-and-global-tools, AbuseFilter, GlobalRename, MediaWiki-extensions-CentralAuth
Daimona added a comment to T212082: Do not block page moves with AbuseFilter on LocalRenameJob page moves.

@1997kB The patch above needs some love, I'll try to add some reviewers on gerrit. Making the global renamer group a real global group, so that it could be read via global_user_groups would also be useful for this specific case.

Wed, Jan 16, 5:45 PM · User-Daimona, Patch-For-Review, Stewards-and-global-tools, AbuseFilter, GlobalRename, MediaWiki-extensions-CentralAuth
Daimona lowered the priority of T115128: AbuseFilter test tools does not work for Flow edits from Unbreak Now! to High.

@Leaderboard IMHO this isn't UBN! per https://www.mediawiki.org/wiki/Phabricator/Project_management#Priority_levels. Again, the patch above (which I'm going to rebase) is WIP because something in Flow codebase prevents it from working, and I don't want to mess with it. I also had several troubles in getting Flow to work properly on my wiki, and thus testing the patch. Developers/Maintainers says stewards are Growth-Team, and this task is already on their workboard. We should get someone from there to give a look to the patch.
This is also not UBN because filters still work -even though they cannot be tested-, and being myself a sysop on MediaWiki I can try to help tuning spam-related filters, I just need some time and examples.

Wed, Jan 16, 10:58 AM · User-Daimona, Patch-For-Review, Growth-Team, Collaboration-Team-Triage, StructuredDiscussions, AbuseFilter

Tue, Jan 15

Daimona added a comment to T210739: Target deletion during page move fails.

I tried to test this on my wiki, and it succeeded 3-4 times in a row. I wonder if this could be due to some race condition... Also, the stream of errors is pretty steady, and is of ~100 errors a day. I guess the only reason for this not to be UBN! is that a simple workaround (delete first, then move) exists.

Tue, Jan 15, 4:56 PM · Anti-Harassment, MW-1.33-notes (1.33.0-wmf.13; 2019-01-15), Patch-For-Review, User-notice, Core Platform Team Backlog (Watching / External), Core Platform Team (Security, stability, performance and scalability (TEC1)), MediaWiki-Special-pages, Wikimedia-production-error
Daimona merged T213819: Fatal exception when trying to move a page on fawiki into T210739: Target deletion during page move fails.
Tue, Jan 15, 3:15 PM · Anti-Harassment, MW-1.33-notes (1.33.0-wmf.13; 2019-01-15), Patch-For-Review, User-notice, Core Platform Team Backlog (Watching / External), Core Platform Team (Security, stability, performance and scalability (TEC1)), MediaWiki-Special-pages, Wikimedia-production-error
Daimona merged task T213819: Fatal exception when trying to move a page on fawiki into T210739: Target deletion during page move fails.
Tue, Jan 15, 3:15 PM · MediaWiki-General-or-Unknown

Sun, Jan 13

Daimona merged T213661: Fatal exception of type MWException on eswiki into T210739: Target deletion during page move fails.
Sun, Jan 13, 6:25 PM · Anti-Harassment, MW-1.33-notes (1.33.0-wmf.13; 2019-01-15), Patch-For-Review, User-notice, Core Platform Team Backlog (Watching / External), Core Platform Team (Security, stability, performance and scalability (TEC1)), MediaWiki-Special-pages, Wikimedia-production-error
Daimona merged task T213661: Fatal exception of type MWException on eswiki into T210739: Target deletion during page move fails.
Sun, Jan 13, 6:24 PM · Wikimedia-production-error, Spanish-Sites
Daimona added a comment to T213655: Lost file Juan_Guaidó.jpg.

The MWException is T210739.

Sun, Jan 13, 4:05 PM · Multimedia, MediaWiki-General-or-Unknown, Operations, media-storage

Sat, Jan 12

Daimona added a comment to T210739: Target deletion during page move fails.

For the record, this happened 127 times in the last 24 hours. Not a lot, but not a little.

Sat, Jan 12, 9:36 PM · Anti-Harassment, MW-1.33-notes (1.33.0-wmf.13; 2019-01-15), Patch-For-Review, User-notice, Core Platform Team Backlog (Watching / External), Core Platform Team (Security, stability, performance and scalability (TEC1)), MediaWiki-Special-pages, Wikimedia-production-error
Daimona merged T213631: [XDomdgpAADgAAJv80TAAAABT] 2019-01-12 17:40:07: Fatal exception of type MWException when try to move pages, for eliminators and sysops into T210739: Target deletion during page move fails.
Sat, Jan 12, 6:13 PM · Anti-Harassment, MW-1.33-notes (1.33.0-wmf.13; 2019-01-15), Patch-For-Review, User-notice, Core Platform Team Backlog (Watching / External), Core Platform Team (Security, stability, performance and scalability (TEC1)), MediaWiki-Special-pages, Wikimedia-production-error
Daimona merged task T213631: [XDomdgpAADgAAJv80TAAAABT] 2019-01-12 17:40:07: Fatal exception of type MWException when try to move pages, for eliminators and sysops into T210739: Target deletion during page move fails.
Sat, Jan 12, 6:12 PM · MediaWiki-General-or-Unknown, Wikimedia-production-error
Daimona moved T213575: Grant interface-admin permissions to modify abuse filters on az.wikipedia from Backlog to Waiting on the User-Daimona board.
Sat, Jan 12, 9:21 AM · User-Daimona, Community-consensus-needed, Wikimedia-Site-requests
Daimona added a project to T213575: Grant interface-admin permissions to modify abuse filters on az.wikipedia: User-Daimona.
Sat, Jan 12, 9:21 AM · User-Daimona, Community-consensus-needed, Wikimedia-Site-requests
Daimona added a comment to T209565: Dry run for normalizeThrottleParameters.php.

Lowering to High, this is not currently an UBN! issue.

Sat, Jan 12, 9:21 AM · User-notice, MW-1.33-notes (1.33.0-wmf.8; 2018-12-11), Patch-For-Review, MW-1.32-release, Core Platform Team Kanban (Doing), Core Platform Team (Security, stability, performance and scalability (TEC1)), Wikimedia-maintenance-script-run, AbuseFilter

Fri, Jan 11

Daimona edited projects for T213575: Grant interface-admin permissions to modify abuse filters on az.wikipedia, added: AbuseFilter, Wikimedia-Site-requests; removed MediaWiki-User-management.

That's what I thought. If so, we need community consensus for that.

Fri, Jan 11, 9:07 PM · User-Daimona, Community-consensus-needed, Wikimedia-Site-requests
Daimona added a comment to T213575: Grant interface-admin permissions to modify abuse filters on az.wikipedia.

@Neriman2003 Aklapper's response is correct. If this is a support request, this is not the right place for it. If you're asking whether it's possible for interface admins to edit abuse filters, the answer is: it depends. Editing abuse filters require the abusefilter-modify right, which I don't think interface admins have. Usually people who can edit abuse filters are sysops or have a specific user group.

Fri, Jan 11, 8:35 PM · User-Daimona, Community-consensus-needed, Wikimedia-Site-requests
Daimona added a comment to T213478: purgeRedundantText: Potential data loss.

Probably not, it's a huge dump of data and rarely needed. Just what external storage was meant for.

True.

Fri, Jan 11, 6:51 PM · User-Daimona, AbuseFilter, MediaWiki-Maintenance-scripts, Technical-Debt
Daimona added a comment to T213453: AbuseFilter MCR diff is comparing old value of one slot with the new value from another, not the old whole page with the new whole page.

Huh, I lost my train... @Addshore is the change stable, and are we fine with it for now?

Fri, Jan 11, 6:41 PM · MW-1.33-notes (1.33.0-wmf.13; 2019-01-15), User-Addshore, SDC Engineering, Core Platform Team (MCR), AbuseFilter
Daimona added a comment to T213478: purgeRedundantText: Potential data loss.

@Tgr Well, storing to the text table makes it possible to use its flags just like revision does, e.g. 'external'... Of course we could also store the var dump directly inside afl_var_dump, but I can't say if it's worth it.

Fri, Jan 11, 6:39 PM · User-Daimona, AbuseFilter, MediaWiki-Maintenance-scripts, Technical-Debt
Daimona added a comment to T106136: Wikidata edits are not tagged by AbuseFilter on item creations.

The system used for applying tags is not ideal (relies on global state etc.), but I'm unsure what an alternative could be, since tags cannot be applied when filters are executed (per design in core). To keep the process simple, we use an identifier which can be constructed with data available both when running filters (and we have plenty of data at that point), AND when saving the recent change. However, for the latter we only have a RecentChange object passed in by the hook, and not much info we can extract from there aside from user, action and title.

Fri, Jan 11, 2:42 PM · MediaWiki-Change-tagging, MediaWiki-extensions-WikibaseRepository, Wikidata, AbuseFilter
Daimona moved T174553: Create a mechanism that allows fetching geolocation and subnet data for IP addresses from Backlog to Under review on the User-Daimona board.
Fri, Jan 11, 9:21 AM · User-Daimona, Patch-For-Review, User-Huji, MediaWiki-extension-requests, Stewards-and-global-tools, MediaWiki-extensions-LoginNotify, CheckUser
Daimona added a project to T174553: Create a mechanism that allows fetching geolocation and subnet data for IP addresses: User-Daimona.

I rebased the patch and bumped geoip version to 2.9.0. I'm also tracking this task, although I'm afraid there's not much I can do.

Fri, Jan 11, 9:20 AM · User-Daimona, Patch-For-Review, User-Huji, MediaWiki-extension-requests, Stewards-and-global-tools, MediaWiki-extensions-LoginNotify, CheckUser
Daimona added a comment to T153251: AbuseFilterCachingParser fails to parse filters with trailing comma in function calls (works in old parser).

The problem here is the usual one. Option A is less sane, but should be totally back-compat (unless a function call relied on this feature to pass a null parameter, but that would be crazy). Option B is the one I like most, since it helps having a saner syntax. However, it would break any filter using trailing commas. Unfortunately, filter editor won't have any way to know that, as filter failures are only sent to logstash. The patch for it is https://gerrit.wikimedia.org/r/#/c/mediawiki/extensions/AbuseFilter/+/429381/ (and related ones), which adds a new page for filter failures at runtime.

Fri, Jan 11, 9:01 AM · Patch-For-Review, AbuseFilter
Daimona moved T213478: purgeRedundantText: Potential data loss from Backlog to Next on the User-Daimona board.
Fri, Jan 11, 8:55 AM · User-Daimona, AbuseFilter, MediaWiki-Maintenance-scripts, Technical-Debt
Daimona added a project to T213478: purgeRedundantText: Potential data loss: User-Daimona.
Fri, Jan 11, 8:55 AM · User-Daimona, AbuseFilter, MediaWiki-Maintenance-scripts, Technical-Debt
Daimona added a comment to T213478: purgeRedundantText: Potential data loss.

I like Tgr's idea. However, I can also gladly say that this is a good moment to fix the problem: T213006 outlines a script to make various fixes to the afl_var_dump column, and consequently to the text table. If we want to change something in old entries, speak now...

Fri, Jan 11, 8:55 AM · User-Daimona, AbuseFilter, MediaWiki-Maintenance-scripts, Technical-Debt

Thu, Jan 10

Daimona moved T213464: Special:ListProperties on Commons gives Fatal exception of type "Wikimedia\Assert\PostconditionException" from Untriaged to Regressed 1.33-wmf.13 on the Wikimedia-production-error board.
Thu, Jan 10, 7:21 PM · Wikimedia-production-error, Commons, StructuredDataOnCommons
Daimona added a project to T213464: Special:ListProperties on Commons gives Fatal exception of type "Wikimedia\Assert\PostconditionException": Wikimedia-production-error.
Thu, Jan 10, 7:19 PM · Wikimedia-production-error, Commons, StructuredDataOnCommons
Daimona added a comment to T213453: AbuseFilter MCR diff is comparing old value of one slot with the new value from another, not the old whole page with the new whole page.

So currently there's no way to retrieve the slot being edited via parameters passed to the EditFilterMergedContent hook, is that right?

Thu, Jan 10, 5:15 PM · MW-1.33-notes (1.33.0-wmf.13; 2019-01-15), User-Addshore, SDC Engineering, Core Platform Team (MCR), AbuseFilter
Daimona added a comment to T213453: AbuseFilter MCR diff is comparing old value of one slot with the new value from another, not the old whole page with the new whole page.

@Jdforrester-WMF So getContent should be replaced. Is there something which allows getting the content for a certain slot from a revision, and a way to extract the current slot from the hook params?

Thu, Jan 10, 5:01 PM · MW-1.33-notes (1.33.0-wmf.13; 2019-01-15), User-Addshore, SDC Engineering, Core Platform Team (MCR), AbuseFilter
Daimona added a comment to T213453: AbuseFilter MCR diff is comparing old value of one slot with the new value from another, not the old whole page with the new whole page.

I see that the wrong one is old_wikitext, while new_wikitext is correct (although it contains 'M60452106' and I'm unsure if it should).

Thu, Jan 10, 4:55 PM · MW-1.33-notes (1.33.0-wmf.13; 2019-01-15), User-Addshore, SDC Engineering, Core Platform Team (MCR), AbuseFilter
Daimona triaged T213453: AbuseFilter MCR diff is comparing old value of one slot with the new value from another, not the old whole page with the new whole page as Unbreak Now! priority.

Diffs are computed basing on old_wikitext and new_wikitext, which are the only base variables used to compute edit_delta, added_lines, edit_diff, new_size etc. This means that filters are very likely to explode.

Thu, Jan 10, 4:48 PM · MW-1.33-notes (1.33.0-wmf.13; 2019-01-15), User-Addshore, SDC Engineering, Core Platform Team (MCR), AbuseFilter
Daimona added a comment to T69936: Provide a sane way to bypass abuse filters.
In T69936#4867327, @Tgr wrote:

Global rename and other "internal" failures are definitely not a reason to add a bypass user right / checkbox. There might be other use cases; within filter logic you can only skip or affect (you can't for example say "prevent if user is not in group X, show a warning otherwise"; compare with titleblacklist etc. where functionaries can force the action but the check won't just get skipped without them being informed about the failure). But that's probably best discussed when someone has concrete use cases for it.

Thu, Jan 10, 4:28 PM · AbuseFilter
Daimona moved T34478: AbuseFilter not setting utf-8 flag from Backlog to Next on the User-Daimona board.
Thu, Jan 10, 3:45 PM · User-Daimona, Growth-Team, AbuseFilter, Collaboration-Team-Triage, MediaWiki-Database
Daimona added a project to T34478: AbuseFilter not setting utf-8 flag: User-Daimona.

So now we have a great opportunity to fix this, which is T213006. The task outlines the tasks of a new script used to clean afl_var_dump and related, and since this is strongly related, we should handle it as well.
My only question is how to fix it. Should we add the 'utf-8' flag to every entry, or what else? Just let me know and I can amend the patch.

Thu, Jan 10, 3:45 PM · User-Daimona, Growth-Team, AbuseFilter, Collaboration-Team-Triage, MediaWiki-Database
Daimona added a comment to T209687: WikibaseMediaInfo should define keys to ignore when passing test to AbuseFilter.

I have alerts for all AF tasks, so I have actually read this, and I'll be glad to help :)

Thu, Jan 10, 11:14 AM · MW-1.33-notes (1.33.0-wmf.14; 2019-01-22), SDC Engineering, Performance, AbuseFilter, WikibaseMediaInfo

Wed, Jan 9

Daimona added a comment to T69936: Provide a sane way to bypass abuse filters.

That's what I thought, too... Mostly because the front-end way of bypassing a filter shouldn't exist. That is, if you want someone not to hit a filter, you should code the filter to do that, mostly by excluding user groups. And assigning this right to global renamers would make them unaffected (or, respecting the points in the task description, less affected) by other filters for which they don't really need this flag. This is IMHO not ideal. Edge-cases like rename job should instead be handled back-end.

Wed, Jan 9, 7:46 PM · AbuseFilter
Daimona added a comment to T212720: System users should be in a dedicated user group.

Indeed. It's impossible to change anything related to this group (assigned rights, assign or remove the group...).

Wed, Jan 9, 6:38 PM · Patch-For-Review, User-Daimona, MediaWiki-User-management
Daimona added a comment to T151291: "User::loadFromSession called before the end of Setup.php" warning due to AbuseFilter.

@Tgr Well, nice point for 3. As for 1 in task description, I had to go to REL1_30 to find it; here is the bad line, but it doesn't happen anymore (for AF, of course) since rEABF799a2fb1ed73c210adcdb8e3713805430f590960 removed parsing at that point.

Wed, Jan 9, 6:23 PM · Core Platform Team (Security, stability, performance and scalability (TEC1)), Core Platform Team Backlog (Later), User-Daimona, AbuseFilter, Wikimedia-production-error
Daimona edited P7956 Filters which must be manually fixed in WMF wikis.
Wed, Jan 9, 3:25 PM · AbuseFilter
Daimona added a comment to T212720: System users should be in a dedicated user group.

I added 'systemuser' to wgImplicitGroups. This should be saner, although it really prevents this group to be shown e.g. on ListUsers. I think this should be fine for now. If we'll find out that we actually want this group to be displayed, there's still time to do it.

Wed, Jan 9, 3:16 PM · Patch-For-Review, User-Daimona, MediaWiki-User-management
Daimona added a comment to T151291: "User::loadFromSession called before the end of Setup.php" warning due to AbuseFilter.

I could also find the same error coming from AbuseFilter::throttleIdentifier (which directly calls $wgUser->getId()). May you please check if that method is in any stacktrace related to this error?

Wed, Jan 9, 2:37 PM · Core Platform Team (Security, stability, performance and scalability (TEC1)), Core Platform Team Backlog (Later), User-Daimona, AbuseFilter, Wikimedia-production-error
Daimona added a comment to T204881: Failed executing job: AssembleUploadChunks "Disallowed by AbuseFilter".

Happened 11 times in the last 30 days, and now we have the filter ID. Given that it is public, I'm gonna say that this happen due to filter 192. Shares the cause - and possibly the solution - with T212082.

Wed, Jan 9, 2:27 PM · Multimedia, MediaWiki-Uploading, AbuseFilter, Wikimedia-production-error
Daimona added a comment to T73545: Argument 1 passed to AbuseFilter::contentToString() must implement interface Content.

Hm, unseen in the last 30 days. Maybe this was fixed in rEABF688eccea477a3a537c86066112bda7da202a8463?

Wed, Jan 9, 12:04 PM · TestMe, User-Daimona, Wikimedia-production-error, AbuseFilter
Daimona claimed T204235: Variables inside wgAbuseFilterVariables (available via JS) have old names for old entries.
Wed, Jan 9, 12:00 PM · Patch-For-Review, User-Daimona, AbuseFilter
Daimona moved T208931: Warning: Invalid parameter for message "abusefilter-log-detailedentry-local" from Waiting to Under review on the User-Daimona board.
Wed, Jan 9, 11:58 AM · Patch-For-Review, User-Daimona, AbuseFilter, Wikimedia-production-error
Daimona claimed T208931: Warning: Invalid parameter for message "abusefilter-log-detailedentry-local".
Wed, Jan 9, 11:58 AM · Patch-For-Review, User-Daimona, AbuseFilter, Wikimedia-production-error