[00:11:49] legoktm: running now [00:11:49] https://gist.github.com/Krinkle/15be368abdbf918c8ef7a06cde011457 [00:12:00] concurrency: 1 [00:12:48] nice :D [00:21:36] ... and, we've got results [00:21:36] https://gist.github.com/Krinkle/15be368abdbf918c8ef7a06cde011457#gistcomment-2640857 [00:23:54] fuun [00:24:22] happy scrapping [00:24:39] I'll be back later and might join the fun. Gotta go for now [21:24:50] legoktm: Hm.. do you recall what this is ip exempt is for in MassMessage? https://gerrit.wikimedia.org/g/mediawiki/extensions/MassMessage/+/master/includes/MassMessageHooks.php#138 [21:25:02] yes [21:25:04] I dont' get why a system user in a job needs ip exempt. In case WMF ips are blocked? [21:25:12] it was because ru.wikipedia blocked 127.0.0.1 [21:25:43] https://ru.wikipedia.org/w/index.php?title=%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F:%D0%96%D1%83%D1%80%D0%BD%D0%B0%D0%BB%D1%8B/massmessage&offset=&limit=500&type=massmessage&user= see the bottom [21:26:16] Hmmm. [21:27:19] https://static-bugzilla.wikimedia.org/58237 [21:28:00] Seems like something that could use a more generic solution. [21:28:42] I'm curious though, if this is for MassMessage's own system user to perform an action that MassMassage itself owns, why does it need to convince core that it has a certain right or isn't blocked. [21:29:14] It's a little weird because MassMessage is trying to be both a normal bot and a system user. Like it respects protection, AF, etc., but also assumes it can bypass rate limits, autoblocks, etc. [21:29:15] Similar to how, e.g. Special:Preferences is usable by blocked users because it decides not to check isBlocked or userCan() [21:29:41] Ah, interesting. [21:30:02] Also, I see it uses the API from a job (or at least, it used to). Which might explain the need to bypass a block, given the API likely has generic handling for that. [21:31:01] It still uses the API internally, yeah [21:31:59] Do you think there's potential for a generic solution here (e.g. making systemUser generically unblockable in core or some such), or should we just forget it about it for now? [21:32:49] I guess it is already unblockable, it's just that IP blocks apply to logged-in users by default, which I still don't understand why (drives me nuts every time I use a VPN, and I refuse to get a special exempt right) [21:33:37] Also, I find it somewhat contradictory to our support of anonymity, but I guess there's a case to be made for hard-to-track vandalism. [21:35:25] I would be OK just removing it entirely, and remind people to not block 127.0.0.1 [21:36:18] legoktm: Is there a fairly straight forward way to recover/re-do if it happens again? [21:36:30] E.g. can I replay part of a message to one wiki if it failed for reasons like this? [21:36:38] after it gets unblocked [21:37:08] No, you'd have to manually recreate the undelivered target list, and resend it [21:38:14] Woo, Phabricator now allows searching by workboard columns. Neat! [21:39:11] oh, I knew https://phabricator.wikimedia.org/T60258 existed