Things my team is working on: Growth-Team (kanban board)
Side projects I am working on (or planning to, eventually): User-Tgr
You can find more info about me on my user page.
User Details
- User Since
- Sep 19 2014, 4:55 PM (454 w, 6 d)
- Availability
- Available
- IRC Nick
- tgr
- LDAP User
- Gergő Tisza
- MediaWiki User
- Tgr (WMF) [ Global Accounts ]
Yesterday
IMO not worth the effort. See T332022: [Epic] Undeploying StructuredDiscussions (Flow).
There was some related (and a lot of unrelated) discussion in T304538: Clean up GrowthExperiments-related user_properties rows.
Isn't this just old impact module vs. new impact module? What would be the expected behavior?
We ended up switching back to showing total edits (as opposed to mainspace edits), didn't we? Total edit count is precomputed, it should be straightforward to display it.
Closing as invalid, given the low incidence. If we see many of these, we should be concerned, but we always have a trickle of errors from weird URLs.
Can reproduce, not ruwiki-specific. The content area of the tabset includes each tab; all but one should be invisible but they aren't quite, some padding is visible.
Previous work happened in T330509: [IP Masking] Make Echo Notifications available to temporary users.
I think this is all done - works on desktop and mobile, in LTR and RTL, as expected.
I think we forgot this in the Code Review column, the work was finished a couple weeks ago.
Not really QA-able directly (and indirectly, this is how beta wikis load image suggestions so as long as that works, this works). @Etonkovidova I'll leave it to you but I think it can just be closed.
Wed, Jun 7
We'll also need a tag name and description; I think that's not included in T335714: Section-level images: finalize copy and QQQ descriptions for TranslateWiki.net. For top-level images it's
- [[mw:Special:MyLanguage/Help:Growth/Tools/Newcomer_Tasks#s-image|Suggested: add images]]
- "Add images" task edit suggested by the suggested edits module of the newcomer homepage
For section-level images, we could have something like
- [[mw:Special:MyLanguage/Help:Growth/Tools/Newcomer_Tasks#s-section-image|Suggested: add images to sections]]
- "Add images to sections" task edit suggested by the suggested edits module of the newcomer homepage
Yeah, at some point we stopped filtering by namespace. I'd assume that there are so few new users with a non-mainspace first edit that they can't cause the difference in activation... @nettrom_WMF is that something you can confirm or refute?
(2) "Add an image..." dialog for add section level image has "Used in the same article in 0 other languages" - should this message be modified or removed?
The task description says "daily limit applied incorrectly". Is there an error in the logic, or is the task only about the message not getting translated?
We can't mass-set the new variant without interfering with the NewImpact A/B test. We could backport 924597 as a way of deployment - not elegant but I'm not sure we have a better way. (We could introduce another config flag but that would be a lot of effort for throwaway code.)
Do you want to submit a patch?
Tue, Jun 6
Per the merged patch ("No RTL assets or mobile were provided yet, add them after clarifications in T332925") moving back to In Progress.
You could try setting
xdebug.log = <some file> xdebug.log_level = 10
to dump the exact commands that PHPStorm sends to XDebug. Although presumably the one that causes the segfault won't make it into the log.
Mon, Jun 5
(8) (from https://phabricator.wikimedia.org/T336550#8897636)
Special:EditGrowthConfig on betalabs does have Add a suggested section image section, see for example:eswiki betalabs Special:EditGrowthConfig. But the section lacks The maximum number of section-level "Add an image" suggested tasks a newcomer can complete daily. field.
(7) (from https://phabricator.wikimedia.org/T336549#8897571) The rejection dialog is not reachable?
#6 will probably be fixed by https://gerrit.wikimedia.org/r/c/mediawiki/extensions/GrowthExperiments/+/927137
As long as it's a tiny amount of events, it's probably just someone editing URLs manually.
Sun, Jun 4
After thinking this through, it's not as simple as I thought, sorry.
Sat, Jun 3
This is a cross-cutting concern that will be relevant for the Flow API, the LiquidThreads API, probably for VisualEditor and DiscussionTools. Also the move API, if some wiki allows page moving for anons (although that's probably unwise). Probably relevant for some non-Wikimedia extensions too.
Fri, Jun 2
It's not really needed by us (it only happens when you try to use a section-image related API on a wiki where section images aren't set up in community configuration). We'll need to fix it before Android starts using the feature. (Or we can just do the setup on all Wikipedias by editing community config, I guess.)
Thu, Jun 1
if ( $user->isRegistered() ) { // Use real name if set $realName = $user->getRealName(); if ( $realName ) { $fromName = $realName; } else { $fromName = $user->getName(); } $fromAddress = $user->getEmail(); }
this should probably use !$user->isAnon().
$includeIP = isset( $config['IncludeIP'] ) && $config['IncludeIP'] && ( $user->isAnon() || $formData['IncludeIP'] );
this is probably fine as it is, we don't want to send temp users' IPs by default.
(5) On mobile the task type for suggested section level image task type on Homepage doesn't match the same title in Select types of edits overlay list. Note: all other types of tasks do not display that discrepancy.
(1) Quite often "Suggestions are no longer available on this article." message is displayed.
...
... However, Special:EditGrowthConfig doesn't have a quality gate set for Add a suggested section image.
Wed, May 31
Although the other branch will, so nevermind.
This is happening in the preg_match_all() branch, so it wouldn't blank the page, just ignore all magic words. But yeah cleaning it up would be nicer.
I think this would find other incorrect signatures:
wikiadmin2023@10.64.48.109(huwiki)> select count(*) from thread where convert(thread_signature using binary) rlike '([\\xC0-\\xC1]|[\\xF5-\\xFF]|\\xE0[\\x80-\\x9F]|\\xF0[\\x80-\\x8F]|[\\xC2-\\xDF](?![\\x80-\\xBF])|[\\xE0-\\xEF](?![\\x80-\\xBF]{2})|[\\xF0-\\xF4](?![\\x80-\\xBF]{3})|(?<=[\\x00-\\x7F\\xF5-\\xFF])[\\x80-\\xBF]|(?<![\\xC2-\\xDF]|[\\xE0-\\xEF]|[\\xE0-\\xEF][\\x80-\\xBF]|[\\xF0-\\xF4]|[\\xF0-\\xF4][\\x80-\\xBF]|[\\xF0-\\xF4][\\x80-\\xBF]{2})[\\x80-\\xBF]|(?<=[\\xE0-\\xEF])[\\x80-\\xBF](?![\\x80-\\xBF])|(?<=[\\xF0-\\xF4])[\\x80-\\xBF](?![\\x80-\\xBF]{2})|(?<=[\\xF0-\\xF4][\\x80-\\xBF])[\\x80-\\xBF](?![\\x80-\\xBF]))'; +----------+ | count(*) | +----------+ | 0 | +----------+ 1 row in set (0.239 sec)
(the regex is from here)
Anyhow, should we revert that patch any maybe just convert broken UTF-8 bytes to question marks?
The relevant patch is rMWf27945728f1d: In the event of preg failure in MagicWordArray throw exception but that was merged ages ago. Do we know why this started happening now? (logstash says this Monday at 9:20 UTC - doesn't match anything in SAL)
T332022: [Epic] Undeploying StructuredDiscussions (Flow) will require a community consultation, we could probably discuss sunsetting LQT as part of that.
LQT apparently truncates (truncated at some point in the past?) some of its data in a way that might cause it to be invalid UTF-8. That, in combination with some poorly written bot getting stuck in a loop when an LQT page errors out, is flooding production logs with T337700: Exception: "Malformed UTF-8 characters" in Parser\MagicWordArray (via LqtVIew) right now.
Tue, May 30
wikiadmin2023@10.64.136.13(huwiki)> select thread_id, thread_author_name, thread_signature from thread where thread_subject = 'Fölösleges információk'; +-----------+--------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | thread_id | thread_author_name | thread_signature | +-----------+--------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 1285 | Xia | [[User:Teemeah|<font color="#C440A3"><b>Xiǎolóng</b></font>]] [[Fájl:Dragon01.svg|25px|link=Jay Chou]] [[User vita:Teemeah|<font color="#C440A3"><sup>vigyázz, harap!</sup></font>]] | | 1286 | Dencey | [[Szerkesztő:Dencey|Dencey]] <sup>[[Szerkesztővita:Dencey|vita]]</sup> | | 1287 | Xia | [[User:Teemeah|<font color="#C440A3"><b>Xiǎolóng</b></font>]] [[Fájl:Dragon01.svg|25px|link=Jay Chou]] [[User vita:Teemeah|<font color="#C440A3"><sup>vigyázz, harap!</sup></font>]] | | 1288 | Gubbubu | <span title="bétaverzió"> <!--<font style="text-decoration: blink;">--><font color="red">♥</font><font color="white">♥</font><font color="green">♥</font> </font> [[User:Gubbubu|<font color="green" face="Lucida calligraphy">Γουββος Θιλο� | | 1289 | Dencey | [[Szerkesztő:Dencey|Dencey]] <sup>[[Szerkesztővita:Dencey|vita]]</sup> | +-----------+--------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
tgr@mwmaint1002:~$ mwscript shell.php huwiki Psy Shell v0.11.10 (PHP 7.4.33 — cli) by Justin Hileman > $u = User::newFromName( 'Dencey' ) > $parser->setOptions( new ParserOptions( $u ) ); > $parser->getUserSig( $u ) = "[[Szerkesztő:Dencey|– –Dencey ]] <sup>[[Szerkesztővita:Dencey|vita]]</sup>"
origin is not a security measure, it's a cache management measure. (Or, I guess, it's a security measure but it's specifically for preventing cache poisoning/leaking.) I guess with Authorization it isn't strictly necessary because that header makes the response uncacheable (and if it doesn't, we have bigger problems) but I'd still rather not mess with it. Is there any reason you can't just set the origin properly?
(Btw do want to use the placeholder + modified dialog placement for article-level image recommendations as well, or only section-level tasks?)
I thought it's useful to spell out what changes (compared to the old image recommendation workflow) this task entails. (Not including subtasks.) Please fix if I'm missing something.
- Modify image insertion logic so images are inserted to the appropriate section, not the top of the article.
- Modify article validity checking logic so we show the "recommendation not available" error when there is an image already in the selected section, or the recommended image is used elsewhere in the article, or we cannot identify the selected section at all (but don't show the error if the article has images but not in the selected section)
- Add an "image placeholder" when the editor loads, to be replaced by the actual image when the user clicks "Yes" in the dialog.
- Modify the desktop version of the dialog so instead of sticking to the bottom of the screen, it sticks to the bottom of the image placeholder.
- Some text changes to the dialog - "section" is added to the header, the paragraph below the header and the paragraph above the buttons + the section name is added to the paragraph above the buttons.
I guess if we are aiming for post-MVP with this, it's not top priority anymore.
for LANG in en ar bn cs es; do echo "$LANG>>>" # get list of pages with recommendations curl -s "https://${LANG}.wikipedia.org/w/api.php?action=query&format=json&export=1&generator=search&formatversion=2&gsrsearch=hasrecommendation%3Aimage_section&gsrlimit=500" > export.json cat export.json | jq --raw-output '.query.export' > export.xml cat export.json | jq --raw-output '.query.pages[].title' > pages-$LANG.txt # import pages mwscript importDump.php ${LANG}wiki --username-prefix prod --no-local-users --report 50 export.xml mwscript rebuildrecentchanges.php ${LANG}wiki mwscript initSiteStats.php ${LANG}wiki --update # update search index mwscript CirrusSearch:ForceSearchIndex.php ${LANG}wiki --namespace 0 --skipLinks --indexOnSkip mwscript CirrusSearch:ForceSearchIndex.php ${LANG}wiki --namespace 0 --skipParse mwscript GrowthExperiments:importOresTopics.php ${LANG}wiki --apiUrl="https://${LANG}.wikipedia.org/w/api.php" --wikiId=${LANG}wiki --pageList pages-$LANG.txt mwscript CirrusSearch:UpdateWeightedTags.php ${LANG}wiki --tagType=recommendation.image_section --page-list pages-$LANG.txt done
This single page is somehow responsible for about 1000 production errors per hour. Some bot stuck in a loop I guess?
I tried blanking or deleting the page; deleting just gave the same error, blanking seemed to work but didn't make the error go away. Maybe the malformed character is in the title?
Mon, May 29
Blocked on deploying rEGRE76227375bb1f: Section images: Accept more recommendation types as the name of the type has changed.
More generally, T20228: Add pagination (offset, prev/next, until/from/to) to watchlist and recent changes in the old (non-JS) UI / T163429: Provide UI for paging through Watchlist and Recent Changes results in the JS-enhanced UI and then disabling large paging sizes is probably the most feasible way to work around RC/watchlist query performance issues.
Sun, May 28
Hm, I think "Logged actions" is the filter that behaves weirdly. If I enable it I actually get less results. Its code is pretty straightforward though.
This is done, I think?
Could we get the asset files for this? Figma doesn't make it easy to export images which are composed of multiple objects.
FWIW the explanatory images about the dialog don't quite match the dialog design at T335209: Section-level images: suggestions mode.